암호화 & 복호화
🔒 암호화 (Encryption) & 복호화 (Decryption)
암호화는 평문(Plaintext), 즉 알아볼 수 있는 형태의 데이터를 암호 키(Key)를 사용하여 알아볼 수 없는 형태의 암호문(Ciphertext)으로 바꾸는 과정입니다. 반대로, 복호화는 암호문을 다시 암호 키를 사용하여 평문으로 되돌리는 과정입니다.
암호화는 허가되지 않은 사람이 데이터를 엿보더라도 그 내용을 알 수 없게 하여, 데이터의 '기밀성(Confidentiality)'을 보장하는 핵심 기술입니다.
🔑 암호화 방식의 종류
암호화와 복호화에 사용하는 키가 동일한지 여부에 따라 대칭키와 비대칭키 방식으로 나뉩니다.
- 대칭키 암호화 (Symmetric-key cryptography)
> * 암호화할 때 사용하는 키와 복호화할 때 사용하는 키가 동일한 방식입니다. > * 장점: 암호화 및 복호화 속도가 매우 빠릅니다. > * 단점: 키를 안전하게 전달하고 관리하기가 어렵습니다. (키 배송 문제) > * 대표 알고리즘: `AES`, `DES`, `SEED`
- 비대칭키 암호화 (Asymmetric-key Cryptography)
> * 암호화 키와 복호화 키가 서로 다른 방식입니다. 이 두 키는 수학적으로 쌍을 이루며, 하나는 외부에 공개(공개키, Public Key)하고 다른 하나는 개인이 안전하게 보관(개인키, Private Key)합니다. > * 공개키로 암호화한 데이터는 오직 그 쌍이 되는 개인키로만 복호화할 수 있습니다. > * 장점: 키를 안전하게 전달할 필요 없이, 공개키만 공유하면 되므로 키 관리가 용이합니다. > * 단점: 대칭키 방식에 비해 암호화 및 복호화 속도가 매우 느립니다. > * 대표 알고리즘: `RSA`, `ECC`
🤝 하이브리드 방식
실제 통신 환경(예: HTTPS)에서는 두 방식의 장점을 결합한 하이브리드 방식을 사용합니다.
1. 속도가 느린 '비대칭키' 방식으로, 실제 데이터를 암호화할 '대칭키'를 안전하게 교환합니다. 2. 교환된 '대칭키'를 사용하여, 속도 빠르게 실제 데이터를 암호화하여 통신합니다.
💡 정보처리기사 핵심 Point
- 암호화는 현대 IT 시스템에서 보안의 가장 기본적인 요소입니다.
- 정보처리기사 시험에서는 암호화의 개념, 대칭키와 비대칭키 암호화의 차이점, 그리고 대표 알고리즘을 묻는 문제가 자주 출제됩니다.
- 비밀번호와 같은 민감한 정보는 암호화 대신 '해싱'을 사용하여 저장하는 것이 일반적입니다.