最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

DoraID — 通用去中心化身份和Staking機制

2021-07-05 18:12 作者:DoraHacks  | 我要投稿

01

目標(biāo)

DoraID旨在提供一套能夠在區(qū)塊鏈上自治的去中心化身份認(rèn)證體系,為鏈上大量的需要身份認(rèn)證、抗女巫攻擊的去中心化應(yīng)用提供基礎(chǔ)服務(wù)支持。

?

一方面,傳統(tǒng)鏈上的KYC認(rèn)證均無法繞過一定程度的中心化節(jié)點對于賬戶的鏈外身份信息進(jìn)行查驗、記錄的步驟。因此這類服務(wù)往往對于用戶的操作復(fù)雜度、使用成本都較高。而且基于驗證的方式、審核的合規(guī)程度不同,這類中心化節(jié)點參與的認(rèn)證服務(wù)也會存在通用性較差,中心化節(jié)點自身的安全風(fēng)險等問題。

?

另一方面,在實際運作中有很多項目和機構(gòu)使用Token Staking(鎖倉或持有量證明)來作為一個特定賬戶地址在其去中心化應(yīng)用中的身份判別條件。這一方法能夠有效篩選出“有身份”的賬戶地址,但是大多數(shù)場景下用戶只是為了特定的一個合約服務(wù)來進(jìn)行鎖/持倉操作,而身份認(rèn)證服務(wù)本身沒有任何泛用性。同時對于一些體量較小,或者功能較為簡單的去中心化輕服務(wù)(比如僅僅參與一個投票)來說,讓用戶為了一次簡單的操作而提供一個“昂貴”的持有量證明,將會極大的拉高這類應(yīng)用的用戶門檻,阻礙應(yīng)用的發(fā)展。

?

基于目前鏈上身份認(rèn)證服務(wù)的基礎(chǔ),本著在去中心化網(wǎng)絡(luò)中“資產(chǎn)即身份”的理念,DoraID仍然以鎖倉Token數(shù)量,鎖倉時間作為身份認(rèn)證的核心要素。在此基礎(chǔ)上,允許用戶以更靈活的方式調(diào)整自己的鎖倉情況,同時將賬戶身份判斷的決策權(quán)轉(zhuǎn)交到上層的應(yīng)用合約或者鏈外的服務(wù)中。因此用戶可以根據(jù)實際的需要來動態(tài)調(diào)整鎖倉情況,以便使用最優(yōu)的鎖倉數(shù)量和時間來享受“認(rèn)證后”的權(quán)利。也可以通過配置一個“充分”的鎖倉方案,來實現(xiàn)一次鎖倉,享受多個不同合約/服務(wù)中的身份認(rèn)證權(quán)益。


02

核心功能

在DoraID的去身份驗證合約中實現(xiàn)了如下基本功能:


????在合約內(nèi)可以且僅可以設(shè)置一種ERC20 Token,作為該合約進(jìn)行身份認(rèn)證時所依賴的代幣。

????合約內(nèi)設(shè)置了若干初始認(rèn)證賬戶地址,即初代認(rèn)證賬戶。

????用戶可以將任意數(shù)量的對應(yīng)Token以任意時間鎖倉在合約內(nèi)。其中,在設(shè)定的鎖倉時間結(jié)束之前,用戶不能取出他所有鎖定在合約內(nèi)的Token,但是可以任意的增加鎖倉的數(shù)量或者延長鎖倉的時間。

????已認(rèn)證用戶的在合約的內(nèi)鎖倉會生成他們的持有量證明。

????任何一個在當(dāng)前時刻鎖倉數(shù)量和剩余鎖倉時間均超過“認(rèn)證閾值”的未認(rèn)證賬戶,可以被一個已認(rèn)證賬戶通過消耗一定的持有量證明,調(diào)用合約接口來進(jìn)行激活,成為一個已認(rèn)證用戶。

????合約對外暴露查詢賬戶狀態(tài)的接口,供其他合約或者鏈外的個人或組織對特定地址的身份認(rèn)證狀態(tài)進(jìn)行評估。

?

合約中不包含管理員賬戶,不可升級,沒有任何項目方收取手續(xù)費的設(shè)計,是一個純粹的身份驗證合約。

?

