Permalink
Fetching contributors…
Cannot retrieve contributors at this time
186 lines (93 sloc) 21 KB

NEOホワイトペーパー

スマートな経済のための分散型ネットワーク

NEOの設計目標:スマートな経済

NEOは、ブロックチェーン技術とデジタルアイデンティティを使用した資産のデジタル化、スマートコントラクトを使用したデジタル資産の自己管理を行い、分散ネットワークで「スマートな経済」を実現します。

デジタルアセット

デジタルアセットは、電子データの形で存在するプログラマブルな資産です。ブロックチェーン技術により、資産のデジタル化は、分散化、トラストレス(信頼不要)、追跡可能、高い透明性、仲介者不要を可能にします。NEOブロックチェーンでは、複数のタイプのアセットを登録、取引、および流通することができます。デジタルアイデンティティによって、デジタルアセットと物理アセットの接続を証明することが可能です。検証されたデジタルIDで登録された資産は法律で保護されます。

NEOには、グローバルアセットとコントラクトアセットの2種類のデジタルアセットがあります。グローバルアセットはシステムスペースに記録することができ、すべてのスマートコントラクトやクライアントによって識別することができます。コントラクトアセットは、スマートコントラクトのプライベートストレージ領域に記録され、互換性のあるクライアントにそれらを認識させる必要があります。コントラクトアセットは、ほとんどのクライアントとの互換性を実現するために特定の基準に準拠します。

デジタルアイデンティティ

デジタルアイデンティティとは、個人、組織、および電子形式で存在する他のエンティティの身元情報を指します。より成熟したデジタルアイデンティティシステムは、PKI(公開鍵インフラストラクチャ)X.509標準に基づいています。NEOでは、一連のX.509互換デジタルアイデンティティ標準を実装します。互換性のあるX.509レベルの証明書の発行モデルに加えて、デジタルアイデンティティ標準のこのセットは、Web Of Trustのポイントツーポイント証明書発行モデルもサポートします。デジタルアイデンティティを発行または使用する際のアイデンティティの検証には、顔の特徴、指紋、音声、SMSなどのマルチファクタ認証方法の使用が含まれます。同時に、ブロックチェーンを使用してオンライン証明書ステータスプロトコル(OCSP)を置き換え、X.509証明書失効リスト(CRL)を管理および記録します。

スマートコントラクト

スマートコントラクトは、1994年に暗号技術者のNick Szaboによって最初に提案されたもので、World Wide Webの発表からわずか5年後です。Szaboの定義によると:事前にプログラムされた条件がトリガされると、スマートコントラクトは対応する契約条件を実行します。Blockchain技術は、スマートコントラクトにとって非常に有用な、分散型で耐タンパー性が高く、信頼性の高いシステムを提供します。NEOには独立したスマートコントラクトシステムNeoContractがあります。

NeoContractのスマートコントラクトシステムは、既存の開発者エコシステムとのシームレスな統合が最大の特長です。開発者は新しいプログラミング言語を学ぶ必要がなく、使い慣れたIDE環境(Visual Studio、Eclipseなど)でC#、Javaなどの主流プログラミング言語を使用して、スマートコントラクトの開発、デバッグ、コンパイルを行うことができます。NEOのユニバーサル軽量仮想マシンNeoVMは、確実性、並行性、スケーラビリティが高いという利点があります。NeoContractのスマートコントラクトシステムは、世界中の何百万人もの開発者がスマートコントラクトの開発を迅速に実行できるようにします。NeoContractには、実装の詳細を記述した別のホワイトペーパーがあります。

アプリケーションとエコシステム

エコシステムはオープンソースコミュニティーの活力です。知的経済ネットワークの目標を達成するために、NEOはエコシステムの開発、成熟した開発ツールの提供、開発ドキュメントの改善、教育と訓練活動の組織化、財政支援の提供にコミットします。私たちは、以下のNEOベースのアプリケーションとエコロジーをサポートし、改善の設計や改善の実行に対して報酬を行う予定です。

🔹 ノードプログラム

  • 全ての機能を備えたフルノードPCプログラム

  • 優れたユーザーエクスペリエンスを持つライトノードPCプログラム

  • ブロックチェーンと同期する必要のないWeb / Android / iOSクライアント

  • ハードウェアウォレット

🔹 ブロックチェーンエクスプローラ

