时间:2022-02-26|浏览:475
NFT项目审计概览
NFT是英语“Non Fungible Token简称,翻译是非同质化通证。NFT可以理解为存储在区块链上的独特单元数据。每当谈到它时NFT通行证,我们自然会把它和普通人结合起来ERC-类比20[2]通证。NFT通证与ERC-20通证有区别,两者的区别在于任何两个NFT通证不同,不可互换,即不同质。因此,与NFT相关操作(如交易等)与ERC-与比特币、以太坊等同质数字资产相比,20通证的操作有明显差异。
近年来,以NFT为核心发展创造了一个新的生态系统,2021年发展特别迅速。然而,随着生态的快速发展,生态安全问题经常出现。当行业审视这些安全问题时,它们经常被与之相匹配ERC-比较20通证生态中的安全问题,但是NFT该领域的安全问题有自己的特点和差异。然而,这些特征和差异并没有得到行业的系统关注和研究。
关于NFT学术界学者对生态安全问题进行了大胆的探索和研究,如D. Das、P. Bose、N. Ruaro、C. Kruegel和G. Vigna合并论文[3]。但在实践和具体实施过程中,对NFT缺乏对安全问题的深入探讨和研究,如何检查、审查流程、预防措施和预防措施。
Fairyproof研究团队根据自己积累的专业知识和审计NFT本项目积累的实践经验总结了一套系统、全面的方案,希望与行业和关注该领域发展的同事进行讨论和交流。
项目、应用程序或服务和服务NFT互动,我们视之为NFT项目、NFT应用或NFT服务。如果一个应用或服务和NFT互动,我们认为这个应用程序或服务是整个NFT生态的一员。所有这些应用程序和服务现在都是我们看到的NFT生态系统。
在这个生态系统中,根据每个成员在技术上的角色,我们将其分为四类:NFT区块链的通证部署,NFT合同、业务逻辑和流程的核心应用、辅助NFT应用或服务工作。
对于NFT这四类成员都需要关注和审查项目的审计。NFT如果部署的区块链不能正常工作,项目将失去根本原因;NFT实现通证合同存在问题,那么NFT如果项目的业务逻辑和流程设计有问题,项目只会失去活力NFT通证;辅助NFT工作应用或服务不能正常工作或项目不选择合适的辅助应用或服务,NFT不能充分发挥其潜力。
因此这四者的安全和审计缺一不可,都不能忽视。在本文接下来的篇章,我们将对这四者的安全及审计分别展开论述。
审计区块链
对于NFT如果项目部署的区块链是一个相对成熟的区块链(如以太坊),它通常不需要审计,这一步可以跳过。由于成熟的区块链经过多年的发展和发展,经历了各种安全事故的挑战和磨练,在安全方面有了更可靠的保证和信用。如果部署的区块链是新的,理论上不能忽视区块链的审计。
区块链的审计在业界已经相对成熟。这种审计的方法、方法、流程、重点和难点已经包括在内Fairyproof区块链安全公司熟练的业务和领域。这种审计对行业和安全公司并不陌生。
对NFT实现合同审计
NFT通证的实现在技术上是常见的ERC-20通证类似,由一个或多个智能合同组成。但是,因为NFT实现所基于的通证标准(比如ERC-721和ERC-1155)和ERC-20同质通证不同,所以NFT通证中可能出现的问题也与ERC-20通证略有不同。典型的问题之一是NFT在实现发行功能时是否使用了合适的随机数。如果使用的随机数不合适,则NFT发行时可能会遇到回滚攻击,即用户可以通过不断的回滚交易获得自己的偏好NFT。因此对NFT实现合同审计和对合同的审计ERC-20合同的审计略有不同,主要表现在不同的重点、重点和难点。
对此,Fairyproof在实践中,系统总结经验,开发一套快速定位的自动审计工具NFT排除合同中的潜在风险。
审计核心业务逻辑应用的审计
我们在这里所说的核心业务逻辑应用主要是指一个NFT在项目中,实现业务逻辑的部分。这部分应用程序将与各种应用程序使用NFT通证交互。
在一个NFT商业逻辑在项目中的应用通常可分为两类:
一种是典型的互联网2.应用程序NFT交互和实现的商业逻辑相对简单,通常只涉及一些简单的事情NFT操作,比如NFT的发行、NFT转账等。近年来非常流行的PFP项目属于这一类。
另一种是互联网2.0应用程序和区块链智能合综合应用。这种综合应用包括NFT操作要复杂得多,除了简单NFT以及发行和转账NFT管理通证,NFT通证的抵押等。现在NFT交易平台[9][10]是生态中最大的应用。
虽然这两种应用在复杂性上存在差异,但它们是基于它们的ERC-与20通证的应用相比,有一些独特的共性,这些共性也是如此NFT应用的共性。
这些共性主要表现在:第一:NFT链上操作不如应用所涉及的链上操作ERC-20通证申请(例如DeFi链条上的应用[11][12]操作复杂;其次,很多NFT应用程序面向的用户是非技术人士,有些用户甚至没有区块链知识,也不知道基于区块链的数字货币。
因此,为了让大量非专业用户在没有区块链或数字货币知识的情况下无障碍地使用和参与NFT项目,很多开发团队会花费大量的精力和资源来设计和优化用户界面,使之更符合用户已经在互联网2.0应用程序中建立的习惯。这自然使得一些项目在设计和开发过程中大量使用互联网2.0应用技术和流程[9][13]。一方面降低了用户的使用门槛,更方便新用户进入NFT但另一方面,这也使这些NFT应用程序往往过于集中。这种过于集中的倾向不仅存在于应用程序的技术实现中,也存在于业务逻辑和过程中。
在这里,我们想强调的是:在现有NFT应用程序中涉及的业务逻辑和过程中可能存在的问题以及是否存在一些未知的隐患尚未引起行业从业者的足够关注和研究,特别是在安全领域。例如,目前有许多流行的问题NFT在交易平台中,KYC还并未被强制要求,更谈不上坚决执行,在这种情况下如何防范安全事故及对黑客身份的追踪、定位;再如对NFT在大多数交易平台上,项目真伪的验证只是一个可选项,而不是一个必要的执行项目。在这种情况下,如何防止用户误入假冒项目;还有NFT原团队设置并收取交易股息(royalty)各种平台采用的流程和方法是否存在安全漏洞和隐患,是否存在欺诈和不公正?......
业界很少提到上述问题的发展和研究,更不用说深入探讨了。
对此Fairyproof一直在进行跟踪研究和探索,积累和总结这些方面的经验,开发一套综合框架和系统NFT领域从业者提出建设性意见和切实可行的方案。
审计辅助服务或应用程序
这里提到的辅助服务或应用是指帮助NFT充分发挥其功能或特点的服务或应用。NFT存储元数据(metadata)服务或应用.
兴起于2021年的PFP该项目使用辅助服务或应用程序。这种典型的NFT项目经常发行一定数量的恒定数量NFT,每个NFT每个图片都有一个独特的图片,包含各种特征的组合。每个图片NFT这张图是它的元数据。
为了吸引用户购买和持有,这些图片往往是独一无二的,所以图片的保存和显示是这样的NFT这个项目非常重要。许多项目考虑使用各种方案来使图片尽可能永久地保存。因此,什么样的服务或应用程序可以提供可靠和安全的永久存储是这些项目的焦点。
目前,行业内常见的存储方案主要包括分散存储应用和分散存储应用。前者是典型的IPFS、Arweave等。后者主要包括亚马逊云等。
然而,并非所有这些存储方案都能现成地提供永久存储,有些可以提供永久存储,但成本较高,有些只能提供临时存储,各有优缺点。因此,项目开发人员必须考虑如何综合考虑使用一个或多个方案来组合,建立一套可以永久存储的服务。
但当项目方考虑使用这些解决方案时,这些解决方案本身可能会出现什么问题呢?合使用时可能存在哪些安全隐患或潜在风险?如何避免和预防这些隐患或潜在风险?到目前为止,对这些问题的讨论和研究相当有限。
Fairyproof自成立以来,我们一直关注这一领域的研究和探索,特别是在安全实践中可能存在的困难和重点。基于自身的积累和实践,我们探索并开发了一套评价和审查的系统方案NFT辅助服务或应用程序已经开发和部署了一套全面的流程和系统,以检查这些辅助服务或应用程序在各种实践方案中可能存在的安全风险和潜在风险。
对NFT项目审计不仅仅是对的NFT智能合约的审计是一个系统工程和一个综合过程,需要从生态的角度进行全面的审查NFT其核心业务逻辑及周边应用、基础设施及辅助服务。
Fairyproof并将继续密切关注NFT生态发展,坚持深入研究该领域的安全问题,继续扩大和探索该领域的最新发展,并继续与同行分享我们对前沿问题的思考和前瞻性判断。
用戶喜愛的交易所
已有账号登陆后会弹出下载