另外地,DoraID 同時會提供一套便于用戶進(jìn)行交互/查看/查詢的前端界面,輔助用戶直觀的和鏈上的核心身份驗證合約交互。同時用戶也可以直接和鏈上合約交互以實現(xiàn)更靈活的對于鎖倉情況的控制。


03

身份證明

在合約部分,任意一個賬戶地址都可以查詢到以下公開信息:

?

????是否是已認(rèn)證狀態(tài)

????當(dāng)前鎖倉Token數(shù)量

????當(dāng)前鎖倉的最早可釋放時間

????激活該賬戶的認(rèn)證用戶地址(如果當(dāng)前賬戶已認(rèn)證)

????通過該賬戶激活的賬戶數(shù)目(如果當(dāng)前賬戶已認(rèn)證)

????POS持有量證明

????賬戶所有者自己上傳的一段String備注信息

?

DoraID本身并不規(guī)定如何根據(jù)這些公開信息來判斷某一特定賬戶是否在當(dāng)前的上下文中具有“被認(rèn)證”的權(quán)益,而是需要使用 DoraID 的合約/鏈外服務(wù)(下文統(tǒng)稱應(yīng)用)根據(jù)這些公開信息,結(jié)合自身的場景和用戶的請求來判斷。但是一般的,我們認(rèn)為這些應(yīng)用應(yīng)該基于以下有序邏輯來對賬戶地址的身份進(jìn)行判斷:

?

判斷賬戶是否已認(rèn)證

除非當(dāng)前應(yīng)用認(rèn)為當(dāng)前操作不需要用戶有認(rèn)證狀態(tài)(比如當(dāng)前用戶是正在參與一個非常公開的活動),否則應(yīng)當(dāng)始終忽略未認(rèn)證的賬戶地址,即使他們提供了一些鎖倉作為身份證明。

?

判斷鎖倉數(shù)量是否大于特定閾值

邏輯上我們認(rèn)為鎖倉數(shù)量與賬戶地址的“身份高低”應(yīng)當(dāng)存在正比例關(guān)系,即鎖倉數(shù)量越大,應(yīng)當(dāng)享受的權(quán)益也越大。應(yīng)用可以根據(jù)用戶當(dāng)前使用的功能,判斷當(dāng)前的鎖倉數(shù)量是否可以享受認(rèn)證后的權(quán)益,甚至可以量化的計算出用戶能享受的權(quán)益程度。

?

需要注意的是由于鎖倉的代幣價值可能會有所波動,應(yīng)用層應(yīng)當(dāng)結(jié)合實際情況調(diào)整閾值的高低,并且可以保留調(diào)整閾值的方法。

?

判斷剩余鎖倉時間是否大于特定閾值

應(yīng)用必須判斷當(dāng)前賬戶地址的鎖倉時間是否大于該地址當(dāng)前可能申請到的權(quán)益的生效時間。否則,該賬戶的所有者完全可以在鎖倉時間結(jié)束,而權(quán)益未結(jié)束的時候取出所有鎖定的Token,并用這些Token鎖倉、激活另一個新的地址,從而使得同一份Token在應(yīng)用層面換取到兩份重疊的收益。

特別地,如果當(dāng)前地址可能申請到的這份權(quán)益的有效時間也是動態(tài)的,那么應(yīng)用可以不需要判斷鎖倉時間閾值,而是給這個地址一份同樣有效持續(xù)時間的權(quán)益。

?

例如:用戶嘗試參與一個持續(xù)一星期,需要身份認(rèn)證的IDO。這等同于用戶嘗試申請一個最少持續(xù)一星期的不可代替的此次 IDO 的認(rèn)購權(quán)。因此公募合約必須檢查用戶剩余的鎖倉時間至少有一星期以上。

?

【可選】判斷該賬戶的上下游認(rèn)證連鎖路徑

雖然合約中完整記錄了地址的認(rèn)證鏈路,但是由于鏈上遞歸操作可能造成Gas使用過高的風(fēng)險,因此不建議在沒有輔助用以判斷認(rèn)證關(guān)系的中間件層時,檢測地址的完整認(rèn)證路徑。另一方面,“誰認(rèn)證了該地址”與“該地址認(rèn)證了誰”這兩個信息的實際含義一般對于該地址的權(quán)益判斷沒有強關(guān)系?;谝陨显颍瑧?yīng)用可以根據(jù)實際場景來設(shè)計是否需要使用這一數(shù)據(jù)。

