전자 봉투

From CS Wiki
Revision as of 09:25, 5 July 2022 by 심사보 (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Digital Envelopes; 디지털 봉투

데이터는 대칭키(비밀키)를 이용해 암호화하고 대칭키를 상대방의 공개키로 암호화하여 전달하는 방식, 또는 대칭키가 암호화된 형태

활용 목적

  • 대칭키를 이용해 데이터를 암호화할 경우 대칭키의 전달 과정에서 키가 유출될 수 있는 키 배송 문제 발생
  • 비대칭키 암호화는 키 배송 문제를 해결해주지만, 키의 길이가 길어 암호화에 큰 부하 발생하고 속도가 느림
  • 실질적인 암호화는 대칭키를 이용해서 빠르게 수행하되, 대칭키의 운송을 위해 비대칭키를 이용함으로써 속도와 안정성 문제 해결

절차

500x500픽셀

  1. 수신자는 개인키, 공개키 쌍을 생성하여 송신자에게 공개키 송부
  2. 송신자는 대칭키를 생성
  3. 송신자는 대칭키로 데이터를 암호화 E대칭키{ 데이터 }
  4. 송신자는 수신자의 공개키로 대칭키 암호화 E공개키{ 대칭키 }
  5. 송신자는 암호화된 데이터 E대칭키{ 데이터 }와 암호화된 대칭키 E공개키{ 대칭키 }를 수신자에게 송부
  6. 수신자는 자신의 개인키로 E공개키{ 대칭키 }를 복호화 하여 대칭 키 획득
  7. 수신자는 획득한 대칭키로 E대칭키{ 데이터 }를 복호화하여 데이터 획득

활용 사례

공개키를 사용하는 수많은 프로토콜에서 흔히 이용됨

지원되는 보안성

지원되는 보안성

지원되지 않는 보안성

전자봉투만으론 데이터 위변조, 재전송 공격, 부인 방지 등에 대한 대책 부재[1]

각주

  1. 암호학에서 공개키는 송신자 뿐만 아니라 모든 사람에게 공개된다고 가정