カナゴールドの仮想通貨ブログ

カナゴールドが推す銘柄を紹介します

Enigma ホワイトペーパーの日本語訳及び解説 part1

カナゴールドはモナコインとエニグマを推しています。モナコインの記事はいっぱいありますが、エニグマの日本語記事はほとんどないので、エニグマインフルエンサーになっとく?というノリで始めました。ひとまずホワイトペーパーの日本語訳を作成するところから始めました。グーグル翻訳がほとんど活躍してくれなくて大変です。とりあえず4章までになります。

 

enigma:プライバシーを担保した非中央集権計算プラットフォーム

 

abstract

 

エニグマとは、データの中身を晒すことなくみんなが共同して計算を実行して結果を保存できるようにするPPネットワークである。

エニグマの計算モデルは、高度に最適化された安全なマルチパーティ演算に基づいており、検証可能な秘密共有方式によって保証されている。

データストレージについては、秘密共有されたデータを保持するために、分散ハッシュテーブルを使用する。

外部ブロックチェーンはネットワークの制御のために利用され、アクセス制御、アイデンティティおよびイベントの改ざん防止ログとして役立つ。

保証金および手数料は、システムの正確性と公平性を保証する。

Bitcoinと同様に、Enigmaは信頼できる第三者が不要で、個人データの自律的な制御を可能にする。

人類にとって、暗号化によってプライバシーを担保した上でデータを共有することができる初めての体験となる。

 

1 モチベーション

 

人類史において初期の頃から、中央集権化は競争上大きな利点であった。

中央集権化された社会は、より高度な技術を開発したり、より多くの資源を蓄積したり、人口をより速く増加させることを可能としてきた。

しかし社会が発展するにつれて、腐敗、不平等、既得権益、権力の乱用など、中央集権化の負の側面が明らかになった。

そして、権力の分散が不可欠であることが明らかとなった。

現代社会では、非中央集権化のcheck & balance機能と、中央集権化による出力と効率の最大化機能の間の、バランスのとれた均衡状態を見つけようと努力している。

元をたどればWebというものは、急進的な非中央集権化と自由を求めるものであったはずが、 直近10年を見返すと、Webの驚異的な成長は中央集権化の一途を辿っていた。

ほんの一部の大企業がWebの根幹を成していて、その結果としてweb上に存在しているデータの大部分がその一部の企業の配下にある。

これらの企業の透明性やコントロールの欠如によって、操作、監視、頻繁なデータ障害など、中央集権の負の側面が再び明らかになった。

Bitcoinやその他のブロックチェーン(例えば、Ethereum)は新しい未来を約束している。

今、インターネットアプリケーションは、分散アーキテクチャで構築することができ、いかなる単一の組織にも絶対的な権力を持たせないことができる。

ブロックチェーンの一般的な性質は、アプリケーションの動作方法の透明性を保証し、反駁できない活動記録を残し、正直な行動に強いインセンティブを与えることである。

Bitcoinはそのようなアプリケーションの先駆けであり、Webの世界へパラダイムシフトを促した。

しかし、ブロックチェーンの強力な検証性と公開性により、潜在的ユースケースが制限されている。 現代のアプリケーションでは膨大な量のデータが使用され、そのデータは幅広く分析される。

この制限は、信頼されたコードのみがブロックチェーン上で実行できることを意味する。

ここで問題になるのは、現代のアプリケーションの中で最もセンシティブな部分は、プライベートなデータに対して大量の処理を必要とすることである。

現状の設計では、ブロックチェーンはプライバシーの問題を全く対処できていないし、さらに、負荷の高い計算にはあまり適していない。それらの性質から、完全に公開されたブロックチェーン上のすべてのフルノードを介して、プライベートデータが流れることになる。

ここには面白い矛盾があって、 最も機密性の高いプライベートデータは、中央集権化された、透過性が低く、安全性の低いモデルでのみ保存および処理が可能ということになる。 そして、致命的なデータ漏えいや、オンライン生活の中で現在受け入れざるを得ないプライバシーの構造的な欠如を、このパラダイムの中で我々は見てきたのである。

 

2 Enigma

 

Enigmaは、プライバシーが保証された分散型の計算プラットフォームである。 私たちの目標は、開発者が信頼できる第三者を介さないエンドツーエンドの分散アプリケーション、いわば「設計によるプライバシー」を構築できるようにすることである。

 

プライバシー:

セキュアなマルチパーティ計算(sMPCまたはMPC)を使用することで、信頼できるサードパーティなしで分散してデータクエリを計算することができる。 データは異なるノード間で分割され、情報を他のノードに漏らすことなく、関数を計算する。 つまり、一人ひとりがデータ全体にアクセスすることはできない。 代わりに、すべての当事者は無意味な(すなわち、一見ランダムな)一部分のみを有することになる。

 

