passport number, date of birth and expiry date (i.e., BAC authentication).

Finally, note that the electronic identity cards of some countries can also work as ePassports (e.g., Spanish Identity Card -Documento Nacional de Identidad-).

Verifiable Computation\[sub:Verifiable-Computation\]
----------------------------------------------------

A public verifiable computation scheme allows a computationally limited client to outsource to a worker the evaluation of a function $F\left(u,w\right)$ on inputs $u$ and $w$: other alternative uses of these schemes allow a verifier $V$ to efficiently check computations performed by an untrusted prover $P$. More formally, the following three algorithms are needed:

(Public Verifiable Computation). A public verifiable computation scheme $VC$ consists of three polynomial-time algorithms $\left(\mbox{Keygen},\mbox{ Compute, Verify}\right)$ defined as follows:

-   $\left(EK_{F},VK_{F}\right)\leftarrow\mbox{Keygen}\left(F,1^{\lambda}\right)$: the key generation algorithm takes the function $F$ to be computed and security parameter $\lambda$; it outputs a public evaluation key $EK_{F}$ and a public verification key $VK_{F}$.

-   $\left(y,\pi_{y}\right)\leftarrow\mbox{Compute}\left(EK_{F},u,w\right)$: the prover runs the deterministic worker algorithm taking the public evaluation key $EK_{F}$, an input $u$ supplied by the verifier and an input $w$ supplied by the prover. It outputs $y\leftarrow F\left(u,w\right)$ and a proof $\pi_{y}$ of $y$’s correctness (as well as of prover’s knowledge of $w$).

-   $\left\{ 0,1\right\} \leftarrow\mbox{Verify}\left(VK_{F},u,w,y,\pi_{y}\right)$: the deterministic verification algorithm outputs $1$ 