# [TEM] 去中心化領稿費機制實驗 2 ###### tags: `TEM` [ToC] --- ## 🧙♂️ 1. 申請人 :::info Johnson ::: ## ⛲️ 2. 申請贊助之公共財 去中心化領稿費機制實驗 2 ### 📣 2.1 Introduction TEM Medium 已經透過[去中心化領稿費機制實驗 1](https://hackmd.io/@nic619/SkZDIp2GJl) 改變為投稿人自己到[領稿費網站](https://ethertw.github.io/RoyaltyAutoClaim/)上領取,審稿人也都透過同一個網站為每篇投稿給出稿費等級。 但目前的文章登記、投稿人領取稿費地址登記都還是由中心化的 Admin 操作,因此這個 Grant 的目的就是要透過 ZK Email 的技術來達成去中心化的文章和領稿費地址的登記。 ### 🎯 2.2 Objectives 這個實驗性的 Grant 希望能將目前的稿費領取系統再進一步去中心化,讓投稿人可以自己登記投稿並自己完成稿費領取。 ### 📕 2.3 Plan 1. 在[目前的稿費領取機制](https://github.com/EtherTW/RoyaltyAutoClaim)中加入 [ZK Email](https://ethtaipeixtem.substack.com/i/164167919/zk-email-summary-by-ryan) 技術,讓投稿人可以透過 eth.taipei@gmail.com 的回信來作為投稿認證及稿費領取資格的認證 2. 完成開發心得及技術文章產出並發表至 TEM Medium #### 延伸(不包含在這個 Grant 之中) - 如果要提供審稿人隱私保護,會需要零知識證明讓審稿人能隱藏身份。 ## 💰 3. 申請贊助金額 USD$ 2000 ## 📝 4. 補充 ### Spec #### 1. 系統組成 - 鏈上的 `RoyaltyAutoClaim` [合約](https://github.com/EtherTW/RoyaltyAutoClaim)及[前端](https://github.com/EtherTW/RoyaltyAutoClaim/tree/main/frontend) - 參與角色:Admin、Reviewer、投稿人 - Admin:維護 Reviewer 地址、維護合約 - Reviewer:負責給予投稿文章一個稿費金額 - 投稿人:登記投稿、在稿費金額決定後領取稿費 #### 2. 執行流程 ##### a. 初始化 - Admin 將手續費與稿費轉給 `RoyaltyAutoClaim` 合約 - Admin 註冊 Reviewer 們的地址 註:如果合約已經在前一版進行過初始化,那就可以省略初始化的步驟。 ##### b. 登記投稿 - eth.taipei@gmail.com 在收到並確認投稿資訊後,回信給投稿人“**確認已收到「XXXX by YYY」的投稿**”,其中XXXX 為文章標題名稱;YYY 為投稿人名稱 - 投稿人透過 ZK Email 證明收到來自 eth.taipei@gmail.com 的確認投稿資訊回覆,將投稿資訊登記至 `RoyaltyAutoClaim` 合約中 ##### c. Review 並決定稿費金額 (至少兩位)Reviewer 決定一篇投稿的稿費。稿費有四個等級,最終稿費取所有 Reviewer 的稿費平均。稿費等級: 1. 20 2. 40 3. 60 4. 80 ##### d. 領取稿費 - eth.taipei@gmail.com 回信給投稿人“「XXXX by YYY」已完成審稿” - 投稿人透過 ZK Email 證明收到來自 eth.taipei@gmail.com 的審稿完成回覆,到 `RoyaltyAutoClaim` 合約領取稿費 #### 3. `RoyaltyAutoClaim` 合約 要修改的函式如下: `function registerSubmission(string title, address royaltyRecipient)` - 原本運作方式為驗證 Admin 簽章,現在要換成驗證 ZK Email 證明 `function claimRoyalty(string title)` - 原本是驗證是否是是由登記的投稿人地址所發起,現在變成驗證 ZK Email 證明
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up