スケーラビリティ:

ブロックチェーンとは異なり、計算結果やデータストレージはネットワーク内のすべてのノードによって複製されるわけではない。 各ノードはデータの異なる部分を計算するのである。

 

ストレージと計算の冗長性を減らすことで、より多くの計算を可能にしている。Enigmaがもたらす重要な新しいユーティリティは、生データに直接アクセスすることなく、データに対して計算を実行する能力である。

たとえば、あるグループの人が給与データにアクセスし、グループの平均賃金を計算することができる。各参加者はグループ内の平均賃金と自分の給料を見比べることができるが、他のメンバーの給料については知ることができないのである。

これは単なる一つのわかりやすい例に過ぎない。 実際には、入力データを秘密に保ちながら、どんなプログラムも安全に評価することができるのである。

今日、データの共有は不可逆的なプロセスであり、いったんデータが送信されると、それを取り消したり使用方法を制限する方法は存在しない。元のデータ所有者以外の誰も生データを見ることないようにしつつ、計算のためだけにデータへのアクセスを可能にすることは、可逆的かつ制御可能と言える。 これは、現在のデータ分析に対するアプローチにとって革命と言える。

 

3 デザインの外観

 

Enigmaは、既存のブロックチェーンに接続し、プライベートで集約的な計算をオフチェーンネットワークにオフロードするように設計されている。 すべてのトランザクションは、ブロックチェーンによって容易に、デジタル署名と設定可能な権限に基づいたアクセス制御を実施することができる。

コードはブロックチェーン(パブリック)とEnigma(プライベート/計算集約型)の両方で実行される。 Enigmaの実行はプライバシーと正確さの両方を保証するが、ブロックチェーンだけでも後者を保証することができる。 正しく実行されたことの証明はブロックチェーンに格納され、監査することができる。 我々は、private contractを使用したエンドツーエンドの分散アプリケーションを設計するためのスクリプト言語を提供しており、これは、プライベートな情報を扱う際には通常のスマートコントラクトよりも強力である(すなわち、それらの状態は厳密にはpublicではない)。

スクリプト言語チューリング完全だが、スケーラビリティほど重要なポイントではない。 ブロックチェーンでのコード実行は非中央集権ではあるものの分散されていないため、すべてのノードが同じコードを冗長に実行し、同じ状態を維持することになる。 Enigmaでは、計算作業がネットワーク全体に効率的に分散されるのである。 図1に示すように、private contractの実行過程をブレイクダウンすると、プライバシーと検証可能性の両方を維持しながら実行時間を改善していることが見て取れる。

 

オフチェーンネットワークは、ブロックチェーン技術だけでは処理できない以下の問題を解決する。

(1)ストレージ

ブロックチェーンは汎用データベースではない。 Enigmaには非中央集権オフチェーン分散ハッシュテーブル(DHT:distributed hash-table)があり、ブロックチェーンを介してアクセス可能で、データ自体は参照せずにデータへのポインタを格納する。 プライベートデータは、ストレージ側にアクセスする前にクライアント側で暗号化し、アクセス制御プロトコルブロックチェーンにプログラムする必要がある。 Enigmaスクリプト言語でこれらのタスクにシンプルなAPIを提供する。

 

(2)プライベートな演算

Enigmaのネットワークは、正確な実行を保証しながら、いずれのノードにも生データを漏らさずにコードを実行することができる。 これは、現在の中央集権的ソリューションや、ブロックチェーンの利点を無に帰すような、機密ビジネスロジックを処理するtrusted overlay networkを置き換える上で、重要である。 計算モデルはセクション5で詳細に説明されている。

 

(3)重い処理の演算

プライバシーが問題ではない場合でも、ブロックチェーンは複雑なトランザクションを多数捌くことができない。 同オフチェーン計算ネットワークを使用して、ブロックチェーンを介してブロードキャストされている、公に検証可能な重い演算を実行することができる。

 

4 オフチェーンストレージ

オフチェーン・ノードは分散データベースを構築する。 計算プロセスがプライバシー保護とフォールトトレランスを担保するように、各ノードは、部品化かつ暗号化されたデータを有する。

また、大量の公開データ(ファイルなど)を暗号化せずに保存し、それらをブロックチェーンにリンクすることもできる。 図2は、各ノードから見たデータベースを示している。

ネットワークレベルでは、分散ストレージは、ブロードキャストチャネルと公開鍵暗号化を使用してシミュレートされた永続性とセキュアなポイントツーポイントチャネルが追加された、modified Kademlia DHTプロトコルに基づいている。 このプロトコルで、効率的に部品化されたデータを分配することができる。 部品化されたデータを保存する際には、ノードの優先確率を考慮するように修正されたKademlia distance メトリックが用いられる。