엔지니어링 공부방

파이썬을 활용한 비트코인 개인지갑[개인키] 만들기 본문

비트코인과 가상화폐

파이썬을 활용한 비트코인 개인지갑[개인키] 만들기

송도방랑객 2022. 12. 29. 22:15

비트코인 개인지갑을 만들기에 앞서

지갑을 만든다는 말에 지갑같은 무언가를 정말 생성하고 등록하고 해야 할 것 같지만 그렇지 않습니다.
비트코인 지갑은 그저 ‘0’‘1’256개 나열한 숫자 중 하나를 고르는 행위나 마찬가지입니다.
, ‘0’‘1’256개 나열한 숫자가 바로 비트코인 개인키이고
이 숫자를 어떤 함수에 넣으면 비트코인 공개키가 나옵니다. 이것이 바로 비트코인 지갑입니다.
, 이 함수는 암호함수(해시함수)로 공개키로부터 개인키로 돌아갈 수는 없습니다.
마지막으로 공개키를 어떤 함수에 넣으면 비트코인 주소가 나옵니다.
이 주소로 비트코인을 받을 수 있습니다.

 

1. 파이썬 설치

     아래의 링크에서 파이썬을 설치합니다.

      https://www.python.org/downloads/

2. 비트코인 라이브러리 설치

     1) 윈도우 검색창에서 '명령 프롬프트'를 관리자 권한으로 실행합니다.

     2) ‘Pip install bitcoin’ 명령어를 입력하면 라이브러리가 설치됩니다.
          아래 첨부 사진은 이미 설치가 돼 있어서, 업데이트 하라고 나오네요

     만약 안된다면, 시스템 환경변수 설정이 문제일 수 있으니 아래 블로그를 참고해 주세요.

     https://puleugo.tistory.com/18

   

3. 비밀키(개인키) 및 공개키와 주소 만들기

     1) Python을 실행합니다. '명령 프롬프트'에서 파이썬이 설치된 경로로 이동합니다.
         경로 이동 방법은 아래와 같이 입력하면 됩니다.

     2) 'Python'을 입력하면 파이썬이 실행됩니다.
         그럼 아래와 같이  >>> 표시가 나옵니다.

     3) 아래와 같이 입력합니다.

     설명을 추가하자면 아래와 같습니다.

     첫줄, from / import는 라이브러리의 모듈을 가져온다고 보시면 됩니다.
     둘째줄, private_key에 개인키 랜덤 생성합니다. 16진수 64개의 문자/숫자가 들어갑니다.
                  16진수는 0~9,a~f 로 표현됩니다.
     셋째줄, public_key공개키입니다. 간혹 생략되기도 합니다.
                 개인키로부터 암호화 되는 방식입니다. 즉, 개인키를 알면 공개키도 알 수 있습니다. 단, 되돌릴 수는 없습니다.
     넷째줄, address는 공개키로부터 만들어지는(암호화되는) 주소입니다.
                  주소로부터 공개키를 유추할 수 없어 주소로 비트코인을 받으면 신상노출이 덜 됩니다.

     4) 예시

 

4. 파이썬 작업 시 'python_history'에 기록이 남을 수도 있다고 하니 주의

 

5. 개인키는 지갑에 들어있는 비트코인을 송금하기 위해 필요한 암호이므로 절대 노출 금지 (보안 신경 쓰기)

기본적으로 비트코인 개인키는 '0'과 '1'의 2진법 256자리로 만들어지며, 동일한 개인키도 다양한 방식으로 표현됩니다. 아래 내용을 참고하세요.

1) WIF, 지갑 개인키를 유도할 수 있다. 5로 시작하는 51개자리 Base58, 통상적으로 우리가 사용하는 개인 키 쓰기법은 바로 여러 클라이언트를 직접 가져올 수 있다.
2) WIFC, 지갑을 가져올 수 있는 개인 키-압축, K 또는 L로 시작하는 52개 자리 Base58, 클라이언트를 가져오면 보통 해당 개인 키가 대응하는 압축 주소가 생성된다.
3) HEX, 개인 키의 16진법, 64개 자리.
4) B64, 개인 키의 Base64 쓰기, 44개 자리
5) B6, 개인 키의 Base6 쓰기, 99자리, 아래에 자세히 설명되어 있다.
6) MINI, 미니 키는 안전성이 우려되므로 사용하지 않는 것이 좋다.
7) BIP38, BIP38 암호화 키는 암호를 입력해야 자세한 내용을 볼 수 있다.(주의, 암호화와 암호해제는 매우 느리고 사이트가 오래 동안 아무런 반응이 없을 수 있으며, 아마도 새로고침을 하여 다시 할 필요가 있다.)

 다른 형태로 쓰인 개인키라도 형식만 다르고 동일하므로, 동일한 비트코인 주소를 갖습니다.

 

출처 및 도움 주신 분 : 비트로그

https://bitcoinlog.tistory.com/41

 

파이썬으로 비트코인 개인지갑 만드는 방법

비트코인의 가장 큰 매력은 어떤 외부의 도움없이 내 자산을 나 스스로 안전하게 보관하고 관리할 수 있다는 것이 아닐까 생각합니다. 저는 특별히 이 부분에 있어서 비트코인에게 크게 매료되

bitcoinlog.tistory.com

 

반응형