微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

什么是 multicodec 以及它与 multihash 的关系?

如何解决什么是 multicodec 以及它与 multihash 的关系?

我对这个主题没有任何背景。

为了更好地理解它们,我阅读了:

Multihash

  • enter image description here

CIDv1: Multicodec prefix


据我所知,multihash 是用于散列(一种方式)值的算法。所以这意味着,我们无法返回(我们无法将哈希解码为值)。

问题

  1. 简单来说,我不明白什么是 multicodec 以及它是否与将哈希解码为值有关(这毫无意义)。
  2. 使用 multicodec 前缀的动机是什么?

解决方法

  1. multicodec 与解码哈希指向的值有关,如果这样更容易理解的话。别担心,没有发生魔术哈希解码;)。请记住,我们正在制作 CID,我们可以使用 CID 来查找内容。然而,我们有一个问题“我们如何解码我们刚刚检索到的数据?”,multicodec 为我们解决了这个问题。阅读From Data to Data Structures可能有助于消除一些困惑。

  2. multicodec 前缀允许 IPFS 发展以支持实际放入 IPFS 的数据的新的和不同的编码。这是指 IPLD,您实际上可以在 Links 下找到您要寻找的答案(在 Codecs 下提供有关编解码器的信息):

对于链接,我们使用 CID。 CID 是 multihash 的扩展,实际上 multihashCID 的一部分。我们只需向 multihash 添加一个编解码器,告诉我们数据的格式(JSON、CBOR、比特币、以太坊等)。通过这种方式,我们实际上可以在不同格式的数据之间建立链接,并且任何人提供给我们的任何数据链接都可以被解码,使其不仅仅是一系列字节。

CID 是一个任何人都可以实现的 standard,即使是除了需要不同数据类型的哈希链接之外对 IPLD 没有其他兴趣的人也可以使用它。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。