2
$\begingroup$

Would a DES algorithm that uses all 64 bits for the key instead of just the 56 bits be more secure? I have been thinking about it but those 8 bits used for parity are very useful and but including them in the key could potentially make it more easily cracked.

From Wikipedia, it stated that the 56 bit key was cracked in 4 days due to hardware. Now if we include the 8 parity bits to make it a 64 bit key, would that make the key crackable after 1024 days? My math: 2^8 * 4 = 1024 days. Assume we use the same hardware.

If we included the 8 parity bits, would it have made the security of DES substantially stronger?

$\endgroup$
4
$\begingroup$

Yes, it would be more secure if they were used correctly. But as it would require a substantially different algorithm, you really would not be talking about DES anymore.

Brute forcing usually scales exponentially with the size of the key. However, if the algorithm is substantially altered then it is required to analyze the algorithm again.

Note that AES is both faster and stronger than DES. There is no need to (substantially) alter DES now there are many better algorithms available.


(Triple) DES is mainly used for backwards compatibility now. The keysize of DES is too small key size to be of practical use; triple DES has a blocksize that is too small to be used for uses in modern modes of encryption (CTR, GCM etc).

$\endgroup$
1
$\begingroup$

Including Parity bits absolutely does not increase the cryptographic strength of DES (or 2-key TDES, or 3-key TDES). The DES feistel network itself only accepts eight 7-bit blocks as input, no more and no less. You can add as many parity as you want, but that doesn't mean any more bits are being processed by the algorithm.

Parity bits are either used pre-cipher to determine the integrity (against corruption, not attack) of each 7-bit block and truncated before encryption/decryption operations are performed, or ignored altogether. The only reason they were used in the first place was to make an uncommon block size align with a byte-dominated world of computing.

As an example, the following DES keys are all identical cryptographically speaking (all encrypt a fixed plaintext to the same ciphertext on implementations that do not reject keys for malformed parity bits):

AA AA AA AA AA AA AA AA
AA AA AA AA AA AA AA AB
AB AB AB AB AB AB AB AB
$\endgroup$
  • $\begingroup$ I'm used to stripping the high bit not the low bit (and further constraining the range to make it printable but that's another story). $\endgroup$ – Joshua May 8 '17 at 1:53

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.