ホワイトペーパー

Vergeホワイトペーパー和訳6

更新日:

 本稿について

本稿では、VergeのBlackpaperのうち「8.Wraith Protocol」の邦訳を掲載します。

原文はこちらになります。

スポンサードサーチ

8.Wraithプロトコル

Wraithプロトコルとは?

Wraithプロトコルは匿名性を保ちつつ、暗号通貨の歴史の中で初めてパブリックかプライベートな元帳を選ぶことを可能にします。この革新的な新システムを通じて、事業者のような透明性とアカウンタビリティを尊重するユーザは、ブロックチェーン上でトランザクションを見えるようにするか否かの選択肢を有します。一方でトランザクションの完全消滅を好むユーザにも選択肢を提供します。Wraithプロトコルは、公に利用可能な元帳でトランザクションが追跡されることなく、Vergeコインの安全でセキュアな送受信方法を提供しながら、完全な匿名性を維持できるようにします。更新にはステルスアドレスと最新のTor+SSL統合が含まれ、core QTユーザをクリアネットから切り離し、最新のTorネットワーク上での排他的な運用に移行させるでしょう。

また、ユーザがパブリックとプライベートのどちらの元帳と取引をしたいかを指示する機能も更新に含まれます。洗練されたシンプルさにより、Wraithプロトコルの更新は、ユーザがCore QT内のスイッチを切り替えて、ステルスアドレスを介してTorネットワークを通じたIP難読化の追加レイヤと取引ができるようにするでしょう。

ディープダイブ

鍵共有とDiffie-Hellmanアルゴリズム、楕円曲線暗号と関連するいくつかの基礎とキーコンセプトを見ることから始めましょう。

鍵共有とは?

鍵共有スキームは、対称暗号化で用いる1つ以上の鍵から順次発生する値についての2つ以上のパーティによる合意方法です。いかなるパーティも自身だけでキーバリューを完全に確定することはできません。その代わりに、両者とも最終的なキーバリューに貢献し、最も重要なことは両者の取引を観察しているいかなるものも最終的な結果がどのようなものになるかを伝えることはできないということです。基本的に鍵共有スキームは匿名で、観察者は一方のパーティに他方のパーティの識別情報を伝えないということに留意しておくことが重要です。

Diffie-Hellmanアルゴリズムとは?

元のDiffie-Hellman鍵共有スキームは、大きな素数を法とする整数、特にpがある大きな素数であるときに1より大きくpより小さい数の乗算に基づいています。ECDHは楕円曲線の観点を加えたものに基づく類似のスキームです。どちらのスキームでも、基本的な操作を組合わせて鍵付き一方向性関数として知られる原始関数を作成します。鍵付き一方向性関数は2つのインプットを取る関数で、そのうちの1つは秘密のもの(例えば鍵)で、1つのアウトプットを出します。2つインプットがある場合は、アウトプットを計算するのは簡単ですが、片方のインプットとアウトプットだけを使って計算機的に鍵を計算することはどうしても実行不可能とならざるをえなくなります。このようにして、各パーティは他の誰にも、もう一方のパーティや盗聴者(中間者)のどちらにも秘密鍵を明かすことなく使うことができます。

楕円曲線Diffie-Hellman鍵共有(ECDH)とは?

ECDHは、Diffie-Hellman鍵共有アルゴリズムの楕円曲線による変形です。ECDHは鍵交換プロトコルで、鍵の生成方法とパーティ間での交換方法を定義します。これらの鍵を使って実際にデータを暗号化する方法は私たち次第です。ECDHは次のような問題を解決するために実装されます。

問題:2者(AnthonyとBilly)は、第三者が通信傍受をしている可能性(中間者攻撃)がある状況で、解読できないようにしながら安全に情報の交換をしたい。

以下がECDHの動作です。

  1. まず、AnthonyとBillyは自身の秘密鍵と公開鍵を生成します。Anthonyの秘密鍵はdAで公開鍵はHA=dAG、Billyの秘密鍵はdBで公開鍵はHB=dBGです。AnthonyとBillyは同一有限体の同一楕円曲線における同一のベースポイントGを利用していることに留意してください。
  2. AnthonyとBillyは安全でないチャネル上で互いの公開鍵HAとHBを交換します。中間者はHAとHBを傍受するかもしれませんが、離散対数問題を解かない限りdAとdBのどちらも割り出すことはできません。
  3. AnthonyはS=dAHBを計算し(Anthonyの秘密鍵とBillyの公開鍵を利用)、BillyはS=dBHAを計算(Billyの秘密鍵とAnthonyの公開鍵を利用)します。SはAnthonyとBillyで等しいことに留意してください。
    実際、S=dAHB=dA(dBG)=dB(dAG)=dBHAです。

中間者は、HAとHB(と他のドメインのパラメータ)だけは分かりますが、共通の秘密Sを割り出すことはできないでしょう。

プロトコル前のこの特定のユースケースまたはこの場合のトランザクションを開始するには、AnthonyとBillyはどちらもトランザクションのパラメータa、b、p、Gに同意しなければなりません(図3を参照)。その後、各々が秘密鍵として使うためのランダムな整数を生成します。Anthonyの秘密鍵をm、Billyの秘密鍵をnとします。次に、各々がベースポイントGにそれぞれの秘密鍵を乗算し、公開鍵を示す新たなポイントを生成します。楕円曲線の観点から、各ポイントはx座標とy座標からなることに留意してください。

