안녕하세요? 트리입니다.
이제 정말 EOS의 카운트다운이 시작되고, 4일만 지나면 마지막 EOS의 ICO가 종료됩니다.
메인넷 런칭을 앞두고 BP 후보들도 분주하게 움직이고 있고, 투자자 분들도 기대반 걱정반으로 기다리고 계실 겁니다.
이제 eos.io 사이트에서도 마지막 8백만개의 토큰 판매만을 남겨두고 있습니다.
저기 표시된 992000000 EOS 라는 숫자를 보니 이제 정말 거의 다 온 것 같습니다.
EOS의 메인넷 런칭을 앞두고 우리가 준비해야 할 것은 EOS의 Public Key - Private Key의 안전한 생성과 확인이죠.
EOS 프라이빗키 검증하기를 보고 저도 한 번 확인해 보았습니다.
런던을 기반으로한 웹 개발 에이전시인 Webdigi의 github 공개 소스를 바탕으로 말이죠.
Private Key 검증 방법은 간단합니다.
오늘 오전에 @selly 님이 올려주신
- 소스를 다운로드 받고
- 압축을 풀고
- 인터넷을 끊고
- 다운받은 소스 중에서 index.html을 웹 브라우저에서 실행시키고
- Private Key를 입력하고
- Map to EOS public key 버튼을 클릭합니다.
그런데 이게 과연 믿을 수 있는 소스일까요?
그러면 소스를 뒤져 봐야죠.
의심해서 미안하지만 우리의 Private Key는 소중하니까요.
압축파일을 해제하면 html 파일 하나, js 파일 3개, css 파일 하나, 그리고 md 파일 하나만 있습니다.(오! 소스가 몇 개 없어!!)
오프라인에서도 돌아갈 수 있게.. 깔끔하네요.
모든 소스를 열어봅니다.
index.html 파일에서 시작하는데, 화면에서 입력받은 Private Key가 전송되거나 저장되는 부분이 있는지만 살펴보면 될 것 같습니다.
index.js 소스를 통해 generate() 함수가 실행되고요.
function generate() {
showPane('generate')
setTimeout(() => {
var privKey = byId('privKey').value;
privateKeyPair = webdigiKeyPair(privKey)
...생략...
}, 1000)
}
webdigiKeyPair 라는 이름의 함수를 호출하는데, webdigi는 이 프로그램 만든 에이전시이고..
같은 파일 내의 다음 함수를 호출하는데, 입력받은 Private Key를 이용해 Public Key를 가져옵니다.
function webdigiKeyPair(privKeyInput) {
var {PrivateKey, PublicKey} = eos_ecc
var privkeyError = ''
var pubkeyError = ''
try{
var abc = PrivateKey.fromWif(privKeyInput);
var privkey = abc.toWif()
var pubkey = abc.toPublic().toString()
} catch(error){
privkeyError = 'Private key in invalid, please try again.'
}
이하 생략...
여기서 Wif은 Wallet import format의 약자로 인코딩된 지갑 주소 포맷을 말합니다.
Wif에 대해서는 비트코인 위키 링크를 참고해 보시면 됩니다.
아무튼 여기 소스에서 보면 fromWif(), toWif() 등의 함수를 통해 가져오는데 이 함수들은 ecc.js 에 있는 함수들이네요.
static fromWif(_private_wif) {
var private_wif = new Buffer(base58.decode(_private_wif));
var version = private_wif.readUInt8(0);
assert.equal(0x80, version,Expected version ${0x80}, instead got ${version}
);
// checksum includes the version
var private_key = private_wif.slice(0, -4);
var checksum = private_wif.slice(-4);
var new_checksum = hash.sha256(private_key);
new_checksum = hash.sha256(new_checksum);
new_checksum = new_checksum.slice(0, 4);
if (checksum.toString() !== new_checksum.toString())
throw new Error('Invalid WIF key (checksum miss-match)')
private_key = private_key.slice(1);
return PrivateKey.fromBuffer(private_key);
}
이런 식으로 되어 있어서 내부적으로 포맷을 변형하고 검증합니다.
처음부터 ecc.js를 보면 워낙 다양한 라이브러리를 사용한 1만 7천라인짜르 소스인지라..
하나하나 변환하는 단계까지 알아볼 필요까지는 없을 거구요.(어차피 역량도..;;)
이걸 외부로 보내거나 저장하는 부분이 있는지를 확인하면 되는 거니..
file이나 http, buffer 등의 키워드로 검색해서 수상한 부분이 있는지를 한번 더 찾아 보았습니다.
여기까지 보고 제가 내린 결론은 이 프로그램을 사용해도 특별한 문제는 없는 것 같다.. 인데요.
혹시 이상한 부분이 있는지 발견하신 분이 계시면 알려주시면 좋을 것 같습니다.
(이럴 때 집단 지성을 이용해야죠!!)
참고로 EOS cafe에서도 EOS 키 검증 도구를 github로 제공하고 있습니다.
이쪽은 소스를 간단히 보니 Vue.js를 이용하고, yarn을 이용해 패키지들을 갖다쓰는군요. 얼핏보니 비슷비슷한 모듈들이네요.
여기까지 확인하고 절차에 따라 오프라인에서 Private Key - Public Key 매핑 확인을 해 보았습니다.
다행히 제가 보관하고 있는 키가 맞네요.
두 번, 세 번씩 확인하고 있으니.. 스스로도 왜 이러나 싶기도 하지만 마지막까지 긴장을 놓을 수 없네요. ㅎㅎ
이래 어려운걸 어찌하나요?아무것도 몰라서 지인에게 다 전송했다는.....^^;;
그 지인 분은 저처럼 이렇게 하고 계실지도 모릅니다. ㅋㅋㅋㅋ
캬아 마스터트리님 킹왕짱입니다!! 좋은 정보 감사합니다 :D 리스팀해가요!!
감사합니당~ ㅎㅎ
제가 불안해서.. ㄷㄷㄷ;;
궁금해서 그러는데요? 어디 물어볼때도 없고..
그냥 거래소에 가지고 있으면 안되는건가요?
전환해준다는 공지도 못본거같아서 불안불안.. ㅠ
(앗 업비트 해준다는거 금방 확인했어요~)
아, EOS 코인으로 스왑해준다는 거래소에 갖고 계셔도 되는데요~
EOS 제네시스 스냅샷을 기반으로 한 에어드랍이 있는 경우에는 거래소에서 모두 지원하지 않을 수 있거든요~
그래서 좀 불편해도 개인 지갑으로 갖고 있는 거구요.
수량이 많지 않으시고, 익숙하지 않으시다면 거래소에 갖고 계시는 게 낫습니다!
(거래소의 Private Key가 털리지는 않을테니.. 그렇..겠죠? ㅋㅋ)
아 에어드랍문제도 있었네요
거래소.. OTP사용하지만 털렸다는 이야기를 들어서
무섭네요 ㅠ ㅠ
최근들어 해킹의 이야기가 많더라구요.
저는 아예 구글 계정도 OTP 걸어놨어요.
번거롭긴 하지만, 이쪽 세상에선 안전이 우선이라.. ㅠ
저는 스팀에 몰빵이라서 이오스는 없지만, 거래소에서 해주지 않으면 어려워 하시는 분도 많을 것 같네요.ㅠㅠ
대부분(?) 거래소에서 EOS 자체의 스왑은 지원해 주는 것 같더라구요~
정말 은근히 어렵습니다. ㄷㄷ;;
스팀도 가즈아~!!
어...트리님 덕분에 잠이 잘올것 같습니다...@.@ㅎㅎ
앗.. 고맙습니다~ ㅋㅋㅋ
개인키는 검증 노출 안하는게 맞습니다
네- 말씀대로 검증을 굳이 하지 않는게 훨씬 안전합니다!!
혹시라도 개인키 검증을 하고 싶으시다면 이런 방법이 있다..는 정도로 봐주셨으면 했거든요. ^^;
지갑 등록할때 Private Key와 Public Key를 잘 메모해 놨는데 이 작업을 해야할까요?
불안한데요
고민스럽네요 ㅎ
굳이 안하셔도 됩니다!!!
비교해 보니 저도 맞더라구요!! : )
인터넷 off는 와이파이 사용할 경우 와이파이 차단하면 될까요? 비행기 모드라든지....
넵! 비행기 모드도 좋죠!
저는 그냥 유선이라 선을 빼버렸거든요. ㅋㅋ
인터넷 차단 하시고 브라우저 띄워서 네이버 접속 한번 시도해 보시고 안되면 끊겼다고 생각하심 편합니다. ㅎㅎ
감사합니다^^
제가 괜시리 불안하게 만들어 드린게 아닌지 싶기도 합니다.
어차피 잘 보관하신 분들은 굳이 필요없는 절차이기도 해서요.. ^^;;
시간이 다가오니 확인 안하고는 못 버티겠어서
인터넷 off하고 부들부들 떨면서 확인한 결과 이상이 없더라구요 ㅎㅎ
암튼 확인하고 나니 맘은 편해지네요 감사합니다 트리님
퍼블릭키도 따로 보관을 해야 하는건가요? 아 너무 어려워요 ㅠㅠ
퍼블릭키는 일단.. 주소라고 보시면 될 것 같고, 프라이빗키는 비밀번호로 보시면 될 듯 해요. ㅎ
참 복잡하죠. ㅠ_ㅠ
와~트리님 코딩도 잘 아시나 봐요. 멋지시네요!^^
보안은 정말 중요하니까 몇 번씩 검증해봐도 나쁘지 않은 거 같아요.
직접 현업에서 코딩에 손을 놓은지는 꽤 되었는데요..
간혹 소스를 보긴 해요. ㅎㅎ
인터넷 선 빼고 검증하려니 불편하긴 하지만, 그래도.. 그게 안전하니.. ㅎㅎ
무슨 말인지 하나도 모르겠습니다. 그냥 이오스 사라는 건가요?
아니예요!!! 절대 아닙니다!! ㅎㅎ
뭐든지 사고 파는 건 직접 분석해 보신 뒤 이해가 되고, 스스로 납득이 되어야지요! : )
소스까지 훌터 주시다니 안심할수 있겠어요.
오프라인 검증이니까 어찌됬든 안전하게 사용할 수있을꺼 같아요
네~ 혹시라도 버퍼나 파일 같은데 저장해 놨다가 인터넷 연결되는 순간 다시 전송할까봐서 소스를 한번 훑어봤어요. ㅎㅎ
안그래도 며칠 전부터 직접 한번 해봐야지.. 생각만하고 있다가 selly님 포스팅 보고 오늘 해보게 되었어요.
감사합니다. : )
네..
몇일 안남았네요 ^^*
벌써 거래소들은 입출금 금지 공지 떳어요
거래만 가능 하지 런칭 끄날때까지는 입출금 할수 없다구요
아, 한빗코라는 거래소는 30일(이제 오늘)까지 입금이 가능합니다. ㅎ
다만 31일 00시로 넘어가면 스왑대상에서 누락된다고 하구요.
30일까지 입금할 경우 EOS/BTC 페어에 대한 거래수수료가 평생 무료라고 이벤트 하길래 저도 엊그제 1 EOS 정도 입금해 놨습니다. ㅎㅎ
추가. 한빗코만 생각나서 답글에 썼는데, 지금 보니 코인원이나 다른 곳들도 아직까지 입금은 받는 곳이 있네요! ^_^
이오스 보유중인데 무슨말인지 모르겠어요
가만히 있어봐아 하나봐요 ㅋㅋ
거래소에 홀딩 중이시면 그냥 두시면 됩니당! ㅎㅎ
저는 50개정도 밖에 없어서 일단 거래소에^^
그리고 잘 모르기도 하고요^^
거래소가 간편합니다!
이거 직접 해보려니 되게 신경도 쓰이고, 귀찮고, 까다롭네요. ㅠ_ㅠ
이 포스팅 보니 가끔은 자연스레 중앙집권화가 되었다는 생각이 드네요 ㅎㅎ 열심히 계속 공부를 해야겠네요. 좋은 하루 보내세요^^
이거 공부를 안하면 따라갈 수가 없어서 강제로 공부까지 하게 되는 효과가 있는 것 같습니다. ㄷㄷ;;
퀀텀 POS 쪽도 해보다가 이제는 다 정리하고 EOS로 비중을 옮겼네요. ㅎㅎ
분명 호재인것 같은데 요즘 이오스 가격은 왜 이럴까요?ㅠㅠ
곧 치솟는 날이 오겠죠?^^;;
오늘 비트코인을 재산으로 인정한 판결 소식이 있었네요. ^^
당장은 모르지만, 암호화폐 시장 전체에 긍정적인 소식이네요 . : )
참고하겠습니다.
감사합니다. ^^
거래소에 넣어두고 있다가 에어드랍 코인들 다 안줄까봐 언능 mew로 옮겨놓고 등록했는데.. (여기까지도 엄청 힘들었는데).... 이건 또 뭔가요 ㅋㅋㅋ 그냥 이 포스팅을 남편한테 전달해줘야겠습니다 ㅎㅎ
아, 사실 꼭 이 과정을 거치지 않으셔도 대부분 잘 보관하고 계실거라 생각해요~ ㅎㅎ
마스터님능력자인정!!저무슨소린지모르겠어요ㅜㅜ
잘 모르셔도 됩니다!! ㅎㅎㅎ
저도 잘 모릅니돠~!! ㅋㅋ
뭔지 모르겠지만 응원합니다.ㅋㅋ
코인들이 좀 올라야 할텐데..ㅠㅠ 스팀이 너무 떨어져서 보팅력이 갈수록 약해지니 슬픕니다.ㅠ
스팀이 많이 떨어져서 이제 스팀달러가 줄어들기 시작했네요! ㅎㅎ
그 때가 다가온다는 느낌을 살살 받고 있습니다. ㅋ
메인넷 이후에 가격향방이 어떻게 결정이 날지가 참 궁금하네요. 결코 장기 우상향만 기대할 수는 없을 것 같은데,,,
네- 무조건 장기 우상향...이라고 말할 수는 없겠지만, 지금까지 여러 정황을 보았을 때는 아직 버블이 충분히 커지지 않았다고 생각합니다.
새로운 사업 영역으로의 확장인지라.. 기관 투자자들 입장에서도 군침돌만한 게 많이 보이니까요..
두둥,,, 이오스가 가슴을 설레게 합니다.
얼마나 빠질지는.... 희망을 가져야겠죠..
저도 많은 기대를 하고 있는데요.
메인넷 이후 하락할 여지도 있지만, 재미있는 DApp 들이 많이 소개되지 않을까 기대도 됩니다. ㅎㅎ
저런 소스들에는 참 익숙해지지를 않네요 ㅠㅠ
ㅎㅎㅎ 소스가 좀 그렇죠? ^^;;