Jump to content

Efficient Probabilistic Public-Key Encryption Scheme

From Wikipedia, the free encyclopedia

EPOC (Efficient Probabilistic Public Key Encryption) is a probabilisticpublic-keyencryption scheme.

EPOC was developed in 1999 by T. Okamoto, S. Uchiyama and E. Fujisaki of NTT Labs in Japan. It is based on the random oracle model, in which a primitive public-key encryption function is converted to a secure encryption scheme by use of a truly random hash function; the resulting scheme is designed to be semantically secure against a chosen ciphertext attack.

EPOC's primitive encryption function is the OU (Okamoto–Uchiyama) function, in which to invert the OU function is proven to be as hard as factoring a composite integer public key. There are three versions of EPOC:

  • EPOC-1 uses a one-way trapdoor function and a random function (hash function);
  • EPOC-2 uses a one-way trapdoor function, two random functions (hash functions) and a symmetric-key encryption (e.g., one-time padding and block-ciphers);
  • EPOC-3 uses the Okamoto–Uchiyama one-way trapdoor function and two random functions (hash functions) as well as any symmetric encryption scheme such as the one-time pad, or any classical block cipher.

EPOC-1 is designed for key distribution; EPOC-2 and EPOC-3 are designed for both key distribution and encrypted data transfer.

See also

[edit]

References

[edit]
  • T. Okamoto, S. Uchiyama and E. Fujisaki (1999). "EPOC: Efficient Probabilistic Public-Key EncryptionArchived 2005-11-30 at the Wayback Machine", Contribution to IEEE – describes EPOC-1 and EPOC-2.
  • T. Okamoto and D. Pointcheval (2000). "EPOC-3: Efficient Probabilistic Public-Key Encryption (Version 2)Archived 2005-11-30 at the Wayback Machine", Contribution to IEEE – describes EPOC-3.
  • T. Okamoto; S. Uchiyama (1998). "A new public-key cryptosystem as secure as factoring". Advances in Cryptology — EUROCRYPT'98. Lecture Notes in Computer Science. Vol. 1403. pp. 308–318. doi:10.1007/BFb0054135. ISBN 978-3-540-64518-4.{{cite book}}: CS1 maint: multiple names: authors list (link)
close