メッセージに署名する方法
- 執筆
- CRYPTO PORT 編集部
- 公開日
- 更新日
- 読了目安
- 5 分
結論
メッセージ署名は、そのアドレスの持ち主であることを証明するための操作で、送金を伴いません。ただし「署名だけだから安全」とは限りません。読めない形式の署名要求は、資産の移転を許可する内容である可能性があります。内容が読み取れない要求には署名しないでください。
要点
- 署名は本人確認の手段で、それ自体は手数料もかからない
- 内容が読めない署名要求は拒否する。無害とは限らない
- 接続したサイトが本物かを、URLで必ず確認してから署名する
- 署名を求められる理由が説明できないなら、その場では署名しない
定義
秘密鍵を使って任意の文字列に電子署名を付け、そのアドレスを管理していることを相手に証明する操作のこと。
仕組みは電子署名そのものです。秘密鍵で署名した結果は、対応する公開鍵(アドレス)でのみ検証できます。つまり、署名が正しく検証できれば、その人はそのアドレスの鍵を持っていることになります。この性質を使って、パスワードを作らずにログインする、保有者だけが参加できる企画に応募する、といった用途が生まれました。背景は「電子署名」で扱っています。
典型的な場面は、dApp への接続直後です。多くのサイトが、接続したアドレスの持ち主であることを確認するために、短いメッセージへの署名を求めます。この種の署名は、チェーンへの書き込みを伴わないため、手数料がかかりません。手数料が発生しないことは、送金ではないことの一つの手がかりになります。
しかし、ここからが本題です。署名要求のなかには、人間が読める文章ではなく、記号と16進数の羅列として表示されるものがあります。この形式は、内容を読ませずに承認させるために悪用されます。実際、資産の移転や、第三者への譲渡の許可を、署名だけで成立させる仕組みが存在します。署名だから安全、という理解は誤りです。何を承認しているのか読み取れない要求には署名しない。これが唯一の基準です。
署名の前に確認すべき点は3つあります。第一に、いま見ているサイトのURLが正しいか。検索結果や広告から入った場合は特に、綴りの近い偽ドメインを疑ってください。第二に、署名を求められた理由が自分で説明できるか。ログインのためなのか、応募のためなのか。第三に、表示されている内容が読めるか。読めない場合は、中断して調べる時間を取ってください。急かす仕掛けがあるときほど、立ち止まる価値があります。
なお、ウォレットのなかには、危険な可能性のある署名要求に警告を出すものがあります。警告が出たら、理由を確認せずに進めないでください。また、コールド保管用のアドレスでは、そもそも署名要求に応じないという運用が有効です。署名の必要な操作は、少額を置いたホット側のアカウントに限定してください。
注意点
- · 内容が読めない署名要求には応じないでください。署名だけで資産の移転が成立する仕組みがあります
- · 「ウォレットの認証」「エアドロップの受け取り」を名目に署名を求める偽サイトが多数あります。URLを必ず確認してください
- · 署名を求めるDMやメールのリンクからサイトへ入らないでください。必ず自分が保存した正規のURLから開きます
よくある質問
署名に手数料はかかりますか?
チェーンへの書き込みを伴わない署名には手数料がかかりません。逆に手数料の表示が出る場合は、それは署名ではなく取引の送信です。内容を読み直してください。