DES 편집하기

이동: 둘러보기, 검색

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 아이디(ID)으로 기록되고, 다른 장점도 있습니다.

편집을 되돌릴 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 당신의 편집
18번째 줄: 18번째 줄:
  
 
== 동작 과정 ==
 
== 동작 과정 ==
# 먼저 64비트의 평문이 첫 라운드를 거치지 전, IP(initial permutation, 초기치환)를 거친다.
+
1. 먼저 64비트의 평문이 첫 라운드를 거치지 전, IP(initial permutation, 초기치환)를 거친다.
# IP를 거친 후 나온 64비트 값은 각 L0와 R0로 32비트씩 나뉘어 들어간다.
+
 
# R0에 해당하는 32비트는 각 키 스케줄에 의해 나온 첫번째 48비트 키와 F 함수에 들어가고 F 함수는 결국 32비트를 도출해낸다.
+
2. IP를 거친 후 나온 64비트 값은 각 L0와 R0로 32비트씩 나뉘어 들어간다.
# 이렇게 생성된 32비트와 L0의 32비트를 XOR해준다.
+
 
# 마지막으로 생성된 32비트를 또 R1에 보내준다. 이 과정을 16라운드까지 반복해준다.
+
3. R0에 해당하는 32비트는 각 키 스케줄에 의해 나온 첫번째 48비트 키와 F 함수에 들어가고 F 함수는 결국 32비트를 도출해낸다.
# 마지막 라운드를 거칠때는 L과 R이 반대로 들어가게 된다.
+
 
# 이후 IP의 역에 들어가게 되고 마지막으로 output인 64비트 암호문을 얻게 된다.<ref name="크로커스"></ref>
+
4. 이렇게 생성된 32비트와 L0의 32비트를 XOR해준다.
 +
 
 +
5. 마지막으로 생성된 32비트를 또 R1에 보내준다.
 +
 
 +
이 과정을 16라운드까지 반복해준다.
 +
 
 +
6. 마지막 라운드를 거칠때는 L과 R이 반대로 들어가게 된다.
 +
 
 +
7. 이후 IP의 역에 들어가게 되고 마지막으로 output인 64비트 암호문을 얻게 된다. <ref name="크로커스"></ref>
  
 
== 취약점 ==
 
== 취약점 ==

위키원에서의 모든 기여는 다른 기여자가 편집, 수정, 삭제할 수 있다는 점을 유의해 주세요. 만약 여기에 동의하지 않는다면, 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다 (자세한 사항은 위키원:저작권 문서를 보세요). 저작권이 있는 내용을 허가 없이 저장하지 마세요!

취소 | 편집 도움말 (새 창에서 열림)