Patent ID: 8594332

Claim:
An encrypting apparatus, comprising: a calculation unit that calculates two groups G and G T the orders of which two groups are identical to each other and in which a bilinear mapping from the product of group G and group G to group G T is performed, the calculation unit being arranged i) to receive, as inputs, a public key, an attribute value set, a threshold value which is smaller than a number of elements in the attribute value set, and a random number, and ii) to output, based on the received inputs a) a cryptogram of a shared key including a main cryptogram, error correction data and an attribute value set, and b) a shared key, the calculating unit comprising: a random element generating unit that generates a random element from the random number; a shared key generating unit operatively connected to an output of the random element generating unit, the shared key generating unit generating the shared key from the random element which has been generated by the random element generating unit and the public key; a main cryptogram generating unit operatively connected to an output of the random element generating unit, the main cryptogram generating unit generating the main cryptogram from inputs of the random element, the public key, and the attribute value set; and an error correction data generating unit operatively connected to an output of the random element generating unit, the error correction data generating unit generating error correction data from, the public key, and the threshold value; wherein the cryptogram of the shared key has a size that is proportional to a difference between the number of elements in the attribute value set and the threshold value.