🔹 SDK開発キット

  • Java / Kotlin、.NET C#/ VB、JavaScript / Typescript、Python、Goのサポート

🔹 スマートコントラクトコンパイラとIDEプラグイン

  • C#/ VB.Net / F#、Visual Studio

  • Java / Kotlin、Eclipse

  • C / C ++ / GO

  • JavaScript / TypeScript

  • Python / Ruby

🔹 分散アプリケーション

  • スマートファンド

  • AI支援の法的なスマートコントラクト

  • ソーシャルネットワーキング

  • 自動トークン流動性プロバイダ

  • 分散型取引所

  • 安全な通信プロトコル

  • データ交換市場

  • 知的財産取引市場

  • 予測市場

  • 広告市場

  • ハッシュパワー市場

  • NeoGas市場

NEO管理モデル

経済モデル

NEOには2つのネイティブトークン、NEO(略称NEO)とNeoGas(略称GAS)があります。

NEOは、合計1億のトークンを持ち、ネットワークを管理する権利を表します。管理権には、ブックキーパーの投票、NEOネットワークパラメータの変更などが含まれます。NEOの最小単位は1であり、トークンは細分できません。

GASは、NEOネットワーク資源管理の実現のための燃料トークンであり、最大総制限は1億である。NEOネットワークは、トークンとスマートコントラクトの運用と保管を請求し、ブックキーパーに経済的インセンティブを与え、リソースの乱用を防止します。GASの最小単位は0.00000001です。

NEOネットワークの作成ブロックでは、1億のNEOが生成され、GASはまだ生成されていません。1億のNEOに対応する1億GASは、NEOの保有に対処する約22年の時間内に減衰アルゴリズムによって生成されます。NEOが新しいアドレスに転送された場合、生成された後続のGASは新しいアドレスに入金されます。

NEOネットワークは、ユーザーエクスペリエンスを向上させるために、ある程度の転送トランザクションとスマートコントラクトオペレーションからGASを免除するよう投票することによって、閾値を設定します。大量のスパム取引が発生した場合、NeoIDを使用して、資格のあるIDを使用して取引やスマートコントラクトを優先させることができます。適格なデジタルアイデンティティを持たない取引やスマートコントラクトは、GASに支払うことによって優先権を得ることができます。

分配メカニズム

NEOの分配:

NEOの1億トークンは2つの部分に分かれています。最初の部分は、群衆の資金調達中にNEOの支持者に比例して分配される5,000万のトークンです。この部分は配布されています。

第2の部分は、NEO協議会がNEOの長期的な開発、運用、保守およびエコシステムを支援するために管理する5,000万NEOです。この部分のNEOはロックアウト期間が1年間で、2017年10月16日以降にロックが解除されます。この部分は取引所には入らず、NEOプロジェクトの長期サポートのみになります。その計画は以下の通りです:

🔹 NEOディベロッパーとNEO協議会のメンバーを動機付けるために、1,000万トークン(合計10%)が使用されます

🔹 NEOエコシステムの開発者を動機付けるために、1,000万トークン(合計10%)が使用されます

🔹 NEO理事会が所有し、NEOプロジェクトにのみ使用される他のブロックチェーンプロジェクトへの投資には、1,500万トークン(合計15%)が使用されます

🔹 1,500万トークン(合計15%)は不測の事態として保持される

🔹 原則としてNEOの年間使用は1,500万トークンを超えてはならない

GASの分配:

新しいブロックごとにGASが生成されます。GASの初期総量はゼロです。新しいブロックの発生率の増加に伴い、約1億GASの限界が約22年で達成されます。各ブロック間の間隔は約15-20秒であり、約1年で200万ブロックが生成される。

最初の年(実際には0~200万ブロック)では、各ブロックは8つの新しいGASを生成します。2年目(実際には最初の200万~400万ブロック)では、新しいブロックごとに7つのGASが生成されます。1ブロック当たり1GASに達するまで、最初の8年間は1GASの年間削減が行われます。これは約22年までのGASの発生率であり、4,400万ブロック後にはGASの合計は1億に達し、新しいブロックからGASの生成を停止する。

この排出曲線によると、最初の年にGASの16%が作成され、最初の4年間にGASの52%が作成され、最初の12年間にGASの80%が作成されます。これらのGASは、対応するアドレスに記録されたNEO保有率に従って比例配分されます。NEO保有者は、いつでも請求取引を開始し、これらのGASトークンを保有アドレスで請求することができます。

