【学習備忘録】Lens Protocol
分散型ソーシャルプラットフォームLens Protocolについて何となく知っておきたい方向けの学習備忘録です。
web3 startup Stems DAOについて調べていると、Lens Protocol(以下lens)と連携していると知った。lens については聞いた事はあったものの、これを機に概要だけでも掴んでおきたいと思いdocument等を読んでみることにした。
Lens Protocolとは?
lensは①認証不要(permissionless) ②構成可能(composable) ③分散型(decentralized)の特徴を持つSNSプラットフォーム。
既存のSNSプラットフォームの持つ課題を解決するために設立されている。
中央管理主体による情報管理→ユーザー個人による情報管理
コミニティー毎のID管理→統一されたIDによる管理
機能
既存のSNSと同様の機能(プロフィール、フォロー、リツイートなど)が実装されており、各機能はNFT化することで管理・収益化などが可能になっている。またユーザーはフォロワーとともに独自のDAOを作成することも可能。
Profile NFT
lensの基盤となる要素。一つのウォレットアドレスから複数のプロフィールを作成できる。Follow Moduleをもちフォロワーに対して発行されるFollow NFTの仕様を規定している。
Publication
投稿・コメント・ミラー(シェア)など所謂UGC全般を指す。publicationはProfile NFTに直接紐付けられる形で投稿される。中身はNFTではなく、
分散型サーバー(IPFS, Arwave etc…)やS3などのサーバーなどに保存されているコンテンツのURIを示している。
Comment
所謂コメント。コメントも投稿などと同じように扱われるのでコメントしたユーザーの所有物として帰属する。
一方で、コメントは他人の投稿に対して行われるため投稿のreference moduleが存在する場合その制約を受ける。
例えばユーザーが投稿者をフォローしていない(Follow NFTを持っていない)場合はトランザクションが失敗する。
Mirror
リポスト機能。コメントと同じように投稿元のreference moduleが存在する場合その制約を受ける。mirror自身にも reference moduleを規定することができ、mirrorへのコメント・mirrorに対しての制限を行う事ができる。
Collect
コンテンツクリエイターはCollect Moduleの設定によってコンテンツのマネタイズを行う事ができる。他ユーザーがコンテンツを購入する(コンテンツURIがリンクされたNFTを発行する)際のプロセスを規定する事が出来る。
Follow
従来のフォローとは少し仕組みが異なる。他人をフォローする際にはProfile NFTからFollow NFTが付与される。
各Profile NFT(各個人が複数枚発行できる)にはFollow Moduleを設定することができる。ユーザーがフォローする際の条件をModuleによって設定可能。
またDAOを作成する際にはFollow NFTが投票権の役割を果たすことも出来る。細かな条件の設定も可能で、例えば最初の1000枚のみ投票権付与など。
Built-In Governance
DAOのガバナンスに関わる上でFollow NFTにはいくつかの機能が付与されている。権限委譲と特定情報の取得に大別される。
Power delegation (via delegate())
Power delegation by meta-transaction (via delegateBySig())
Fetching power at a specific block number (via getPowerByBlockNumber())
Fetching total delegated supply at a specific block number (via getDelegatedSupplyByBlockNumber())
DAOを作成するにはFollow NFTのビルドイン機能(DAOとFollow NFTを繋ぎこむ機能?)を伴ったコントラクトをデプロイする必要がある。
Community Multisig
Lens Protocolの健全な運営のためにコミニティーによるMultisigによって制御されています。Multisigについては以下の記事を参照。
出来ること
Setting up Governance and Emergency Admin Addresses
Setting Treasury Addresses and Fees
Whitelisting Assets
Moving the Lens Protocol System into a PublishingPaused or fully Paused state
Whitelisting addresses to create profiles
Whitelisting Follow, Collect, and Reference Modules
Upgrading the Lens Protocol Hub Contract
出来ないこと
Coopt, affect or otherwise move funds from any user of the system
Burn any Follower or Collect NFT
Burn or edit any non-Lens NFT
Take any action on any other deployment of the Lens Protocol