原文標題:《對DFINITY的去中心化身份、賬戶與錢包介紹開發者能如何利用?》
6月3號,ICPLeague聯合社區開發者舉辦了第二期的開發者電話會,探討了DFINITY的底層賬戶結構,以及上層去中心化身份認證的方式,介紹了兩者的聯系方式。點擊“閱讀原文”可以查看視頻回放。
本期亮點:
DFINITY的賬戶與身份是兩個系統,其底層依然是加密原生的公鑰/私鑰/地址的賬戶,但在上層建立了去中心化身份系統;
身份與賬戶并不耦合,賬戶寫在鏈的底層,而身份是鏈上運行在NNS子網上的智能合約,通過合約與賬戶建立了聯系;
賬戶更像是銀行卡,而身份更像是綁定了銀行卡的支付寶,能方便地使用DFINITY的dapp;
身份系統的目的是為了幫助用戶更好地管理賬戶,避免用戶直接接觸私鑰;
在使用DFINITY的身份登陸其他DApps時,如果DApps相關代碼更新,容易丟失對這個DApps的子賬戶信息;
開發者可以結合官方的命令行賬戶錢包實現客戶端/網頁錢包,或者基于互聯網身份系統實現web3邏輯下的業務,比如個人存儲、鏈上分身、數據集市。
報告:以太坊合并可能對DeFi協議、穩定幣產生負面影響:金色財經報道,根據DappRadar發布的一份報告,以太坊即將到來的合并可能會大大影響DeFi協議在鏈上的運作方式。報告指出,合并可能會減慢交易時間,或者造成DeFi借貸協議服務中斷,給平臺帶來麻煩。這可能會使穩定幣價值暴跌,并使DeFi借貸池縮小。DappRadar的數據分析師Pedro Herrera表示,合并對以太坊市場供應的負面影響可能會影響DeFi流動性池,即使以太坊權益證明機制的過渡順利進行。(CoinDesk)[2022/8/27 12:51:55]
賬戶地址
一般用戶在互聯網身份的包裝下并沒有接觸到轉賬地址,但DFINITY作為區塊鏈系統具備與比特幣/以太坊類似的賬戶,賬戶驗證的主要機制是經典的數字簽名方案。即從種子派生公私鑰對,并將公鑰匙處理編碼為字符串地址,通過私鑰簽名發送交易,使用公鑰驗證鑒別交易。
在選取的算法上,DFINITY的賬戶與比特幣更相似,以PythonECDSA和secp256k1為主,如果使用已有的比特幣賬戶在DFINITY上能生成一樣的公鑰,但在地址表現形式上有所不同。
DFINITY的賬戶地址的長度為64個字符,這種格式只用于表示普通賬戶,DFINITY容器使用專門的23位的容器ID表示,并5個字符串一組,用“-”隔開,如“h5aet-waaaa-aaaab-qaamq-cai.raw”,加上“https”與“.ic0.app”后可以在瀏覽器直接訪問,如“https://h5aet-waaaa-aaaab-qaamq-cai.raw.ic0.app/”。這是其與以太坊賬戶體系一個很大的不同。
Aptos對Devnet進行更新,更新框架中刪除一些Diem遺留和核心邏輯:8月5日消息,Pontem Network聯合創始人兼研發負責人Boris Povod在社交媒體上發文表示,公鏈項目Aptos的Devnet(開發者網絡)近期更新,更新包括默認table不再有長度、可以刪除simple_map、將質押從剩余鎖倉切換為循環鎖倉、區塊高度與事件計數器統一、使用Timestamp :: fast_forward_seconds 增加測試的時間戳等。
Boris Povod稱,此次更新框架中刪除了很多Diem遺留和一些核心邏輯(如模塊發布者白名單和腳本白名單等),提交的新模塊發布機制大部分工作已經完成,包括與模塊更新相關的部分工作仍在進行中。[2022/8/5 12:04:32]
在nns.ic0.app下的Accounts下能看到這些賬戶地址,可以直接用于ICP的轉賬,但目前還沒有易用的加密原生錢包。
但官方其實開源了這類錢包的實現方法,在keysmith庫中實現了一個命令行錢包
互聯網身份
DFINITY在賬戶系統外又開發了一套身份系統稱之為“互聯網身份”,以下簡稱II。II是部署在DFINITY的一個智能合約,智能合約的狀態存儲中對地址與身份建立了映射。
Uniswap增長負責人:PayPal等與Uniswap接觸交流,并對DeFi興趣濃厚:官方消息,Uniswap增長負責人Ash表示,很多傳統中心化交易的公司都想和我們接觸交流,包括PayPal、eTrade、Stripe,它們似乎看到了DeFi世界正在發生的事的魔力,且想成為其中的一部分。[2021/7/25 1:14:02]
注意的是,身份和錢包賬戶是兩回事。以太坊上錢包地址就是你使用應用的身份,但是在DFINITY中,身份是與錢包賬戶分開,兩者不耦合的,但來自同一源頭的公私鑰對,而且可以互相演化的。
在使用II時,用戶會獲得名為“usernumber”的一串數字,這其實是II合約內部的一個索引。這串數字來自一個63位的字符串,一般五個一組用“-”隔開,被稱為“PrincipalID”。
用戶身份其實是II智能合約中的一個實例化對象,II是DFINITY推動的標準,目前DFINITY上的應用都可以通過引入幾行代碼,來允許用戶使用II標準登陸應用。II是一種中心化身份的標注,使用了具備高度安全性的雙要素驗證;并能在使用不同dapp時為用戶創建衍生身份,來保護用戶隱私防止被跨應用追蹤賬戶;并能更方便的管理多賬戶,無需賬戶密碼,也無需基礎學習門檻高的私鑰,通過面部識別、指紋掃描或YubiKey等安全終端輕松地使用。
Pantera Capital和Alameda Research對DeFi協議Balancer進行投資:DeFi協議Balancer(BAL)宣布加密貨幣投資機構Pantera Capital和Alameda Research通過直接從Balancer Labs中購買BAL代幣對Balancer進行了投資,新資金將幫助加快Balancer v2的開發。目前,Balancer未披露投資金額。Balancer表示,Balancer v2將顯著改善交易成本、簡化開發人員集成和用戶體驗。[2020/11/10 12:09:48]
首先介紹一下WebAuthn,符合了W3C的Web驗證的標準,也就是除去賬戶密碼/私鑰驗證之外,還需要安全硬件的驗證,這是為了避免釣魚網站與惡意軟件的侵害。因此在使用II時,用戶必須具備安全硬件,這也是困擾早期用戶的一個門檻,但目前我們的大部分手機、筆記本都裝載了安全芯片,也可以外接YubiKey。
WebAuthn驗證流程:
用戶啟動登錄過程后,DFINITY的II智能合約將生成一個隨機質詢并將其發送到用戶的瀏覽器;
然后瀏覽器將質詢轉發到安全設備,用戶在安全設備上進行交互驗證,如指紋解鎖、面部識別或輕觸YubiKey;
OKEx CEO JayHao:中心化交易所對DeFi的建設需考慮兩大層面:9月24日,OKEx CEO JayHao在參加與Flamingo聯合舉辦的社群AMA中,JayHao表示:“中心化交易所對DeFi的建設可以分為兩個部分。第一是用戶參與上,OKEx開通了多條DeFi業務線,并支持免Gas費一鍵挖礦。第二是生態建設上,OKEx交易鏈作為一條完全開源,徹底去中心化的公鏈,可以實現完全的區域自治。”
據了解,OKEx交易鏈未來還將支持預言機,進而支持杠桿、永續等各種衍生品的流動性池或者訂單簿交易。[2020/9/24]
完成驗證,使用保存在安全設備中的私鑰簽名;
然后將驗證后簽名的質詢發送回II智能合約,II智能合約進行驗證,完成登陸。
在我們使用II授權登陸一個DApp時,II會自動產生一個子身份專門用于使用該DApp。這為用戶創建了多個鏈上分身,防止其身份被追蹤;同時DFINITY對不同容器交互時都需要分別進行驗證,一個容器無法盜用其授權權限與其他容器交互,來轉走代幣,而這種事曾在以太坊上發生過。
同時,II合約也對身份進行了一個抽象,因此即使你的私鑰只存儲在設備的安全芯片中,并不傳輸,但你能把多個設備綁定在一個主賬戶下,使用多個設備直接登陸主賬戶發送任意操作。這是一種對權限的管理,具體需要官方公布更多細節。
互聯網身份與賬戶地址的聯系
DFINITY在賬戶系統外又開發了一套身份系統稱之為“互聯網身份”,以下簡稱“II”。II是部署在DFINITY的一個智能合約。
原始ID的產出:
首先對隨機數Rand進行Bip39,然后產出種子文件,再推斷出私鑰;
通過私鑰產出一個DER格式的公鑰,長度為65字節;
對公鑰進行sha224得到28字節的字符串,然后加上一個字節判斷其類型,產出29字節的原始ID以下稱“blob”;
這里添加了一個字節可以表示其的類型,“0x01”為系統保留,“0x02”代表了這是主要ID,即用戶創建的;“0x03”表示該共鑰是從主要ID派生的,一個主要ID具備一個空間,可以注冊很多個派生ID,去使用不同的DApp;“0x04”為匿名ID,不用簽名也可以發送請求。
此時,對blob的兩種處理方式分別產出了用于II合約的63字節的“PrincipalID”,和32字節的錢包賬戶“AccountID”。
PrincipalID的產出:
對blob添加4個字節小大的CRC-32的糾錯碼;
使用Base32對結果進行編碼,每組五個字符,用“-”隔開;
也可以使用ASCII表示,最大63個字符。
AccountID的產出:
在blob前加入Account類型的特定字符串,后面加上序號;
對這個字符串計算sha224,得到28字節結果;
對結果添加4字節大小的CRC-32的糾錯碼,得到32字節結果;
轉化為64個字符的字符串。
AccountID就是我們在交易所中使用的轉賬地址,而AccountID也可以衍生出多個子地址,之需要修改blob后的序號即可,被哈希后就能得出不同的地址,這個過程與之前的派生是有區別的。
注意問題
目前DFINITY官方鼓勵開發者使用II去登陸DApp,而II對身份與地址的衍生與存儲都運行在智能合約中。
而在DFINITY的合約中Persistent狀態是允許被更新的,因此合約可以被升級,但這并不是一個持久化的狀態,因此有可能會在更新中損失數據。這就意味著,在II合約自身,或者DApp合約更新后,可能會損失數據,導致過去使用DApp的身份丟失。
這是所有開發者在使用II時需要注意的風險,但是這種情況往往是在使用DApp時會遇到的,而你持有的ICP代幣不會受到影響。
注意問題
目前DFINITY的體驗與加密原生用戶中間有一個斷層,II對現在的加密原生用戶的使用習慣來是超前的,因此大家很難接受。消除這個斷層,改進這個機制是非常重要的一個工作,比如為keysmith命令行錢包做可視化頁面等。
還可以在登陸機制上進行探索,目前的WebAuthn登陸有一定硬件門檻,不是所有人都能很輕松的使用。比如使用metamask登陸,比如通過郵箱去做密碼學驗證。
在開發DFINITY錢包時可以更好的去結合加密原生的賬戶地址與DFINITY的多身份系統。做一個比喻,賬戶地址像是銀行卡賬戶,DFINITY的II是微信的賬戶,也可以使用這個微信賬戶去登陸不同的應用,每個應用你都具備一個身份。
因此將MetaMask還不足夠,DFINITY的體驗與Web3中描述的“用錢包去完成所有的登錄的操作”不同了,應用的連接感更像傳統互聯網的“一鍵登錄”。
同時,在不同的公鏈或平臺上都有去中心化身份的項目,而因為沒有深度耦合,DFINITY官方推出的II也可以早期的身份項目,開發者可以著手去改進它,或者實現一個全新的更好的身份系統。
同時也可以在II的上層搭建更多應用,比如為每一個賬戶建立獨立的存儲空間,作為數據確權的中心,或者去優化多身份系統,從多身份中衍生出交互的多樣性。
Tags:FINDFIAPPDAPPUmami FinanceJDFI幣gate.io官網APP下載區塊鏈dapp開發一個多少錢
根據最初FlashBoys2.0中的定義,礦工可提取價值(MEV)是指礦工可以通過在他們生產的區塊中包含、重新排序、插入或忽略交易來獲得的額外利潤.
1900/1/1 0:00:00人民網首爾6月11日電韓國金融委員會稱,今年第一季度虛擬貨幣總交易額已超去年全年。據悉,韓國主要虛擬貨幣交易平臺超過10家,但實名交易的僅有4家.
1900/1/1 0:00:00MIQDigital的一份新報告顯示,2021年美國夏威夷和加利福尼亞州對加密貨幣的需求增長最高.
1900/1/1 0:00:00在NFT的市場上,我們看到一些早期的持有者收益很高,但大多數后期進入者難以獲利。相對而言,對于多數加密用戶來說,NFT市場是一個進入門檻較高的領域.
1900/1/1 0:00:00一排排比特幣礦機釋放的熒光熄滅,6月19日晚,四川境內的比特幣礦工關機視頻在幣圈人的社交網絡中流傳,借著「Bye」的背景配樂訴說無奈.
1900/1/1 0:00:00經過十年歷程,比特幣終于收獲了全球數千萬人的共識。比特幣的支持者們通常將之比喻為數字黃金,是一種簡單持有的避險資產.
1900/1/1 0:00:00