[BlockChain] 대칭키 암호 & 비대칭키 암호

원알렉스·2020년 9월 2일
0

BlockChain

목록 보기
3/3
post-thumbnail

🚀 대칭키 암호 & 비대칭키 암호

암호화는 평문을 암호로 만드는 것입니다.(cipher, encrypt)
복호화는 암호를 평문으로 만드는 것입니다.(decipher, decrypt)

암호화에 사용한 키와 복호화에 사용한 키가 동일한 경우 대칭키 암호로 분류됩니다.
반대로 다를 경우에는 비대칭키 암호로 분류됩니다.

✓ 비대칭키 암호(공개키 암호)

두개의 키를 사용하여 암호화와 복호화를 실행합니다.

  • 암호화에 사용되는 키 = 공개키(Public Key, PK)
  • 복호화에 사용되는 키 = 비밀키(Private Key, Secret Key, SK)

비대칭키 암호의 목적

누구든지 암호화할 수 있지만 비밀키를 아는 사람만 복호화할 수 있어야 합니다.

  • 공개키와 비밀키는 한쌍으로 묶여있는 아주 큰 숫자들
  • 비밀키로부터 공개키를 도출하는 것은 쉬움
  • 공개키로부터 비밀키를 도출하는 것은 매우 어려움

✓ 공개키와 비밀키를 사용한 안전한 통신

수신자의 공개키로 암호화를 상태로 데이터 전달한 후, 송신자는 자신의 비밀키로 해당 데이터를 복호화

✓ 전자서명

비대칭키 암호는 지정된 사람만 정보를 확인할 수 있도록 도움 (privacy)

  • Alice가 Bob에게 메시지를 보낼 때 PKBobPK_{Bob} 를 사용
  • Bob은 이 메시지가 Alice에게서 온 것인지 어떻게 확인할까?

전자서명은 누가 정보를 보냈는지 알기 위해 사용 (non-repudiation)

  • 전자서명은 비대칭암호의 응용 프로그램
  • 서명은 비밀키로만 생성가능
  • 공개키는 서명이 짝을 이루는 비밀키로 생성되었는지를 검증

송신자는 자신의 비밀키로 서명을 하고, 수신자는 송신자의 공개키를 통해 서명을 검증해서 누가 정보를 보냈는지 확인합니다.

정보 전달시 해시를 통해서 정보를 암호화한 상태에서 전달할 수도 있습니다.

profile
Alex's Develog 🤔

0개의 댓글