# NFT 的数据存储

By [un.Block](https://paragraph.com/@un-block) · 2021-10-09

---

> NFT 不会丢失，那 NFT 里面的数据会丢失吗？

相信大家已经对 NFT 不陌生了，它是基于 [_ERC-721_](https://link.zhihu.com/?target=https%3A//eips.ethereum.org/EIPS/eip-721) 或 [_ERC-1155_](https://link.zhihu.com/?target=https%3A//eips.ethereum.org/EIPS/eip-1155) 的非同质化代币（Non-Fungible Tokens）。NFT 目前被广泛应用于加密数字艺术品领域，视觉艺术品 NFT 是最受欢迎的，因为它最直观，只要拥有就能看到。

[_CryptoKitties_](https://link.zhihu.com/?target=https%3A//www.cryptokitties.co/) 是一个在 Ethereum 上的热火朝天的 NFT 游戏，谁不想收藏一只好看的猫咪呢？

### **不安稳的数据**

NFT 有着以下特点：

1.  可证明的真实性
    
2.  所有权
    
3.  可转让
    

这些特性保证了我们的 NFT 藏品是属于我们且独一无二的，但我们的画、我们的猫的图像并没有存储在 NFT 中，NFT 元数据里只存放着获取图片内容 URL，这个 URL 可以是任何类型的，只要能获取到图片文件即可，数据的URL被指向区块链上的NFT。（你可以把它理解为我们日常使用的“图床链接”）。

假如我们把数据托管在传统的中心化云服务器，例如 Amazon AWS，某一天服务器掉线了，或是到期忘记缴费，云服务器里的数据去无影无踪，那么我们的“名画”也会随之消失。这个时候，我们打开钱包后可能看到的是一片空白，因为找不到图片了！

![](https://storage.googleapis.com/papyrus_images/851a25d544aa071927b2547773a1a76745c85cdbf8e88f1df4929369c14438c1.jpg)

还有另外一个问题，传统的 URL 背后的数据是可以改变的，这意味着，NFT 所代表的加密艺术作品可以在无人知晓的情况下被改变，这违背了 NFT 的初衷。

我们必须使用更加安稳和可靠的方式来存储我们的数据 ⬇️

### **星际文件系统 IPFS**

![](https://storage.googleapis.com/papyrus_images/f1ce17b52cecf62a6ad12fd484705dad03b022241ce1b68acff68791704564e0.jpg)

既然中心化的数据存储方式不可靠，那我们就使用**星际文件系统 (Interplanetary File System) IPFS**，它是一个分布式系统，用于存储和访问文件、网站、应用程序和数据。

IPFS 的介绍 [_What is IPFS?_](https://link.zhihu.com/?target=https%3A//docs.ipfs.io/concepts/what-is-ipfs/%23participation)

使用 IPFS，我们可以为数据创建内容可寻址的数据 Hash，也被称**为内容标识符 (CID)** ，每一份内容都有自己的对应的 Hash 值。

CID 确保了我们能从 IPFS 中获取到指定数据，且数据是未被篡改的。获取数据时，我们只需要向 IPFS 网络提交数据 CID，IPFS 就会自动向全网络查找数据，假如某一个节点有相应数据，就会将数据发送给我们。接受到数据后，IPFS 会再次计算获取到的数据的 CID 以进行校验，确保我们拿到的数据是我们想要的。假如有人向我们提供虚假数据，IPFS 将发出警告。

### **谁来存数据**

> 你可以把你的世界名画带回家，也可以付费存在画廊

理论上来说，谁铸造 NFT，谁就有责任保管好 NFT 对应的数据内容。当 NFT 所有权发送转移的时候，保管的责任也应该转移到新主人手中。当然，交易的时候旧主人可以向新主人承诺保管数据一段时间。这和我们实际生活中的艺术品管理非常相似。

新主人有义务将 NFT 数据存储在自己的 IPFS 节点中，这个操作也很简单，只需要保存一份 NFT 数据的副本即可（通过 CID 就可以获得数据）

当然，现实生活中，我们买了名画，不一定都往家里带，大部分人选择“艺术品托管”服务，NFT 也一样。同理，我们不一定要把所有东西都往自己的 IPFS 里放，区块链世界中也有数据托管服务，只需要支付费用，你就能买到数据托管空间和时间。

### **相关阅读：**

*   [_Best Practices for Storing NFT Data using IPFS_](https://link.zhihu.com/?target=https%3A//docs.ipfs.io/how-to/best-practices-for-nft-data/%23types-of-ipfs-links-and-when-to-use-them)
    
*   [_Who Is Responsible for NFT Data?_](https://link.zhihu.com/?target=https%3A//medium.com/pinata/who-is-responsible-for-nft-data-99fb4e8147e4)

---

*Originally published on [un.Block](https://paragraph.com/@un-block/nft-2)*
