대칭키, 비대칭키, 공개키, 개인키, 전자서명

Date:     Updated:

카테고리:

태그:

🚀 대칭키, 비대칭키

  • 대칭키
    • 암호화와 복호화에 사용되는 키가 동일하다. 하나의 키로 암호화와 복호화 둘 다에 사용된다.
      • 따라서 암호화 할 때 사용한 키를 복호화하려는 사람도 그 동일한 키를 알고 있어야 하기 때문에 키를 교환해야한다는 수고로움이 있다.
      • 해킹에도 취약하다. 키만 알면 복호화도 바로 할 수 있기 때문이다.
  • 비대칭키
    • 암호화와 복호화에 사용되는 키가 서로 다르다. 👉 키가 2개 (한 쌍) 필요함.
      • 공개키 : 모든 사람이 접근 가능한 키
      • 개인키 : 각자 개인이 가지고 있는 키
        • 어떻게 암호화, 복호화에 사용되는지는 밑에 “공공키 암호화”, “전자 서명” 참고
    • 누구든지 암호화 할 수 있지만 비밀키를 아는 사람만 복호화할 수 있어야 한다.
      • 비밀키로부터 공개키를 도출하는 것은 쉽다.
      • 그러나 공개키로부터 비밀키를 도출하는 것은 매우 어렵다.


🚀 공개키, 개인키

블록체인의 보안 체계로 비대칭키를 사용한다. 공개키와 개인키 이렇게 2 개의 한 쌍(pair)을 사용. 두 키가 짝을 이룬다.

  • 공개키 ex) 계좌 번호, 집 주소
    • 나의 공개키는 여러 사람들 모두에게 공개된다. 마치 계좌번호처럼!
      • 누군가 내 계좌에 송금하고 싶어할 때 내 계좌번호를 알려주듯 내 공개키를 알려주면 된다.
  • 개인키 ex) 계좌 비밀번호, 집 열쇠
    • 나의 개인키는 키의 주인인 개인만 가질 수 있다. 여러 사람들에게 공개되면 안된다. 마치 계좌 비밀번호처럼!
      • 내가 내 계좌 안에 든 돈에 접근하고자 할 때 계좌 비밀번호로 계좌에 접근하듯 개인키를 사용하면 된다.

하나의 비트코인 은행 계좌는 두 개의 주소를 가지는 셈이다. 공개 주소(공개키)와 개인 주소(개인키).


🚀 전자 서명(Digital Signature)

은행(중앙시스템)이 없는 암호화폐 세계에선 “전자 서명”을 통해 서로의 신원을 확인하고 입증하여 거래를 할 수 있다.

  • 1️⃣ 공개키 암호화 👉 “오직 너만 읽을 수 있는 데이터야”
    • 공개키로 암호를 만들 수 있고 그 공개키에 대응하는 개인키로 그것을 복호화 할 수 있다.
    • 공개키로 암호를 만들어 이를 보내면 받는이가 본인의 개인키로 그것을 복호화.
      • 영희가 철수의 공개키를 가지고 있다면 영희는 철수의 공개키오직 철수만 읽을 수 있는 암호를 생성할 수 있다. 철수는 본인의 개인키로 그 암호를 디코딩하여 읽을 수 있다.
        • 즉, 공공키로 암호화 / 개인키로 복호화
  • 2️⃣ 전자 서명 👉 “이 암호를 보낸 사람이 나라는 것을 보여주는 증명 (true or false).”
    • 개인키로 암호를 만들 수 있고 그 개인키에 대응하는 공개키로 그것을 복호화 할 수 있다.
    • 개인키로 암호를 만들어 이를 보내면 받는 이가 본인의 공개키로 그것을 복호화.
      • 영희가 철수에게 영희의 개인키로 만든 암호인 전자 서명을 철수에게 보내면, 철수는 철수가 알고 있는 영희의 공개키로 영희의 전자 서명을 디코딩하여 이 서명이 영희의 서명이 맞는지를 확인할 수 있다.
        • 즉, 개인키로 암호화 / 공개키로 복호화

영희가 철수와 거래를 하고자할 때 영희는 철수에게 1️⃣,2️⃣ 두 가지 암호를 보내게 된다.

이게 다 각자의 공공키와 개인키는 한 쌍이기 때문에 가능한 것이다.


🚀 참고

  • <Klaytn 클레이튼 스마트계약과 탈중앙앱> 강의
  • <세상 친절한 비트코인 수업> 책


🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우 
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄

맨 위로 이동하기

Bitcoin 카테고리 내 다른 글 보러가기

댓글 남기기