风险提示:央行等十部委发布《关于进一步防范和处置虚拟货币交易炒作风险的通知》, 请读者提高风险意识。

ERC721x: 更安全的实现ERC721标准

ERC721x标准本质上为NFT提供了双因素身份验证(2FA),为NFT增加了多层安全性

Marsbit
Marsbit
热度 ...

原文标题:(Re)Introducing ERC721x: A safer implementation of the ERC721 standard

原文作者:CyberKongz

原文来源:cyberkongz

编译:Kate, Marsbit

这是已经公开的,你可以在这里找到。

CyberKongz的Solidity开发负责人OwlofMoistness开发了ERC721x标准,继续努力开发WEB3技术并推动该领域向前发展。简而言之,该标准为你的NFT增加了多层安全性,让你在晚上睡得舒适。

链上2FA

众所周知,在这个领域有一些糟糕的玩家。WEB3 中的诈骗行为十分猖獗,只需轻轻一按,你钱包中的所有东西就会被掏空。我们的目标是用技术来改变这一点,以保护我们的持有者。该标准本质上为你的NFT提供了双因素身份验证(2FA),指定第二个钱包作为“监护人”,防止你宝贵的NFT在未经你授权的情况下被转移。

我们很高兴地宣布,下一个CyberKongz mint将使用ERC721x,继续我们在Web3中拥有最安全社区的传统。

解释

ERC721x有2层,“锁定”和“保护”。

ERC721x

锁定

当你“锁定”你的NFT时,你正在使用锁定注册表,这是一个将自己插入ERC721标准的系统,只需要很少的gas,并允许白名单地址锁定和解锁资产。在从锁定注册表中取消分配之前,不能移动资产。

质押你的资产而不是去所有权。锁注册表在构建时考虑了并行质押的能力。资产可以在多个系统中使用,在这些系统中,将资产锁定在适当的位置将是有益的。

保护

监护人合约的执行方式与锁定类似,但进行了一些调整……持有NFT的钱包(钱包A)不会锁定NFT,持有钱包会指定第二个钱包(钱包B)作为“监护人”。然后监护人钱包可以第二次将资产锁定在持有钱包中。然而,这一次是监护人钱包需要批准资产转移,表面上是创建链上2FA。建议使用硬钱包或冷钱包,以确保最高的安全性。

在Owl的GitHub上阅读更多关于监护人合约的信息。

在Owl's Medium 上阅读有关锁定和保护的更多信息。

ERC721x

ERC721x好处

这解决了什么问题

我们都知道热钱包很方便,我们喜欢在日常活动中使用它们,但这种便利也带来了巨大的漏洞……监护人合约让你享受热钱包的便利,同时增加了冷/硬件/多签名钱包的安全性。它甚至允许你使用第二个硬件钱包来保护已经驻留在硬件钱包上的资产,以增加另一层保护,防止签署不需要的转移或批准交易。

此外,诈骗将更难实施。

电子邮件诈骗,社会工程诈骗,引诱用户批准OpenSea销售,批准一些流氓合约,热钱包黑客攻击或泄露助记词等……

如果你的资产被锁定,所有这些诈骗方法都不起作用。

黑客攻击的数量将大幅减少,从而为用户节省数十万甚至数百万的NFT价值。

它是如何工作的

让我们看一下技术细节。

ERC721x

ERC721x它是如何工作的

ERC721x合约

关于【ERC721x: 更安全的实现ERC721标准】的延伸阅读

  • 314协议会是下一个ERC721吗?

    314协议热潮正在各链扩散,引发关注的可能是ERC404协议。BSC链上的X314涨幅千倍,吸引交易者。Odaily星球日报介绍这个号称“革掉DEX中间商”的新协议。X314代币价格暴涨,但存在缺陷,计划升级加入销售冷却和LP燃烧机制。X314代币于3月37日上线,4月1日BSCNews宣传,代币价格暴涨。X314代币是ERC314和LONG314的继承创新,有销售冷却和LP燃烧机制,长达90天的质押激励活动。X314未来发展不确定,存在合约权限和操作风险。314协议被认为是短期炒作标的,但未来市场表现不确定。X314在ERC314基础上创新,通过交易冷却和LP燃烧机制缓解链上PVP激烈程度,但受限于流动性,价格波动和市值涨跌难以避免。314协议能加速资金流动性和去中心化交易,在部分领域对DEX等交易渠道形成补充。

  • 币安研究:5 月加密市场趋势报告摘要

    5月,加密货币市场总市值增长8.6%,DeFi市场TVL上涨21.7%,NFT市场总销售额下降41%。美国证券交易委员会批准现货ETH ETF,美国众议院通过《21世纪金融创新与技术法案》,推动市场上涨。排名前十的代币中,Solana表现最强劲,价格上涨33.9%,DeFi TVL上涨33.4%。但NFT市场大幅下滑,总销售额下降41%。

