2010-1 학기현대암호학 제 6 장. 하이브리드 암호시스템 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr
목차 하이브리드암호시스템 강한하이브리드암호시스템 암호기술의조합
6.0 주요내용 하이브리드암호시스템 대칭암호의장점인빠른처리속도 비대칭암호의장점인키배송문제의편리함 평문을대칭암호로암호화 평문을암호화할때사용했던대칭암호키를공개키암호로암호화 하이브리드암호시스템을통해, 대칭암호와공개키암호의장점을조합한통신수행이가능
6.1 하이브리드암호시스템
6.1.1 대칭암호와공개키암호 대칭암호를사용하면기밀성을유지한통신이가능 대칭암호를실제로운용하기위해서는키배송문제를해결할필요가있음 공개키암호를사용하면 복호화에사용할키를배송할필요가없어지기때문에대칭암호가근본적으로가지고있는키배송문제를해결할수있음
공개키암호의 2 가지큰문제 (1) 공개키암호는대칭암호에비해처리속도가훨씬느림 (2) 공개키암호는중간자 (man-in-the-middle) 공격에취약 하이브리드암호시스템 (1) 의문제를해결 (2) 의문제를해결 공개키에대한 인증 필요 ( 제 10장에서소개 )
6.1.2 하이브리드암호시스템 기밀성을위해메시지를일단고속의대칭암호로암호화 대칭암호키의기밀성을지키것이필요 공개키암호를사용 메시지를암호화할때에사용한대칭암호키를데이터로간주하여공개키암호로암호화함 메시지의길이에비해일반적으로대칭암호키의길이는짧기때문에이처럼짧은데이터를암호화하는데공개키암호의속도가느린것은별문제가되지않음
하이브리드암호시스템의구조 메시지 : 대칭암호로암호화 대칭암호의암호화에서사용한세션키 의사난수생성기로생성 세션키는공개키암호로암호화 공개키암호의암호화에서사용하는키 하이브리드암호시스템의외부로부터부여
하이브리드암호시스템에사용되는 3 가지암호기술 하이브리드암호시스템의 3 가지암호기술 의사난수생성기 대칭암호 공개키암호 하이브리드암호시스템 이 3 개의암호기술을조합, 대칭암호와공개키암호의장점을갖춘새로운암호를만듦
하이브리드암호시스템의암호화와복호화 암호화키 복호화키 암호문 평문 평문 암호문 하이브리드암호시스템의암호화 하이브리드암호시스템의복호화
6.1.3 암호화 평문 키 암호문 메시지의암호화 세션키의암호화 결합
하이브리드암호시스템의암호화 메시지 하이브리드암호시스템의 평문 하이브리드암호시스템의 키 수신자의공개키 평문 의사난수발생기 세션키 공개키암호로세션키를암호화 키 평문대칭암호로메시지를암호화암호문 암호문 공개키암호로암호화된세션키 대칭암호로암호화된메시지 세션키의암호화 결합 메시지의암호화 하이브리드암호시스템의 암호문 공개키암호로암호화된세션키대칭암호로암호화된메시지
6.1.4 복호화 분할 세션키의복호화 메시지의복호화
하이브리드암호시스템의복호화 공개키암호로암호화된세션키대칭암호로암호화된메시지 하이브리드암호시스템의 암호문 세션키의복호화 분할 메시지의복호화 하이브리드암호시스템의 키 공개키암호로암호화된세션키 암호문 대칭암호로암호화된메시지 수신자의개인키 키 공개키암호로세션키를복호화 세션키 평문 키 암호문대칭암호로메시지를복호화 평문 메시지 하이브리드암호시스템의 평문
6.1.5 하이브리드암호시스템의장점 기밀성 비대칭암호한가지만사용해도기밀성을보장할수있지않은가? 대칭암호만사용하여기밀성을보장받기위해서는 통신을하는쌍방이메시지암호화에사용할세션키를사전에공유해야함 ( 세션키배송의문제 ) 하이브리드암호시스템 세션키를안전하게수신자에게전달하는역할 : 공개키암호시스템부분이해결
기밀성뿐만아니라속도도고려 처음부터공개키암호한가지만사용해도기밀성을보장할수있지않은가? 공개키로암호화를할경우 메시지를복호화하는시간이대칭암호를이용할때보다적게는수십배많게는수백배의시간이걸림 ( 비효율적임 )
기밀성뿐만아니라속도도고려 두컴퓨터나라우터등의경우에는수신된암호화된데이터를빠른시간내에복호화할함 만약처리속도가늦게되면, 트래픽이지체되어서버나인터넷등의속도가느려짐 암 / 복호화속도문제도심각한문제가될수있음 라우터나기타대량의데이터를처리해야하는노드 대부분대칭암호시스템을사용
6.1.6 하이브리드암호시스템의예 하이브리드암호시스템에서는 공개키암호의처리속도가느린것을대칭암호로해결 대칭암호의키배송문제를공개키암호로해결 Web 의암호통신에서사용되고있는 SSL/TLS 유명한암호소프트웨어인 PGP PGP 의처리에서는, 하이브리드암호시스템에추가해서디지털서명 / 서명의검증, 개인키의관리라는처리도연관됨
6.2 강한하이브리드암호시스템 하이브리드암호시스템이의사난수생성기, 대칭암호, 공개키암호를조합시킨것이기때문 하이브리드암호시스템이강한보안성을갖기위해각각의기술요소가강한보안성을갖아야함 또한강도의밸런스도중요함
6.2.1 의사난수생성기 하이브리드암호시스템에서는세션키를만들어내는데의사난수생성기를사용 의사난수생성기의품질이나쁘면 만들어지는세션키를공격자가추측하게될위험성이존재 의사난수생성기의품질이나쁘다는의미는생성되는의사난수가진성난수의특성인무작위성이나비주기성등이약한경우를의미
난수의생성 (1) 암호화의사용에중요한역할 난수를키분배에서비표로사용 임의성 (Rondomness) 균일분포 순서상으로수의분포가균일해야함, 각수의출현빈도가거의동일해야함 독립성 순서상어떤값도다른값으로부터추론될수없음 비예측성 (Unpredictability) 임의적순서를갖는각수는다른수와통계적으로독립적이고, 비예측적임
난수의생성 물리적잡음생성기 ( 가스방출튜브, 누전축전지등 ) 임의성과정확도에문제 의사난수 (pseudo random number) 사용 통계적으로임의적이아닌일련의수를생성 임의성시험통과된수
난수를생성하는방법 순환암호방식 주기가 N인카운터를암호장치의입력으로사용 DES 의 OFB 모드 스트림앙호화, 키생성에사용 ANSI X9.17 의사난수생성기 암호학적으로가장강력한난수생성기 Blum Blum Shub 생성기 [ 카운터를이용한의사난수생성 ]
ANSI X9.17 의사난수생성기 입력 두개의의사난수값이생성기를구동 현재의날짜와시간을나타내는 64비트값 ( 난수생성마다갱신 ) Seed 값 ( 임의의값으로초기화되며생성과정중갱신 ) 키 생성기는 3개의 3중 DES 모듈을사용 출력 64비트의사난수와 64-비트 seed값으로구성
6.2.2 대칭암호 하이브리드암호시스템에서는메시지를암호화할때대칭암호를사용 강한대칭암호알고리즘을사용하고, 키길이도충분히길게할필요가있음 적절한블록암호모드를사용할필요가있음
6.2.3 공개키암호 하이브리드암호시스템에서는세션키를암호화할때공개키암호를사용 강한공개키암호알고리즘을사용하고, 키길이도충분히길게할필요가있음
6.2.4 키길이의밸런스 하이브리드암호시스템에서는대칭암호와공개키암호두가지가모두사용 어느쪽인가한쪽의키길이가극단적으로짧으면, 공격이그쪽으로집중될가능성이있음 대칭암호와공개키암호의키길이는양쪽이같은정도의강도가되도록길이를맞추는것이바람직함 ( 키길이의밸런스중요함 )
6.3 암호기술의조합 하이브리드암호시스템에서는대칭암호와공개키암호를조합 양쪽의장점을살리는시스템을구축 암호기술을조합해서보다유용한시스템을구축한다는것은자주사용되는기법 3DES 는 DES 를 3 개조합해서 DES 보다도긴키길이를갖는대칭암호를만듦
암호기술조합의예 디지털서명 : 일방향해시함수 + 공개키암호 인증서 : 공개키 + 디지털서명 메시지인증코드 : 일방향해시함수 + 키 대칭암호로부터만드는경우 의사난수생성기 : 대칭암호, 일방향해시함수, 혹은공개키를사용
Q & A Thanks