Network

CS 네트워크 대칭키 & 공개키(비대칭키)

차가운개발 2024. 10. 15. 11:31

 

대칭키 암호화공개키 암호화는 데이터를 보호하기 위해 사용하는 두 가지 주요 암호화 기법이다. 데이터를 암호화(Encryption)하고 복호화(Decryption)할 때 서로 다른 방식으로 작동한다. 각각은 장단점이 있으며, 다양한 보안 요구에 맞춰 사용된다.

 

 

  • 대칭키 암호화 방식
    암복호화에 사용하는 키가 동일하다.
  • 공개키 암호화 방식
    암복호화에 사용하는 키가 서로 다르며 비대칭키 암호화라고도 한다.

 

ㅇ 대칭키

대칭키 암호화는 하나의 동일한 키를 사용해 데이터를 암호화하고 복호화한다. 송신자와 수신자가 같은 키를 공유해야만 데이터를 안전하게 주고받을 수 있다.

 

특징

  • 하나의 키로 암호화와 복호화를 수행
  • 빠르고 효율적이지만, 키를 안전하게 공유하기 어려움(탈취 관리 걱정)
  • 대용량 데이터 암호화에 적합
  • 기밀성을 제공하나, 무결성/인증/부인방지를 보장하지 않음

 

장점

  • 빠른 처리 속도
  • 키가 하나뿐이므로 연산량이 적음

단점

  • 키 관리 문제
    송신자와 수신자가 동일한 키를 사전에 공유해야 한다
  • 키 유출 시 암호화된 데이터가 쉽게 해독될 위험이 있음

ㅇ 공개키(비대칭키)

공개키 암호화는 두 개의 키를 사용한다.

  • 공개키
    누구나 접근 가능한 키로 데이터를 암호화
  • 개인키
    비밀로 유지되며 데이터를 복호화하는 키

이 방식에서는 공개키로 암호화된 데이터는 해당 개인키를 통해서만 복호화할 수 있다.

 

특징

  • 암호화와 복호화에 서로 다른 키를 사용
  • 데이터 전송의 보안과 디지털 서명에 사용
  • 키분배가 필요없고, 기밀성/인증/부인방지 기능 제공

장점

  • 키 공유 문제 해결
    공개 키를 안전하게 배포 가능
  • 디지털 서명 지원
    인증과 무결성을 보장

단점

  • 대칭키 암호화보다 느림
  • 복잡한 연산으로 인한 높은 처리 비용

ㅇ 하이브리드 암호화

대칭키와 공개키 암호화의 장점을 결합한 암호화

  • 공개키 암호화로 대칭키를 안전하게 전달한 후 대칭키로 실제 데이터를 암호화하는 방식
  • 예) HTTPS 통신에서는 공개키를 이용해 세션 키(대칭키)를 교환 이후 데이터는 대칭키로 암호화

 

ㅇ 정리

  대칭키 암호화 공개키 암호화
키 개수 하나의 동일한 키 사용 공개키, 개인키
속도 빠름 느림
보안성 키 관리 어려움 키 분배가 용이
주요 사용 사례 대용량 데이터 암호화 인증, 디지털 서명, 비밀키 전달
대표 알고리즘 AES, DES RSA, ECC