かつて持っていた財布にお金が入っていて、もうアクセスできません 理由は聞かないで。長い話とNDA... 誰かが誤ってそこにお金を送ってくれたんだ その財布は1年以上使っていなかった。私は種を安全に保管していますが、なぜかその特定の住所のものを持っていませんでした。 奇妙なのは、ほぼ間違いなく「アカウント作成」ボタンで作成された普通のMetamaskアカウントだったということです。 そこで、私は完全に探偵に挑戦することにしました: 最初に確認したのは、そのウォレットが自分のパソコンに存在していたかどうかでした。MetaMaskは暗号化されたウォレットデータをブラウザのローカルに保存しているので、ブラウザプロファイルがまだ存在しているなら、ボールトもそこにある可能性があります。 Chromeの拡張機能ストレージに入り、Metamaskのデータベースファイルを取り出しました。そのファイルの中には「ヴォールト」と呼ばれる暗号化されたオブジェクトがあります。そのボールトにはMetamaskが使うシードとキーが入っていますが、すべてはMetamaskのパスワードで暗号化されています。 そこで金庫のデータを抽出し、復号しました。 Metamaskが使う暗号化は、基本的にパスワード(PBKDF2)から派生した鍵で、Vault ペイロード(AES)を復号します。もしメタマスクのパスワードを知っていれば、ボールトを復号し、中に保存されているシードフレーズを復元できます。 その部分は実際にうまくいった。 Vaultを復号した後、そのメタマスクインストールに保存されていた3つの異なるシードフレーズを復元しました。 そして導出の段階が始まりました。 Metamaskはすべてのイーサリアムアドレスを個別に保存しているわけではありません。シードフレーズを受け取り、そこから派生パス(通常はm/44'/60'/0'/0/n)を使って決定論的にウォレットを生成します。「アカウント作成」をクリックするたびに、Metamaskはインデックスを増やし、同じシードから次のアドレスを導き出します。 そこでスクリプトを書き、そのシードからアドレスを導き出し始めました。何百人も。 ...