区块链 | IPFS:CID

打印 上一主题 下一主题

主题 1694|帖子 1694|积分 5082

原文:Anatomy of a CID
写在前面:本文属于搬运博客,自己留存学习。


1 CID

在分布式网络中与其他节点互换数据时,我们依赖于内容寻址(而不是中心化网络的位置寻址)来安全地定位和辨认数据。
CID 规范起源于 IPFS,如今以 Multiformats 形式存在,并支持包罗 IPFS、IPLD、libp2p 和 Filecoin 在内的体系。尽管我们在教程中会分享一些 IPFS 的例子,但本教程实际上是关于 CID 自身的布局,它作为这些分布式信息体系的焦点标识符,用于引用内容。
内容标识符(CID)是一种自形貌的内容寻址标识符。
   自形貌是指,标识符可以或许自行表达其寄义大概数据类型。例如 HTTP 中的 URL就是一个自形貌的标识符,因为它包罗了指向资源的信息(如文件路径),并且基于协议和布局,用户和体系可以理解其寄义。
  CID 不指示内容存储的位置,而是基于内容本身形成一种所在。CID 的长度取决于内容的哈希,而不是内容本身的巨细。由于在 IPFS 中大多数内容都使用 sha2-256 进行哈希处置惩罚,因此大多数 CID 都具有相同的巨细,即 256 位或称 32 字节。
例如,如果我们在 IPFS 网络中存储 土豚 的图像,它的 CID 将如下所示:
  1. QmcRD4wkPPi6dig81r5sLj9Zm1gDCL4zgpEj9CfuRrGbzF
复制代码
  访问方式:https://ipfs.io/ipfs/QmcRD4wkPPi6dig81r5sLj9Zm1gDCL4zgpEj9CfuRrGbzF

  创建 CID 的第一步是使用 加密算法 转换输入的数据。具体来说,是将任意巨细的输入映射到固定巨细的输出。如下图所示:

这种转换称为 加密哈希择要(cryptographic hash digest)或简称为 哈希
   个人理解:不管是文本、图片还是视频,它们在计算机中都是以二进制的形式进行存储的,即一个 01 字符串。而哈希函数要做的事,就是将不同文件不同长度的 01 字符串转换为固定长度的 01 字符串。
  使用的 加密算法 必须生成具有以下特征的哈希:


  • 确定性:对于任何给定的输入数据,加密算法必须始终产生相同的输出哈希,确保一致性。
  • 抗碰撞性:即使输入数据发生微小变革,也应导致完全不同的哈希值,以包管数据的唯一性。
  • 不可逆性:从哈希值应当无法反推出原始数据,确保数据的隐私和安全。
  • 唯一标识:每份文件都应该有一个独特的哈希值,确保数据的不可窜改性和可追溯性。
当我们使用内容所在去获取数据时,我们可以包管看到数据的预期版本。这与中心化网络上的位置寻址有很大的不同,在中心化网络中,给定所在(URL)处的内容大概会随时间变革。
   说明:在去中心化网络

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

羊蹓狼

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表