2018년 8월 11일 토요일

TDES 암호알고리즘의 사용제한 권고(NIST)

 뉴딜코리아 홈페이지 

NIST, TDES 암호알고리즘의 사용제한 권고 .. (금융보안원)

○ 최근 NIST에서는 구조적 취약성을 이유로 특정 암호알고리즘의 용도에 따른 사용제한을 권고함


1. NIST 소개

○ NIST(미국 국립표준기술연구소): 미국 상무부 산하 기관으로서 컴퓨터 보안, 정보기술 분야와 관련된 미국 내의 표준 지정 및 가이드라인, 권장사항, 기술 사양 등의 간행물을 배포

○ NIST 문서: 암호를 포함한 정보기술 등 관련 분야에서 국제적인 로드맵을 주도하는 역할을 하고 있음


※ 우리나라 고시, 가이드라인, 안내서에 명시된 ‘안전한 암호 알고리즘’은 국내·외 전문기관 (KISA, NIST, ECRYPT, CRYPTREC 등)이 권고하는 암호알고리즘을 뜻함

◦ 2018년 7월에 개정된 NIST표준문서(SP800-131A1))의 주요 개정 사항은 TDES 암호알고리즘*의 사용중지 계획이며,  (SP800-131A: 안전한 암호알고리즘의 종류와 사용 권고 기간을 제시하고 있기 때으며, 국내·외에서 알고리즘의 보안성을 확인 할 때 주로 참고)

* NIST에서는 TDEA(Triple Data Encryption Algorithm)로 표기하며, 국내에서는 TDES(Triple Data Encryption Standard) 또는 3DES로 표기함)

- 동 표준은 2030년까지로 안전성을 허용했던 TDES의 사용을 점진적으로 중지하도록 권고하고 있음


2. TDES의 보안 취약점

(가) TDES의 소개

○ (특징) TDES는 DES*를 세 번 연이어 연산**하는 암호알고리즘으로 1998년 배포(ANSI X9.52 문서)되었고, DES와 동일한 블록크기(64bit)를 가지는 블록암호임

 * DES는 64bit의 평문을 56bit의 키로 암호화 하는 구조적 특징을 가짐
 ** TDES연산: DESkey1암호화 – DESkey2복호화 – DESkey3암호화 연산을 수행

<참고 : 블록암호의 보안성>
 블록암호: 기밀성 있는 정보를 정해진 블록 단위로 암호화하는 대칭키 암호 시스템 
블록암호의 보안성: 비밀키 길이가 k비트일 때 2(K)개의 비밀키 후보중에서 암호화에 사용된 키를 찾는 것에 의존

- 컴퓨팅 파워가 증가하면서 DES의 보안강도가 약해졌으나, 다른 암호알고리즘이 제시되기 전까지 TDES를 임시로 사용

※ 2000년 10월 이후, 128bit 이상의 블록크기를 갖는 블록암호알고리즘(AES, ARIA, SEED 등)이 등장


○ (종류) 세 번의 DES 연산에서 서로 다른 세 개의 암호키를 사용하는 ‘3키 TDES’와 암호키 준비(키 스케줄링) 시간을 줄이기 위해 두 개의 암호키만 사용하는 ‘2키 TDES’가 있음

- 2키 TDES는 2015년 이후로 암호화 용도로 사용 중지

- 3키 TDES는 2030년까지 사용 가능한 것으로 권고해왔음





○ (사용처) Windows XP 등 이전 운영체제 및 이전 프로토콜 (SSL, 초기 TLS 등)에서 전송 및 저장 중 계정 데이터를 보호하기 위한 방법으로 결제환경에서 자주 사용되었으며,

- 현재는 이전 운영체제와 이전 프로토콜과 호환을 위해 일부 제품에서 선택사항으로 TDES암호알고리즘을 탑재하고 있음


(나) TDES의 보안 취약점

○ TDES는 DES의 암호연산 구조상 특징으로 인해 특정 환경에서 비밀키와 상관없이 평문을 알아낼 수 있는 공격에 취약

- TDES는 현재 국내·외에서 권고하는 다른 블록암호*에 비해 작은 블록크기(64bit)를 가짐
  * AES, ARIA, SEED 등의 128bit이상 블록크기를 갖는 암호알고리즘

- 특정 운영모드에서 서로 다른 입력 값임에도 암호화된 결과 값이 동일한 ‘충돌’ 이 일어날 확률이 큼(일반적으로는 해시값 충돌처럼 입력값 대비 출력값의 경우의 수가 더 적을 때 일어나는 현상을 말하며, TDES와 같은 대칭암호에서는 동일한 암호키와 동일 암호알고리즘에서 서로 다른 입력값에 의한 암호 출력값이 동일한 경우, 충돌이라고 함)

<참고 : 운영모드의 보안성>
운영모드: 블록암호 사용 시 암호화하려는 정보가 블록 길이보다긴 경우, 블록암호를 처리하는 형태
운영모드의 보안성: 사용된 블록암호의 블록 크기에 영향을 받음

- 충돌이 일어날 경우, 충돌된 암호 출력값에서 암호키 없이 입력값을 추측할 수 있음 (CVE-2016-2183, Sweet32 취약점은 TLS 64bit 생일공격으로서 블록암호 SSL/TLS 중 특정 설정에서 충돌을 일으켜서 암호화 데이터 중 평문을 추측해 내는 취약점)

○ 특히, 다음의 환경에서 TDES가 활용 될 때 보안성에 큰영향을 줌

   ①동일한 비밀키가 중복되어 사용되는 환경,

   ②일부 평문을 공격자가 알고 있는 환경

- TDES가 TLS, IPSec, SSH와 같은 프로토콜에서 사용되는 경우, 프로토콜 보안성에 영향을 미침



☞ 추가 상세 내용은 첨부파일을 참고 하세요 .(click)


컨설팅 : ISMS, ISO27001, GDPR, PCIDSS 
취약점 진단 및 모의 침투
보안솔루션 공급
070-7867-3721, ismsbok@gmail.com

댓글 없음:

댓글 쓰기