Аппаратная реализация алгоритмов DES и TDES-EDE3

TDES (3DES, Tripple DES) 1978 DES. , . , AES, , TDES . , Microsoft.





, . TDES, DES, AES, . .





, . , , . -, , . -, ROM , " ". - , . , . .





, . DES , [1], TDES-EDE3 .





DES

. 1.   DES
. 1. DES

TDES DES. .





DES 64 56 ( 64 ). excel . 1 :





  • IP. 64 T IP.





  • 16 . T0 L0 R0. :





    \begin{equation} 	\begin{gathered} 	L_{i} = R_{i-1} \\ 	R_{i} = L_{i-1} \oplus f(R_{i-1}, k_i), 	\end{gathered} 	\end{equation}
  • 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). .





. 2.   DES
. 2. DES

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.





512*3 = 1536 . TDES .





RTL DES TDES-EDE3. . , . !






:

  • [1]





  • [2]




















All Articles