该标准允许实现ILock接口的合约锁定/解锁资产,以启用/禁用资产转移。

这是如何工作的呢?

锁注册表包含四个映射:

mapping(address => bool) public approvedContract;

mapping(uint256 => uint256) public lockCount;

mapping(uint256 => mapping(uint256 => address)) public lockMap;

mapping(uint256 => mapping(address => uint256)) public lockMapIndex;

第一个是approvedContract,它是一个映射,用于检查是否允许某个地址锁定/解锁集合中的资产。该映射由合约的所有者(例如EOA或多重签名)更新。

lockCount是跟踪代币拥有多少锁的映射。只要锁计数> 0,代币就不能移动。一旦没有更多的锁,代币就可以再次自由移动。

lockMap和lockMapIndex一起工作。

lockMap是一个二维映射,它将代币ID连接到锁定它的地址。

lockMap[tokenId][lockIndex] =>被锁定的合约

lockMapIndex是一个二维映射,它将代币ID连接到锁定它的地址的lockIndex。

lockMapIndex[tokenId][lockingContract] =>锁定合约的锁定索引

当合约解锁代币时,这两个映射对于轻松跟踪和删除锁是必要的。

接口

IERC721x接口非常简单:

interface IERC721x {
/**
* @dev Returns if the token is locked (non-transferrable) or not.
*/
function isUnlocked(uint256 _id) external view returns(bool);
/**
* @dev Returns the amount of locks on the token.
*/
function lockCount(uint256 _tokenId) external view returns(uint256);
/**
* @dev Returns if a contract is allowed to lock/unlock tokens.
*/
function approvedContract(address _contract) external view returns(bool);
/**
* @dev Returns the contract that locked a token at a specific index in the mapping.
*/
function lockMap(uint256 _tokenId, uint256 _index) external view returns(address);
/**
* @dev Returns the mapping index of a contract that locked a token.
*/
function lockMapIndex(uint256 _tokenId, address _contract) external view returns(uint256);
/**
* @dev Locks a token, preventing it from being transferrable
*/
function lockId(uint256 _id) external;
/**
* @dev Unlocks a token.
*/
function unlockId(uint256 _id) external;
/**
* @dev Unlocks a token from a given contract if the contract is no longer approved.
*/
function freeId(uint256 _id, address _contract) external;
}

被批准的合约可以锁定或解锁资产。锁定资产两次将恢复,与两次解锁的行为相同。

freeId是一个紧急函数,只能在特定条件下调用。它的行为类似于unlockId函数。只有当先前批准的锁定资产的合约不再被批准时,才能调用它。这意味着你将需要通过调用updateApprovedContracts来更改approvedContract[badContract] => false,并取消初始批准合约的设置。只有当锁定合约逻辑错误并阻止人们解锁资产时,才会发生这种情况。通过不批准有缺陷的合约,我们允许用户解除锁定,以便在他们选择的情况下转移他们的资产。

结束语

CyberKongz Genkai mint将利用这一新标准,继续我们在Web3中拥有最安全社区的传统。我们相信这项技术是朝着web3安全性的正确方向迈出的一步。我们鼓励该领域的其他项目采用ERC721x标准,我们已经看到一些著名的集合,如9gag和Keungz在他们的集合中实施了该标准。有关该标准的更多信息以及在你自己的项目中实现它,请阅读Owl的Medium和Github。

加入我们的Discord以保持最新状态并成为我们社区的一部分:https://discord.com/invite/cyberkongz

免责声明:本文仅代表作者个人观点,不代表链观CHAINLOOK立场,不承担法律责任。文章及观点也不构成投资意见。请用户理性看待市场风险,以及遵守所在国家和地区的相关法律法规。
图文来源:Marsbit,如有侵权请联系删除。转载或引用请注明文章出处!

标签:

分享至
https://www.chainlook.cn/toutiao/1691115014.html

下一篇:

最近融资2亿美元的「伊斯兰Coin」是什么?

在政治经济上,中东是大国博弈场。在加密货币里,中东的风情也孕育了颇具特色的项目。

免责声明:
链观CHAINLOOK作为区块链技术应用与Web3行业研究的智库媒体,旨在为中国区块链专家、学者们提供最新的行业资讯信息与数据样本,用于区块链技术研究与创新。本站所发布的文章仅代表作者的个人观点,不代表链观CHAINLOOK官方立场,本站所发布的区块链行业研究报告与数据分析成果是通过人工智能算法对数据内容进行分析与归纳生成,不代表任何投资暗示与建议,链观CHAINLOOK不承担法律责任。

风险提示:
虚拟货币不具有法定货币等同的法律地位,参与虚拟货币投资交易存在法律风险,链观CHAINLOOK坚决反对各类代币炒作,请读者提高风险意识,理性看待区块链技术应用及市场风险。

© 链观CHAINLOOK All Rights Reserved. 京ICP备18054193号-5