Historia
El algoritmo TDES (3DES, Tripple DES) se creó en 1978 como una mejora del algoritmo DES. En comparación con este último, la fuerza criptográfica ha mejorado, pero el tiempo de cálculo se ha triplicado. Aunque el algoritmo de cifrado más común en la actualidad es AES, que ha sido adoptado como estándar de cifrado por el gobierno de los EE. UU., TDES se usa ampliamente. Por ejemplo, incluso ahora se puede encontrar en los productos del sistema de Microsoft.
El algoritmo también se utiliza para el cifrado de datos en streaming en canales de transmisión donde no se necesita una alta capacidad criptográfica. La implementación de hardware del algoritmo TDES, y aún más DES, ocupa un área más pequeña en comparación con el AES más seguro, que puede jugar un papel clave a la hora de elegir un algoritmo. Por esta razón, aún hoy se puede encontrar en procesadores de señal nacionales y extranjeros.
¿Por qué decidí hacer esto y describir
, . , , . -, , . -, ROM , " ". - , . , . .
, . DES , [1], TDES-EDE3 .
DES
TDES DES. .
IP. 64 T IP.
16 . T0 L0 R0. :
ki. 8, 16, 24, 32, 40, 48, 56, 64 , . . 64- , 56 . , . , KI ( 64- ), . 28 . , : , , , .
48 56 KO.
f. f 32- R(i-1) 48- ki. f :
E. 32- R(i-1) 48 E.
Xor .
S. 8 6 . S-. , .
P. P. 32 .
OP. 16 OP.
DES (. 2). .
DES
. [2], -. .
, , . , , , . , , , .
, , f. , P. xor , , , S.
S .
. (. . 1). , stage 0.
, . , -, f, - Ri. R(i-1) L(i-1) 32 ki 48 . Ri Li. . System Verilog.
, .
, , , , .
fdecrypt. .. , Lout Rout fencrypt. , .. 16- , 15- ..
DES. , . .
S-. 512 = 64*8 , S-. key = 64'h0, : S-, , . , , . , E 32- 64-. , , OP. , S-. .
, .
.. , , 17 (16 ), .
, RTL DES .
TDES
TDES . 3DES-EDE3 (encrypt-decrypt-encrypt) . , 168 ( 192 ), 64 .
. 16 . IP OP, . . RTL .
: DES , TDES. 64'hffffffffffffffff. , S- TDES, .. , , DES. TDES. , , , S- , DES 64'h0.
Salir
He escrito y probado los algoritmos de cifrado RTL DES y TDES-EDE3. También escribí vectores de prueba para estos algoritmos. Todas las fuentes están en github , espero que te ayuden a familiarizarte o incluso a implementar estos algoritmos. ¡Gracias por la atención!