CS
대칭키와 비대칭키
YunH2
2023. 8. 3. 11:11
기밀성(Confidentiality)
- 인가되지 않은 자는 정보를 확인하지 못하도록 하며, 정보가 유출되더라도 평문으로 해독할 수 없고 변조 또는 위조하지 못하도록 기밀을 유지
무결성(Integrity)
- 인가 되지 않은 자로 부터 위조 또는 변조가 발생하지 않았는지 확인
인증(Authentication)
- 수신 받은 메시지가 송신자 본인이라는 것을 확인하고 증명
부인 방지(Non-repudiation)
- 메시지를 보낸 사람이 보낸 사실을 부인하거나, 받은 사람이 받은 사실을 부인할 경우 증명하는 기술
대칭키
암호화에 사용되는 키와 복호화에 사용되는 키가 동일한 암호화 기법
- 암호화된 정보를 받는 쪽도 같은 키를 가지고 있어야 하기 때문에, 키 전달 및 관리 측면에서 보안에 취약
- 알고리즘이 단순하고 효율적이라 암호화 연산속도가 빠름
- 기밀성 제공
공개키
암호화에 사용하는 키와 복호화에 사용하는 키를 분리한 기법
- 대칭키 암호화 방식에서 키 전달의 취약점을 해결하기 위해 나온 방식
- 공개키를 대중에게 공개, 이 공개키로 암호화시 개인키로만 복호화가 가능
- 암호화, 복호화를 위해 복잡한 수학 연산을 수행하기 때문에 대칭키 방식에 비해 속도가 느리고 복잡
- 대표적으로 Diffie-Hellman, RSA, DSA 등..
공개키 기반 구조
이슈
- 특정 사람의 개인키와 공개키는 어떻게 생성할 것이며, 어떻게 배포할 것이고 어떻게 관리해야 하는가
- 어떤 공개키가 특정한 사람의 공개키라는 것을 어떻게 보장할 수 있는가
해결방법 : 전자서명, 디지털 인증서..
디지털 인증서
대칭키와 공개키의 암호화 방식을 적절히 혼합
SSL 탄생의 시초가 됨
- 대칭키를 주고받을 때만 공개키 암호화 방식을 사용하고 이후에는 계속 대칭키 암호화 방식으로 통신
1. A가 B의 공개키로 암호화 통신에 사용할 대칭키를 암호화하고 B에게 보냄
2. B는 암호문을 받고, 자신의 비밀키로 복호화함
3. B는 A로부터 얻은 대칭키로 A에게 보낼 평문을 암호화하여 A에게 보냄
4. A는 자신의 대칭키로 암호문을 복호화함
5. 앞으로 이 대칭키로 암호화를 통신함