Multihash 簡介

買賣虛擬貨幣

本文由 FilCloud 編譯整理

訂閱英文原版 :https://tinyletter.com/ipfsnewsletter

Multihash

有時,雜湊演算法可能被證明是不安全的,這意味著它不再符合我們先前定義的特徵。這已經發生了 sha1。隨著時間的流逝,其他演算法可能證明不足以實現IPFS和其他分散式資訊系統中的內容定址。因此,為了支援多種密碼演算法,我們需要能夠知道使用哪種演算法來生成特定內容的雜湊。

那麼我們該怎麼做呢?為了支援多種雜湊演算法,我們使用 multihash。

Multihash 格式

multihash 是自描述雜湊本身包含描述其兩個長度和什麼加密演算法生成的它的後設資料。多種格式的 CID 具有永不過時的功能,因為它們使用多重雜湊來 支援多種雜湊演算法,而不是依賴特定的雜湊演算法。

多重雜湊遵循TLV 模式(type-length-value)。本質上,“原始雜湊”的字首是type所應用的雜湊演算法和length的雜湊。

  • type:所述的識別碼的加密演算法來生成的雜湊(例如的識別符號sha2-256將是180x12在十六進位制) -參見multicodec 表對於所有識別符號

  • length:雜湊的實際長度(使用sha2-256它將是256位,等於32個位元組)

  • value:實際的雜湊值

為了將 CID 表示為緊湊字串,而不是純二進位制(一系列1s和0s),我們可以使用基本編碼。首次建立 IPFS 時,它使用base58btc編碼來建立如下所示的 CID:

QmY7Yh4UquoXHLPFo2XbhXkhBvFoPwmQUSa92pxnxjQuPU

Multihash 格式和base58btc編碼啟用了 CID 的第一個版本,現在稱為版本0(CIDv0),並且其初始Qm...字元仍然易於發現。

但是,隨著時間的流逝,人們對這種多雜湊格式是否足夠感到懷疑:

  • 我們如何知道使用什麼方法對資料進行編碼?

  • 我們如何知道使用什麼方法來建立 CID 的字串表示形式?我們會一直使用base58btc嗎?

為了解決這些問題,有必要升級到CID的下一個版本。在接下來的課程中,我們將探討在規範中新增了哪些內容,以使我們成為當前的CID版本:CIDv1

非常感謝您對 IPFS&Filecoin 專案的持續支援。我們很高興繼續與您一起,為人類資訊建立一個強大的,去中心化和高效的基礎。

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;