티스토리 뷰

WIF 가 무엇인지 모르신다면 앞서 아래 내용을 참고해 주시기 바랍니다.

https://bitcoinlog.tistory.com/55

 

비트코인 주소, WIF, 니모닉, 공개키, 비밀키 이게 다 뭐야?

비트코인 주소, 비밀키, WIF 시크릿, 공개키, 니모닉.. 등의 말들을 모두 들어보셨나요? 그렇다면 위에 제시된 것들이 서로 어떤 관계를 가지며 어떤 역할을 하는 지도 정확히 이해하고 계시나요?

bitcoinlog.tistory.com

 

오늘은 인터넷 연결없이 비밀키를 WIF 로 또는 WIF 를 비밀키로 변환하는 방법에 대하여 알아 보겠습니다.

 

이번에는 Nodejs 를 이용해 실습을 해보려고 합니다!

 

로컬 PC에 Nodejs 가 설치되어 있지 않다면 아래 주소에서 Nodejs 를 먼저 설치해 주세요

https://nodejs.org/ko/download/

 

그리고 Node 진영의 wif 라이브러리를 사용해 보겠습니다.

https://www.npmjs.com/package/wif

 

Node REPL(Read  Eval Print Loop) 를 이용할 예정이므로 wif 를 -g 옵션으로  설치하겠습니다. 그리고 해당 라이브러리를 REPL 에서 직접 사용하기 위해서 npm link wif 명령을 수행합니다.

➜  ~ npm i -g wif
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.

changed 15 packages, and audited 16 packages in 2s

1 package is looking for funding
  run `npm fund` for details

found 0 vulnerabilities
➜  ~ npm link wif

added 1 package, and audited 3 packages in 524ms

found 0 vulnerabilities
➜  ~

 

 

 

이제 명령터미널에서 node 명령을 입력하면 Nodejs REPL로 진입합니다.

➜  ~ node
Welcome to Node.js v16.15.1.
Type ".help" for more information.
>

 

 

그러면 이제 아래 실습 코드대로 따라 해봅시다.

(여기부터는 인터넷 연결없이 진행없이 가능합니다)

> wif = require('wif')
{
  decode: [Function: decode],
  decodeRaw: [Function: decodeRaw],
  encode: [Function: encode],
  encodeRaw: [Function: encodeRaw]
}
> priv = Buffer.from('ef235aacf90d9f4aadd8c92e4b2562e1d9eb97f0df9ba3b508258739cb013db2', 'hex')
<Buffer ef 23 5a ac f9 0d 9f 4a ad d8 c9 2e 4b 25 62 e1 d9 eb 97 f0 df 9b a3 b5 08 25 87 39 cb 01 3d b2>
> wifKey = wif.encode(128, priv, true)
'L5EZftvrYaSudiozVRzTqLcHLNDoVn7H5HSfM9BAN6tMJX8oTWz6'
> privObj = wif.decode(wifKey)
{
  version: 128,
  privateKey: <Buffer ef 23 5a ac f9 0d 9f 4a ad d8 c9 2e 4b 25 62 e1 d9 eb 97 f0 df 9b a3 b5 08 25 87 39 cb 01 3d b2>,
  compressed: true
}
> privObj.privateKey.toString('hex')
'ef235aacf90d9f4aadd8c92e4b2562e1d9eb97f0df9ba3b508258739cb013db2'
> wif.encode(privObj)
'L5EZftvrYaSudiozVRzTqLcHLNDoVn7H5HSfM9BAN6tMJX8oTWz6'
>

 

온라인 사이트에서 수행한 결과와도 동일하지요!

https://learnmeabitcoin.com/technical/wif

 

끝~

 

 


 

https://youtu.be/hPep7OG0Fwg

 

728x90
반응형
댓글
250x250
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함