In Data Encryption Standard (DES), M is the input message and K is the key of 64 bits size. M is divided into n 64 sized blocks (B1,B2,B3...Bn).


DES encrypts the block, or decrypts it if it is used in the other direction.

DES is a block cipher and therefore a keyed permutation. The key is used to choose the permutation. In this permutation every value of the input is mapped to a pseudo-random output value of the same size. However, how the permutation is chosen is quite different from performing the permutation. Because of that it is unlikely that there are any mathematical properties exposed when encrypting the same data as the key.

From the practical side: before the DES key is used the 56 (not 64) bits undergo a subkey derivation to derive a separate (but related) key for each round. Already at this stage the key won't be equal to the input bits anyway. If DES had weaknesses in such a way that this kind of input would expose the key then it would be considered broken - and despite the key size and existence of other weak keys, it isn't.

That all said, encrypting the key is not considered very useful. Sure you can encrypt it, but you'd need to know the key to decrypt it again. If you already know the information then there is little need to do so. You could possibly use it to confirm a good key guess, but in that case CBC-MAC over a random block of data would arguably be better. It would also scale to other key sizes than the block size, for one. Moreover, it would not treat the key as plaintext data.

| improve this answer | |
  • $\begingroup$ Any answer that proofs that it is secure from a mathematical point of view should be preferred over this answer. $\endgroup$ – Maarten Bodewes Apr 18 at 13:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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