- シュノア署名は、ECDSAプロトコルの欠陥の一部を改善するために、Taprootのアップグレードとともに開発された署名方式です。
- シュノア署名はECDSAと似たような機能を持ちますが、ECDSAよりも多くの利点があります。
- シュノア署名は、トランザクションに複数のメインアドレスがある場合に、複数の署名を集約するものです。
-各ブロックのトランザクション数を増やすことで、レイヤー1のスケーリングが可能になります。
-シュノア署名は、
Bitcoinにおけるスパム攻撃に対するセキュリティにもなります。
- シュノア署名と乱数での計算は、トランザクションを遅らせる可能性があり、コンピューターはより多くのコンピューティング帯域幅リソースを消費します。
キーワード:シュノア署名、ビットコインネットワーク、BTC、デジタル署名、ECDSA、秘密鍵
はじめに
ビットコインは、様々なユーザーの秘密鍵から公開鍵を導き出すことができるデジタル署名アルゴリズムによって、所有権を行使しています。
秘密鍵は、ブロックチェーンネットワーク上における一意のID手段であり、ユーザーがコインを受け取ったり送金したりするためのアドレスを生成するためのものです。
ビットコインで以前使用されていたデジタル署名アルゴリズムの種類は、ECDSA(楕円曲線DSA)でした。ECDSAは、オープンソースで信頼性が高く、採用の検討が十分になされていることから、
Bitcoinで実装されました。
ECDSAはネットワークとトランザクションのセキュリティを容易にしましたが、特許保護がないなどの欠点もありました。そこで、開発者は、ビットコインに別の署名アルゴリズム、シュノア署名を採用することを決定しました。
シュノア署名とは
シュノア署名は、ECDSAと同様の楕円曲線暗号理論(Elliptic Curve Cryptography:ECC)を用いた署名アルゴリズムの一種です。シュノア署名は、タップルート更新と呼ばれる新技術を採用し、ブロックチェーンネットワーク全体の容量とスケーラビリティを向上させています。
シュノア署名は、スケーラビリティとストレージの面でECDSAよりも多くの利点を持ち、ビットコインやその他の暗号資産のプライバシーを強化することを目的としています。
シュノア署名アルゴリズムは、1980年代にドイツの暗号化学者Claus Schnorrによって初めて設計されました。
シュノア署名の仕組み
キー集計
シュノア署名には「線形」という特徴があり、複数のユーザーの公開鍵を線形計算によって1つの公開鍵に集約し、相対的に集約された署名を生成することができます。
つまり、シュノア技術は、マルチシグネチャを1つに集約し、取引のプライバシーを促進し、ロック解除スクリプトのマルチシグネチャによるコスト削減、重要なオンチェーンスペースの節約、および拡張性の実現に貢献します。
タップルート技術
ビットコインにおけるシュノア署名の重要性は、タップルートなどの技術の基礎となる役割にも依存しています。タップルートはMAST(Merkelized Abstract Syntax Tree)に由来し、複雑なスクリプトをメルケル木の形で表現します。メルケル木の本質的な特徴は、無関係な枝の真のデータを明らかにすることなく、ノード値の存在を迅速に確認できることであり、ブロックチェーンにおける取引や状態のデータの保存に広く利用されています。
シュノア署名がビットコインにとって意味するもの
スケーラビリティ
シュノア署名は鍵の集約を可能にし、
Bitcoinノードがバッチで署名を検証することを可能にします。このバッチ検証により、複数の入力を伴うトランザクションの証明に必要な時間と計算能力が大幅に削減されます。
マルチシグネチャ方式
マルチシグネチャ(複数署名)取引は、その名の通り、特定の金額のビットコインを送金するために複数の署名を必要とします。
シュノア署名アルゴリズムでは、公開鍵を1つの公開鍵に集約することで、複数の独立した署名を1つのデジタル署名としてグループで作成できます。
コスト削減
シュノアは、大規模なマルチシグネチャスキームを、ユーザーとビットコインネットワークにとってより魅力的なものにします。ユーザーにとっての資金移動のコストと、マルチシグネチャトランザクションの多用に伴うスケーリングの問題を軽減します。
例えば、2/3のマルチシグネチャ設定において、シュノア署名を採用すると、ビットコインネットワークで知る必要のある公開鍵の数を67%減らし、必要な署名の数を50%減らすことができます。それにより、ビットコインネットワークが追跡し記録する必要のあるデータ量を大幅に削減できます。
ネットワークセキュリティ
シュノア署名方式は、スパマー攻撃に対するネットワークセキュリティを向上させることができます。この実装では、攻撃者はブロック内の同じスペースを占有するために、より多くのトランザクションを送信する必要があります。このため、攻撃者にとって攻撃のコストが高くなり、実行可能性が低くなります。
プライバシー
キー集計は、マルチシグネチャウォレットの資金移動に必要なデータ量を削減することでスケーラビリティを向上させ、またこの種の取引におけるプライバシーを向上させることができます。
ビットコインのネットワークでは、シュノア署名アルゴリズムによるマルチシグネチャの設定は、1つの公開鍵と1つのデジタル署名のように見えます。これに対して、公開鍵と電子署名は、複数の鍵と複数の署名の組み合わせです。
これは、マルチシグネチャ設定における各参加者のプライバシーを向上させます。ネットワークは、集約された公開鍵を作成するために必要な公開鍵を知らず、どの当事者がトランザクションに署名したのかも分かりません。
この署名方式を実装すると、シュノア署名のトランザクションを従来の単一署名のトランザクションと同じように見せることができるため、ネットワークのプライバシーを向上させることができます。つまり、互いに見分けがつかないのです。
ビットコインネットワークにおけるシュノア署名のデメリット
シュノア集約型秘密鍵署名の特性上、ユーザー間で複数ラウンドのやりとりが必要であり、従来のECDSAよりも難易度が高い。さらに、乱数に対する要求も比較的高い。これらの署名と乱数を計算するのは面倒な作業です。このため、トランザクションを送信するステップに若干の遅れが生じ、コンピューターはより多くの計算帯域幅リソースを消費することになります。
ビットコインで早期にシュノア署名が採用されなかった理由
シュノア署名はECDSA以前から存在していましたが、最初からビットコインに統合されていたわけではありません。
その理由のひとつは、Claus Schnorrが1990年にシュノア署名を発明する際に特許を取得したことです。このため、シュノア署名の利用やさらなる技術革新が制限されていました。ECDSAはオープンソースであったため、徹底的にテストされ、信頼性が高く、それゆえ広く採用されました。シュノアの特許が切れたのは2008年、つまりビットコインが誕生したのと同じ年ですが、シュノア署名はビットコインのような重要なシステムを保護するために必要な受容性とテストが不十分であると結論付けられました。
ボトムライン
シュノア署名は、ビットコインネットワーク全体を向上させる関連技術の1つです。ECDSAと比較して、シュノア署名はより安全でスケーラブルであり、
Bitcoinチェーン上の領域を拡大することができます。
今後、シュノア署名は、ビットコインのプロトコルやブロックチェーンの世界に、さらに新しい技術的な発展をもたらすと期待されています。
執筆者
M. Olatunji(Gate.io オブザーバー)
免責事項
*本記事はオブザーバーの見解を述べたものであり、いかなる投資提案も行うものではありません。
*Gate.ioは本記事のすべての権利を保有します。記事の再掲載は、Gate.ioを参照することを条件に許可されます。それ以外の場合は、著作権侵害として法的措置を取ることとします。