공개키와 개인키를 이해하려면 대칭키와 비대칭키 부터 알아야한다.
1. 대칭키
- 암호화, 복호화 할 때 사용하는 키가 동일한 경우, 1개의 키 사용
- 어떤 키로 암호화 했다면, 수신자도 같은 키가 있어야 복호화 가능
- 말 그대로 대칭시켜 봐서 맞을 시 자물쇠가 열리는 개념
2. 비대칭키
- 암호화 할 때 사용하는 키와 복호화할 때 사용하는 키가 다른 경우
- 2개의 키를 사용하며, 비밀키(개인키)와 비밀키를 토대로 만든 공개키가 쌍을 이룬 형태
- 공개키(public key): 사람들에게 공개된 키, 정보를 암호화 할 수 있다.
- 비밀키(private key): 사용자만 알고 있는 암호를 풀 수 있는 키
대칭키 vs 비대칭키
4. Public key vs Private key 사용 예
Public Key로 암호화 하면 Data 보안에 중점을 두고,
Private Key로 암호화 하면 인증 과정에 중점을 둔다.
Public Key로 암호화 하는 경우
- 상대방이 송신한 Public key로 data를 암호화 하고 전송
-> data를 수신한 사람은 자신의 Private key로 수신한 data를 복호화
- A 키로 암호화 한다면, B키로 복호화가 가능하고, B키로 암호화를 한다면 A키로 복호화가 가능
- Public Key는 널리 배포될 수 있기 때문에 많은 사람들이 한 명의 Private Key 소유자에게 data를 보낼 수 있다.
Private Key로 암호화 하는 경우
- Private Key의 소유자가 Private Key로 data를 암호화하고 Public Key와 함께 전달
이 과정에서 Public Key와 data를 획득한 사람은 Public key를 이용하여 복호화가 가능
- 이런 위험에도 불구하고 이 방법을 사용하는 이유는 data 보호의 목적 보다는 Public Key data 제공자의 신원을 보장해주기 때문
- 암호화된 data가 Public Key로 복호화 된다는 것은 Public Key와 쌍을 이루는 Private Key에 의해서 암호화 되었다는 것을 의미한다. 즉 data 제공자의 신원 확인이 보장
- 이 방법이 공인인증체계의 기본 바탕이 되는 전자 서명
참고
https://spidyweb.tistory.com/310