module Crypt_des: sig
.. end
DES, created by the NSA, is a 64 bit block cipher,
so the following applies:
module Cryptsystem: Cryptsystem_64.T
module Cryptmodes: Cryptmodes_64.T
with type key = Cryptsystem.key
Key management functions:
Although only 56 bits count a DES key is written with 64 bits. The
extra bits are used for parity checking.
val check_parity : string -> unit
Checks that the parity of the key given as string is ok. The string
must have a length of 8 characters.
val set_parity : string -> string
Sets the parity bits in the given key and returns a new string.
- DES has been heavily studied and seems to have a rather good design
- DES has only 56 bit keys (this means DES should be considered a
weak algorithm today, but the variant 3DES is still secure)
- DES has been designed to be implemented in hardware, and software
implementations are relatively slow
- DES is an ANSI and (indirectly) an ISO standard.
- There are very few weak keys.