?

【可選】公示賬戶的備注信息

合約一般不會處理String類型的自定義信息,但是對于鏈外應(yīng)用,或者通過 DoraID 來查看特定地址身份的開發(fā)者,可以公示、閱讀該賬戶在合約中儲存的備注信息。

?

我們并沒有硬性規(guī)定這部分備注應(yīng)該以什么格式提交,也不強制所有用戶上傳這一備注信息,更不保證任何備注信息的真實性。但是我們建議用戶上傳一個URL,并且在URL指向的資源中提供一些可公開的強身份性的信息,并且最好能循環(huán)公示/證明其賬戶地址。(例如:在備注里備注一個Github的鏈接地址,在這個鏈接中可以看到某一Repo中readme.md中也注明了這一鏈上賬戶地址信息,那么顯然這個賬戶地址和這個Github賬號之間有很強的身份關(guān)聯(lián))

?

另外,應(yīng)用不應(yīng)該參考賬戶的POS持有量證明,盡管這一數(shù)據(jù)也是公開的。因為賬戶的持有量證明會在身份認(rèn)證合約中被用于激活其他賬戶而消耗,而除此之外這又是一個持續(xù)自增的變化參數(shù),我們不認(rèn)為這一數(shù)據(jù)具有強的身份判別關(guān)系。


04

身份認(rèn)證背后的共識

除了提供合約及配套的前端界面的服務(wù)外,DoraID 還希望能建立一套針對該服務(wù)下所產(chǎn)生的認(rèn)證身份含義的共識——這也是基礎(chǔ)服務(wù)能夠給上層應(yīng)用賦能的重要條件。

?

首先需要指出的是,DoraID 并不保證任何一個在合約內(nèi)經(jīng)過“認(rèn)證”的賬戶地址都是對應(yīng)一個獨立的自然人或者真實的組織、團(tuán)隊、公司。因為這是一個去中心化的解決方案,在沒有鏈外信息的干預(yù)時,我們基于“資產(chǎn)即身份”的基礎(chǔ)價值觀念,僅在邏輯層面全力保證同一份資產(chǎn)(Token)不會在同一個時間段用以代表多個身份,從而極大的增加女巫攻擊上層應(yīng)用的門檻。

?

在鎖倉-確權(quán)的理念之外,DoraID 中還設(shè)計了若干初始認(rèn)證賬戶,及“新認(rèn)證賬戶必須已認(rèn)證賬戶激活”的機制?;谶@一機制,在合約的數(shù)據(jù)層面將會形成一個網(wǎng)狀輻射的認(rèn)證關(guān)系網(wǎng)絡(luò),所有認(rèn)證關(guān)系也都是可以遍歷的。雖然合約中并沒有額外收取任何手續(xù)費用,但是老認(rèn)證用戶需要為這種激活操作支付區(qū)塊鏈網(wǎng)絡(luò)上基礎(chǔ)的礦工費用,即花費一定的成本,因此沒有理性的認(rèn)證用戶會無條件的幫助所有符合鎖倉閾值的非認(rèn)證用戶進(jìn)行激活。我們認(rèn)為基于這種設(shè)計,兩個賬戶地址的持有者(當(dāng)他們不是同一個人的時候)在鏈外至少有一定的溝通。繼而我們也可以認(rèn)為在這個過程中,激活者對于被激活者的真實身份有一個弱的擔(dān)保關(guān)系。具體來講,即使被認(rèn)證節(jié)點地址使用認(rèn)證的身份在某些場合做出一定的惡意行為,認(rèn)證者也不應(yīng)當(dāng)被認(rèn)為需要對這一惡意行為承擔(dān)任何責(zé)任。但是對于一個頻繁地去無差別激活其他地址,甚至包括多個惡意賬戶地址的激活者,其自身及其激活的其他賬戶地址的可靠性評價會被認(rèn)為是更低的。

?

