David Wong의 Real-World Cryptography를 읽기 시작했다.
앞선 HOW LINUX WORKS를 정리하다가 내 손가락과 시간이 타버리는 것 같아서 이제부터는 키워드 중심으로 정리하기로 하였다.혹은 내가 더 이해하길 원하는 (기존에 알지 못했던) 개념을 위주로 정리할 듯 하다.
= Secret key cryptography (비밀 키 암호)
Kerckhoffs(케르크호프스)의 원리
암호 체계의 안전성은 key의 비밀성에만 의존해야 한다.
암호화하는 사람과 복호화하는 사람이 서로 한 개의 같은 비밀키를 공유하여 해당 키로 암호화/복호화에 사용한다.
장점: 공개 키에 비해 계산 속도가 빠르다
단점: 비밀 키를 전달하는 과정에서 노출될 가능성이 있다
= public key cryptography (공개 키 암호)
Diffie-Hellman(DH, 디피-헬먼) 키 교환 알고리즘 : 비대칭 암호의 한 종류
1. 두 사람이 공개 키(비밀 키가 가려짐)를 생성한 후 서로 교환한다.
2. 상대방의 공개 키와 각자의 비밀 키를 사용해서 암호문을 계산한다
3. 공격자는 공유 비밀을 계산할 수 없다!
단점: 공격자가 본인의 키로 다른 이를 가장할 수 있다
RSA algorithm
DH에서 발전. 하나는 공개 키 암호화 알고리즘, 나머지 하나는 복호화 비밀 키이다.
공개 키는 모두에게 열려있다. 공개 키를 통해 암호화하고 비밀 키를 통해 복호화할 수 있다.
Digital signatures with RSA
일반적인 분류
설계에 따른 분류
목적에 따른 분류