秘密鍵を探そう(3)

あらららら、ワシゃ、前回の秘密鍵探索で失敗をしてたことに気が付いた。
昨日、うたた寝してるときに急に思い出したんじゃ。

前回、平文の秘密鍵を探した時、UTF-8やUnicodeですぐに秘密鍵が見つかってもんで、はしゃいでしまって、超初歩的なミスを犯しておった。
リトルエンディアンを完全に忘れてそのままバイナリで探索してたのじゃ。そりゃヒットはずもないわな…..

【解説】

こういうことじゃ!

前回、NanoWalletの中に秘密鍵が存在しないかを確認したとき、バイナリデータの探索方法を間違えてしまった。
というか、そもそもメモたんの仕様が間違っておった。

そう、バイナリデータはメモリー上には、リトルエンディアンで入ってるんじゃよ。こんなのインテル系CPUの基礎の基礎、わしゃ40年以上前から知ってたはずが…(恥)

例:

秘密鍵の文字列  : f76f48e58ab7……………..0a14bc241d9bd2

メモリー上の秘密鍵: D2 9B 1D 24 BC 14 0A .. .. .. .. .. .. B7 8A E5 48 6F F7

こういう風に上位と下位が逆さに入っているもんなんじゃよ。つまり一番お尻の数値が、一番前にきて、逆さにならんでるんじゃ。インテル系CPUではこういうルールなのだ。

【再探索】

ってことはよ~、このリトルエンディアンのバイナリ値で探索したら、計算バッファに残る秘密鍵が、わんさか出てくるんじゃないのか?

さあ、やってみよう!

検索は秘密鍵の一部の”f76f48e58ab7”を、リトルエンディアンでバイナリ変換した ” B7 8A E5 48 6F F7”に変換してから探索してみるぞ。

Nano Walletを起動して、bikkurijii3でログインして

1回目の探索: 0匹

送金して秘密鍵を使ってみる

2回目の探索: 3匹 ……おおおお、予想通りじゃ!

ウォレットをいろいろ操作してみる

3回目の探索: 3匹 ……むむむ、ひょっとしてバイナリの秘密鍵は消し忘れかもな

ログオフする。

4回目の探索: 3匹 ……やっぱり消し忘れじゃ!

いやいや、前回は失敗だったな!
でもな、バイナリでも秘密鍵は山盛りだってことがわかって…..わしゃ幸せなのじゃ^^

おいおい、お前ら!もう秘密鍵が在ったくらいじゃ驚かないって?
少しは驚けよ~~~~~!わしゃ頑張ってるんだからよw
こういう危険な現実に麻痺しちゃいかんのだ。

つづく

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です