今回は、仮想通貨「Mina」(MINA)について解説します。
Minaとは・特徴・投資における将来性の順で説明します。
Mina(MINA)とは
Mina Protocolは、DAppをより効率的に実行するために、計算量を抑えるために作られた最小限の簡潔なブロックチェーンです。
Minaは、使用量が増えてもサイズが変わらないように設計されているため、世界軽量のブロックチェーンと言われています。
更に、安全性と分散性の面でもバランスを保っています。
本プロジェクトは、2020年に「Coda Protocol」から「Mina」にリブランディングされました。
Minaネットワークのサイズはわずか22KBで、ビットコインの300GBのブロックチェーンと比較すると極小であることが分かります。
Minaの公式ホームページはこちらです。
Minaの特徴
zk-SNARKs
Minaは、ユーザーがジェネシス・ブロックからすぐにプラットフォームのネイティブ検証を行うことができる効率的な分散型決済システムの実現に取り組んでいます。
これを簡潔なブロックチェーンと呼んでいます。
このプロトコルでは、zk-SNARKs(非対話型ゼロ知識証明)という情報を明かすことなく認証することができる暗号証明を使用しています。
しかし、大規模なネットワークでは、ユーザーがプラットフォームをそのジェネシス・ブロックまで遡ることを可能にすることは現実的ではありません。
つまり、エンドユーザーはブロックの取引履歴全体ではなく、zk-SNARKで圧縮された証明書を確認することになります。
Minaプロトコルの中核をなすのは、ユーティリティ・コイン及び交換手段として機能するネイティブ通貨「MINA」です。
プルーパー
Minaは、取引の処理方法を除けばビットコインに似ていますが、イーサリアムで採用されているアカウントモデルも採用しています。
この点においてビットコインとイーサリアムの違いは、ビットコインのブロックチェーンの状態が未使用のコインの一覧であるのに対し、イーサリアムの状態は口座残高で構成されている点です。
一方、Minaは各ブロックがステートにコミットすることを確認するために、マイナーに相当するプルーバー(スナーカーとも言う)を使用します。
つまりスナーカー(プルーバー)は、取引の検証に使用されるzk-SNARKを生成します。
ブロック生成者は、新しいブロックを追加する際に受け取る取引手数料全体からスナーカーに支払います。
ただし、手数料を得るためには入札をする必要があります更に、スナーカーのzk-SNAKはブロック内で使用される必要があり、使用するブロック生成者はスナーカーに報酬を与える責任があります。
これにより、複数のスナーカーが同じ取引に関連した入札をするこーとができるビジネス・エコノミーが実現します。
一方、ブロック生成者は利益を追求するため、手数料の安い入札を選択することになります。
その結果、スナーカーは低価格のSNARKを作る動機が発生するのです。
Outoboros Samasika
Minaは、Outoboros Samasikaを採用しています。
Ouroboros Samasikaは、ジェネシスブロックからブートストラップできるため、簡潔な分散型ネットワークに特化したPoS(詳細→仮想通貨における【 PoW・PoSの違い 】どちらが良い?)メカニズムの一種なのです。
簡潔なブロックチェーンには、大きく分けて「検証」と「更新」の2つの機能があります。
検証機能はコンセンサス、ブロックチェーンのサマリーとブロックに関するものです。
上記の実装とは別に、プロジェクトでは取引処理速度を最適化するために、未証明ブロックをグループ化し、並列プルーバーに処理を割り当てることで動作するパラレル・スキャン・ステートを採用しています。
Minaプロトコルの参加者
Minaは、取引を検証する際に第三者として機能するマイナー・ステーカー・ライト・クライアントなどの検証者を抱えている現在のブロックチェーンの状況に革命を起こすことを目的としています。
Minaは、分散型ネットワーク上で特定の機能を担当する複数の参加者を持つと言う点で異なるアプローチをとっています。
主な役割は、検証者・ブロック生成者・スナーカーの3つです。
検証者は、コンセンサス情報の認証を行うzk-SNARKSと対話を行います。
Minaプロトコルのユーザーは、22KBのチェーンを処理でき、数ミリ秒の処理時間に耐えられる端末であれば、それぞれ検証者とみなされます。
ブロック生成の支払い
ブロック生成者は、ステーカーやマイナーという形で、ブロック報酬や取引手数料の支払いを受けることができます。
興味深いことに、本プロトコルでは、ブロック生成者に支払われる報酬は削減されません。
Minaユーザーは、この参加者層にコインを委ねることができます。
ブロック生成時にこれを行わないと、ブロックが不完全となり、他のノードがその有効性を拒否することになります。
取引をブロックにまとめる他、ブロック生成者は以前にコミットした取引と同じ数をステークする必要があります。
ブロック生成者が10件の取引をチェーン上に組み入れたい場合、列の先頭から取引をスナークしなくてはいけません。
ただし、SNARKを生成するか、スナーカーと呼ばれる特別な参加者が生成したものを使用するか選択できます。
ブロック生成者が10けんの取引をチェーンに組み入れたい場合、列の先頭から取引をスナークしなければなりません。
ただし、SNARKを生成するか、スナーカーと呼ばれる特別な参加者が生成したものを使用するか選択sルウことができます。
mempool
Mina取引のプロセスは、ユーザーが取引することから始まり、その後取引は有効であるものの未確認の取引プールであるmempoolに送られます。
次に、スナーカーが引き継ぎ証明やSNARKをつくります。
続いて、取引をブロックに束ねるブロック・プロデューサー(BP)(ブロック生成者)を選定します。
注意点は、BPが利益をもたらす取引を発見するため、mempoolをふるいにかける点です。
そして、BPはコンセンサス・メカニズムのルールに従ってSNARKを選択します。
ブロック生成者は、最も安価なSNARKの入札を探していきます。
また、直近で追加された取引ではSNARK台帳が更新されています。
次に、SNARKをブロックに組み込み、そのブロックチェーンに追加し、ネットワークを更新します。
スナークされた取引は、プロトコルのサイズを一定に保つためにチェーンから削除されます。
その後、ブロック生成者はをプロトコルのサイズを一定に保つためにチェーンから削除されます。
そしてブロック生成者はプロトコルのzk-SNARKSをアップグレードします。
最後に、新しいブロックはチェーンの一部として不変化します。
投資における将来性・まとめ
ミナプロトコルは非常に専門用語が多いです。
DAppsを効率よく実行するための軽量ブロックチェーンが特徴です。
そのため理解するためには、DAppsやブロックチェーンの深い知識が必要になります。
私は仮想通貨の情報は追っていますが、ブロックチェーンのエンジニアのような知識まではありません。
そのため正直深くまでは理解できませんでしたが、エンジニアなどの深い知識をお持ちの方はミナプロトコルの素晴らしさが理解できる可能性があります。
最近のコメント