Lisk公式寄稿記事
私たちLisk財団は、LIP 0034と、LIP 0035が統合されたことを発表でき、誇りに思います。
これは、4つのプロトコルロードマップのフェーズ、”セキュリティと信頼性“、”ネットワーク経済”、”ネットワークコンセンサス”、”ネットワーク長寿化”のための研究が、Liskプロトコル向上に関する主要なマイルストーンを達成したということです。
DPoS提案(LIP)プロセスを2018年6月にスタートさせ、プロトコルのロードマップを同じく2018年11月に公開してから、これまで35のLIPが完成し、lips GitHubレポジトリに組み入れられました。
全てのLIPは、膨大な研究成果に基づいたもので、Liskリサーチフォーラムでのオープンな議論の一部として、内部での査読(ピアレビュー)と外部でのパブリックレビューを通した徹底的な評価を受けています。
また、このプロセスはLiskプロトコルではいかなる変更であっても、オープンでかつ透明性、協調性を持ち、しっかりとした技術的基盤が求められることを示しています。
今回完了した研究について
4つのプロトコルロードマップのフェーズにおけるプロトコルの変更は、次の大きなLiskコアメインネット公開の一部となるもので、すでにLisk SDK(ソフトウェア開発キット)のリリースには含まれています。そのため、私たちは時間をかけて主な変更点をここでまとめたいと思います。
より詳細な解説は、来月以降のリサーチブログでの投稿という形で行われていく予定です。
セキュリティと信頼性
このフェーズでの最も重要なプロトコルの変更は、ブロックのファイナリティ(確定)をもたらすコンセンサスアルゴリズムの導入です。これはブロックは決して覆されないという保証になります。
このファイナリティの保証は、101人の委任者のうちビザンチン(=ビザンチンとは、権謀術数に長けていたビザンツ帝国から由来し、悪巧みをすることなどを指す)となるのが33人以上でない限り保たれます。ここでは、コンセンサスアルゴリズムとネットワークを悪意を持って操作しようとする者たちを指します。
もしあなたがこの新しいコンセンサスアルゴリズムについて興味があるのであれば、私たちのリサーチブログを見てみてください。Introducing Byzantine Fault Tolerance Consensus for Lisk(英語)
二番目に大きなプロトコルの変更は、健全なピア選択アルゴリズムを利用する、改良されたP2Pレイヤーと禁止メカニズムの導入になります。新しいP2Pの特徴のいくつかはLisk.js 2019の中で言及されています。
その他にも、このフェーズは幾つかの更なるプロトコルの向上を含んでおり、具体的にはトランザクションスキーマの簡略化やネットワーク識別子の導入などになります。これらはトランザクションを一つのブロックチェーンにまとめ、別のチェーン上でのリプレイを不可能にします。
これらすべての変更の実装はすでに完了しており、2020年2月にリリースされたLisk SDK 3.0の一部でもあります。
ネットワーク経済について
このフェーズはダイナミック(変動性)手数料の導入に焦点を当てています。提案された手数料システムは、トランザクションのタイプやサイズによって要求される最低手数料を超えていれば、自由に最適な手数料を設定することができます。委任の登録を除いたすべてのトランザクションタイプで、要求される最低手数料は現在の固定手数料システムに比べ、大幅に少なくなると見込まれています。
例えば、残高送金のトランザクションでは、最低手数料は0.00136LSKになる予定です。(トランザクションがデータフィールドを使用しているか、マルチシグネチャの口座から送られる場合などはもう少しかかります。)
つまり、残高の送金はブロックの空きを巡る競争でトランザクション手数料が吊り上がらない限り、現在に比べ70倍以上も安くなります。
同時に、トランザクション手数料の一部は、トランザクションを含むブロックを生成する委任者に与えられ、残りの手数料はバーン(焼却)されることで総供給量が減ることになります。
ダイナミック手数料導入と共に、私たちは手数料推定アルゴリズムの提供によって、ネットワークの使用状況や取引の緊急性などをもとに、ユーザーが適切な手数料を選択するためのガイダンスを提示します。
また、大幅に減らされたトランザクション手数料を悪用し、残高のない大量の口座を作成するスパム攻撃を避けるため、口座は0.05LSK以上を保持することが求められます。
手数料システムに関する更なる変更は、取引回数の制限に代わるバイトベースのブロックサイズ上限の導入です。この変更は一つのブロックに含まれる残高送金の数を100以上に増やし、一日でLiskメインネットによって処理されるトランザクションの数は100万前後に増加します。
さらにこのフェーズは、ブロードキャスト(不特定多数に対して同時データ送信)されたトランザクションを、より高い料金を指定したものに置き換えるようなトランザクションの無効化メカニズムを追加します。両方のトランザクションがブロックチェーンに含まれるような心配もありません、最後に、マルチシグネチャのLisk口座はより柔軟に、簡単に使えるようになります。
ネットワークコンセンサス
このフェーズは、Liskで使われている権限委任型PoS(DPoS:Delegated Proof of Stake)システムに関するいくつかの改良点を含んでいます。ユーザーは現在、投票のために使用したいと考えている仮想通貨トークンをロックする必要があり、LSKトークンは同時に一人の委任者にしか投票で使用できません。
さらに、委任者の重み付け(ウエイト)の計算は、自分自身に投票するためにどれくらいのトークンを委任者がロックしているかを、計算に入れるようになります。そのため、委任者のウエイトには少なくとも10%の自己投票が含まれている必要があり、委任者が十分な量のトークンを持ち、賭けていることを確かめます。これはネットワークのさらなるセキュリティ向上につながります。
投票システムの変更のほかには、Lisk-BFTコンセンサスプロトコルへの攻撃を報告できるようにし、問題のある委任者が罰せられるようになったことで、コンセンサスプロトコルのセキュリティは、さらに高まりました。
さらに代役となる委任者(standby delegates)はブロックの生成に関与できる可能性が生まれ、Liskノードを運用するインセンティブが追加されます。
具体的には、ラウンドの長さが101から103ブロックへと延長され、2つの追加ブロックは、委任者のウエイトに比例したランダム選択アルゴリズムによって、代役となる委任者に振り分けられます。さらに、私たちはラウンドの中で委任者の順序決めを一様にシャッフルすることで、より公平になるようにしました。
もしこのフェーズでのDPoSの変更点についてより学びたければ、このリサーチブログを見るかLisk.js2019のビデオをチェックしてください。また、このフェーズまでの変更は全てLisk SDK 4.0の一部となっていることに留意してください。
ネットワークの長寿化について
他のすべてのフェーズはLisk SDKの中へ実装されましたが、このフェーズは現在開発中となっています。これはIDシステムの変更や新しいアドレスシステム、そしてLISPのさらにいくつかの技術的改良などを含んでいます。エンドユーザーにとっては新しいアドレスは最も分かりやすい変化で、現在のところ、例を挙げると、アドレスは以下のようになる予定です。
lskoaknq582o6fw7sp82bm2hnj7pzp47mpmbmux2g
このアドレスの長さの増加は、セキュリティ向上につながります。パブリックキーを登録する必要はなくなり、異なるパブリックアドレスとのアドレス衝突の可能性は無視できるほど少なくなり、さらに4文字までの入力ミスは常に検知されるようになりました。(それ以上の打ち間違いも高確率で検知されます)
また、私たちはトランザクションとブロックIDを64ビットから256ビットまで延長し、現像攻撃(特定のハッシュ値の一方向性を破る試み)と将来長期にわたるLiskブロックチェーンの普遍性を大いに強化するものとなります。
さらに私たちは、ブロック及びトランザクションの送信と格納の効率性を大幅に向上させる、プロトコルバッファと両立可能な普遍的な連続化メソッドを導入します。この方式はカスタムトランザクションに容易に使用できるため、Lisk SDKでの開発をよりシンプルにします。
また、私たちはハッシュ木(Hash tree)、またはマークルツリーをトランザクションのためにブロック内で使用し、簡易衝突証明を可能とします。そして最後に、私たちは新たなジェネシスブロックのスキーマとLiskブロックチェーンの非中央集権型スナップショットを果たすためのプロセスを定義します。これはLiskメインネットを次のメジャーなLisk Coreのリリースに統合する際に大きく役立つでしょう。
新しいLiskプロトコル文書について
もしこの4つのプロトコルロードマップのフェーズののち、Liskプロトコルがどのようになるかを学びたければ、新しいLiskプロトコルのドキュメントを見てみてください。
この文書の目的は、Liskプロトコルの網羅的かつ高いレベルの概観を開発者とアドバンスユーザーに提供することです。文書はブロックチェーンに関するいくつかの基本的な理解を想定していますが、全体的にLIPよりは技術的な話が減り、比較的簡単に理解できるものとなっています。
Liskの全体像
今年の初めからリサーチチームは、既に最後のプロトコルロードマップであるブロックチェーンの相互運用性についての取り組みに集中してきました。私たちは、異なる研究論文やプロジェクト、ブロックチェーンの相互運用性に取り組むアイデアなどについて詳細まで調べ、最新かつ広範な全体像を得るという最初の内部向けマイルストーンを達成することができました。
私たちはステートチャンネルやアトミックスワップ、ステートレス検証、シャーディング、クロスチェーン証明、プラズマフレームワークの変異型、そして異なるペギングメカニズムなど幅広いソリューションや技術をカバーするに及んでいます。
そして、現在のマイルストーンは、Liskの「相互運用性」の方向性を決定することです。このマイルストーンの一部として私たちは別の可能性を模索し、それらがLiskの要求書に答えるため、どのようにして適応される必要があるか調べています。その上で私たちは、ほかの潜在的な相互運用性のソリューションについて評価・比較を行っていきます。
次のマイルストーン
一つの相互運用性の方向性を決めた後、次のマイルストーンは、リサーチチームが詳細な技術仕様書を起草することです。これらの仕様書は、最初に研究者と開発者によって内部でレビューされ、その次にLisk Researchフォーラムで公開されます。
相互運用性フェーズの最後のマイルストーンとして、相互運用性ソリューションのLIPの完全なセットを公開します。トピックの複雑さと、徹底した研究と評価の重要性から、しばらくの間、研究フォーラムでの更新や新しいLIPを目にすることはないかもしれません。しかし、当社の研究と仕様は、レビューへの準備が整い次第、Lisk Research Forumで共有し、みなさまからのフィードバックをお待ちしています。