2014년 7월 5일 토요일

[link] 공개키 암호 방식 (Public Key Infrastructure) 설명 link들 모음

SSL/TLS 관련 내용을 찾아보다 공개키 암호 방식 관련 내용이 나와 찾아봄.
여러번 배워도 항상 이해하지 못하고 까먹었던 관계로 괜찮은 링크를 정리함.


[공개 키 암호 방식, wikipedia]

http://ko.wikipedia.org/wiki/%EA%B3%B5%EA%B0%9C_%ED%82%A4_%EC%95%94%ED%98%B8_%EB%B0%A9%EC%8B%9D

공개 키 암호 방식의 원리는 위 링크에서 다음과 같이 설명하고 있음.
초기 암호화 방식의 경우 소수를 골라 비밀 키(private key)를 만들고 비밀키의 곱을 공개 키(public key)를 사용함.  충분히 큰수의 소인수 분해를 하기에는 시간과 비용이 많이 소요 되므로 안정성이 완벽하지는 않지만 보장됨. 


공개 키 암호 방식은 출제자만이 알고 있는 특정한 종류의 정보(비밀 키) 없이는 매우 풀기 어려운 수학적 문제(공개 키)를 바탕으로 만들어진다. 키를 만드는 사람은 이 문제(공개 키)를 일반에 공개하고 특정한 정보(비밀 키)는 자신만이 알수 있도록 숨긴다. 그러면 어떤 사람이건 이 문제를 이용해 메시지를 암호화하면 키를 만든 사람만이 이 문제를 풀어 원래 메시지를 해독할 수 있다.
RSA 암호와 같은 초기 암호들은 두 개의 큰 소수를 곱한 숫자를 문제로 사용하였다. 사용자는 임의의 큰 소수를 두 개 골라 비밀 키로 삼고 그 곱한 값을 공개 키로 공개한다. 큰 수의 소인수분해는 대단히 풀기 어려운 문제에 속하기 때문에 다른 사람들은 비밀 키를 알 수 없을 것이라는 사실이 보장된다. 그러나 최근 이 분야의 연구가 크게 진전되어 RSA의 안전성을 보장하기 위해서는 수천비트 이상의 큰 소수를 키로 사용해야 한다.
또 다른 종류의 문제로는 a와 c가 알려진 상태에서 방정식 ab = c의 해 b를 구하는 문제가 있다. 실수나 복소수에 대해서는 로그 함수를 이용해 이 문제를 쉽게 풀 수 있다. 그러나 유한군에서는 이런 문제를 풀기가 어려운 것으로 알려져 있으며 이런 문제를 이산 로그 문제라 부른다. 타원곡선암호를 비롯한 여러 가지 공개 키 암호들이 이산 로그 문제를 바탕으로 만들어져 있다.


[RSA 원리에 대한 자세하고 친절한 수학적 설명]
http://www.parkjonghyuk.net/lecture/modernCrypto/lecturenote/chap05.pdf

위 링크의 PT에서는 RSA의 수학적 설명이 친절하게 조곤조곤 설명해 주고 있음. 중학교 때 배웠던 내용이 기억이 안날 경우 아래 슬라이드를 보면서 파악하면 좋을 듯


[공개 키 암호화 이해]
http://technet.microsoft.com/ko-kr/library/aa998077

동작 방식과 디지털서명, 메세지 암호화에 대해 그림과 상세한 설명을 제공하고 있음.시간을 두고 읽어보는게 좋겠다.
각 절차에 대한 설명과 과정에서 사용되는 방법에 대한 설명이 있음.
예를 들어 서명에서 해시를 사용하는 이유와 메세지 암호화 시 공개 키가 아닌 일회성 세션 키(대칭 키)를 사용하는 이유가 암호화/복호화시 비용 절감이라는 것들에 대해서도 자세히 설명해 주고 있음.

(그림)


[공개 키 기반 암호화와 공인인증관련 설명]
http://crazia.tistory.com/entry/PKI-PKI-%EC%9D%98-%EA%B8%B0%EB%B3%B8-%EA%B0%9C%EB%85%90-%EA%B0%84%EB%8B%A8-%EC%84%A4%EB%AA%85

공개 키 기반 설명과 실제 사용하고 있는 공인인증과 공개 키 기반 암호화의 매칭도 설명해주고 있음.





댓글 없음:

댓글 쓰기