DES는 블록 암호입니다. 암호화 절차는 초기 및 최종 순열을 정의할 수 있는 2개의 순열(Pbox)과 16개의 Feistel 라운드로 생성됩니다. 각 라운드에는 사전 정의된 알고리즘에 따라 암호 키에서 생성된 서로 다른 48비트 라운드 키가 필요합니다.
DES는 치환(혼돈이라고도 함)과 전치(확산이라고도 함)를 포함한 암호화의 두 가지 필수 속성을 기반으로 합니다. DES에는 16단계가 포함되며 각 단계를 라운드라고 합니다.
각 라운드는 대체 및 전치 단계를 구현합니다. DES는 비대칭 암호 시스템입니다. 블록이 암호화되고 초기 순열 IP, 따라서 복잡한 키 종속 계산 및 마지막으로 초기 순열 IP의 역인 순열에 적용됩니다. −1 .
DES에서 다음 단계에 대해 논의해 보겠습니다.
-
초기 순열(IP) − 초기 순열은 암호화 프로세스 시작 시 한 번만 필요합니다. DES에서는 완전한 평문을 각각 64비트 블록으로 나눈 후 각 블록에 IP가 필요합니다. 이 초기 순열은 전치 절차의 한 단계입니다.
-
라운드 - DES는 16 라운드를 사용합니다. DES의 각 라운드는 Feistel 암호입니다. 라운드는 LI−1 소요 및 RI−1 이전 라운드에서 LI 생성 그리고 R나 , 다음 라운드로 이동합니다. 각 라운드에는 2개의 암호 구성요소(mixer 및swapper)가 있다고 생각할 수 있습니다.
이러한 각 구성 요소는 반전 가능합니다. 스와퍼는 확실히 뒤집을 수 있습니다. 텍스트의 왼쪽 절반을 오른쪽 절반으로 캔스왑합니다. 믹서는 XOR 연산을 통해 반전 가능합니다. 모든 비가역 성분은 functionf(RI−1 , K나 ).
-
최종 순열(FP) − 16 일 종료 시 라운드에서 최종 순열이 구현됩니다. 이것은 표에 따라 달라지는 간단한 조옮김입니다. 예를 들어, 40 번째 입력은 1 st 위치를 차지합니다. 출력 비트 등. 최종 순열의 출력은 64비트 암호화 블록입니다.
40 | 8 | 48 | 16 | 56 | 24 | 64 | 32 | 39 | 7 | 47 | 15 | 55 | 23 | 63 | 31 |
38 | 6 | 46 | 14 | 54 | 22 | 62 | 30 | 37 | 5 | 45 | 13 | 53 | 21 | 61 | 29 |
36 | 4 | 44 | 12 | 52 | 20 | 60 | 28 | 35 | 3 | 43 | 11 | 51 | 19 | 59 | 27 |
34 | 2 | 42 | 10 | 50 | 18 | 58 | 26 | 33 | 1 | 41 | 9 | 49 | 17 | 57 | 25 |
-
DES 복호화 − 이는 매우 복잡한 암호화 방식이므로 DES를 사용한 복호화는 궁극적으로 다른 접근 방식을 사용할 수 있습니다. 유사한 알고리즘이 DES의 암호화에 사용되며 복호화에도 작동합니다.
다중 테이블의 값과 연산 및 순서는 알고리즘을 되돌릴 수 있도록 신중하게 선택됩니다. 암호화와 복호화 절차의 유일한 차이점은 키 부분의 역순입니다.
원래 키 K가 16개의 암호화 라운드 동안 K1, K2, K3…