こんにちは、yodakaです。
- StarkNet(スタークネット)って何?
- なぜ、注目されているの?
- 使い方を知りたい
- 注意点やリスクを教えてほしい
今悩みを解決する記事を用意しました。
StarkNet(スタークネット)とは、イーサリアムネットワークをより便利に使えるようにするためのプロジェクトです。
イーサリアムネットワークは、現在も拡張を続けていますが、ユーザーが増えるにつれて様々な問題が浮き彫りになってきました。
例えば、ガス代(手数料)の高騰や処理性能の低下、セキュリティの確保などです。
これらの問題解決にあたるプロジェクトは、総称して「L2(レイヤーセカンド)」と呼ばれます。
【L2の解説はこちらから】
そのうちの取り組みの一つが「zk-Rollup」であり、「StarkNet」はその中で最も注目を集めているプロジェクトの一つです。
その最大の特徴は「ゼロ知識証明」という暗号技術を使っているということ。
Rollup関連のプロジェクトとしてはOptimismやArbitrumが有名ですが、それらとまた違ったアプローチを試みているのが「zk-Rollup」です。
【Rollupの解説はこちらから】
イーサリアムの創設者「ヴィタリク・ブテリン」も自身のブログの中で「zk-Rollupの有用性」についてに言及しています。
【ヴィタリクのブログはこちらから】
zk-Rollupは、再注目の技術の一つです。ゼロ知識証明についての理解を深めることで、仮想通貨界隈で生き残る知恵を磨くことができます。
本記事を読むと分かること
- StarkNetとは何なのか?
- ゼロ知識証明とは?
- StarkNetの関連プロジェクト
- StarkNetを使うメリット
- StarkNetの具体的な使い方
- 使う時の注意点やリスク
情報ソース
StarkNetとは何なのか?
「StarkNet」は、StarkWareが開発を手掛けるzk-Rollupプラットフォームです。
一言で言えば
誰でも参加できるStarkExの構築
の構築を目指しています。
StarkWareが提供している企業向けサービス「StarkEx」を一般ユーザー向けにデザインし直しているプロジェクトが「StarkNet」です。
「StarkNet」は誰でも許可なく使えるので、「パーミッションレス(許可不要)なプラットフォーム」などと呼ばれます。
「StarkNet」は開発段階で、一般ユーザーはアルファ版とテストネット版を操作することができます。(2022年8月)
レイヤー2のランキングサイト「L2BEAT」では、16位。
StarkWareってどんな企業?
StarkWareは、ブロックチェーン業界向けの製品開発をするイスラエルの企業です。
ゼロ知識証明を応用したアプリ開発がメイン事業で、StarkNetとStarkExはStarkWareの看板商品と言えます。
さらに、Cailoというプログラミング言語を使っている点も特徴的です。
StarkExは、既にイーサリアムのL2で本格的に実装されているdYdX、Immutable X、Sorareなどの基盤となっています。
既にStarkExで実績を出しているため、StarkWareが開発を手がけるStarkNetにも期待が集まっているのです。StarkExを一般ユーザーにも広く使えるように開発を進めているのがStarkNetというわけです。
ポイント
StarkExは企業向け
StarkNetは個人・一般ユーザー向け
Rollupという技術
「Rollup」とは、メインのネットワーク上で行うトランザクションの一部を巻き取り、別のネットワーク上で処理した後、その記録だけをメインネットワーク上に送信する仕組みのことです。
Rollupを実行することでメインネットワークにかかる負担を減らすことができるため、手数料の削減や処理速度の高速化ができるのです。
zkSyncは、イーサリアムネットワーク上で行う処理を巻き取り、zkSyncが構築するネットワーク上で行います。
それによって、データ処理にかかるコストを低下させ、ガス代(手数料)を大幅に削減したり、送金にかかる時間を短縮したりすることができます。
zk-Rollupでデータの正当性を証明
zk-Rollupの最大の特徴は、メインネットに送信されたデータの正当性を確認するする必要がないということです。
これを可能にしているのが「ゼロ知識証明(zero-knowlege proof)」という暗号化技術です。
これは、データを送信する段階で、「その情報は正しい」ということを自動的に証明してしまう技術です。
Optimistic
zk-Rollupとは別の方法として、「Optimistic Rollup」という方法があります。
これは、Rollupで送信されたデータの正当性を「バリデーター(検証者)」が検証申請をできる期間を設けています。
rollupを行った時に不正が行われていたことを証明できれば、それを指摘したユーザーに報酬が出され、不正なデータは無効になるというシステムです。
OptimismやArbitrumなどに採用されている方法で、2022年8月現在、主流になっているRollupです。
「一旦、データを提出してから、後でそのデータの正当性を確認できる期間を設ける」というアプローチは、「初めからデータの正当性を保証している」zk-rollupとは対照的です。
ゼロ知識証明とは?
- 「ゼロ知識証明」って何?
- どんな仕組みになっているの?
ここからは、「ゼロ知識証明」の仕組みについて詳しく解説していきます。
ゼロ知識証明とは
明かしたくない情報を隠したまま自分が証明したい情報を相手に証明できる技術
です。
ゼロ知識証明がもたらす具体的なメリットは、以下の2点。
- データの正当性を後から検証する必要がない
- ユーザーのプライバシーが守られる
Optimistic Rollupとの最大の違いはここにあり、zk-Rollupが注目を集める理由でもあります。
データの正当性
ZKとは「Zero Knowlege」の略。
ゼロ知識証明では、圧縮したデータを取りまとめてメインチェーンに送信する過程で「そのデータは間違いなく正しい」ということをあらかじめ織り込んでしまうのです。
その結果、「ユーザーはデータを持っていますが、その中身を見せなくても中身が正しい」ということを証明することができます。
現在は、デジタル署名などで実装されている技術です。
その仕組みを説明していきます。
初めに要旨を伝えておくと
何度も検証作業を繰り返して、確率論的に確からしいことを証明すること
が「ゼロ知識証明」の検証プロセスです。
ジャン・ジャックの洞窟
最もよく使われる例え話が、「ジャン・ジャックの洞窟」です。
これは、ベルギーの暗号学者であるジャン・ジャック・キスケータが提案したものです。
前提
- 証明者P(Prover)は、洞窟の奥にある扉を開く鍵を持っている
- 検証者V(Verifier)は、Pの持っている鍵を見ていない
- PもVも洞窟の奥にある扉が鍵を使わなければ開けられないことを知っている
この前提の下で、「証明者P(Prover)が検証者V(Verifier)に自分が鍵を持っていることを鍵を見せることなく証明したい」と仮定します。
まず、Pは洞窟に入り、AかBのどちらかのルートを選んで奥まで進む。この時、VはPがどちらのルートを選んだのかを知らない。【図1】
次に、Pが完全に奥まで進んだ辺りで、Vは分岐路まで進み、Pが戻る道をAかBのどちらかのルートを指定して呼びかける。【図2】
この時、VはPが鍵を開ける瞬間を見ていないということが重要です。
この場合、Pは鍵を持っているので、扉を開けてAのルートから戻ることで、鍵を持っていることをVに証明できる。【図3】
図1〜3の作業を何度も繰り返し、毎回Vの指定通りにPが戻ってくることができれば、Pは鍵を見せることなくVに鍵を持っていることを事実上証明できるというわけです。
もし、Pが鍵を持っていなければ、Bのルートで戻ることになり、鍵を持っていないことがVにバレてしまいます。
つまり、「ゼロ知識証明」とは
膨大な回数の検証作業の結果、証明者が嘘をついている可能性が限りなくゼロに近いから、その主張が真実である
という証明方法なのです。(実際にはもっと複雑なプロセスがありますが、大枠としてはこんな感じです。)
補足
この方法とは別に「非対話式」という検証プロセスもあります。
【参考:zkSyncを見て学ぶ】
StarkNetの関連プロジェクト
StarkNet関連のプロジェクトは約90種類。
DeFi関連のものを中心に5つ紹介します。
Argent X
Argent Xは、仮想通貨のウォレットアプリです。
MetaMaskなどのように、個人が仮想通貨を管理するために使うことができます。
イーサリアムのレイヤー1では、既に広く使われているアプリです。
StarkNetで仮想通貨を運用するときは、Argent Xの使用が基本になります。
こちらのリンクからChromeのウェブストアに移動できます。
StarkGate
StarkGateは、ブリッジプロトコルです。
イーサリアムメインネットにあるトークンをStarkNet上で使えるようにするためのツールとして機能します。
現在は、テストネット板(Goerli)とメインネット板(Alpha)の2種類を使うことができます。
【参考:Starkgateの利用規約】
Alpha Road
Alpha Roadは、AMM(オートマーケットメーカー)プロトコルです。
Uniswapのように、仮想通貨のスワップや流動性提供を行うことができます。
現在、テストネットバージョンを利用できます。(2022年8月)
Astraly
Astralyは、StarkNet上の資金調達とプロジェクトへの参加を強化するためのプラットフォームです。
StarkNet上に構築されたクラウドファウンディングサービスのようなものです。
ユーザーは、紹介されたプロジェクトの中から有力そうなものを選び、そこに投資することができます。
投資に使うのは独自トークン「ASTR」です。
現在は、テストネット運用中(2022年8月)。
StarkNetを使うメリット
開発陣の先見性
StarkNetは、既に実績を上げている企業です。
2019年1月には、ブログ記事でイーサリアムのL2ソリューションとしてzk-Rollupの重要性を言及していました。
このことからStaekWareが先見の明のある企業であることが分かります。
企業としての歩みは2018年から始まっていて、徐々に成長してきたという点からも今後の開発が続いていく可能性に期待できます。
【参考:有効性の証明と不正の証明】
新しい技術が学べる
zk-Rollupは、今後のイーサリアムネットワークのスケーリングを考える上で、主流になる技術の一つです。
実際に触れることで、システム自体の理解にもつながります。
Pplygonなどのサイドチェーンなどでも開発が進み、開発チームの競争が目立ってきています。
イーサリアムのL2として、有力なプロジェクトにアタリをつけておく機会にもなるでしょう。
セキュリティ面の知識がつく
zk-Rollupは非常に複雑な技術なので、真面目に勉強して理解している人は、技術者を除けばごくわずかです。
仮想通貨のDeFi運用をしているのなら、システムがどんな仕組みで動いているのか知ることで、安全性の高いプロジェクトを見極める目が養われます。
トークン獲得の可能性
StarkWareは、独自トークンの発行を発表しています。
他のプロジェクトでよくあるようなエアドロップ祭りは行う予定はないようですが、コミュニティの成長に寄与したユーザーにはトークン配布の可能性があります。
【参考:トークンの設計】
StarkNetの具体的な使い方(テストネット版)
StarkNet上のアプリをテストネットで使ってみましょう。今回は「Alpha Road」のテストネットバージョンを試してみます。
具体的な流れは、以下の通り。
- 仮想通貨のウォレットアカウントを作る(MetaMaskとArgent)
- テストネット用のトークンを発行する
- テストネット用のアプリを選んで、操作する
ウォレットアカウントを作る
イーサリアムネットワーク用に「MetaMask」、StarkNet用に「Argent」のアカウントを作りましょう。
詳しいやり方は、以下の記事を参考にしてみて下さい。
参考記事
準備:テストネット用のETHを発行する
まずは、こちらのサイトからテストネット用のETHを発行します。
- 「Argent」のアカウントアドレスを入力
- botではないことの確認チェック
- 「Send Request」をクリック
「Request complete」が表示されたことを確認して「Close」をクリック。
これにて準備完了です。
Alpha Road(Testnet)でswapする
「Connect Wallet」をクリック。
「Argent X」をクリック。
Swapしたいトークンを選び、数量を入力。→「Swap」をクリック。
トランザクションの内容を確認し、「Approve(承認)」をクリック。
1分ほどでトランザクションが通りました。
Alpha Road(Testnet)でpoolする
「Pools」をクリック。
トークンを選択し、量を入力。→「Add liquidity」をクリック。
トランザクションの内容を確認し、「Approve(承認)」をクリック。
使う時の注意点やリスク
まずは、テストネットバージョンのアプリを触ってみることをお勧めします。
イーサリアムとの互換性が薄い
StarkNetを構成するのは「Cairo」というプログラミング言語です。
一方、イーサリアムを構成するのは「Solidity」というプログラミング言語。
そのため、メインチェーンと規格の違う言語を使っている点で「構成に互換性がない」と指摘されることがあります。
開発段階でリスクが高い
そもそも、StarkNet自体が非常に新しいプロジェクトなので、周辺のアプリが安全に使える状態ではありません。
StarkNetを利用する際も、かなり長い利用規約があり、そのリスクに同意した人が使うという前提があります。
大きな資金は入れずに、まずはテストネット版をいじってみる。
その上で、面白そうなdAppsがあれば、本格的に使ってみるようにしましょう。
【参考:Starkgateの利用規約】
動作が遅いアプリがある
アプリの中には、実際に触ってみるとトランザクションを通すのに時間がかかるものもありました。
PCの動作環境にもよりますが、NFTの発行用のサイトで20分以上経ってもミントが完了しないものもあります。
トランザクションがすぐに通らなくても、焦らないで済むよう時間やお金に余裕を持ってアプリを触るようにしましょう。
多くのアプリがテストネット版
StarkNet上には、テストネット版のアプリが多く、正式にローンチされたものは少ないのが現状です。
これは、StarkNet周辺のアプリが開発段階であり、今後の伸び代があることの裏返しとも捉えることができます。
特に、GameFiの関連アプリは面白そうなものが多いため、ゲームが好きな方はテストネット版の内から触っておくと良いでしょう。
正式にローンチされた後、実際に使い勝手が分かっている状態で使い始めることができます。
まとめ
最後まで読んでくださってありがとうございます。
今後、開発が進んで利用が増えていくと予測されるStrakNetについてお伝えしました。
本記事の内容が、参考になれば幸いです。
本記事のおさらい
- StarkNetは、イーサリアムをより便利に使えるようにするための取り組みの一つ
- zk-Rollupを採用し、「ゼロ知識証明」という暗号技術をベースに稼働する
- Cairoというプログラミング言語で構成され、イーサリアムのSolidityとの互換性は無い
- 開発を手掛けるのは「StarkWare」という企業で、既にStarkExの開発で成果を出している
- StarkNetは、アルファ版でローンチしていて、開発段階(2022年8月)
- アルファ版で実際に利用できるアプリもある
- テストネットバージョンのアプリも使うことができる
情報ソース