【Web3.0学習日記】#2 なんとなくわかってきた気がする

2022/03/21に公開

ブロックチェーンの世界にディープダイブして半年ほど経ちました。ブロックチェーンのプロトコルレベルまでの理解はまだできていませんが、DApp開発やトークンモデルについては少しずつ知識が付き始めてきたという感覚です。

業務でWeb3回りを学ぶことも多いですが基本的にはフロントエンド開発のため、置いていかれないように必死に勉強しています🏃‍♂️ ビシバシ教えていただければありがたいです

「Web3.0学習日記 #1」の記事はこちらです
https://zenn.dev/ropitaru/articles/d5e73bb71b6315

この記事では参考になったソースなどをご紹介します。もし面白いものがあったら、コミュニティ内で共有していただけると嬉しいです。
https://discord.gg/sAmeXSKgnJ

DAppアーキテクチャ

DAppのアーキテクチャの勉強をしました。メインで読んだのは次の論文です。
https://eprints.cs.univie.ac.at/6880/1/2021111286.pdf

この論文では、イベント駆動型アーキテクチャ、CQRSがDAppにはマッチしていること、Web2バックエンドサーバーの妥当性などが記述されています。

ざっくりと翻訳したものはこちらです↓
DAppのアーキテクチャ設計

イベント駆動型アーキテクチャ(EDA)は、僕はあまり知識がなかったのでまとめてみました。拙著ですが、EDAってなんだろうという方はご参照ください。
DAppアーキテクチャ【イベント駆動編】

ブロックチェーンが本当に解決するもの

ブロックチェーンが本当に解決するものについてコミュニティ内で議論しました。題材はケンブリッジ・アナリティカ事件です。

これはブロックチェーンを使ったらFacebookやケンブリッジ・アナリティカなどの中央集権的なものは必要なくなるよねという文脈で取り上げられるのですが、本当にそうなのかについて議論しました。

議論はコミュニティ内に残っているので、もしよかったらご参照ください。
https://discord.gg/sAmeXSKgnJ

雑にまとめたメモはこちらです。
ケンブリッジ・アナリティカ事件

ユーティリティ・トークンのモデル

TheGraphのブログを読んでいるときに、なんだこの複雑なモデルは!と思って調べ始めました。トークンモデルの設計ってこんなに難しいんだということがしっかりと身にしみてわかりました。

交換方程式を応用したトークンの理論価値算出について理解できます。
https://blockchain.gunosy.io/entry/utility-token-valuation

「トークンの流動速度って重要なんだ」ということと、トークンの流動性問題を改善する方法がわかります。
https://blockchain.gunosy.io/entry/token-velocity-problem-solution

トークン問題を解決するための様々なトークンモデルが紹介されています。
https://blockchain.gunosy.io/entry/classification-tokenized-value#Workトークンモデル

DAO・DAC

分散型自律組織、分散型自律企業について読んだ記事は以下です。

DAO、DAC、DA、DOについてVitalik氏が解説しています。

分散型自律企業を深ぼった解説です。

分散型自律組織は人工知能ではまだ自動化できていない企業の経営、組織の運営部分を少数の特権を持った人たちが行うことなく、みんなで意思決定をしていくことで永続的な組織になるよねという感じだと思います。

最近読んだ本で、スティーブ・ジョブズは自分がいなくても会社が回るように企業改革したということが書かれていました。この本はWeb3とは関係ないですが、ジョブズが去った後の方が時価総額の上昇量が多く、分散自律型の組織を作ること自体にブロックチェーンは必要ないのではというのも一つの見方としてあるなと思いました。

もちろんDAOには自律分散以外にも透明性などの様々なメリットがあると思いますが、僕はまだDAOで活動したことがないため、色々なご意見聞かせていただけると嬉しいです。

その他

サブトピックとして少し面白いものをご紹介します。

メタトランザクション

ユーザーがガスレスでトランザクションを送信することができる、メタトランザクションというものを知りました。
https://recruit.gmo.jp/engineer/jisedai/blog/gsn/

The Graph

ブロックチェーン上のデータをインデックスするためのサービスです。インデックスされたデータはGraphQLを介して取得することができます。クエリは自動生成され、基本的な検索機能には対応しているみたいです。
https://thegraph.com/en/

AWS KMS Provider

AWS Key Management Serviceで安全に秘密鍵を管理し、安全にトランザクションに署名することができるProviderです。Providerとはイーサリアムノードとの通信を担当する部分です。(Provider - ethers.js

https://github.com/odanado/aws-kms-provider

環境変数経由で秘密鍵を渡す方法には次の問題点がありますが、これを解決できます。

  • 秘密鍵を直接使えばプログラム以外の意図しない文脈で署名を行える
  • 秘密鍵を誰が使用したという履歴はどこにも残らない
  • 秘密鍵を直接持ち出せば退職者であっても署名を行える

終わりに

少しずつ理解が深まってはいますが、まだまだ知らない事ばかりで、学習効率をどうあげるかというのも常に考えながらやらなければなと思っています。

コミュニティで良い記事の共有や、議論・質問等が行われているので、もしよかったら、一緒に勉強しましょう!DApp開発も行われていますのでご興味ある方は是非。
https://discord.gg/sAmeXSKgnJ

Discussion