DES와 TDEA의 기초

※이 기사는 htps : // 쿠노스. q 룬 ch. 이오 / 엔 트리에 s / QhK5 lyn PQw0 그럼 Pb0 으로 이동했습니다.

소개



DES(Data Encryption Standard)와 TDEA(Triple Data Encryption Algorithm)에 대해 『암호 기술 입문 제3판』 1에서 공부했으므로, 그 때의 메모를 Qiita용으로 변환해 투고한다.

또, 모두 Markdown으로 써 보는 일환으로서, mermaid로 그림을 써 보았다.
진짜는 Qiita가 mermaid에 대응하고 있으면 좋지만, 하고 있지 않기 때문에 여기에서는 Mermaid Live Editor 를 이용해 화상으로 변환.
mermaid 코드는 주석 처리했습니다.

DES란?


  • 1977년에 미국 연방 정부 표준의 암호화 방식으로 채용되었다.
  • 공통 키 암호 중 하나.
  • 공통 키 암호화 : 암호화 및 복호화에 동일한 키를 사용하는 암호화 방법

  • 현재 위협으로 인해 사용해서는 안되는 암호.
  • TDEA도 2023년 이후에는 사용금지가 된다. → 앞으로는 공통키 암호화 방식으로 AES(Advanced Encryption Standard)를 사용하게 된다.
  • 과거의 암호문을 복호하는 목적이라면 OK


  • 처리의 전반적인 이미지


  • 키 길이: 8byte
  • 평문 8byte마다 암호화를 실시한다.
  • 이 하나의 덩어리를 블록(block)이라고 한다.


  • 1 block 전용 암호화 처리 이미지



    흐름도로 표시됩니다.

    범례(접기)


    1 block만의 복호 처리 이미지 1 block보다 큰 크기의 데이터를 처리하는 방법 한 번에 8byte 밖에 암호화/복호할 수 있기 때문에 암호화/복호를 반복할 필요가 있다. 반복의 방법을 모드(mode)라고 한다. (자세한 설명은 다른 기사에서 할 예정) 암호화 처리 부분의 기본 구조 DES의 기본 구조는 파이스텔 네트워크(Feistel network)라고 불린다. 이것은 라운드 (= 암호화의 1 단계 분)를 여러 번 반복하는 구조이다. DES에서는 16회 round를 반복한다. 1 round 분의 구조 그림에서 용어의 의미 subkey: 8byte 의 키치로부터 생성된다. 각 round마다 다른 subkey를 사용한다. 라운드 함수 f: 4byte의 데이터와 subkey 를 인수로 해, 4byte의 데이터를 출력하는 함수.

    1회분의 round 로, 왼쪽 4byte가 암호화된다. 복호할 때는, 암호화시와 같은 처리를 하는 것만으로 좋다(XOR의 성질로, 같은 값의 XOR는 0이 되기 때문에). 즉, 라운드 함수 f는 역함수를 계산할 수 없는 복잡한 것일 수 있다. 그럼 라운드 함수 f는 구체적으로 뭔가 하는 이야기가 되지만, 이 기사에서는 생략한다. 2번째 이후의 round

    복호할 때는, subkey의 입력 순서를 반대로 하여 round를 같은 횟수만큼 행한다. DES 요약 암호화/복호를 동일한 구조로 할 수 있다. → 회로가 조립하기 쉽다 이 암호 알고리즘의 본질은 라운드 함수 f에 있다. TDEA Triple-DES라고도 하며, 그 이름대로 DES를 3회 실시하는 블록 암호이다. 3회 연산하기 때문에 DES보다 처리 속도가 느립니다. 처리의 전체 이미지 키: 8byte × 3개 (= 24byte) 합계의 키 길이가 DES보다 길어지기 때문에, DES보다 암호 강도가 높아진다. 평문 8byte 암호화 그림에서는 key1 → key2 → key3 순으로 처리를 수행합니다. 해독 암호화와 복호의 순서를 교환한다. 이 때, 설정하는 키의 순서를 암호화시와 반대로한다. key1 → key2 → key3 순으로 암호화 된 경우 key3 → key2 → key1 순으로 복호합니다. 키 수 3가지 다른 경우 DES-EDE3 EDE = Encryption -> Decryption -> Encryption의 흐름 둘만 다를 때 DES-EDE2 키 1, 3에 동일한 키를 사용 세 가지 모두 동일 일반 DES와 동일 두 번째 해독으로 평문으로 돌아가기 위해 TDEA 회로에서 일반 DES 암호화/해독 가능
    유키히로(2015) 「암호 기술 입문 제3판」 

    좋은 웹페이지 즐겨찾기