原文標題:《對DFINITY的去中心化身份、賬戶與錢包介紹開發者能如何利用?》
6月3號,ICPLeague聯合社區開發者舉辦了第二期的開發者電話會,探討了DFINITY的底層賬戶結構,以及上層去中心化身份認證的方式,介紹了兩者的聯系方式。點擊“閱讀原文”可以查看視頻回放。
本期亮點:
DFINITY的賬戶與身份是兩個系統,其底層依然是加密原生的公鑰/私鑰/地址的賬戶,但在上層建立了去中心化身份系統;
身份與賬戶并不耦合,賬戶寫在鏈的底層,而身份是鏈上運行在NNS子網上的智能合約,通過合約與賬戶建立了聯系;
賬戶更像是銀行卡,而身份更像是綁定了銀行卡的支付寶,能方便地使用DFINITY的dapp;
身份系統的目的是為了幫助用戶更好地管理賬戶,避免用戶直接接觸私鑰;
在使用DFINITY的身份登陸其他DApps時,如果DApps相關代碼更新,容易丟失對這個DApps的子賬戶信息;
開發者可以結合官方的命令行賬戶錢包實現客戶端/網頁錢包,或者基于互聯網身份系統實現web3邏輯下的業務,比如個人存儲、鏈上分身、數據集市。
韓國檢方要求國際刑警組織對Do Kwon發布紅色通緝令:金色財經報道,韓國檢察官駁斥了Du Kwon聲稱他沒有在逃的說法,并要求國際刑警組織對Terraform Labs的聯合創始人發出紅色通緝令,國際刑警組織的紅色通緝令呼吁全球執法,可以防止個人獲得簽證,限制跨境旅行,并“在引渡、自首或類似法律行動之前臨時逮捕一個人”。[2022/9/19 7:06:02]
賬戶地址
一般用戶在互聯網身份的包裝下并沒有接觸到轉賬地址,但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/”。這是其與以太坊賬戶體系一個很大的不同。
報告:歐洲新加密法規對DeFi行業構成特定風險:據行業監管顧問XReg Consulting稱,歐盟委員會新提出的加密貨幣法規對DeFi行業構成了特定風險。9月24日,歐盟委員會通過了擬議中的加密資產市場(MiCA)法規,旨在通過對加密資產發行者提出一系列義務,加強該行業中的消費者和投資者保護。該條例規定,加密資產發行人必須作為一個法人實體在歐盟運營加密服務。XReg在10月5日的一份報告中指出,這一特殊要求可能代表了DeFi項目的一個重大挑戰,因為DeFi代幣的發行者“有時無法識別”。XReg指出,MiCA可普遍促進消費者和投資者保護、市場完整性和金融穩定。不過,DeFi行業最終可能會遇到“重大的、不可調和的監管挑戰和可能存在的問題,至少在歐洲是這樣”。(Cointelegraph)[2020/10/6]
在nns.ic0.app下的Accounts下能看到這些賬戶地址,可以直接用于ICP的轉賬,但目前還沒有易用的加密原生錢包。
但官方其實開源了這類錢包的實現方法,在keysmith庫中實現了一個命令行錢包
互聯網身份
DFINITY在賬戶系統外又開發了一套身份系統稱之為“互聯網身份”,以下簡稱II。II是部署在DFINITY的一個智能合約,智能合約的狀態存儲中對地址與身份建立了映射。
動態 | Coinbase首席執行官對DeFi持肯定態度:在過去的幾個月中,隨著提供DeFi服務的平臺和產品數量的增加,DeFi一直在掀起波瀾。根據Coinbase首席執行官Brian Armstrong的說法,就今年的增長而言,DeFi圖表已開始出現“指數曲線”。盡管受到網絡擴展性問題的困擾,以太坊的DeFi環境迄今為止一直是最受歡迎的應用程序環境之一。然而,Coinbase Custody首席執行官Sam McIngvale稱,有許多新進入者涌入該領域,這導致了替代方案的誕生,這個領域主要由Ethereum 和Compound Finance主導。(AMBCrypto)[2019/10/27]
注意的是,身份和錢包賬戶是兩回事。以太坊上錢包地址就是你使用應用的身份,但是在DFINITY中,身份是與錢包賬戶分開,兩者不耦合的,但來自同一源頭的公私鑰對,而且可以互相演化的。
在使用II時,用戶會獲得名為“usernumber”的一串數字,這其實是II合約內部的一個索引。這串數字來自一個63位的字符串,一般五個一組用“-”隔開,被稱為“PrincipalID”。
用戶身份其實是II智能合約中的一個實例化對象,II是DFINITY推動的標準,目前DFINITY上的應用都可以通過引入幾行代碼,來允許用戶使用II標準登陸應用。II是一種中心化身份的標注,使用了具備高度安全性的雙要素驗證;并能在使用不同dapp時為用戶創建衍生身份,來保護用戶隱私防止被跨應用追蹤賬戶;并能更方便的管理多賬戶,無需賬戶密碼,也無需基礎學習門檻高的私鑰,通過面部識別、指紋掃描或YubiKey等安全終端輕松地使用。
動態 | Coinbase錢包添加了對Dogecoin支持:美國主要的加密貨幣交換Coinbase宣布,Coinbase錢包提供了對Dogecoin的支持。從今天開始,你可以直接在Coinbase錢包應用程序中存儲狗狗幣(DOGE)。[2019/5/2]
首先介紹一下WebAuthn,符合了W3C的Web驗證的標準,也就是除去賬戶密碼/私鑰驗證之外,還需要安全硬件的驗證,這是為了避免釣魚網站與惡意軟件的侵害。因此在使用II時,用戶必須具備安全硬件,這也是困擾早期用戶的一個門檻,但目前我們的大部分手機、筆記本都裝載了安全芯片,也可以外接YubiKey。
WebAuthn驗證流程:
用戶啟動登錄過程后,DFINITY的II智能合約將生成一個隨機質詢并將其發送到用戶的瀏覽器;
然后瀏覽器將質詢轉發到安全設備,用戶在安全設備上進行交互驗證,如指紋解鎖、面部識別或輕觸YubiKey;
完成驗證,使用保存在安全設備中的私鑰簽名;
然后將驗證后簽名的質詢發送回II智能合約,II智能合約進行驗證,完成登陸。
現場 | 羅玫:學術研究中對Decentralization偏悲觀:金色財經現場報道,在Cobo舉辦的2018數字資產安全高峰論壇上,清華大學經濟管理學院數字金融資產研究中心主任羅玫教授演講中分享了學術界的研究內容,目前學術研究中對Decentralization偏悲觀。在熊市情況下,每個數字貨幣項目的發展動作未能解釋目前的市場情況。對于證券法規、稅務法規、會計規則等落實應用上,國內環境相距較遠。Cryptocurrency和token的定義在慢慢模糊,在會計應用上需要更多維度的討論。
投資有風險,入市須謹慎。
本資訊不作為投資理財建議。[2018/11/13]
在我們使用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的上層搭建更多應用,比如為每一個賬戶建立獨立的存儲空間,作為數據確權的中心,或者去優化多身份系統,從多身份中衍生出交互的多樣性。
去中心化金融是加密資產領域中最熱門的話題,被吹捧為通過代幣讓人發財的方式,也是一種可以把你存放在冷錢包中的加密貨幣拿出來使用的工具,用來賺取高昂利率的利息.
1900/1/1 0:00:00花5000美元買一雙「虛擬球鞋」,但這雙球鞋在現實中摸不著,也穿不了,買家只有通過定制的AR濾鏡,才能在虛擬世界體驗「穿上」它的樣子.
1900/1/1 0:00:00"2021年,行情將DeFi推到了一個新的高度,而在DeFi當中,智能合約起著關鍵作用。" 什么是智能合約 "智能合約"這一術語是1994年由著名密碼學家尼克薩博首次提出的,它是通過編程來準確高.
1900/1/1 0:00:00來源|?ETH中文站 作者|VitalikButerin 大多區塊鏈應用最有價值的屬性之一就是“免信任”(trustlessness).
1900/1/1 0:00:00導讀:比特幣算力以及圍繞其構建的基礎設施已加速向海外轉移,比特幣算力的去中國化進程已然開啟。2021年6月18日,四川省有關部門正式下發通知,要求發電企業自查自糾,立即停止向虛擬貨幣“挖礦”項目.
1900/1/1 0:00:00本文來自加密投融資的數據服務商DoveMountainData,Dove每周邀請創始人和投資者分享他們對投融資趨勢和戰略的想法.
1900/1/1 0:00:00