차밍이
블록체인 공부하기 : 비트코인 주소와 키 생성 방식 - (3) 본문
반응형
03.Cryptographic Keys(암호화 키)
암호화 방식 두 가지
1. 대칭키 암호화 방식(Symmetric-key Cryptography)
- 이 방식은 오래전부터 사용된 방식
- 수신자와 발신자 메시지를 암호문으로 바꾸는 규칙을 공유하고 있음
- 모두 함께 알고 있는 그 규칙에 의해 암호화와 복호화가 모두 진행됨
- 상대적으로 키의 크기가 작아 변환 속도가 빠름
- 모두 같은 키를 공유해야 하므로 키 관리가 어려움
- 잦은 키 변경이 있는 경우 당사자들 모두가 안전하게 전달받을 수 있도록 해야 함
2. 공개키 방식, 비대칭키 암호화 방식(Asymmetric-key or Public-key Crypography)
- 공유하는 키가 제삼자에게 공유되어도 무방함
- 키 전달에 불편함을 없앤 방식
- 누구나 알게 돼도 괜찮은 공개키와 자신만이 갖는 개인키를 사용해 데이터를 암호화하는 방식
- 한 쌍의 공개키와 개인키를 소유하고 있는 사람은 공개키를 다른 사람들에게 공개하고, 개인키는 자신만이 알 수 있도록 숨김
공개키 암호화 방식의 두 가지 종류
2-1. 수신자의 공개키를 이용해 문서를 암호화해 전달할 경우
- 누구나 할 수 있음
- 하지만, 내용을 확인하는 것은 개인키를 가진 사람만 가능
2-2. 발신자가 문서를 자신의 개인키로 암호화하는 경우
- 발신자의 공개키를 이용해서 문서를 확인 가능
- 발신자가 해당 문서를 보냈다는 것을 증명할 수 있음
- 암호화폐 거래(Transaction)는 모두 이 공개키 암호화 방식을 이용해 서명해야만 유효한 것으로 인정됨
- 개인키로 서명한 거래(Transaction)를 공개키로 검증할 수 있어 거래의 주체가 확실하다고 검증할 수 있음
비트코인의 키 생성 방식(Key Generation in Bitcoin)
- 개인키 생성
- 256-bit의 랜덤으로 생성된 숫자
- 공개키 생성
- secp256 k1이라는 표준에 정의된 타원 곡선과 상수 집합을 이용해서 개인키로부터 공개키를 연산하게 됨
- 연산 과정은 단방향으로만 가능하게 되어있음
- 개인키를 이용해서 공개키 생성은 쉬움
- 생성된 공개키를 사용해서 개인키를 알아내는 것은 불가능함
- 이런 방식으로 개인키와 공개키 쌍은 생성됨
- 비트코인 주소
- 공개키를 연산에 이용하여 생성
- 공개키는 더블 해싱(SHA256, RIPEMD160)한 뒤, Base58Check Encoding을 적용해서 주소 값을 얻을 수 있음
Reference : KMOOC - 포스텍 암호화폐 이론 및 응용 강좌
반응형
'블록체인 > 블록체인 공부' 카테고리의 다른 글
블록체인 공부하기 : 페이스북 코인 Libra와 Diem protocol - (7) (0) | 2022.01.27 |
---|---|
블록체인 공부하기 : 스테이블 코인에 대해 알아보자 - (6) (0) | 2022.01.22 |
블록체인 공부하기 : 암호화폐 거래소 CEX vs. DEX - (5) (0) | 2022.01.21 |
블록체인 공부하기 : 암호화폐 지갑의 종류와 형태 - (4) (0) | 2022.01.20 |
블록체인 공부하기 : Fungible & Non-Fungible - (2) (0) | 2022.01.07 |
블록체인 공부하기 : ERC Standards - (1) (1) | 2022.01.06 |
관련된 글 보기
Comments