Information Security Stack Exchange is a question and answer site for information security professionals. 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 have a question regarding Encryption. Say an attacker stole my entire database. In that database all the data was encrypted. If the attacker took one piece of encrypted data and for some reason knew the original value of this one piece of encrypted data, could he use that knowledge to workout a way to decrypt all the other data efficiently?

share|improve this question
up vote 40 down vote accepted

When used correctly, no. This is one of the tests for semantic security, in fact. In another form, if an attacker can choose a plaintext to be encrypted by you, with your secret key, he should not be able to learn anything about any other data you have encrypted with the same key. This is what is known as CPA-secure (chosen plaintext attack) and AES is believed to be (as far as we can tell) CPA-secure. So not only can an attacker not decrypt other data using this knowledge, he can't even learn anything about the other data with this knowledge.

share|improve this answer
Thanks so much for the great response! – user2924127 Jan 8 at 22:02
Not saying anything is wrong with Xander's answer, but feel like adding that this answer assuming AES (the block cipher encryption function) is being used properly then it will be CPA-secure (as far as we know). If you used AES in say ECB mode (which should never be used), then an attacker can do chosen plaintext attacks on your database by encrypting various likely plaintexts and seeing wherever it matches encrypted data. Or if you used AES in CTR mode but the same seed is used to encrypt different data, then you've lost semantic security if the attacker can do chosen-plaintext attacks. – dr jimbob Jan 8 at 22:11
@drjimbob Definitely a good point. You would also leak a block of information if static IVs are used with CBC mode. I've edited the answer to reflect this, in general terms. – Xander Jan 8 at 22:13

No. That's called a "known plaintext attack", and is preventing that scenario is specifically one of the goals of an algorithm designer.

share|improve this answer

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.