由于遍歷認(rèn)證關(guān)系這種行為在鏈上非?!氨孔尽?,因此這種關(guān)系一般情況下不會對使用身份認(rèn)證服務(wù)的上層的合約所感知(它們只關(guān)心認(rèn)證狀態(tài)、鎖倉數(shù)量、鎖倉時間)。但是在鏈外一些更“主觀”的場合,通過分析這個認(rèn)證網(wǎng)絡(luò)以及網(wǎng)絡(luò)中各節(jié)點地址的特征,我們可能會對同樣是認(rèn)證過的地址有不同程度的可信度的評價。這種共識的評價會在一些有社區(qū)生態(tài)的應(yīng)用中,給社區(qū)成員提供一些對他人身份認(rèn)證情況的參考。


?

05

拓展功能及機制

有報酬的認(rèn)證請求

在合約層面,希望得到認(rèn)證的未認(rèn)證用戶可以在鎖倉的同時指定一個報酬金額和一個委托賬戶地址。一旦報酬金額被設(shè)置,那么成功認(rèn)證該賬戶地址的已認(rèn)證賬戶將會獲得這部分報酬(合約所支持的ERC20 Token)。同時,如果委托賬戶地址被指定,那么在未對委托賬戶進(jìn)行修改前,僅有指定的已認(rèn)證賬戶可以激活該待認(rèn)證賬戶。

?

對于激活者和被激活者在鏈外已經(jīng)一定程度上確認(rèn)過身份并且溝通完畢的情況下,這種機制可以確保被激活者承諾的認(rèn)證報酬可以在認(rèn)證達(dá)成時獎勵給激活他的已認(rèn)證賬戶,保障雙方的利益。同時特定的委托賬戶地址保證沒有其他已認(rèn)證用戶通過更高的Gas費進(jìn)行攻擊,搶先激活并獲得其收益。

?

鎖倉強制取回

在合約中,用戶的鎖倉數(shù)量和時間都是自定義的。一般情況下,在鎖倉時間到期前鎖倉數(shù)量只能增加不能取回,而鎖倉結(jié)束時間只允許設(shè)置一個更靠后的時間點來覆蓋。因此用戶如果由于失誤設(shè)置了不合理的數(shù)量或時間,可能導(dǎo)致用戶在非常長的時間里都失去他的代幣的使用權(quán)。而在沒有設(shè)置超級管理員的去中心化合約中,這種失誤造成的損失是無法找回的。

?

盡管這種失誤的發(fā)生完全是又用戶自己造成的,并非服務(wù)本身有問題,但是我們還是可以在合約中設(shè)置一個強制取回的邏輯:用戶可以鎖倉一筆相當(dāng)大數(shù)量的Token,來無視任何條件將他鎖倉的時間重置為一個相對較小值。

?

這種機制的存在會對整個身份認(rèn)證系統(tǒng)的可靠性存在一定的影響,因為持有巨量Token的用戶有濫用這種功能創(chuàng)造多個虛假身份的風(fēng)險。但是由于在這一過程中存在重置鎖倉時間后的最短時間限制,巨額的Token并不能在短時間能重復(fù)使用創(chuàng)建多個有身份賬戶。而一味的增加操作中使用的Token數(shù)量也會帶來較大的無常損失風(fēng)險。僅有當(dāng)應(yīng)用層面身份驗證后的收益極大時,利用鎖倉強制取回機制才有可能給攻擊者帶來利益,而在這種情況下,我們建議應(yīng)用不要使用DoraID,而使用整體成本都更高的其他KYC服務(wù)。


Twitter?@DoraFactory

Telegram?https://t.me/dorafactory

Medium?dorafactory.medium.com

Clubhouse?@dorafactory

DoraID — 通用去中心化身份和Staking機制的評論 (共 條)

分享到微博請遵守國家法律
海城市| 龙川县| 莱芜市| 嘉荫县| 句容市| 慈利县| 军事| 伊金霍洛旗| 平罗县| 博客| 班戈县| 商洛市| 灯塔市| 乌什县| 民和| 泗水县| 大理市| 宜黄县| 乾安县| 江孜县| 海阳市| 宜兰市| 嘉荫县| 右玉县| 高台县| 沁水县| 民乐县| 霍城县| 镇康县| 吉林省| 乌拉特后旗| 平潭县| 玛曲县| 赤水市| 安图县| 建始县| 策勒县| 平乡县| 武宁县| 满城县| 凭祥市|