
SSP における Bitcoin
Bitcoin は最初の暗号通貨であり、多くの人にとってまとまった額を初めて保有する暗号通貨でもあります。Bitcoin を保管する場所として SSP を検討しているなら、知りたいのは 2 つのことでしょう。チェーンとしての Bitcoin の仕組みと、SSP が具体的にそれをどのように扱うかです。本記事では両方を扱います。Bitcoin の中核となる仕組みを簡単に紹介し、SSP が Bitcoin を 2-of-2 マルチシグでどのようにサポートしているかを順を追って説明し、アプリ内での送受信がどのように見えるかをまとめ、Bitcoin ユーザーがどのウォレットでも遭遇する最も一般的な落とし穴を指摘し、SSP が Bitcoin に対して意図的にやらないことの率直なリストで締めくくります。
一段落で分かる Bitcoin
Bitcoin はグローバルなノードのネットワークによって維持される公開台帳です。新しいユーザーにとって最も重要な思考モデルは UTXO モデルです。あなたは銀行口座の残高のような「残高」を持っているわけではありません。代わりに、あなたが管理するアドレスに送られた一連の未使用トランザクション出力 — UTXO — を持っています。送金する際、ウォレットは 1 つ以上の UTXO を選択し、それらを完全に消費し、受取人が要求した金額を受取人のアドレスに送り、残りをあなたが管理する釣り銭アドレスに戻します。ウォレットはこれを見えなくしてくれますが、内部で起きているのはこういうことです。
チェーンそのものは PoW によって保護されています。マイナーはエネルギーを消費してブロックを見つけ、新しいブロックは平均しておよそ 10 分ごとに到着します。供給スケジュールは固定で、bitcoin は合計で 2,100 万枚しか存在せず、新しいコインが流通に入る速度はおよそ 4 年ごとに半分になります。これらは Bitcoin を日常的に使う方法を変えるものではありませんが、確認に時間がかかる理由や、ネットワークが混雑したときに手数料が急騰する理由を説明してくれます。ブロックには厳格なサイズ上限があり、各ブロックには一定数のトランザクションしか入らないからです。
SSP は Bitcoin をどうサポートするか
SSP は BIP48 2-of-2 マルチシグを用いてメインネットの Bitcoin をサポートします。この一文にウォレットの全体的なセキュリティモデルが詰まっているので、解きほぐす価値があります。
BIP48 は、同じ仕様に従うウォレット間で相互運用可能な方法で、シードからマルチシグウォレットの鍵を導出するための標準です。「2-of-2」の部分は、ウォレットに 2 つの鍵があり、すべての送金に両方の署名が必要であることを意味します。SSP では、一方の鍵はあなたのスマートフォンの SSP Wallet アプリにあり、もう一方はノート PC やデスクトップの SSP Key アプリにあります。Bitcoin を送るには、両方のデバイスが関与する必要があります。一方のデバイスだけが紛失したり侵害されたりしても、攻撃者は資金を動かすことができません。
受け取り側はずっとシンプルです。外から見ると、あなたの SSP Bitcoin ウォレットは他のどの Bitcoin ウォレットとも変わりません。アドレスがあり、誰でもそこに送ることができ、送り手はそれがマルチシグであることを知る必要も気にする必要もありません。マルチシグは送金時にのみ意味を持ちます。このモデルを選んだ理由については、2-of-2 マルチシグとは何ですか? を参照してください。
SSP での送受信
SSP で Bitcoin を受け取るのは簡単です。SSP Wallet アプリを開き、Bitcoin を選択して「受け取る」をタップします。アプリは Bitcoin アドレスと QR コードを表示します。送り手にとって最も簡単な方法を共有してください。チャットにアドレスを貼り付ける、相手のウォレットで QR をスキャンしてもらう、または支払いリンクを共有する、のいずれかです。送り手がトランザクションをブロードキャストするとすぐに、SSP 上で保留中として表示されます。ブロックにマイニングされ、いくつかの確認が付けば決済済みと見なされます。あなた側でこれ以上やることはありません。
送信は 2-of-2 モデルが目に見える形で現れる場面です。要点は次のとおりです。SSP Wallet を開き、「送信」を選び、受取人アドレスを貼り付け、金額を入力し、手数料を選び、スマートフォンで確認します。すると SSP Wallet がスマートフォンの鍵で署名し、部分的に署名されたトランザクションをデスクトップ上の SSP Key に渡し、そこで確認して 2 つ目の署名を追加します。両方の署名が揃うと、SSP はトランザクションを Bitcoin ネットワークにブロードキャストします。
デスクトップで SSP Key の共同署名ステップをどう扱うかを含む画面ごとの詳しい手順については、SSP で Bitcoin を送る を参照してください。そのガイドは正確なタップやプロンプトを扱います。本記事はその背後にある理由に焦点を当てています。
よくある落とし穴
どのウォレットを使うかに関わらず、Bitcoin で繰り返し現れる種類のミスがいくつかあります。意味のある金額を送る前に知っておく価値があります。
1 つ目はアドレスポイズニング(address poisoning)です。攻撃者は、あなたが以前に送ったことのあるアドレスとほぼ同一に見える — 多くの場合、最初と最後の数文字が一致する — アドレスから、ごく小額の dust トランザクションを送ってきます。狙いは、その似たアドレスをあなたの取引履歴に紛れ込ませ、次に「前回と同じアドレス」をコピーした際に、代わりに攻撃者のアドレスを掴ませることです。防御策はシンプルですが省略不可能です。署名前に必ずアドレスの先頭 6 文字と末尾 6 文字以上を確認し、できれば受取人自身のチャネルから得たコピーと比較してください。
2 つ目は手数料の見積もり誤りです。Bitcoin の mempool — 未承認トランザクションのプール — は混雑することがあり、低すぎる手数料を選ぶと、トランザクションは何時間、場合によっては何日も未承認のまま留まることがあります。SSP は現在のネットワーク状況に基づいて手数料を提案します。それを上書きするなら、急ぎのときには上向きに上書きしてください。下向きではありません。
3 つ目は誤った形式のアドレスへの送信です。Bitcoin には複数のアドレス形式 — Legacy、Segwit、Taproot — があり、形式間で自動変換を行う送信ウォレットは、あなたの意図しない結果を生むことがあります。常に受取人から渡された文字列そのままに送信し、いかなるツールにもそれを「修正」させないでください。
SSP がやらないこと
製品の境界線を明確にしておく価値があります。SSP はユーザー向けに独自の RBF(Replace-By-Fee)フローを提供していません。送信時に選んだ手数料がそのまま外に出る手数料であり、後から SSP 内で引き上げることはできません。また、SSP は BIP48 2-of-2 以外のマルチシグ構成をサポートしていません。2-of-3 も、3-of-5 も、カスタムの共同署名者もありません。さらに SSP は任意のメッセージへの署名は行わず、標準的なウォレットトランザクションのみを署名します。サードパーティサービス向けのメッセージ署名が必要な場合、SSP は適したツールではありません。これらは、より小さく監査しやすい表面を目指した意図的な製品上の選択であり、私たちが将来埋める予定の穴ではありません。
次のステップ
SSP を通じて Bitcoin を動かす準備ができたなら、ステップごとの手順は SSP で Bitcoin を送る にあります。送信フローを今の形たらしめているセキュリティモデルをさらに深く知るには、2-of-2 マルチシグとは何ですか? を読んでください。まだウォレットを作成していない場合は、初めての SSP ウォレットのセットアップ から始めてください。これら 3 本の記事を合わせれば、新規インストールから確認済みの Bitcoin 送金までの全工程をカバーできます。