Post

Digital Envelope

Hybrid crypto system

  • 상황 : $A$가 $B$에게 메시지 $m$을 보내자
    • $B$가 공개한 key : $n_B, e_B$
    • $B$의 비밀키 : $d_B$

Step1. $A$는 랜덤한 $k$를 만들어서 AES로 암호화 함 (대칭키)

  • $m \rightarrow AES(k)\rightarrow C$
  • 이때 $k$를 ‘세션키’라고 부르기도 함

Step2. $K$를 RSA로 암호화하는데, 이때 $B$의 공개키인 $n_B, e_B$를 사용한다. (비대칭키)

  • $K \rightarrow RSA(n_B, e_B) \rightarrow K’$

Step3. 이제 $A$가 $B$에게 $(K’, C)$를 보낸다.

Step4. $B$는 개인키를 이용해 $K$를 얻은 후, $C$를 AES 복호화해서 $m$을 얻는다.

Step5. 이후부터는 메시지를 대칭키($k$)를 이용해 암호화하여 전송


Digital Envelope

  • RSA encrypts only the Key for AES
  • AES encrypts the Message
  • SHA hashes the Message
  • RSA makes Signature with Hash Value
  • *RSA, AES, SHA, RSA Signature는 메커니즘의 한 구현 방법일 뿐이다.

This post is licensed under CC BY 4.0 by the author.