Network - 대칭키와 공개키 암호화

choko's avatar
Jun 29, 2024
Network - 대칭키와 공개키 암호화
 
  • 대칭키는 암호화와 복호화에 쓰이는 키가 동일하고,
  • 공개키(비대칭키)는 암호화와 복호화에 쓰이는 키가 다르다.
 

 

대칭키

notion image
  • 데이터를 송/수신하는 쪽이 동일한 key를 사용한다.
  • 장점
    • 속도가 빠르다, 대용량 암호화에 적합하다
  • 단점
    • 키 관리 - 키 하나만 탈취당하면 끝난다
    • 사람이 증가할수록 키관리가 어렵다, 한명만 탈취당해도 뚫린다(확장성 떨어짐)
    • 키 교환에서 중간자 공격의 대상이 된다
  • 대표적 알고리즘
    • SEED, DES, AES
 
 

공개키

notion image
  • 보내는 쪽은 수신자의 공개키를 사용하여 데이터를 암호화하고, 수신하는 쪽은 자신의 개인키를 통해 복호화 한다.
  • 추가적으로, 전자서명를 할 수도 있다.
    • 데이터를 보내는 쪽은 자신의 개인키를 이용하여 디지털 서명을 한다.
    • 수신자는 송신자의 공개키를 사용하여 디지털 서명을 검증하여 송신자의 신원을 확인하고 데이터의 무결성을 확인한다.
  • 장점
    • 키 분배의 필요가 없다
    • 기밀성 / 인증 / 부인방지 기능 제공
  • 단점
    • 속도가 느리다
  • SSL/TLS에서 두 당사자가 사용할 대칭키를 전달하는 용도로 사용된다.
 

디지털 인증서 원리

notion image
  • 디지털 인증서에는 모두가 신뢰할 수 있는 제삼자인 CA와 비대칭키 암호화가 필요.
      1. B는 CA에게 자신이 B임을 증명하고 자신의 공개 키가 B의 공개 키가 맞음을 인증하는 인증서 발급.
      1. A에게 B의 공개키가 포함된 이 인증서를 주면,
      1. 이를 받은 A는 자신이 신뢰할 수 있는 CA에게 CA가 진짜 발급한 인증서인지 확인하고,
      1. 맞으면 그 인증서에 포함된 B의 공개 키로 데이터를 암호화해서 B에게 전달
  • 만약 최종적으로 B가 올바르게 자신의 개인키로 복호화한다면, CA가 인증하는 B의 공개키에 대응하는 개인키를 가지고 있다는 것이므로, 이 과정을 통해 현재 통신하고 있는 상대방이 B가 맞음을 인증할 수 있음.
Share article

Tom의 TIL 정리방