로드맵
Asymmetric key cryptography
Diffie-Hellman
RSA
Korean crypto algorithms
대칭키는 confidentiality
해시는 integrity를 담당하는 프리미티브였다.

한 사람은 자신의 공개키와 비공개키를 가지고 있다.
비대칭키 알고리즘은 Encryption과 Digital signature 기능을 수행할 수 있다.

Alice 는 자신의 개인키로 메시지를 암호화할 수 있다. 복호화를 할 수 있는 Alice 의 공개키는 모두가 알고 있으므로 모두가 복호화를 할 수 있고, confidentiality가 보장이 안된다!
하지만 암호화를 할 수 있는 것은 Alice 밖에 없으므로 서명의 역할을 할 수 있다.
단점은 느리다..!!
그래서 대칭키와 연계해서 쓰게된다.
대칭키를 공유하는데에 비대칭키를 쓰고 메시지를 전달할때 공개키를 쓴다.

서명도 느려..!
메시지를 해시함수에 돌려서 크기를 줄인 뒤 비대칭키로 서명한다.

사람이름을 딴 알고리즘 , 최초의 공개키 알고리즘이지만 아직 쓰인다.
공개키 알고리즘의 수학적,이론적 증명을 한다.
전자서명은 X, 공개키를 교환하는 알고리즘이다.
Alice,Bob 이 큰 소수 와 보다 작은 값 에 대해 공개키로 쓰기로 합의한다.
Alice 는 개인키 를 선택하고 를 Bob에게 보낸다.
Bob은 개인키 를 선택하고 를 Bob에게 보낸다.
Alice 는 를 알 수 있고
Bob은 를 알 수 있어서
키를 공유한 것이 되게 된다.
전자서명, 키교환 다 된다!
앞에꺼는 discrete logarithm이 어려운거에 기반했고,
RSA는 소인수 분해가 어렵다는 거에 기반함
모듈러연산에 대해 다음이 성립한다.
((a mod n) + (b mod n)) mod n = (a+b) mod n
((a mod n) - (b mod n)) mod n = (a-b) mod n
((a mod n) (b mod n)) mod n = (ab) mod n
그러므로 다음도 성립한다.
두 큰 소수 p,q를 선택한다.
ø(n)=(p-1)(q-1)이라 하자 (n=p*q, 오일러 파이 함수라고 한다.)
그리고, ø와 서로소 관계(gcd(e,ø(n)=1)인 e를 선택한다.
e * d = ø(n) mod 1이 되는 d를 선택한다.
이 계산에서 PU={e,n}이 공개키
PR ={d,n} 이 비밀키가 된다.
암호화 방법?
공개키 PU={e,n} 를 가져온다.
를 한다.
복호화 방법?
을 한다.
예시들

키 전달

서명

다시 말하지만 전자서명은 부인봉쇄를 위한 작업!
공개키 암호화 RSA 전자서명 -> non repudiation(부인 봉쇄)
(나 안했어 봉쇄) (integrity 검증 , 원본 M 이 바뀌지않았음이 확인됨)
integrity 검증
1. keyed hash , H(k||m)
2. 대칭키 CBC
3. 전자서명
큰 의미는 없는디…
한때 암호가 무기처럼 활용됨 그래서 한국형 암호를 만들었다
다음 시간에는 이때까지 배운 암호화 기법들을 사용해서 응용을 어떻게 했나는 살펴볼 예정입니다.