
공개키 암호화 방식은 암호방식중 한종류로 사전에 비밀키를 나눠가지지 않은 사용자들이 안전하게 통신할 수 있도록 설계된 것입니다. 공개키 알고리즘은 비대칭 암호라고 부르기도 합니다. 왜냐면 공개키 암호화 방식은 암/복호화에 다른 암호키를 사용하기 때문입니다.
통신을 위해 필요한 키 종류는 2가지입니다.
1) 공개 키 : 누구나 알 수 있음
2) 비밀(개인) 키 : 소유자만 알 수 있음
공개키 암호 방식은 2가지로 나뉩니다.
1) 공개 키 암호 : 비밀키를 가지고 있는 사람만 내용을 확인 가능
2) 공개 키 서명 : 특정한 비밀키로 만들었다는 것을 누구나 확인 가능
A사용자에게서 B사용자에게로 데이터를 전달하고 싶을 때, Destination인 B사용자 이외 사람은 해독이 불가능 해야 안전하게 전달 할 수 있습니다.
1. B사용자는 자신의 공개 키를 공개합니다. 이 공개 키는 암호화에 사용되는 키 이며, 누구든지 열람할 수 있습니다.(복호화에 사용되는 키는 자신만 가지고 있음. 이 키를 잃어버리면 안됨)
2. A사용자는 B사용자의 공개 키로 데이터를 암호화합니다.
3. 암호화된 문서를 B에게 전송합니다.
4. 전송받은 암호화 문서를 B는 자신만의 개인 키(복호화 키)로 복호화하여 데이터를 열람합니다.
- 디피-헬만 키 교환
- RSA 암호화
- Rabin 암호
- Rabin 암호
- ElGamal
- DSA
등..
공개 키 암호방식과 다소 다른 대칭키 암호화 방식은 암/복호화 에서 동일한 암호를 사용합니다. 대표적으로 AES(Advanced Encryption Standard)가 있습니다. 높은 안정성과 속도로 인해 전세계적으로 많이 사용되고 있습니다.
| 개발자 유튜버, 구독자 1000명 달성까지의 여정. 그리고 수익창출 (2) | 2020.03.12 |
|---|---|
| NAT IP란? (0) | 2020.03.08 |
| system call이란? (0) | 2020.03.08 |
| 티스토리 블로그에 눈⛄내리게 하기! 간단한 Javascript, html 편집 (2) | 2019.12.24 |
| Udacity 데이터 스트리밍 강의정리 - Faust python module 소개 (0) | 2019.11.21 |
| Udacity 데이터 스트리밍 강의정리 - 데이터 스트리밍 기초 (0) | 2019.11.20 |