プライバシー、セキュリティ、スケーラビリティは、暗号愛好家にとって最大の懸念事項の一つです。ブロックチェーン開発で達成された大きな進歩にもかかわらず、ビットコインは擬似的な匿名性しか提供しておらず、スケーラビリティ(拡張性)を欠いています。セキュリティもまた、完全に対処されれば、主流の信頼と採用を後押しするであろう重要な懸念事項です。
これらの問題を解決するために、ビットコインの開発者たちは、より高度なプライバシーを導入し、取引のスケーラビリティと効率を向上させる技術を提案してきました。これらの提案されたアップグレードは、Taproot署名とSchnorr署名として知られています。この2つのソリューションは、スケーラビリティ、プライバシー、セキュリティを同時に解決することを約束します。ここでは、これらのソリューションの内容と、これらのソリューションが暗号ユーザーにもたらすメリットを簡単に見てみましょう。
Taproot(タップルート)とは?
Taprootは、複数の署名を使用するビットコイン取引を標準取引と区別がつかないようにし、長期的にはプライバシーを向上させることを目的としたビットコイン改善提案(BIP)です。
Taprootのアップグレードは、取引の複数の署名をすべて1つに集約することで、プライバシーを高めるためにビットコインのブロックチェーン上でソフトフォークを改良したようなものです。これにより、複数の署名を持つ取引の参加者は、取引の詳細を隠蔽し、より低い手数料を支払うことが容易になります。
ビットコインネットワーク上のTaprootコードベースへの移行は、歓迎すべき救済措置です。ビットコインネットワーク上でのプライバシーとスケーラビリティの欠如が、この通貨の大量採用のボトルネックとなっていました。しかし、タプルートが何を意味するのかを明確に理解するために、ここではビットコイン取引の入門編をご紹介します。
ビットコインの取引を理解する
ビットコインの取引がどのように実行されるかという技術的な側面は、あまり知られていません。ほとんどの人には知られていませんが、ビットコインネットワーク上での取引は、従来の銀行口座システムで期待されるようなバランスベースではありません。
ビットコインの取引は、Unspent Transaction Output(UTXO)と呼ばれる概念に基づいて構築されており、よりブロックチェーンベースのIOUのようなもので、未使用の取引データが特定の秘密鍵にリンクされています。したがって、ビットコインを送信する際には、送信者はウォレットや口座から引き落としをしながら、受信者の口座にあるUTXOの所有権をクレジットしていることになります。暗号署名はUTXOを保護します。
これらのUTXOは、誰もがビットコインを使用できるようにする前にUTXOの所有権の証明を必要とするスマート契約のようなBitcoinスクリプトに包まれています。秘密鍵が所有権の証明であり、使用条件はBitcoinスクリプト内に記述されます。その後、ビットコインスクリプトは、簡単にアクセスできるように、MAST(Merkelized Abstract Syntax Tree)データ構造で一緒に張り巡らされます。
ビットコイン取引の安全性について
トランザクションデータの操作は深刻な結果につながる可能性があるため、いくつかのセキュリティ機能がMASTデータベースを保護するために使用されています。ビットコインのネットワークは公開されたままであるにもかかわらず、複数の署名やタイムロックなどの機能により、トランザクションごとに擬似的な匿名性のレベルが達成されています。
タイムロックとは、指定された時間にのみ取引が行われるようにビットコインスクリプトにプログラムすることができる条件です。一方、マルチシグネチャ(マルチシグ)とは、複数のシグネチャが提供されると取引を承認するためにビットコインスクリプトに設定される条件です。これらのセキュリティ技術は、ユーザーの身元を多少隠しますが、最終的な解決策ではありません。
Taprootのソリューション
Taproot は、各トランザクションのデータ負荷を軽減し、コストを削減するため、MAST を改良したものです。
マルチシグやタイムロックでは、ユーザーの本当のアイデンティティを不明瞭にするために、ネットワーク上に複数のトランザクションを作成する必要があります。しかし、これは手数料が高くなり、トランザクションごとのデータ負荷が重くなり、ビットコインがより高いTPS(Transaction per Second)にスケールする能力を制限することになります。
Taprootは、トランザクションの実行に必要なすべての署名を1つの署名として集約することで、このプライバシーとスケーラビリティの欠如を解決します。これにより、マルチシグナルトランザクションを通常のトランザクションと区別することがより困難になり、ネットワークの負荷と手数料が軽減されます。
Taprootは、ビットコインの支出のスケーリング、効率性、プライバシーを向上させるために設計された機能として、2018年1月にGreg Maxwell(ビットコインのコア開発者)によって最初に提案されました。その後、提案されたアップグレードは、2020年10月にビットコインのコアライブラリにマージされました。
Taprootに加えて、シュノールもスケーラビリティとプライバシーを向上させるため、ビットコインネットワークのBIP実装としては興味深いものがあります。シュノールのシグネチャは、Taprootのような技術の実装を可能にする環境を作っています。
シュノールのシグネチャー:新世代の著名
シュノール署名とは、単純な数学的特性に基づいた暗号署名であり、可鍛性攻撃のリスクがなく、容易に検証可能です。サトシ・ナカモトは、ビットコインを作成する際に楕円曲線デジタル署名アルゴリズム(ECDSA)を採用しましたが、これは当時広く使われていたものであり、最も安全でよく理解されている署名アルゴリズムでした。
しかし、シュノール署名と比較すると、ECDSA はより可鍛性があります。デジタル署名の可鍛性を理解するには、ある取引を他の取引と区別するのに役立つ指紋のようなものだと考えてください。
デジタル署名は、トランザクションの暗号化ハッシュとして生成されます。したがって、トランザクションの詳細を調べる代わりに、1つのトランザクションを別のトランザクションと区別するためにハッシュを見るだけで済みます。
すべての署名はユニークですが、トランザクションの可鍛性は、トランザクションを無効にすることなく署名を変更することを可能にします。これは、暗号通貨に応じて複数の方法で行うことができます。ECDSA の設計により、誰もがトランザクションを無効にすることなく署名を変更できるようになっています。これは、有害な結果をもたらす余地を残しています。
例えば、Johnという人がABCデジタル署名のトランザクションでAliceさんという人にビットコインを送った場合、可鍛性攻撃によってABC署名がABZに変更される可能性があります。Jhonは自分が送ったビットコインが届いたかどうかを確認することができなくなります。これにより、署名を変更しても最初の取引が無効にならなかったにもかかわらず、Alliceはジョンにビットコインの再発行を求めることができる抜け道が残されてしまいます。Aliiiceは2度支払いを受け、ジョンが自分が攻撃を受けていることに気づくまでに時間がかかることが多くなります。
シュノール署名は、電子署名データをトランザクションの別の部分に移動させることで、この問題を解決します。したがって、トランザクションを検証するために、別の外部のデータ構造が使用され、可鍛性のソースとしての署名を排除します。この仕組みは1989年にClaus Schnorrによって最初に開発され、暗号技術の中で最高の署名方式の一つとして評価されたおかげで、2018年7月にBIPとして提案されました。
ビットコインネットワークにおける、セキュリティのプライバシーと拡張性
TaprootとSchnorrのデジタル署名の開発は、ビットコインだけでなく、他の暗号通貨にとっても新しい時代の幕開けとなりました。この2つの技術は補完的なものです。一方のSchnorrは、署名可鍛性ソリューションでビットコイン取引のプライバシーを保護します。一方、Schnorrはまた、Segregated Witness(SegWit)の基盤でネットワークのスケーラビリティを部分的に向上させ、2017年8月のソフトフォークを改善しています。
Taprootは、複数のユーザーの署名を集約し、より便利な取引を可能にします。これにより、ユーザーは複数のウォレットアドレスに対して一度だけ署名することができ、プロセス全体のスピードアップとコスト削減を実現しています。TaprootとSchnorrを組み合わせることで、ライトニングネットワークのさらなる発展に道を開き、ビットコインの取引をより速く、より安全にすることができます。