こんばんわです<(`・ω・´)
Polygonチェーンに残るとなると、必要になってくるのが土台になっているチェーンそのものの存在です。昨日の記事でEthereumのLayer2ではなく、サイドチェーンであると訂正いたしましたが、これもまた間違いだったようです。今のところの調べでは、EthereumのLayer2であり、なおかつ、サイドチェーンであるという記事が一番尤もらしいということになりましたが、そこに至るまでに、かなりEthereumやBitcoinの歴史から調べ直す羽目になったので、今回の記事はそこの主眼を置くことにしました。バナーは唯一Polygonについてまとまった日本語情報があったPolygon Japanのnoteよりいただきました。
この他に、日本語開発者向けチャネルが存在することになっているのですが、現時点では日本国旗マークがなく、開発者向け日本語チャネルの存在については、確認できませんでした。また、一般向けの日本語チャネルのやはりありません。日本国旗マーク自体を、Discordの入り口で押せばいいのかと思って、リアクションとして日本国旗マークをつけてみようとしましたが、既にリアクションが多すぎて無理、的なメッセージが出てつけることができませんでした。
また、比較的新しい試みとしてはじまっているゼロ知識証明EVMについては、note上で別のグループ(?)になっていて、現在3つの初心者向け記事のみです。
といっても、ゼロ知識証明とビザンチン将軍問題の関係は、なんとなくしか分かってないので、後でまたこれらの初心者向け記事を読み返す機会がくるかと💦いまは単にロールアップというLayer2がLayer1のEthereumメインネットのブロックチェーンに対して、トランザクションの結果だけを、まとめて書き込む技術にとても有効な手段として理解しています。OptimismとArbitrumについては、もっとシンプルだけど、一度バリデータで齟齬が起こると急に重い処理へと遷移するOptimisticロールアップを用いて早くに実装しましたが、本来はzkロールアップの方が総合的パフォーマンスとしてはよいらしいです。まぁ、zkEVMという表現とzkロールアップというのも厳密にはいろいろ違うのかもしれません。いずれによ後日にて。
調べの最大の成果として、上記の記事が一番汎用性が高く、有益な情報と考えられました。よく知られた昔からあるインターネットのOSI参照レイヤー構造によく似た考え方で、ブロックチェーンというものは、そもそもBitcoinであれEthereumであれ、種類に関係なくレイヤーと呼ばれる層が積み重なった多層構造をとるということです。著者さんの考え方と、それと比較するためにEthereum創設者のヴィタリック・ブテリンさんの考え方が示されていて、あくまで現状、確立された規格やら論文が存在するわけではありませんが、実情としてこういうことになっていると記してあって、私個人としてはレイヤーを分けずにブロックチェーンを説明するよりも、はるかに理由付けしやすい考え方だと納得しました。
アプリケーション層 いわゆるDApps(Decentralized Applications)と呼ばれるサービスなどが、最上位のアプリケーション層に分類されます。また、DAppsを利用する際に必要なDAppsブラウザなどもこのレイヤーです。基本的に、一般ユーザーがブロックチェーンを使う際に意識されるのはアプリケーション層だと言えるでしょう。多くのブロックチェーン企業はこのレイヤーで事業を構築しています。
特にパブリックチェーンを利用する場合は、開発の進捗やハードフォーク、(イーサリアムであれば)トランザクション手数料の変動など、自社でコントロールできない変数が比較的多いため、開発・事業構築どちらの観点でも、一般的なアプリよりは難易度が高いと言えるでしょう。
その通りで、アプリケーション層は、その下のレイヤーの仕様変更の影響を受け、さらには現在ブロックチェーンに、Bitcoinおよびその派生とLightning勢、EthereumとLayer2およびサイドチェーン勢、Polkadotリレーチェーン及びAstar含むパラチェーン勢、Solana勢、などなど、いわゆるレイヤー1ブロックチェーンのエコシステムがたくさん存在しているので、一番トップである分散型アプリケーション(dApp)の実装の仕方が、一番異なった様相を呈しやすいと言えるかと。これがdApp開発のボトルネックになっているようにさえ見えます。
サービス層
アプリケーション層とプロトコル層の間に位置し、様々なサービスを提供するミドルウェアとして機能するのがサービス層です。以下のコンポーネントがサービス層に分類されます。
(中略)
ウォレット:公開鍵と秘密鍵を管理し、トランザクションのブロードキャストなどを行うサービス
デジタルアセット:暗号通貨やトークンに代表され、ブロックチェーン上で流通する資産
スマートコントラクト:事前合意された条件に従って自動執行されるプログラム。一度デプロイしたプログラムは改ざんが困難
デジタルアイデンティティ:高いセキュリティとプライバシーを備えたデジタルID
分散ファイルストレージ:ノードがストレージの空き容量を提供し合う形式のファイルストレージ。ファイルは暗号化され、正当な秘密鍵を持つ持ち主しか制御できない
ウォレットとスマートコントラクトがサービス層に位置するのか。
プロトコル層
プロトコル層は主として、分散ネットワーク上でコンセンサスを形成する方法を提供します。コンセンサスアルゴリズムやブロック提案のメカニズムはこの層に属しています。また、目的に応じてネットワークへの参加を許可制にすることも可能です(パーミッション型)。
(中略)
また、サイドチェーンやEVM(Ethereum Virtual Maschine)のような仮想マシンもこのレイヤーに分類可能です。特に、セキュリティを維持しつつ、コードを実行する仮想マシンは、ブロックチェーンアプリケーションにとって重要な要素だと言えるでしょう。
PoSコンセンサスアルゴリズムやら、EVMによるEthereum互換性の付与によりdApp開発を促進するレイヤーかと。
ネットワーク・トランスポート層
ネットワーク・トランスポート層は、P2Pネットワークにおいてピア間での通信をサポートするレイヤーです。データのパケット化、アドレス指定、送信、ルーティング、受信の方法を決定しています。
徐々にアプリケーション層という抽象階層から、物理レイヤーへと降りてくる感じですね。
インフラストラクチャ層
インフラストラクチャ層はもっとも低いレイヤーであり、該当部分はBaaS(Blockchain as a Service)として提供されることが多いです。仮想化やストレージ、ノードなどがこのレイヤーに属します。
これより下の階層というのは、実はインターネットのOSI参照レイヤーになってくると思うので、ブロックチェーンを説明する範囲ではインターネットの存在が既知の事実なので、物理層まではいきつかないようです。
参考:Vitalik Buterinが整理したテクノロジースタック(2014年ver)
イーサリアムの考案者として知られるVitalik Buterinは、2014年末に暗号通貨・ブロックチェーン関連の技術をレイヤー構造で整理しています。本記事で紹介したものとは分け方が異なるものの、共通している点が多いです。
https://blog.ethereum.org/2014/12/31/silos/
あくまで、2014年末のバージョンなので、Ethereumメインネットのスケーラビリティ問題が深刻化した現在とはだいぶ違うとは思いますが、8年以上前にヴィタリック・ブテリンさんが認識をしていたというのは、興味深いですね。
まとめ:ブロックチェーン関連技術も様々なレイヤーで開発されている
現在行われているブロックチェーン関連の技術開発は、本記事で紹介したようにレイヤー構造で整理することができます。技術開発の動向を見ていく際に、レイヤー構造を意識すると、ブロックチェーンのエコシステムにおける各技術・プロジェクトの位置付けを把握する際に役立つはずです。各レイヤーごとに技術開発が進んでおり、各レイヤーごとにより良いプロトコルやサービスが登場することで、Web3.0のインフラをサポートする技術としてのブロックチェーン(および関連技術)は成熟していくでしょう。
最後、ここでWeb3.0って記しているのが、ちょっと違和感ありますね💦Web3.0でググるとXMLによって記述された自動編集しやすい形式のセマンティック・ウェブの検索結果がところどころで混じって表示されるのです。しかも、小数点以下がついたのは見たことがないので、冗長でもあります。自民党が”web3”(ウェブスリー)という表記に統一して、頭文字を小文字にして、最後に小数点以降をつけないのは、おそらくこのためです。
ともかく、このブロックチェーンのレイヤー構造の説明で、とても頭の中が整理できました。
Ethereumのホワイトペーパーの日本語版も見つけて読んでみました。
全体的にBitcoinと同様のPoWの時点で記されたものですから、まずはそれがスケーラビリティにとって大問題なので、PoSに移行して以降のホワイトペーパーの方があるとありがたかった。結果的に話をきっちり切り離していて、Layer2やサイドチェーンについての記述はほぼないですね。
そして、仕方がないので第三者視点からの記述が売りのWikipediaさんを参照すると、PolygonとEthereumの基本的な部分だけはのみこめました。
2017年にEthereumをスケールするためのインフラを提供する意図で作られ、インドのソフトウェアエンジニアであるJaynti Kanani、Sandeep Nailwal、Anurag ArjunによってMatic Networkとして設立され、2019年にローンチされた[6][7][8][9]。2021年2月にはMatic NetworkをPolygonにリブランディングした[8]。
そういえば、テストネットはMunbaiというインドの都市の名前がついていましたね。
セカンドレイヤー・ソリューション
Polygonは複数のレイヤーから構成され、中でも実行レイヤーとネットワークレイヤーを核としている[29]。実行レイヤーはポリゴンのEVM(イーサリアム仮想マシン)としてスマートコントラクトの実行を担う[29]。ネットワークレイヤーはポリゴンで構築されたブロックチェーンで、個別にコンセンサスをとりブロックを生産する[29]。 またブリッジ機能があり、異なるブロックチェーン同士を相互に接続することを可能にし、レイヤー1とセカンドレイヤーの橋渡しとしての役割を担う[3]。
この参照番号[29]は実際にはCoinpostのPolygonタグ付けされた全ての記事の一覧が表示されるため、どの記事の記述のことか特定できず、実際には役にたちませんでした。Wikipediaあるあるですね。
こうなってくると、実際上、信頼性が高くて、日本語で、Wikipediaより新しい情報がまとまっているのは、ググって見つけるしかないわけで、ざっとこんな感じになりました。
そして、最後に残った疑問はこれです。
Polygonはイーサリアムをメインとしたサイドチェーンであり、Plasmaという技術を使われています。
Plasmaとは、サイドチェーン技術の一つで、親チェーンであるイーサリアムのもとの子チェーン、孫チェーンに処理を行わせることで、最終的なデータを親チェーンに保存する技術のことを指します。
Polygonは、レイヤー2でもありつつサイドチェーンも利用しているブロックチェーンです。ただ、この手法はハッキングのリスクが高いので注意が必要です。
ハッキングのリスク高いのか?!そういえば、2022年には最後にFTX騒動が起こってCEXに対する信頼が米国でゆらぎ、それ以前までの2022年のハッキング動向は、ほとんど報じられていませんが、2021年以前とちがって、直接的にデポジットされているLPを狙うのは、監査が普及したため技術的に困難となったものとみられ、取扱量が増大しているクロスチェーンブリッジが徹底的に狙われました。一番印象に残っているのはAxiyInfinityとBinanceスマートチェーンのブリッジハッキングですね。
確かに、Polygonは、Ethereumのサイドチェーンとしてのブリッジと、Layer2としての両方の特徴を備えた稀有なチェーンである(らしい💦)ことには違いなく、ちょっと過去のハッキングを洗ってみます。
ブリッジではなくPoSコンセンサスアルゴリズムのバグですが、事前にホワイトハッカーの通知により食い止めています。
こちらは、Polygon側からのweb2技術に対する警鐘ですね。
というわけで、確かにサイドチェーンとしてのブリッジハッキングリスクの上に、Layer2としての特徴の両方を備えているため、他のチェーンと事情が異なることは頷けますが、過去の事例をみると、Polygonは基本的に古株で技術の蓄積があるので、一概にリスク高いとは言い難いのではないかと…
今日のところはこんなところで<(`・ω・´) もうこんな時間なので誤字脱字直せません、ごめんなさい🙇