ガバナンスの仕組み

連鎖ガバナンス:NEOトークンホルダーは、NEOから生成されたGASを使用してネットワーク内の機能を利用して、ネットワークで投票することによってネットワークを管理するネットワーク所有者および管理者です。NEOトークンを転送することができます。

オフ・チェーン・ガバナンス:NEO協議会は、NEOプロジェクトの創設メンバーで構成され、管理委員会、技術委員会、事務局がそれぞれ戦略的意思決定、技術的意思決定および具体的実施を担当しています。NEO協議会は、NEOエコシステムの推進と発展を第一の目的として、NEOコミュニティに責任を負う。

NEO技術の実装

コンセンサスメカニズム:DBFT

DBFTは、代理投票による大規模な参加を可能にするビザンティン耐障害性コンセンサスメカニズムであるDelegated Byzantine Fault Tolerantと呼ばれています。NEOトークンの所有者は、投票することによって、それがサポートする帳簿係(ブックキーパー)を選ぶことができます。選択されたブックキーパーのグループは、BFTアルゴリズムを介してコンセンサスに達し、新しいブロックを生成します。NEOネットワークにおける投票は、固定期間に基づくのではなく、リアルタイムで継続されます。

DBFTは、n個のコンセンサスノードからなるコンセンサスシステムに対して、f = ⌊ (n-1) / 3 ⌋のフォールトトレランスを提供する。このフォールトトレランスには、セキュリティと可用性の両方、一般およびビザンチンの障害への耐性も含まれ、あらゆるネットワーク環境に適しています。DBFTは優れた最終性を持っています。つまり、一度承認が確定すると、ブロックは分岐できず、トランザクションは取り消されたりロールバックされたりしません。

NEO DBFTコンセンサスメカニズムでは、ブロックの生成に約15~20秒かかるため、トランザクションスループットは約1,000TPSまで測定され、パブリックチェーン間で優れたパフォーマンスが得られます。適切な最適化により、10,000TPSに達する可能性があり、大規模な商用アプリケーションをサポートすることができます。

DBFTはデジタルアイデンティティ技術を組み合わせているため、ブックキーパーは個人または機関の本名になります。したがって、凍結、取り消し、継承、検索、および司法上の決定をそれらに行うことが可能です。これにより、準拠した金融資産のNEOネットワークへの登録が容易になります。NEOネットワークは、必要なときにそのような操作をサポートする予定です。

スマートコントラクトシステム:NeoContract

NEOのスマートコントラクトシステムは、3つの部分で構成されています。

NeoVM - ユニバーサルブロックチェーン仮想マシン:

NeoVMは、アーキテクチャーがJVMおよび.NETランタイムに非常に近い軽量の汎用仮想マシンであり、契約の命令を順番に読み取り、実行し、命令操作や論理演算などの機能に基づいてプロセス制御を実行する仮想CPUと同様です。速い起動速度と高い汎用性を持ち、スマートコントラクトのような小さなプログラムに非常に適しており、非ブロックチェーンに移植することも、最適な開発経験を提供するIDEと統合することもできます。JIT(リアルタイムコンパイラ)メカニズムを導入するなど、NeoVMの機能を拡張して、実装の効率を向上させることができます。

InteropService - 相互運用可能なサービス:

ブロックチェーン元帳、デジタル資産、デジタルID、永続ストレージ領域、その他の基礎となるサービスをロードするために使用されます。これらは、仮想マシンに提供される仮想マシンのようなものであり、スマートコントラクトが実行時にこれらのサービスにアクセスして高度な機能を実現します。この低結合設計により、NeoVMはあらゆるブロックチェインや非ブロックチェインシステムに移植することができ、スマートコントラクトの有用性を高めます。

DevPack - コンパイラとIDEプラグイン:

DevPackには、高水準言語コンパイラとIDEプラグインが含まれています。NeoVMのアーキテクチャはJVMおよび.NET Runtimeと非常によく似ているため、DevPackのコンパイラはJavaバイトコードと.NET MSILをNeoVMの命令セットにコンパイルできます。Java / Kotlin、C#開発者は新しい言語を習得する必要はなく、VS、Eclipseおよび他の使い慣れたIDE環境でスマートコントラクトの開発をすぐに開始することができます。これにより、スマートコントラクトを開発するための学習曲線が大幅に縮小され、NeoContractを中心に活気のあるコミュニティを簡単に構築できます。

