<기존 대칭키 암호의 딜레마>
Key Distribution Problem : 키 분배 문제, 키를 보내면 Eve도 복호화 할 수 있고, 보내지 않으면 Bob이 복호화 할 수 없다.
해결방안 :
1) 키의 사전 공유 (TA, Trusted Authority)
키 관리기관 TA가 사전에 임의의 두 사용자 A, B에게 비밀 경로를 통하여 K(A,B)=K(B,A)를 선택하여 전달한다. 이 방법은 일반적으로 TA와 네트워크 상의 모든 사용자 사이에 안전한 통로가 필요하다.
N명의 사용자, 각 사용자가 N-1개의 키를 관리해야한다면 TA가 N(N-1)/2 개의 키를 관리해야한다는 문제점이 있다.
2) 온라인 키 분배 (KDC, Key Distribution Center)
TA가 필요할 때마다 키를 공유하는 방법
신뢰받는 제 3자에 의뢰해서 필요할 때 마다 개인과 키배포센터 사이에서 키를 사전에 공유하는 것이다.
N명의 사람 N개의 키를 DB에 저장한다.
3) 공개키 암호
RSA, Rabin : 소인수분해 문제
ElGamal, DSA, ECC 이산대수 문제
4) Diffie-Hellman 키 교환
안전성이 이산대수 문제에 기인한다.
<공개키 암호>
<RSA>
키의 생성 :
<OAEP, RSA-OAEP, Opiaml Asymmetric Encryption Padding>
<Rabin>
e를 b로 사용한다. 큰수 N을 두개 소수의 곱으로 소인수분해하는 수준의 복잡도와 동일하고, 복호화시 동등 확률로 4개의 평문후보가 사용된다.
<ElGamal>
Diffie-Hellman의 확장으로 이산대수 문제이다. 전자서명,암호화,키교환에 사용한다.
<Elliptic Curve Crytosystem, ECC>
타원곡선군에서의 이산대수 문제이다. RSA의 1024bit와 ECC의 160비트의 효율이 같다. WPKI 로 무선방식이다.
<하이브리드 암호>
SSL/TLS에서 사용한다.