比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > 瑞波幣 > Info

金色觀察|Spartan Labs研報:基礎SBT以及隱私性SBT的實現_區塊鏈

Author:

Time:1900/1/1 0:00:00

文/ Yong Kang Chia和Jun Hao Yap,Spartan Labs,標題:The Construction of the Soul Part 2: Implementations of SBT

這是一個由三部分組成的系列文章,介紹SBT的基礎知識、對SBT的愿景、其技術實施以及利用ZK技術的可能性。系列文章的目標是揭開SBT技術思想的神秘面紗,并提供一種實現來構建具有社會身份集成的Web3未來。第1部分討論什么是SBT及其基本特征(參閱金色此前翻譯文章“SBT基礎知識和潛在案例全解析”)。第2部分討論其基礎實現以及如何使用SBT添加隱私。第3部分將討論如何使用ZK技術來改善SBT隱私。

本文為其第2部分,將根據第一部分提出的設計指導原則談一談SBT的實現。

1、實現思路     1.1 與NFT的比較     1.2 基礎SBT           → 1.2.1 鑄幣和銷毀           → 1.2.2 鏈下存儲           → 1.2.3 驗證SBT屬性           → 1.2.4 更新 SBT 數據           → 1.2.5 基本使用SBT           → 1.2.6 SBT對隱私的需求2、具有私有數據存儲的SBT      2.1 將數據存儲在鏈上但對地址進行散列           → 2.1.1 示例用法           → 2.1.2 討論具有鏈上散列的 SBT     2.2 存儲IPFS 等第三方提供商的鏈下項目           → 2.2.1 將鏈下數據與鏈上哈希鏈接連接          → 2.2.2 鏈下秘密的風險。3、結論

金色午報 | 10月31日午間重要動態一覽:7:00-12:00關鍵詞:C羅、比特幣ETF、數字人民幣

1.曼聯球星C羅NFT交易卡將于11月在Bonhams拍賣;

2.Glassnode:比特幣ETF推動芝商所BTC期貨未平倉合約和交易量均創新高;

3.央行:數字人民幣與現金將長期并存;

4.數據:本月發生較典型安全事件超22起;

5.Solana鏈上NFT市場Solanart交易總額突破5億美元;

6.以太坊銷毀的ETH總價值突破30億美元;

7.支付和金融服務技術解決方案提供商Fiserv與數字資產平臺Bakkt達成合作;

8.北京外匯管理部開展區塊鏈平臺資本項目收入支付便利化真實性審核應用場景實地調研;[2021/10/31 6:22:56]

在本小節內容中,我們將討論SBT的實現及其利弊權衡。

既然NFT和SBT聽起來確實很相似,那么在具體實現方面,這些數據結構之間的關鍵區別是什么呢?

不可轉移性

與被設計為可交易的NFT不同,SBT在本質上應該與靈魂綁定在一起,應該是不可轉移的。

隱私保護

NFT的數據是公開的。然而,SBT項目可能希望保留其數據的私有性。

隱私可以通過各種不同方法實現。

可組合性

SBT的數據應該很容易被其他鏈上或鏈下項目讀取。

