전자 봉투: Difference between revisions
From IT Wiki
(새 문서: '''Digital Envelopes; 디지털 봉투''' 데이터는 대칭키(비밀키)를 이용해 암호화하고 대칭키를 상대방의 공개키로 암호화하여 전달하는 방식,...) |
No edit summary |
||
Line 3: | Line 3: | ||
데이터는 대칭키(비밀키)를 이용해 암호화하고 대칭키를 상대방의 공개키로 암호화하여 전달하는 방식, 또는 대칭키가 암호화된 형태 | 데이터는 대칭키(비밀키)를 이용해 암호화하고 대칭키를 상대방의 공개키로 암호화하여 전달하는 방식, 또는 대칭키가 암호화된 형태 | ||
== 활용 목적 == | ==활용 목적== | ||
* 대칭키를 이용해 데이터를 암호화할 경우 대칭키의 전달 과정에서 키가 유출될 수 있는 키 배송 문제 발생 | *대칭키를 이용해 데이터를 암호화할 경우 대칭키의 전달 과정에서 키가 유출될 수 있는 키 배송 문제 발생 | ||
* 비대칭키 암호화는 키 배송 문제를 해결해주지만, 키의 길이가 길어 암호화에 큰 부하 발생하고 속도가 느림 | *비대칭키 암호화는 키 배송 문제를 해결해주지만, 키의 길이가 길어 암호화에 큰 부하 발생하고 속도가 느림 | ||
* 실질적인 암호화는 대칭키를 이용해서 빠르게 수행하되, 대칭키의 운송을 위해 비대칭키를 이용함으로써 '''속도와 안정성 문제 해결''' | *실질적인 암호화는 대칭키를 이용해서 빠르게 수행하되, 대칭키의 운송을 위해 비대칭키를 이용함으로써 '''속도와 안정성 문제 해결''' | ||
== 절차 == | ==절차== | ||
[[파일:전자봉투 개요도.png|500x500픽셀]] | [[파일:전자봉투 개요도.png|500x500픽셀]] | ||
# 수신자는 개인키, 공개키 쌍을 생성하여 송신자에게 공개키 송부 | #수신자는 개인키, 공개키 쌍을 생성하여 송신자에게 공개키 송부 | ||
# 송신자는 대칭키를 생성 | #송신자는 대칭키를 생성 | ||
# 송신자는 대칭키로 데이터를 암호화 '''E<small>대칭키</small>{ 데이터 }''' | #송신자는 대칭키로 데이터를 암호화 '''E<small>대칭키</small>{ 데이터 }''' | ||
# 송신자는 수신자의 공개키로 대칭키 암호화 '''E<small>공개키</small>{ 대칭키 }''' | #송신자는 수신자의 공개키로 대칭키 암호화 '''E<small>공개키</small>{ 대칭키 }''' | ||
# 송신자는 암호화된 데이터 '''E<small>대칭키</small>{ 데이터 }'''와 암호화된 대칭키 '''E<small>공개키</small>{ 대칭키 }'''를 수신자에게 송부 | #송신자는 암호화된 데이터 '''E<small>대칭키</small>{ 데이터 }'''와 암호화된 대칭키 '''E<small>공개키</small>{ 대칭키 }'''를 수신자에게 송부 | ||
# 수신자는 자신의 개인키로 '''E<small>공개키</small>{ 대칭키 }'''를 복호화 하여 대칭 키 획득 | #수신자는 자신의 개인키로 '''E<small>공개키</small>{ 대칭키 }'''를 복호화 하여 대칭 키 획득 | ||
# 수신자는 획득한 대칭키로 '''E<small>대칭키</small>{ 데이터 }'''를 복호화하여 데이터 획득 | #수신자는 획득한 대칭키로 '''E<small>대칭키</small>{ 데이터 }'''를 복호화하여 데이터 획득 | ||
== 활용 사례 == | ==활용 사례== | ||
공개키를 사용하는 수많은 프로토콜에서 흔히 이용됨 | 공개키를 사용하는 수많은 프로토콜에서 흔히 이용됨 | ||
* [[SSL/TLS]] | *[[SSL/TLS]] | ||
== | == 지원되는 보안성 == | ||
* | === 지원되는 보안성 === | ||
* [[기밀성]] | |||
=== 지원되지 않는 보안성 === | |||
전자봉투만으론 데이터 위변조, 재전송 공격, 부인 방지 등에 대한 대책 부재<ref>암호학에서 공개키는 송신자 뿐만 아니라 모든 사람에게 공개된다고 가정</ref> | |||
*'''데이터 위변조 방지''' | |||
**해결 방법: Hash 이용 | |||
*'''재전송 공격''' | |||
**해결 방법: [[넌스|넌스 값]] 또는 [[시도 응답 인증|시도 응답 모델]] 등 이용 | |||
*'''부인 방지''' | |||
**해결 방법: [[전자서명]] 이용 | |||
== 각주 == |
Latest revision as of 23:25, 5 July 2022
Digital Envelopes; 디지털 봉투
데이터는 대칭키(비밀키)를 이용해 암호화하고 대칭키를 상대방의 공개키로 암호화하여 전달하는 방식, 또는 대칭키가 암호화된 형태
활용 목적[edit | edit source]
- 대칭키를 이용해 데이터를 암호화할 경우 대칭키의 전달 과정에서 키가 유출될 수 있는 키 배송 문제 발생
- 비대칭키 암호화는 키 배송 문제를 해결해주지만, 키의 길이가 길어 암호화에 큰 부하 발생하고 속도가 느림
- 실질적인 암호화는 대칭키를 이용해서 빠르게 수행하되, 대칭키의 운송을 위해 비대칭키를 이용함으로써 속도와 안정성 문제 해결
절차[edit | edit source]
- 수신자는 개인키, 공개키 쌍을 생성하여 송신자에게 공개키 송부
- 송신자는 대칭키를 생성
- 송신자는 대칭키로 데이터를 암호화 E대칭키{ 데이터 }
- 송신자는 수신자의 공개키로 대칭키 암호화 E공개키{ 대칭키 }
- 송신자는 암호화된 데이터 E대칭키{ 데이터 }와 암호화된 대칭키 E공개키{ 대칭키 }를 수신자에게 송부
- 수신자는 자신의 개인키로 E공개키{ 대칭키 }를 복호화 하여 대칭 키 획득
- 수신자는 획득한 대칭키로 E대칭키{ 데이터 }를 복호화하여 데이터 획득
활용 사례[edit | edit source]
공개키를 사용하는 수많은 프로토콜에서 흔히 이용됨
지원되는 보안성[edit | edit source]
지원되는 보안성[edit | edit source]
지원되지 않는 보안성[edit | edit source]
전자봉투만으론 데이터 위변조, 재전송 공격, 부인 방지 등에 대한 대책 부재[1]
각주[edit | edit source]
- ↑ 암호학에서 공개키는 송신자 뿐만 아니라 모든 사람에게 공개된다고 가정