當我們在分散的Web上與對等體交換數據時,我們依靠內容尋址來安全地定位和識別數據。本文中,了解重要的分散Web概念的基礎知識,如內容尋址、加密哈希、內容標識符和與對等方共享。
1、什么是CID?
CID規范起源于IPFS,現在采用多格式,支持廣泛的項目,包括IPFS、IPLD、libp2p和Filecoin。本部分將介紹CID本身的解剖,這些分布式信息系統都用作引用內容的核心標識符。
內容標識符是自描述內容尋址標識符。它不指示內容的存儲位置,但它基于內容本身形成一種地址。CID中的字符數取決于基礎內容的加密哈希,而不是內容本身的大小。由于IPFS中的大多數內容都是使用進行哈希處理的,因此您遇到的大多數CID大小相同。這使得它們更易于管理,尤其是在處理多個內容時。sha2-256
例如,如果我們在IPFS網絡上存儲了aardvark的圖像,其CID將看起來像這樣:
Qmcrd4wkppi6dig81r5slj9zm1gdcl4zgpej9cfurrgbzf
創建CID的第一步是使用加密算法轉換輸入數據,該算法將任意大小的輸入映射到固定大小的輸出。此轉換稱為加密哈希摘要或只是哈希。
使用的加密算法必須生成具有以下特征的哈希:
1、確定性:相同的輸入應始終生成相同的哈希。
2、不相關:輸入中的小變化應生成完全不同的哈希。
數字美元項目將啟動試點項目,以探索美國中央銀行數字貨幣的設計和使用:數字美元項目(Digital Dollar Project,DDP)將與感興趣的利益相關者和DDP參與者,在未來12個月內推出至少5個試點項目,以衡量美國中央銀行數字貨幣(CBDC)或“數字美元”的價值并為其未來設計提供參考。
據悉,DDP于去年成立,是埃森哲(NYSE:ACN)與數字貨幣基金會之間的非營利合作伙伴關系,旨在鼓勵就美國CBDC的潛在優勢進行研究和公開討論。
埃森哲正在為試點項目提供第一階段資金,該項目將探索、分析和確定技術和功能需求;評估收益和突出挑戰;測試應用和方法;并考慮零售和批發商業利用的潛在用例。DDP將向公眾公布試點的結果和見解,供學術研究和國會審議政策時使用。(BusinessWire)[2021/5/3 21:20:35]
3、單向:從哈希中重建數據應該是不可行的。
4、唯一:只有一個文件可以生成一個特定的哈希。
請注意,如果我們在aardvark圖像中更改單個像素,我們的加密算法將為圖像生成完全不同的哈希值。當我們使用內容地址獲取數據時,我們保證會看到該數據的預期版本。這與集中式Web上的位置尋址大不相同,其中給定地址上的內容可能會隨著時間而變化。
加密哈希不是IPFS所獨有的,而且有許多散列算法,如、和、不再安全等。IPFS默認情況下使用sha2-256,但CID幾乎支持任何強加密哈希算法。sha2-256blake2bsha3-256sha3-512sha1md5
聲音 | 光大銀行楊兵兵:區塊鏈在銀行業的應用探索有五個值得關注的方面:12月7日-8日,由中國科學院學部主辦,中國信息通信研究院等單位聯合支持的“區塊鏈技術與應用”科學與技術前沿論壇在深圳舉行。在8日上午的區塊鏈金融專題論壇上,光大銀行首席業務總監兼數字金融部總經理楊兵兵在演講中表示,區塊鏈在銀行業的應用探索有五個值得關注的方面:一是合法合規,包括交易及信息前置合規檢查;集成鏈下合規服務;嚴格依法依規發展,特別是涉及跨境、融資和數字貨幣等方面。二是基礎真實性,包括關注上鏈信息本身的質量,減少欺詐風險;結合5G、物聯網等技術,推進三流合一;鏈上與鏈下結合,通過鏈下中心化機構驗證真實性。三是新型風險,包括智能合約等底層創新領域,建立代碼審查機制;新系統建設及數據遷移加強安全保障;加強合作方的操作風險識別。四是準入機制,包括賬戶實名注冊機制;鏈上賬戶與鏈下身份管理系統集成。五是數據安全,包括加強數據治理體制機制建設;數據訪問隔離及隱私保護;嚴格執行數據安全方面的相關規定。(巴比特)[2019/12/8]
2、多哈希
有時,散列算法可能被證明是不安全的,這意味著它不再符合我們前面定義的特征。這種情況已經發生了。隨著時間的推移,其他算法可能不足以用于IPFS和其他分布式信息系統中的內容尋址。因此,為了支持多個加密算法,我們需要能夠知道使用哪種算法來生成特定內容的哈希。
那么,我們該怎么做呢?為了支持多哈希算法,我們使用多哈希。
聲音 | 英國議員Margot James:英國政府在探索區塊鏈技術的使用:據Blokt報道,近日在倫敦區塊鏈峰會上,英國議員、英國數字和創意產業部長Margot James在題為“利用區塊鏈的變革力量”的主旨演講中介紹了英國公共部門采用區塊鏈技術的一些最新優秀案例。英國長期以來一直歡迎區塊鏈領域的創新,一些區塊鏈行業最有希望的公司選擇了倫敦。Margot James還簡要談到了Facebook的Libra,強調了一家倫敦開發公司據稱在該部署中發揮的作用。 他還分享了英國政府2000萬英鎊創新基金GovTech的細節,該基金旨在激勵英國科技公司為公共部門問題提出新的解決方案。他評論稱,該基金也適用于通過分布式分類賬技術提供創新的區塊鏈公司。然而,他注意到,英國政府只是在探索區塊鏈技術的使用,而不是加密貨幣,許多政府和監管機構仍然非常謹慎地看待加密貨幣。[2019/7/3]
多哈希格式
多哈希是一種自描述的哈希,它本身包含元數據,描述其長度和生成它的加密算法。多格式CID是面向未來的,因為它們使用多哈希來支持多個哈希算法,而不是依賴于特定的哈希算法。
多哈什遵循模式。從本質上講,"原始哈希"的前綴是應用的哈希算法和哈希的。TLVtype-length-valuetypelength
1、type:用于生成哈希的加密算法的標識符-請參閱所有標識符的多代碼表sha2-256180x12
2、length:哈希的實際長度sha2-256256
現場 | 元界陳浩:區塊鏈自主數字身份目前正處探索階段:金色財經現場報道,在今日MSUP舉辦的全球區塊鏈技術案例峰會上,開源公鏈元界CTO陳浩在演講中提到,互聯網個人身份存在四個問題: 用戶在平臺上傳數據的所有權究竟歸誰;盜竊丟失,托管在中心化系統中的數據安全性不可控;重復不兼容,在不同平臺有不同賬戶;欺詐,比如羊毛黨等。
他認為,區塊鏈能夠登記并統一身份,打通不同平臺的身份賬本。以太坊ERC725標準征求意見稿中,曾講到區塊鏈身份概念。不過,基于區塊鏈的自主數字身份目前仍處于探索階段。[2018/9/8]
3、value:實際哈希值
為了將CID表示為壓縮字符串而不是普通二進制,我們可以使用基礎編碼。
首次創建IPFS時,它使用編碼創建看起來像這樣1的CIP:10base58btc
QmY7Yh4UquoXHLPFo2XbhXkhBvFoPwmQUSa92pxnxjQuPU
多哈希格式和編碼啟用了CID的第一個版本,其初始字符仍然很容易發現。base58btcCIDv0Qm...
然而,隨著時間的推移,人們開始懷疑這種多哈希格式是否足夠:
1、我們怎么知道使用什么方法來編碼數據?
2、我們怎么知道使用什么方法來創建CID的字符串表示形式?我們會一直使用嗎?base58btc
為了解決這些顧慮,有必要對下一個版本的CID進行演化。
動態 | 巴克萊銀行贊助黑客馬拉松探索衍生品合約處理:據cointelegraph消息,英國投資銀行巴克萊銀行于8月9日發布公告稱,正在贊助黑客馬拉松尋找最佳區塊鏈解決方案以提高衍生品合約處理效率。在為期兩天的DerivHack黑客馬拉松中,參與者將有機會實施他們的想法并將ISDA通用域模型(CDM)應用于分布式賬本技術。該活動的最終目標是找到在衍生品合約的交易后處理中使用案例的方法。根據公告,巴克萊將制定具有挑戰性的案例來模擬衍生品市場,例如對交易后交易處理的改革、提高效率的步驟、以及在ISDA CDM中提供樣本交易數據以實施它們。[2018/8/10]
3、CIDv1:多代碼前綴
CIDv0使用多哈希支持多個哈希函數。這意味著我們可以使用不同的哈希算法成功生成特定內容的哈希,以后能夠使用此哈希識別內容。
但是,當我們試圖讀取數據本身時,我們怎么知道使用的編碼方法?它可以編碼與CBOR,原型,普通JSON等。若要解決此問題,請引入另一個唯一標識所用編碼方法的前綴。
多代碼前綴指示對數據使用哪種編碼。
多碼c支持許多不同類型的編碼,每個編碼都有自己的短編解碼器標識符,如完整表所示。
在上面的示例中,我們可以看到使用編解碼器編碼的數據如何在我們的CID中表示。是許多不同類型的IPLD編解碼器之一。由于IPFS始終對數據使用這些IPLD格式之一,因此IPFSCID中的多代碼前綴將始終是IPLD編解碼器。dag-pbdag-pb
但是,需要注意的是,多代碼不僅由IPFS和IPLD使用。除了多哈希和其他一些自描述協議一樣,它是多格式項目的一部分,該項目從IPFS中剝離出來,現在支持各種各樣的其他項目和協議,包括我們在這里學習的CID規范。
CIDv1:版本前綴
現在,我們添加了多代碼,我們的版本1CID包含以下字段:
但是,如果您還記得前面的課程,版本0CID僅包含部件,那么我們如何區分不同版本的CID?你猜對了,更多的前綴!
現在我們的CID如下所示:
表示CID的版本。
4、CIDv1:多基前綴
因此,現在我們的CIDv1在二進制給我們的信息:
由于二進制CIP不是很人性化,我們可以以字符串形式表示這些二進制CID。例子:
bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi
在二進制格式和字符串格式之間轉換數據需要基本編碼,因此在使用字符串CD時,我們了解應用于二進制數據的基本編碼類型非常重要。但是,我們如何識別這一點呢?
哈希始終使用進行編碼。這意味著我們可以安全地解釋哈希值,假設它們正在使用。但是,由于環境限制,我們還需要支持其他基本編碼的能力。為此,我們可以再加一個前綴!
CIDv0base58btcCIDv0base58btc
5、多基前綴
多基前綴表示在字符串格式和二進制格式之間轉換CID時使用的基本編碼,僅在CID的字符串形式中使用:
讓我們以字符串形式檢查兩個CID示例:
我們知道第一個是,因為它以開頭。從0開始的所有哈希都可以安全地解釋為版本0的CID。
CIDv0Qm...Qmbase58btc
第二個示例以開頭的base編碼前綴標識符,默認情況下,大多數IPFS實現都使用該標識符。bbase32
有關標識符的完整列表,請參考下圖。
6、一個哈希,多個CID版本
您可以將任何IPFSCID粘貼到方便的CID檢查器中,以可視化其所有前綴及其表示內容。
我們將使用CIDv0和CIDv1格式查看此工具的一些結果。
示例1:CIDv1
bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi
第一個示例是版本1CID。
查看CID檢查器工具的結果,我們可以看到該工具能夠為我們分析的幾個部分:
1、HumanReadableCID:分解Cid的每個部分,以便我們人類易于閱讀
2、Multibase:是基的標識符,在這種情況下,對于。codebbase32
3、Multicodec:是編解碼器的標識符,在這種情況下,IPLD格式code0x70dag-pb
4、Multihash:將多哈希分解為使用的哈希算法的代碼,哈希的長度,以及內容哈希本身。18sha2-256
從"人類可讀CID"細分中,我們可以看到在添加適當的CIDv1前綴之前,內容的原始哈希是。C3C4733EC8AFFD06CF9E9FF50FFC6BCD2EC85A6170004BB709669C31DE94391A
示例2:CIDv0
QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR
此版本0CID顯示了一些不同的結果:和都被列為"隱式"。由于版本02D沒有這些前綴,因此它們始終假定為和分別。
multibasemulticodecbase58btcdag-pb
在標簽下,我們看到:這是相同的CID從第一個示例!CID檢查器為我們提供了從CIDv0轉換為CIDv1的轉換。
Base32CIDV1bafybeigdyrzt5sfp7udm7hu76uh7y26nf3efuylqabf3oclgtqy55fbzdi
另請注意,"人類可讀CID"的末尾在此CIDv0示例中與CIDv1示例中完全相同:。C3C4733EC8AFFD06CF9E9FF50FFC6BCD2EC85A6170004BB709669C31DE94391A
為什么?這兩個CID指向相同的內容。基本上,它是在CID規范的兩個不同版本中表示的相同哈希。C3C4733EC8AFFD06CF9E9FF50FFC6BCD2EC85A6170004BB709669C31DE94391A
轉換CID版本
您可以將任何前綴轉換為,因為隱式前綴在變為顯式。但是,由于支持多個編解碼器和多個基,并且不支持,因此并非所有代碼都可以轉換為。實際上,只有具有以下屬性的才能轉換為:
CIDv0CIDv1v0v1CIDv1CIDv0CIDv1CIDv0CIDv1CIDv0
1、multibase=base58btc
2、multicodec=dag-pb
3、multihash-algorithm=sha2-256
4、multihash-length=32
為了驗證這一理論,您可以在此處查看我們心愛的aardvark圖像,該映像托管在IPFS網絡上:https://ipfs.io/ipfs/QmcRD4wkPPi6dig81r5sLj9Zm1gDCL4zgpEj9CfuRrGbzF
1、打開瀏覽器中的鏈接,從URL的末尾復制CID(QmcRD4wkPPi6dig81r5sLj9Zm1gDCL4zgpEj9CfuRrGbzF)
2、在新的瀏覽器窗口中,將其粘貼到CID檢查器工具中,并查找屏幕底部顯示的等效CIDv1值
3、回到aardvark選項卡中,將CID替換為原始URL中轉換后的CID并刷新頁面v0v1
你應該看到我們的阿爾德瓦爾克相同的圖像。
編輯:星際視界IPFSNEWSSue
2021年是DCEP普及年。而要普及,銀行的數字人民幣錢包必須支持更多的銀行卡才行。2020年的DCEP進展請看此前金色財經的報道“一文讀懂DCEP的2020年”.
1900/1/1 0:00:00據Coindesk消息,加密貸款機構Cred仍將控制其即將破產的業務。在周五舉行的初步聽證會上,美國特拉華州破產法院法官JohnDorsey否決了任命破產法第11章受托人監督Cred重組的動議.
1900/1/1 0:00:00據中華人民共和國教育部官方網站消息,作為“漢語盤點2020”活動重要組成部分,12月16日,國家語言資源監測與研究中心發布“2020年度中國媒體十大新詞語”.
1900/1/1 0:00:00原標題:《BTC突破4萬后回落,要回落了嗎?》AnetaBTC在Cardano網絡上推出首個比特幣封裝資產cBTC:金色財經報道,Cardano網絡實現了一個重要的里程碑.
1900/1/1 0:00:00本文原發于王永利 作者:王永利前中國銀行副行長2020年10月中旬,深圳以財政出資1000萬元,以注冊成功的個人抽簽中標方式投放5萬個紅包,通過指定銀行轉換成數字人民幣.
1900/1/1 0:00:001月6日,經濟日報發文指出,盤點2020年各類資產表現,加密貨幣比特幣的漲勢稱得上“一騎絕塵”:標普500指數全年累計漲幅約16.5%,滬深300指數上漲約27.2%.
1900/1/1 0:00:00