以SBT特性為指導原則,我們在Solidity中實現了SBT。(https://github.com/SpartanLabsXyz/spartanlabs-contracts/tree/main/contracts/SoulBoundToken)

我們將在下面小節內容中討論我們的實現。

金色晨訊 | 12月12日隔夜重要動態一覽:21:00-7:00關鍵詞:海南、深圳、Bitwise、以太坊2.0

1.海南省委書記:以建設“智慧海南”為契機,重點推進區塊鏈等領域科技創新;

2.深圳發布《金融行業區塊鏈平臺技術規范》地方標準,將于2021年1月1日實施;

3.Bitwise加密指數基金自推出以來已上漲72%;

4. MicroStrategy為購買比特幣籌集6.5億美元;

5. 以太坊2.0存款合約地址余額突破140萬ETH;

6. 全國首單電商平臺數字人民幣消費在京東誕生;

7.美國國稅局已將加密貨幣稅問題移至報稅表格頂部;

8.昨日交易所BTC余額減少超4.3萬枚 創2017年8月24日以來單日最大跌幅。[2020/12/12 14:58:36]

基礎SBT可以作為模板供其他希望在SBT上構建的項目使用。基礎實現不涉及隱私方面的討論,隱私相關內容將在本文的第2節中展開。

1.2.1 鑄造和燒毀

合約是這樣設計的:鑄造應由項目所有者把關。這是為了防止用戶可以鑄造任何SBT信息帶來的潛在漏洞,比如用戶會鑄造一個良好的信用評分,但這并不是項目的意圖。這個想法是,項目應該確定、驗證和鑄造與SBT相關的正確數據。

同樣,對于與地址相關聯的SBT的燒毀,我們也認為用戶不應該具備輕易刪除其數據的能力,特別是當該數據包含某個負面屬性時。用戶應該能夠提議燒毀他們的SBT,但燒毀的執行應該由項目所有者決定。

那些希望允許用戶選擇刪除數據的項目可以實現燒毀。例如,如果一個用戶出于與項目的目標不一致,想要從項目中刪除所有信息,那么他應該擁有這樣的選項。

另一個需要考慮的問題是,項目可能希望管理他們的SBT社區,并在用戶違反他們的社區管理條款、條件時刪除用戶。例如,在一個發布SBT的社區中,也許會有用戶不遵守規則并表現出不適當的行為。因此,社區可以決定是否從其項目中刪除用戶的SBT。這樣的社區可能希望進一步實現一個建議機制,以允許刪除數據的自燃建議或燒毀其他人SBT的建議。

金色晨訊 | 河北省政府常務會議:把區塊鏈納入省數字經濟“十四五”發展規劃;證券時報頭版:時刻警惕假借區塊鏈名義的違法犯罪:1.北大經濟學博士劉昌用在接受采訪時表示,應加強區塊鏈相關的經濟與法律研究和知識的普及;

2.Circle向以太坊網絡新增發1500萬枚USDC;

3.河北省政府常務會議:把區塊鏈納入省數字經濟“十四五”發展規劃;

4.?證券時報頭版:時刻警惕假借區塊鏈名義的違法犯罪;

5.證券日報刊文“發展區塊鏈技術既要積極又要穩妥”。文章稱,區塊鏈技術并非完美無瑕。全社會應對區塊鏈技術秉持客觀理性的態度;

6.今日在BitMEX用戶數據泄露后,該交易所的推特帳戶遭到了黑客攻擊;

7.以太坊正通過簡單地將區塊大小從大約每10分鐘1MB增加到大約8MB部分解決分片的許多復雜性;

8.馬耳他金融服務管理局:21家加密交易所正尋求授權在過渡期滿后繼續在當地提供服務;

9.蕪湖市跨境金融區塊鏈服務平臺首單業務成功落地;

10.兩名美國國會議員昨日在比特幣白皮書11歲生日時鼓勵基于比特幣的創新;

11.央行:網傳央行數字貨幣工作組會晤相關公司區塊鏈板塊負責人屬造謠;

12.吳忌寒:“詹克團沉默內幕:或涉侵吞公司財產”為不實新聞;

13.朱幼平:數字貨幣和區塊鏈已經成為國際競爭的新賽道;

14.最高法:積極推進區塊鏈現代科技在司法領域深度應用;

15.桐成控股更名“火幣科技控股有限公司”已正式生效;

16.BitMEX:意識到電子郵件隱私問題影響了客戶,已經確定了根本原因。[2019/11/2]

1.2.2 鏈下存儲

數據可以存儲在鏈上或鏈下。在我們的實現中,我們假設SBT的數據存儲在鏈下,由IPFS作為供應方。在我們的實現中,鏈下存儲的URI可以與數據結構“Struct Soul”中的標識符相結合。

金色財經現場報道 火幣礦池吳迪:火幣礦池致力成為EOS區塊最好生產者之一:金色財經6月6日現場報道,在“金融鏈變——火幣集團全球品牌升級發布會”上,火幣礦池吳迪說:EOS社區、EOS加速器等有希望幫助火幣礦池成為EOS區塊最好的生產者之一。具體來說,對于token持有者,擁有持續獲益的系統,有更大的機會在EOS上獲取token,有一鍵投票的便捷系統;對于DAPP開發者,他們獲取投資更加容易,能獲得優秀的技術支持、且處在更接近上線的位置;對于區塊生產者,億級的用戶投票,提供中文翻譯服務,組織定期的見面會也是很大的優勢。[2018/6/6]

項目能夠根據他們是想在鏈下還是鏈上存儲SBT屬性來調整提議結構。

1.2.3 SBT屬性驗證

其他交易對手項目應該能夠輕松檢索SBT數據。

這對于想要驗證用戶SBT屬性的交易對手來說很有用。其他項目將能夠查驗一個地址是否綁定了靈魂,并驗證該靈魂所包含的屬性。

這對于SBT與不同項目的可組合性非常重要,其他項目可能希望進行交互并驗證用戶的屬性。但是,用戶和項目可能不希望公開數據,有一些方法是可以保護數據隱私的。

1.2.4 SBT數據的更新

我們不希望用戶或其他方更新靈魂,我們希望由經許可的權威方來更新,因為我們希望對數據的更改能得到驗證。

由項目來實現合約,這樣用戶可以在鏈下提議對靈魂的更改,再由項目來驗證更改是否有效并更新鏈上更改內容。

1.2.5 基礎SBT用例

SBT的基礎實現適用于希望將數據分配給非私有用戶的項目。例如,想要獎勵白名單對NFT收藏的支持的項目可以使用基礎SBT。在未來,這類項目可以空投獎勵到這些SBT地址。

金色財經現場報道能鏈合眾、資深傳媒人鐘晶晶:在區塊鏈行業的投資就是找對的人:金色財經現場報道,在2018中國區塊鏈高峰論壇以“用什么姿態擁抱區塊鏈”的圓桌論壇上,能鏈合眾、資深傳媒人鐘晶晶表示,“對于傳統投資人而言,我得看懂這個項目才可以進行投資,在區塊鏈行業的投資就是找對的人,在區塊鏈行業的投資速度非常快,像巴菲特大佬們說比特幣沒有價值,是泡沫,我認為區塊鏈行業需要以開放的心態去擁抱,去看待。”[2018/5/20]

在之前的文章中,我們提出了如何將SBT作為識別NFT Locker的潛在用例。

例如,當NFT在TimeLock.sol中被鎖定時,Locker可能仍然希望“顯示”他們確實擁有這樣一個鎖定的NFT。然而,從開發人員的角度來看,引用鎖定的NFT是很奇怪的。因此,“靈魂綁定”代幣可以表示出用戶鎖定NFT的時間,它們可以被允許進入“hall of fame”。在解鎖時,一個不可轉移的包裝代幣需要被“燃燒”來解鎖NFT,并且Locker將不再具有“hall of fame”地位。

1.2.6 SBT的隱私需求

然而,上述的基礎SBT并沒有考慮到隱私方面的需求。

正如在前一篇文章中提到的,web3的未來必將要與你的真實身份進行一定程度的集成。因此,鏈上集成后保持個人身份的隱私是至關重要的,這樣才能保護自己免受來自惡意行為者的傷害,比如,惡意行為者可查看區塊鏈的公共數據,還原個人身份。

任何記錄在鏈上的關系都可以立即被全世界的任何人看到,而不僅僅是參與者。通過關聯SBT數據,惡意行為者可以從靈魂中還原用戶的真實身份。

例如,如果人性證明得到更廣泛的應用,保護隱私將變得更加關鍵,因為另一種景象是,我們所做的一切都將在鏈上直接與一張人臉相連。

V神在其研究文章中提出了一些可能實現的具有隱私性的SBT,可以通過鏈上存儲和鏈下存儲來實現。

在本節內容中,我們將討論SBT數據私有存儲的可能實現方式。

將數據項存儲在一個地址中,該地址是以下數據的哈希值:(1)索引、(2)收件人地址和(3)專屬于收件人的秘密。

你可以向一個接口透露你的秘密,然后它會搜索屬于你的所有可能的數據項,但沒有人會知道哪些具體項是你的,除非你自己泄密。

用戶提供的秘密將允許平臺找到與用戶的SBT相關的所有數據。

這種方法也稱為密鑰散列消息身份認證(HMAC)。它是通過對數據和共享密鑰運行加密哈希函數獲得的消息身份驗證碼。

為什么這個方法會奏效?以太坊地址由Keccak -256散列生成,并以十六進制數表示。Keccak -256散列的最后20個字節用于生成地址。

因為一個十六進制數是4位,所以我們將Keccak 256散列的最后40位作為我們的地址。我們可以在這個地址部署我們的項目。

但是,請注意,帶有隱私數據的哈希應該在鏈外執行,因為區塊鏈上的所有內容(包括私有狀態變量)都是公共的。

因此,在進行部署或鑄造時,應該只提供哈希值,而不提供隱私數據。

(上圖為如何在一個特定地址上進行用戶隱私數據布署)

2.1.1 范例

例如,Bob希望使用基于信用的借貸dApp鑄造一個SBT。

借貸平臺首先對Bob執行KYC驗證。

部署地址是由Bob的客戶ID、他的鏈上地址和他的名為“Peanut”的秘密(隱私內容)生成的。

Bob的客戶ID、地址和秘密被哈希在一起,以獲得一個用于數據部署地址的地址。

然后在部署地址鏈上部署一個包含Bob的KYC數據的SBT。

除了知道Bob秘密的人,沒有人可以查看Bob的KYC數據。

當一個項目想要查看Bob的KYC數據時,Bob需要做的就是提供他的秘密“Peanut”,這樣他們就能夠獲得Bob的所有KYC數據了。

2.1.2 關于SBT鏈上哈希的討論

優點:

該方法允許與協議輕松互操作,因為我們所需要的只是檢索數據項所需的秘密、索引和地址。

缺點:

然而,將數據項部署到特定地址是件麻煩事,而且要消耗的大量的gas費。

此外,將所有與SBT相關的數據都存儲在鏈上沒有意義,有些數據可能更適合存儲在鏈下。

更重要的是,用戶的秘密掌握在項目方手中;長期使用可能會導致泄密,類似于如今常見的密碼泄露。

正如上一節提到的,把大多數數據存儲在鏈上成本太大。因此,更好的方法是將數據鏈下存儲在第三方平臺(如IPFS或其他云服務)上。這種在鏈下存儲數據的方法非常類似于NFT,NFT的數據通常也是存儲在鏈下的。

不同之處在于,為了確保隱私,我們首先必須使用加密哈希函數(如SHA256)對URI字符串進行哈希。URI數據的哈希應該在鏈下完成,因為區塊鏈上的所有數據都是公開的,甚至是私有的狀態變量也是如此。

為了防止暴力攻擊識別包含鏈下數據的鏈接,哈希值不應該僅僅是鏈接本身的哈希值。它可以是用戶秘密的函數,與鏈下數據存儲鏈接,或者使用遞歸哈希或其他方法。這也被稱為salting(加鹽)。

下面是使用SHA256的Python實現示例:

這只是一個實現示例。還有許多其他方法可以模糊URI,例如隨機附加秘密、生成隨機秘密、peppering(加胡椒),以及使用專門為安全存儲密碼而設計的其他算法。

然后使用數據的哈希值進行SBT的鏈上部署,而不是使用數據本身。

2.2.1 連接鏈下數據與鏈上哈希鏈接

我們怎樣才能將鏈下數據與鏈上哈希鏈接連接起來呢?

對合約所有者來說,一種可能的方法是將存儲在鏈下位置的數據結構標準化。因此,SBT的所有者可以透露鏈下數據的鏈接,而項目(不一定與部署人員相同)可以哈希鏈接,以檢查它是否與鏈上哈希值相同。如果哈希值相同,項目可以進行查詢來檢索存儲在鏈下位置的數據。

為了保護用戶的秘密,對包含用戶數據的鏈接的驗證必須由可信的、安全的第三方在鏈下完成。

2.2.2 鏈下秘密風險

鏈下傳輸秘密可能使用戶暴露于漏洞和各種攻擊之下。

項目必須確保秘密傳輸的安全,并防止常見的攻擊,如回放攻擊、中間人攻擊和許多其他常見攻擊。

一旦處理SBT檢索的第三方的安全性遭到破壞,個人的秘密就會公開。

項目還應注意網絡釣魚攻擊,因為用戶可能會被提示在復制原始密碼的惡意網站上輸入密碼。

此外,證明用戶具有某種屬性的唯一方法就是公開秘密。但是,為了創建SBT的匿名組合性,使不同的協議可以檢索SBT數據,用戶應該公開必要的最小數據量。

如果項目所需的只是驗證某個屬性,那么用戶不應該透露全部秘密。用戶應該將他們的秘密向盡可能少的項目披露。

因此,我們需要考慮另一種方法,在這種方法中,項目能夠驗證用戶具有某個屬性,而用戶則不會泄露他們的秘密。

在本文中,我們基于本系列第1篇文章中介紹的設計指導原則,介紹了SBT的實現。我們實現了基礎SBT以及具有鏈上和鏈下私有存儲的SBT。然而,鏈下存儲可能并不是真正的私有,因為用戶將不得不公開他們的秘密,以證明他們擁有某種屬性。

ZK(零知識證明)技術的使用可以幫助我們減少用戶的秘密分享量,以保持他們的SBT數據真正的私有性。這就引出了本系列文章的第3篇內容,在第3篇文章中,我們將介紹使用zk-SNARK實現的SBT,在這種實現中,用戶的秘密可以保持隱藏狀態,防止受到各種方式的攻擊。

PANews

DeFi之道

成都鏈安

金色早8點

Bress

財經法學

鏈捕手

Tags:NBSBSPSBT區塊鏈nbs幣發行量bspt幣未來前景WSBT幣區塊鏈域名價格排行

瑞波幣
「純干貨」150+區塊鏈行業名詞解釋大全_比特幣

目錄 1、 Blockchain——區塊鏈2、 Block——區塊 3、 Node—一節點 4、去中心化 5、 Pow—工作量證明 6、函數加密 7、 PoS—權益證明 8、智能合約 9、時間戳.

1900/1/1 0:00:00
Foresight Ventures: meme 幣投資規律復盤

撰文:Jonas meme 幣概念已成為加密貨幣領域最受關注的投資機會之一。根據 CoinGecko 統計,meme 幣賽道約有 200-300 個項目,整體市值約 160 億美元.

1900/1/1 0:00:00
區塊鏈的價值捕獲在協議層還是應用層?在應用層的協議_ULTI

作者:北辰 2016年, 頂級風投USV的Joel Monegro發表了《Fat-protocols》,這是一篇非常經典的crypto論文,對比了互聯網和區塊鏈在技術棧上的區別.

1900/1/1 0:00:00
數據分析:Uniswap3的TVL計算竟然都是錯的?_Uniswap

摘要:TVL如此重要,但我竟然發現最大的DeFi協議Uniswap V3 TVL的數據存在一些錯誤。官方的Uniswap 圖表也存在一些問題.

1900/1/1 0:00:00
Framework Ventures合伙人:加密項目Founder必須掌握的10件事_EFI

原文作者:daniel,Framework Ventures 平臺和運營合伙人編譯:MarsBit,MK每位加密貨幣創始人所需要了解的10件事.

1900/1/1 0:00:00
a16z:Web3 去中心化的框架、原則和模式_WEB3

概述 本文由 Andreessen Horowitz 的 Miles Jennings 撰寫,他是 a16z crypto 的總法律顧問.

1900/1/1 0:00:00
ads