NFT交易的新方向:永不停歇的激进域名市场( 二 )


ENS 域名的持有人可以将自己的 ERC 721 域名代币转移到 RadicalManager 合约中 , 从而实现域名的「激进化」 。 这是调用了 ENS 智能合约中的 safeTransferFrom 函数 , 从而唤起 RadicalManager 合约的 onERC721Received 函数 , 接着相应地调用 RadicalLeasehold 以及 RadicalFreehold 智能合约完成代币的铸造工作 。
我们智能合约的编写受益于 Truffle 框架 , OpenZepellin 以及 ENS 的帮助(感谢 @makoto_inoue 对我们网站的协助) 。
域名进行激进化的操作中 , 由最初的所有者设置年租金的比例(例如 10%)以及租赁产权代币的初始售价(例如 1 以太币) 。 接下来的租赁产权代币的持有人可以设置新的售价(例如 10 以太币) , 但他必须要按照相同的租金比例支付租金(10% x 10 ETH = 1 ETH/year) 。 永久产权代币的持有者则可以收到该租金 , 并且可以随时提走所有的租金 。
租赁产权代币的所有者只要持有该代币 , 就能一直享有该 ENS 域名的独家控制权 。
挑战

  • Solidity 的各个版本存在较大的变化 , 同时把两个 uint256 类型的值编码成一个字节类型的参数十分困难 。 (Evert)
  • 团队中的新人(Richard 以及 Kiki)感到学习曲线陡峭 , 知识量太大 。
  • 理解 ENS 智能合约 , 将 ENS 的概念设计(例如 controller )与 ERC721 标准(例如 operator)区分的过程很艰难 。 (Rosco)
  • 在前端设计上我们切换了几种方案 , 但都各自对新手或者老手有一定的困难 。
  • 我们自豪的成果
    从 BUIDL 的角度看 , 我们可以非常自豪地表示已经实现了核心合约的大部分功能 。
    我们对团队合作非常自豪 , 因为成员的技术背景和层次不一 , 每个人都做出了独特的贡献 。
    我们很自豪以太坊社区所构建的生态 , 从链、到工具、到这场盛会 。
    我们学到的东西
    在项目中 , 我们发现的最有趣的收获在于 ENS 允许 「控制人」(controller)进行除了转移所有权以外所有域名操作的设计 。 这省去了我们对合约添加追踪调用的工作 , 其它 ERC721 代币也应当借鉴这样的设计模式 , 使得激进市场的思路能适用到其它项目中 。
    未来的工作
    我们想要将这个项目继续完善 , 并且期待有人能做出改进、贡献代码 。 在这个项目的工作中 , 团队里的开发新手都得到了宝贵的经验 。
    构建工具
  • ens
  • erc721
  • javascript
  • solidity
  • typescript
  • 试一试
  • GitHub Repo
  • radical.domains

  • 推荐阅读