区块链 | IPFS:IPNS(秒懂版)

🦊原文:IPNS - olivida.eth.limo

🦊写在前面:本文属于搬运博客,自己留存学习。



正文

IPNS 是 IPFS 生态中的一个重要组件,全称是 InterPlanetary Name System,一个去中心化的类似域名的系统。

这里是 IPNS 的官方介绍:

内容寻址是 IPFS 找到内容的最基础的方式。

但这会导致一个问题:由于 CID 本质上就是内容的 hash,因此如果内容本身发生了任何变化,那么 hash 也会跟着改变。如果我们为了提高可读性而为 CID 绑定了一个 ENS 的话,那么每更新一次博客就需要去烧 gas 以重新设置该 ENS 的 Content Hash。考虑到现有的 gas 费用,这实在是太贵了。

ENS 主要用于将 Web3 上的复杂标识符,如加密钱包地址、哈希和元数据,转换为之后可在以太坊区块链上注册的可读名称 —— 引用
由于 CID 是一串复杂标识符,因此作者为它绑定了一个 ENS 以提高可读性。此处的 CID 是作者博客的 CID,每次更新博客内容后 CID 都会改变,因此每次都需要为 ENS 重新设置更新后的 CID,而这将导致 gas 消耗。

而 IPNS 可以解决这个问题。每一个 IPNS 类似加密货币的钱包,会有一对 p u b l i c   k e y \mathsf{public\ key} public key p r i v a t e   k e y \mathsf{private\ key} private key

  • p u b l i c   k e y \mathsf{public\ key} public key 就是 IPNS 的对外地址;
  • p r i v a t e   k e y \mathsf{private\ key} private key 可以用来修改这个对外地址所对应的 CID;

因此,当你绑定一个 IPNS 作为一个 ENS 的 Content Hash 时,完整的链路是这样的:

ENS --> IPNS --> CID

其中,ENS 到 IPNS 这层的绑定,会需要一次性的 gas 费。而 IPNS 到 CID 这层的绑定,是免费的。

为什么需要为 IPNS 绑定 ENS?答:你看到后面就会发现,IPNS 也长得很离谱,没有什么可读性。

这样我们就可以实现用 IPFS 更新内容之后,ENS 上的网站也就能够动态更新,同时只需要消耗一次性的 gas 费。

个人理解:一次性的 gas 费是指为 IPNS 绑定 ENS 时的消耗,后续都不再需要消耗 gas 费。




比如本站的 IPNS 地址是:

k51qzi5uqu5dgbfw2poynnynor8h9kqqoxmzdrxy4h4wnzx1x5p4n40ijtosxk

然后绑定到了 olivida.eth 这个 ENS 域名上。

在所有支持 IPFS + ENS 生态系统的应用中,你可以使用上面的 IPNS 地址或者 ENS 找到同样的内容:

在这里插入图片描述

上面这两个链接是真的打得开,可以自己试一下🤠



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值