Jin's Dev Story

[네트워크] 대칭키 & 공개키 본문

CS 지식/[네트워크]

[네트워크] 대칭키 & 공개키

woojin._. 2023. 7. 17. 14:28

대칭키(Symmetric Key)

암호화와 복호화에 같은 암호키(대칭키)를 사용하는 알고리즘

  • 동일한 키를 주고받기 때문에, 매우 빠르다는 장점이 있음
  • but, 대칭키 전달 과정에서 해킹 위험에 노출

 

공개키(Public Key) / 비대칭키(Asymmetric Key)

암호화와 복호화에 사용하는 암호키를 분리한 알고리즘

  • 대칭키의 키 분배 문제를 해결하기 위해 고안됨.(대칭키일 때는 송수신자만 키를 알아야하기 때문에 분배가 복잡하고 어렵지만 공개키와 비밀키로 분리할 경우, 남들이 알아도 되는 공개키만 공개하면 되므로)
  • 자신이 가지고 있는 고유한 암호키(비밀키)로만 복호화할 수 있는 암호키(공개키)를 대중에 공개함

 

공개키 암호화 방식 진행 과정

  1. A가 웹 상에 공개된 'B의 공개키'를 이용해 평문을 암호화하여 B에게 보냄
  2. B는 자신의 비밀키로 복호화한 평문을 확인, A의 공개키로 응답을 암호화하여 A에게 보냄
  3. A는 자신의 비밀키로 암호화된 응답문을 복호화함

하지만 이 방식은 기밀성만 보장해줄 뿐, 무결성나 Authenticity는 보장해주지 못함

→ MAC이나 전자 서명으로 해결(MAC은 대칭키 방식)

'CS 지식 > [네트워크]' 카테고리의 다른 글

[네트워크] HTTP & HTTPS  (0) 2023.07.17
[네트워크] GET & POST  (0) 2023.07.17
[네트워크] TCP & UDP  (0) 2023.07.17
[네트워크] TCP 3 way handshake & 4 way handshake  (0) 2023.07.17
[네트워크] OSI 7계층  (0) 2023.07.17