メモログ

0monaで出来るアドレスの所有(≒秘密鍵の保有)の証明方法

nolf7984
2021/02/03 23:21


自分のアドレスを宣言して、指定された額のコインを送っても良いですが、もっと直球の方法があります。

Askmona 3.0のログインの際、「署名」を要求するポップアップが開き、機械的にOKを押しているかと思います。

また、monacardに自分のアドレスを登録するとき、「署名」の入力を求められることがあるでしょう。

実はこれは、あなたがアドレスの所有者であることの証明プロセスそのものです。

これを手元でやってみましょう。

 

1.electrum-monaをダウンロードして初期設定を終わらす。

https://electrum-mona.org/

(electrum-monaが何かって?軽量なmonacoinのウォレットクライアント。あとhttps://monacoin.org/からもリンクされてる。詳しくはググって♡)

 

2.electrum内で生成したアドレスをコピーし、アドレス「ツール」から「メッセージの署名・署名確認」を選択。出てきたウィンドウに適当なメッセージを打ち込み、アドレスをペーストする。

 

「署名」ボタンを押し、署名欄に文字列を生成する。

 

3. ここで出た

・メッセージ:オウオウオウオウオウオウwwwwwwパァンッパァンッ(ヒレを叩く音)オウオウオウオウオウオウwwwwwwパァンッパァンッ(ヒレを叩く音)

・アドレス:MFbpZgrwLMACWHLUbD9uiESqKAViWHLEtc

・署名:HxPBO+twBGIim3g/ppGYYYlaDM1ol4bcNjDCWcBsjTCrUF9dQ6awjmvAqVH6rrF6F5kidgzWZj5v8oALnr1jthQ=

の三点セットを相手に伝え、上の画像と同じように「メッセージの署名・署名確認」ウィンドウに入力してもらう。

 

4.「検証」ボタンを押し、下記のように「署名認証完了」が出て来るのを確認してもらう。

 

以上を持って、この署名の作成者がアドレスの秘密鍵を持っていることが証明できました。

今回はelectrum内のアドレスで実施しましたが、外部のウォレット(monapaletteやcounterwallet-mona,もにゃ等)から秘密鍵をインポートすることでも同様の操作は可能です。

(※セキュリティや互換性の面から、わかっている人以外には推奨しません。自己責任で。)

*****************************

 

何やってるかわかんないと思うので、曖昧に解説します。

詳しい話は暗号学が好きなTwitterの怖いおじちゃん達に聞いてみてください。

 

メッセージ:任意の文章です。

アドレス:アドレスです。monacoinの場合、実は事実上の公開鍵、「暗号文の復号のみ可能な鍵」に相当します。

署名:上の「メッセージ」を秘密鍵で暗号化したものです。

秘密鍵:暗号文の生成が可能な鍵です。(これを知る事はアドレス内のコインの送金権限を握るのとイコールです。何があっても他人に公開しないこと!

 

今の状況は、「署名を公開鍵で復号したところ、メッセージのハッシュと一致する文字列が出てきたので、暗号化した人はアドレスの秘密鍵を持っていることが確認できた」と表現できます。

「暗号化された文字列を解凍したら、向こうの指定した文字列(のハッシュ値)と一致した」という現象は、向こうが公開鍵に対応した秘密鍵を持っていない限りは(事実上)起きえない為、その時点で秘密鍵の保有の証明になるのです。

 

これを利用して、Askmona3.0のログインも実装されています。

ログイン時、こんな画面が出てきませんか?

上でメッセージ・アドレス・署名を渡したときの事を思い出してください。

このケースでは、「メッセージ」はweb側よりタイムスタンプを元に生成・供給され、「アドレス」はMpurse経由で読み取られます。

あとはApproveすれば、上の「署名」が生成され、その検証がAskmona3.0側で実施され、ログイン処理が完了します。

(つまり、毎回ログインするたびに「利用規約に同意します」を署名しているわけですね。)

 

そんなわけで、0monaで出来るアドレスの所有確認の方法でした。

といっても、monapaletteやcounterwallet-monaのGUI上には、署名検証機能は独立には設置されて無いので、利便性を考えると少し手間ですが。将来feeが上がった時には役に立つかな・・・。

  • 302
  • 0

この投稿に最初のコメントをしましょう!

nolf7984さんのおすすめメモログ!


スポンサーリンク
PR

広告募集中!!

広告スペースをMONAで販売中です。
この投稿に最初のコメントをしましょう!

モナゲして応援しよう!

Loginすることで、モナゲが可能になります。