대칭 키와 비대칭 키는 암호화에 사용되는 두 가지 주요한 키의 개념이다.
대칭 키 (Symmetric Key)
대칭 키는 자물쇠와 같은 개념으로 하나의 키로 암호화와 복호화를 모두 수행한다.
예를 들어, "HELLO"라는 메시지를 보내려면 암호화할 때 사용한 키로 "HELLO"를 암호화하고, 이와 같은 키로 복호화하여 원래의 "HELLO"로 복원한다.
대칭 키는 암호화와 복호화 속도가 빠르고, 대량의 데이터를 암호화하는 데 효율적이나, 키를 안전하게 공유해야 한다는 것이 우려 사항이다. 키를 안전하게 공유하지 않으면 제 3자가 키를 획득하여 암호화된 데이터를 복호화할 수 있기 때문이다.
비대칭 키 (Asymmetric Key)
비대칭 키는 대칭 키의 문제점을 해결하기 위해 개발된 키 방식으로 공개 키와 개인 키의 쌍으로 이루어져 있다.
공개 키는 자물쇠와 같은 개념으로 누구에게나 공개되어 있고, 데이터를 암호화할 때 사용된다.
개인 키는 그 자물쇠에 해당하는 열쇠 역할을 하며 개인만이 소유하고 보호하며, 암호화된 데이터를 복호화하는 데 사용된다.
예를 들어, 가상의 사용자 A와 B가 있다고 가정해보고, A가 B에게 암호화된 메시지를 전송하려고 하는 상황을 보자.
1. A는 자신의 비대칭 키 쌍을 생성한다. 이 키 쌍은 공개 키와 개인 키로 이루어져 있다.
2. A는 B에게 암호화할 메시지와 자신의 공개 키를 전송한다.
3. B는 받은 메시지를 A의 공개 키로 암호화한다.
4. 암호화된 메시지를 다시 A에게 전송한다.
5. A는 받은 암호문을 자신의 개인 키로 복호화하여 원래의 메시지를 얻을 수 있다.
이처럼, 비대칭 키는 키의 안전한 공유를 해결하고, 안전한 통신과 전자 서명 등에 사용될 수 있으며, 비대칭 키 암호화는 대칭 키 암호화보다 계산 비용이 많이 들기 때문에, 일반적으로 대칭 키로 대량의 데이터를 암호화하고, 비대칭 키는 대칭 키의 안전한 교환과 데이터 무결성을 보장하기 위해 사용되는 것이 일반적이다.
'IT' 카테고리의 다른 글
NAS(Network Attached Storage)와 SAN(Storage Area Network) 차이점 (0) | 2023.07.05 |
---|---|
파일시스템의 종류 (0) | 2023.07.05 |
SSL, TLS 인증서 동작 원리 (0) | 2023.07.05 |
Advanced Threat Protection (ATP)란? (0) | 2023.07.05 |
JSON (JavaScript Object Notation), JWT (JSON Web Tokens)란? (0) | 2023.07.05 |