Wyvern 订单匹配协议

本文讨论 OpenSea 中使用的 Wyvern 协议 的订单匹配过程,该过程主要是用户和 Wyvern Exchange Contract 的交互。

匹配过程围绕 买/卖双方的订单 展开。卖方创建销售订单,以固定价格或者竞拍的方式,将 NFT 挂出去;买方创建购买订单,并将卖方创建的销售订单一起,发给交换合约 Wyvern Exchange Contract。交换合约将对订单校验,校验通过后,完成两个转移:

  • 支付费用转移;
  • NFT 产品转移。

    ...More

Solidity-引用类型

所谓引用类型,实际上是提供了一个指向内容的指针赋值给引用类型的变量。这么做的原因,在于其数据内容本身就是复合类型的,不像内置的基础类型,是可以直接表达出来的。

对于引用类型的变量,在进行参数传递或者变量赋值的时候,会存在这样一个问题:传递过去的到底是这个值的拷贝还是这个值的引用。其造成的影响就是,修改传递过去的内容是否会对原内容产生影响。

因此,本节讨论的主题就是:引用类型有哪些?影响其深拷贝的因素有哪些?删除时需要注意什么。

...More

IPFS 垃圾回收和持久化存储

IPFS 节点默认将其 存储的数据 当作一种缓存。这就意味着它其实并不保证数据的持久化。资源总是有限的,是需要维护的,在条件具备的情况下,它会进行垃圾回收。

但同时,有些数据我们是不希望按照 gc 规则回收的,这是就需要将这些数据 pin 在节点上。

...More

ERC 721 协议解析

ERC 721 是非同质化通证(token) NFT 的实现标准。
非同质化,意味着它是唯一的,不可替代的,比如区块链应用里的一块土地/一首歌/一张图/一段话,甚至你也可以将现实世界里的物理资产 token 化,它还可以代表一辆车/一间房。

相较于 ERC 20 这种同质化通证的标准,ERC 721 协议必然更加复杂,通常会由若干个合约组成。分开来看,每个合约都定义一定的职责或者功能,组合起来,共同完成 NFT 的实现和管理。

接下来,我们来讨论其在 OpenZeppelin 中的实现
@openzeppelin 版本 4.5.0

...More

IPFS 概述

去中心化也许会成为未来的主题,但是,但是我觉得应该也不会实现真正的“去中心化”。
虽然节点的地位是平等的,依照现有的思路,节点群体在决策时,仍然无法保证它百分百就是对的,大部分节点仍然可能会被把持在某些手中,形成较大的决策影响力,当然,这种影响力有限,也不是绝对的。

回到正题,IPFS 正是一种去中心化的分布式文件存储系统,它的出现,将会对基于 C/S 模式和地址寻址的中心化文件访问策略带来一定的挑战。

本文中,将对 IPFS 的运行原理做一个综述。由于并没有阅读源码,内容上主要来自于基于对网络 IPFS 上的描述的理解。

...More

IPFS 网关(一)

本篇是一篇译文,原文IPFS Gateway
本篇是翻译 IPFS 网关的第一部分,主要描述网关提供者和所提供的网关类型。

说到网关,这里想补充几句,它就像是一座桥梁,或者一道门,连接着两个体系,从 HTTP 网络到 IPFS 网络。它不负责存储,而是进行转发,甚至包装后再转发,是一个不同协议之间的转换器,适配器。

...More

© 2025 YueGS