続いて、AnthonyとBillyは互いの公開鍵を交換し、相手方の公開鍵を自身の秘密鍵に乗算します。これにより、各々で同一の新たなポイントが生成されます。あとは、このポイントを鍵として使用するのに適したビット列に変換するだけです。

注:盗聴者は合意済みのパラメータを観察できるかもしれませんし、公開鍵の交換を見るかもしれませんが、秘密鍵が何であるのか、また両パーティが合意に至った鍵が何であるのかを確定することはできません。

ECDH

図3:ECDH

ステルスアドレスとは?

ステルスアドレスにより、送信者は相手方とのインタラクションをすることなく、受信者の代わりに無制限の数の一度限りの宛先アドレスを作成することができます。これらのアドレスは、受信者によって復元と使用をすることだけが可能で、アドレスの由来となった送信者あるいは受信者のアドレスのどちらにも公に紐付けることはできません。これは、楕円曲線、特にこのケースでは楕円曲線Diffie-Hellman鍵共有(略してECDH)として知られるクリプトグラフィの機構を通じて達成されます。ECDHは、互いの公開鍵を知る任意の2者が、他者が複製もいずれかの公開鍵に紐付けることもできない共通の秘密を計算できるようにすることによって動作します。ECDHアルゴリズムのユニークな暗号化特性のお陰で、共通鍵をリバースエンジニアリングして送信者アドレスや受信者アドレスに辿り着くことはできません。

Vergeカレンシーステルスアドレスは、パブリックビューキーとパブリックスペンドキーからなる95文字の文字列です。AnthonyがBillyにVergeを送信するときは、AnthonyはBillyのパブリックビューキーとパブリックスペンドキーと共にいくつかのランダムデータを使用して、Billyの新しいアウトプットのためにユニークな一度限りの公開鍵(ステルスアドレス)を生成します。誰でもブロックチェーン上でその一度限りの公開鍵を見ることができますが、AnthonyがBillyにVergeを送信したと分かるのはAnthonyとBillyだけです。アウトプットは、Billyが彼のウォレットのプライベートビューキーでブロックチェーンをスキャンすることによって、Billy宛のアウトプットを見つけることができるように作成されます。一度Billyのウォレットによって検出され回収されると、彼は一度限りの公開鍵と対応する一度限りの秘密鍵を計算し、彼のウォレットのプライベートスペンドキーで紐づくアウトプットを使うことができます。この全体のプロセスは、Billyのウォレットアドレスがいかなるトランザクションに一度も公に紐づくことなく発生します。

重要なポイント

  1. 元のパブリックアドレスに公にリンクすることはできない
  2. いかなる一度限りのアドレスにも公にリンクすることはできない
  3. 受信者だけが全ての支払いを一緒にリンクすることができる
  4. 受信者だけが一度限りのアドレスと関連付けられた秘密の鍵を引き出すことができる

ステルスアドレスは、後続のトランザクションのアウトプットを誰が使用できるのかという情報を自動的に生成し記録する一度限りの公開鍵をユーザが生成できるようにすることによって、トランザクションごとのユーザプライバシーを強化します。ステルスアドレスは、ユーザが公に閲覧可能なブロックチェーンの外部とのやりとりを効率的にできるようにすることによって、アウトプットがウォレットアドレスと関連付けられてしまうことを防ぎます。外部の観察者は誰から誰に資金移動がなされたのかを識別する術もなければ、ブロックチェーン上のトランザクションを調べることによってウォレットアドレスを単純にリンクする能力も有しません。AnthonyがBillyにVergeを送ると、Billyが受け取るアウトプットは彼の公開しているウォレットアドレスに関連付けられることはないでしょう。ステルスアドレスは、送信者(この場合はAnthony)が彼のウォレット内のトランザクションの確認をチェックすることにより、支払いがされたことを検証できるようにすることによって、確実に資金が送信される方法を構築しました。Billyは、いついくらのVergeが彼に送られたかを他の誰も知りえないと保証されているので安心できます。

Tor + SSL統合

以前は、CoreQTウォレットはユーザをクリアネットで取引させていました。Wraithプロトコルにより、我々は全QTユーザをクリアネットから隔離してTor上に移行します。そういうわけで、QTウォレットはユーザが確実に匿名であることを手助けしてくれるTorネットワークの外部のいかなるネットワークとの接続を確立する機能をもはや持たないでしょう。Torは分散型システムであり、ノードからノードへと接続をランダムにつないでいくことでユーザのIPアドレス情報を難読化するためのリレーネットワークを介して接続し、あらゆる情報追跡を効果的に排除します。 Tor統合には、SSL暗号化も含まれています。 ウォレット間でセキュアかつ暗号化されたリンクを確立して、ウォレット間でやりとりされるすべてのデータがプライベートかつ完全なものになるようにします。また、SSL暗号化により、データが傍受されたり改竄されたりすることなくウォレットからウォレットに問題なく送られます。Torの動作の詳細については、2.0節を参照してください。

次稿に続く

前稿に戻る

免責

邦訳には誤りがある場合がございます。予めご承知おき下さい。

確実な情報を知るためには冒頭に示した原文をご参照くださいますようお願いいたします。

-ホワイトペーパー
-, , , , , , ,

Copyright© 暗号通貨界隈のメモ書きなど。 , 2019 All Rights Reserved Powered by STINGER.

%d人のブロガーが「いいね」をつけました。