Cryptography Stack Exchange is a question and answer site for software developers, mathematicians and others interested in cryptography. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've got a question about an assignment . The question is "Why a Public-Key Deterministic Encryption Algorithm does not provide perfect security ?" . I suppose it means according to Shannon .

Any help could be awesome!

share|improve this question
There are no public key schemes that are perfectly secure, deterministic or not. A computationally unbounded attacker can always recover the private key from the public key. – CodesInChaos Feb 4 '14 at 9:58
up vote 1 down vote accepted

Deterministic encryption means that if the same plaintext is encrypted twice, it results in the same ciphertext. This is intrinsically a breach of security.

“Absolute security” is not a technical term — but deterministic encryption breaks many definitions of security, including perfect security. If two ciphertexts are identical, it reveals the fact that the plaintexts are identical — and identical plaintexts lead to identical ciphertexts.

This is particularly bad in the presence of an encryption oracle: if the attacker can submit plaintexts for encryption, then the attacker can verify guesses about the plaintext corresponding to a ciphertext.

This is why most encryption algorithms (for example RSA PKCS1 v1.5 with salt, RSA OAEP, block cipher modes for encryption or authenticated encryption such as CBC, CTR, OCB, CCM, EAX, GCM, …) include some form of unique input to the encryption of each message (typically random, though whether more than unicity is important depends on the mode): salt, counter or IV.

share|improve this answer
Yes , "perfect security" that's what I meant , thanks for the correction , I also edited my post. I think that you covered my question, thank you VERY MUCH!!! – IrishDog Feb 3 '14 at 21:42

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.