內容尋址和CIDs

內容尋址和CIDs

  內容標識符,或CID,是IPFS網絡中指向真正數據實體的標籤。它並不表示數據內容在網絡中存儲的真正位置,他只是基於數據內容本身形成的一種表示地址的形式。無論數據內容有多大,CID的表示形式都很短。
 CID是基於內容的加密哈希。主要表現爲以下幾點:

  • 對數據做任何更改,都會產生不同的CID
  • 使用同樣的方式把同樣的內容添加的兩個IPFS節點,會產生相同的CID

 IPFS默認使用sha-256哈希算法,同時也支持多種其他算法。 Multihash項目旨在爲其他程序提供哈希算法,並允許多個哈希算法並存。(如果你好奇IPFS中的哈希類型是如何決定的,你不妨留意這個論壇)

標識符格式

 CID可以採用幾種不同的形式,具有不同的編碼基礎或CID版本。儘管文件(可變文件系統)和對象操作現在默認使用CIDv1,但許多現有IPFS工具仍會生成v0 CID。

Version 0 (v0)

 最初設計IPFS時,我們使用base58編碼的多哈希作爲內容標識符(這比更新的CID更簡單,但靈活性要差得多)。默認情況下,許多IPFS操作仍使用CIDv0,因此通常應嘗試支持v0。
 如果CID是以“ Qm”開頭的46個字符,則爲CIDv0(有關更多詳細信息,請檢查CID規範中的解碼算法)。

Version 1 (v1)

  CID v1包含一些前導標識符,這些標識符明確說明了使用哪種表示形式以及內容哈希本身。這些包括:

  • A multibase prefix,,指定用於CID其餘部分的編碼
  • CID版本標識符,指示這是哪個CID版本
  • 一個多編解碼器標識符,指示目標內容的格式-幫助人們和軟件在獲取內容後知道如何解釋該內容

 這些領先的標識符還提供前向兼容性,支持在將來的CID版本中使用的不同格式。
 您可以使用CID的前幾個字節來解釋內容地址的其餘部分,並知道從IPFS提取內容後如何解碼內容。更多詳細信息,請查看CID規範。它包括解碼算法並鏈接到用於解碼CID的現有軟件實現。

CID檢查器

 自己探索CID很容易。是否要分解特定CID的多種基礎庫,多編解碼器或多哈希信息?可以使用IPLD資源管理器中的CID檢查器或CID信息面板(兩個鏈接都使用示例CID啓動)來對不同格式的CID進行交互式細分。

更多資源

 查看以下鏈接,以獲取有關CID及其工作方式的更多信息:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章