A pairing computation device, wherein an elliptic curve is given as y2=x3+ax+b, aεFp, bεFp, letting k be an embedding degree, E be an additive group constituted of rational points on the pairing enabled elliptic curve defined over an extension field Fpk, E[r] be a set of rational points having a prime order r, and φp be a Frobenius endomorphism, a pairing e is defined using
- G1=E[r]∩Ker(φp−[1]),
- G2=E[r]∩Ker(φp−[p]),
- as a non-degenerate bilinear map
- e:G1×G2→F*pk/(F*pk)r,
- the pairing computation device comprising a CPU which computes the pairing e(S,Q), by letting SεG1, QεG2, χ be a given integer variable, and F be a rational function which is calculated using Miller's algorithm with respect to multi-pairing (MMA), wherein
- the order r and a trace t of the Frobenius endomorphism φp are specified preliminarily according to the embedding degree k using the integer variable χ, and
- the CPU includes:
- an input unit which inputs the integer variable χ, the rational point S, and the rational point Q into respective predetermined registers;
- a computation unit which computes F;
- a computation unit which computes a value of a straight line passing through given rational points at a rational point Q (xQ, yQ);
- a computation unit which computes f′ χ,S(Q) using said F and said value ;
- and
- a computation unit which computes the pairing e(S,Q) using said f′ χ,S(Q) as
- [F1]
- e(S,Q)=f′χ,S(Q)(pk−1)/r.