NeoContractは、スマートコントラクトを実行する前に静的分析を通じてスマートコントラクトコールツリーを作成できます。確定的なコールツリーを通じて、NEOノードはスマートコントラクトを動的に断片化し、理論上無制限の拡張を実現し、他のブロックチェーンシステムに見られる静的な断片化によって引き起こされる「妨害効果」を克服することができます。

クロスチェーン相互運用性契約:NeoX

NeoXは、クロスチェーン相互運用性を実装するプロトコルです。NeoXは、「クロスチェーンアセット交換プロトコル」と「クロスチェーン分散トランザクションプロトコル」の2つの部分に分かれています。

クロスチェーン資産交換契約:

NeoXは、複数の参加者が異なるチェーン間で資産を交換できるように、既存の二軸原子アセット交換プロトコルに拡張され、トランザクション処理全体のすべてのステップが確実に成功するか失敗するかを承認します。この機能を実現するには、NeoContract関数を使用して各参加者の契約アカウントを作成する必要があります。他のブロックチェーンがNeoContractと互換性がない場合、単純なスマートコントラクト機能を提供できる限り、NeoXと互換性があります。

クロスチェーン分散トランザクションプロトコル:

クロスチェーン分散トランザクションとは、トランザクションの複数のステップが異なるブロックチェーンに分散され、トランザクション全体の一貫性が保証されることを意味します。これは、クロスチェイン・アセット交換の拡張であり、アセット交換の動作を任意の動作に拡張します。素人の言葉で言えば、NeoXは、スマートコントラクトが複数のチェーンで異なるパートを実行できる、クロスチェーン・スマート・コントラクトを可能にします。これはクロスチェインコラボレーションのための優れた可能性をもたらし、我々はクロスチェインスマートコントラクトアプリケーションシナリオを模索している。

分散ストレージプロトコル:NeoFS

NeoFSは、分散ハッシュテーブル技術を利用した分散ストレージプロトコルです。NeoFSは、ファイルパス(URI)ではなく、ファイルコンテンツ(ハッシュ)を介してデータをインデックス付けします。大きなファイルは、多くの異なるノードに分散されて格納されている固定サイズのデータブロックに分割されます。

このタイプのシステムの主な問題は、冗長性と信頼性のバランスをとる必要があることです。NeoFSはトークンインセンティブとバックボーンノードの確立によってこの矛盾を解決する予定です。ユーザーはファイルの信頼性要件を選択できます。信頼性の低い要件を満たすファイルは、無料で、またはほとんど無料で保存およびアクセスすることができます。信頼性の高い要件は、安定した信頼性の高いバックボーンノードによって提供されます。

NeoFSは、NeoContractシステムのInteropService相互運用性サービスの1つとして機能し、大規模なファイルをブロックチェーンに格納し、それらのファイルへのアクセスを設定することができます。また、NeoFSとデジタルIDを組み合わせることで、デジタルIDで使用されているデジタル証明書を中央サーバーで管理することなく、割り当て、送信、および取り消すことができます。将来、古いブロックデータをNeoFSに保存することができます。これにより、ほとんどのフルノードが古いデータを解放してスケーラビリティを向上させると同時に、履歴データの整合性を確保します。

反量子暗号メカニズム:NeoQS

量子コンピュータの出現は、RSAおよびECCベースの暗号化メカニズムに大きな課題を引き起こします。量子コンピュータは、非常に短時間で多数の分解問題(RSAに依存する)および楕円曲線離散対数(ECCが依存する)を解決することができる。NeoQS(Quantum Safe)は、格子ベースの暗号化メカニズムです。現在、量子コンピュータは、最短ベクトル問題(SVP)および最密ベクトル問題(CVP)を迅速に解決する能力を有しておらず、これは量子コンピュータに抵抗する最も信頼できるアルゴリズムであると考えられている。

概要

NEOは、デジタル資産、デジタルアイデンティティ、スマートコントラクトを組み合わせた分散型ネットワークです。NEOシステムでは、DBFT、NeoX、NeoFS、NeoQSなどの独自の技術を将来のインテリジェント経済のインフラとして活用します。