火星链 火星链
Ctrl+D收藏火星链
首页 > FTT > 正文

ASM:技术解析 WebAssembly 智能合约特点与安全性

作者:

时间:1900/1/1 0:00:00

智能合约开发语?已经被Solidity统治了很?一段时间,?于开发可以在以太坊虚拟机EVM上运?的智能合约。不过,Solidity有?些严重的问题,包括算术溢出、类型错误以及曾经冻结了3亿美元的delegatecall漏洞。所有这些漏洞都是在开发语?层?存在的问题。换句话说,如果有?个更优越的开发语?,本应该创造出更安全的智能合约。因此,WebAssembly智能合约应运而生,知道创宇区块链安全实验室从技术安全的角度,带你快速探析备受欢迎的WebAssembly智能合约。什么是WebAssembly智能合约?

WebAssembly是?种为栈式虚拟机设计的?进制指令集。WASM被设计为可供类似C/C++/Rust等?级语?的平台编译?标。最初设计?的是解决JavaScript的性能问题。WASM是由W3C牵头正在推进的Web标准,并得到了?歌、微软和Mozilla等浏览器?商的?持。

万事达高管:若区块链技术解决安全性和互操作性问题,将为金融业带来更多价值:5月25日消息,万事达(Mastercard)执行副总裁兼加密和区块链负责人Raj Dhamod表示,公司坚信一旦加密货币和区块链技术能够解决安全性和互操作性等关键问题,它就能为金融业带来更多价值。

Dhamodharan表示,加密货币和区块链技术在全球范围内日益受到关注,但由于缺乏全面的安全性和复杂的用户交互,它们的用例目前受到限制;一旦这些问题得到解决,品牌和公司就会更有信心参与Web3行业;大多数人将加密货币视为一种投资机会,但技术本身有很多希望,而不仅仅是一种转移和储存资本的好方法。[2023/5/25 10:38:59]

WASM具有运??效、内存安全、?未定义?为和平?等特点,经过了编译器和标准化团队多年耕耘,?前已经有了成熟的社区。在区块链领域,包括本体在内,当前已经有?些公链项?正准备?持使?WASM来运?智能合约。

支付和金融服务技术解决方案提供商Fiserv与数字资产平台Bakkt达成合作:10月31日消息,支付和金融服务技术解决方案提供商Fiserv宣布与数字资产平台Bakkt建立战略关系。Fiserv的广泛功能(包括将资金移入和移出移动钱包的能力)与Bakkt的数字资产平台相结合,将使加密货币和新兴资产类别的实际应用成为可能。未来Bakkt与Fiserv的Carat全渠道生态系统的整合将使企业能够为B2B和B2C支付、忠诚度计划和交易寻求新的选择,都将可以通过数字资产钱包访问加密资产。商家将能够通过与Carat的简单集成来提供创新的消费者体验,并推出适合其品牌和客户的新数字资产产品。(Business Wire)[2021/10/31 6:22:33]

WebAssembly简要来说有以下三个特点:?进制格式,不同于JavaScript代码的?本格式标准化,与JavaScript?样,实现了WebAssembly标准的引擎都可以运?WebAssembly,不管是在服务器端还是浏览器端快速,WebAssembly可以充分发挥硬件的能?,以后你甚?可以在WebAssembly中使?SIMD或直接与GPU交互当前的以太坊虚拟机按顺序处理交易。以太坊?络上的每个节点执?交易并将其存储在区块链上。为了允许通过分?进?PoS和并?交易处理,以太坊团队计划构建?个名为eWASM的新虚拟机。根据eWASM的规范:「要真正使以太坊作为世界计算机,我们需要有?个?常?性能的虚拟机。当前的虚拟机体系结构是原始性能的最?阻碍因素之?。WebAssembly的?标是利?各种平台上可?的通?硬件功能,以接近本机速度执?。这将为需要性能/吞吐量的各种?途打开??。」值得注意的是,eWASM不是?个智能合约开发语?,?是?个编译器的?成?标,它允许以太坊开发者使?其他语?开发智能合约并编译为以太坊接受的WebAssembly。eWASM是WebAssembly的?个安全?集,它是web平台上相对新出现的编译?标。?便的是,WASM模块可以在任何JavaScript项?中使?。对于?多数dApp应?代码来说,通常75%以上的代码根本都不是智能合约——?是使?JavaScript与智能合约进?通信的代码。ewasm和JavaScript使?同样的绑定和模块?持机制。为什么选择Rust构建WebAssembly?

榕基软件:将利用区块链技术解决不动产登记相关问题:6月8日,榕基软件(002474.SZ)在回答投资者提问时表示,公司与信阳政府刚签订的区块链合同将区块链与不动产登记结合,利用区块链技术解决不动产登记所面临的具体问题。后续该业务有望在公司有优势的业务区域进行推广;区块链+政府服务,也有望推广到公司其他有优势业务领域。此前6月5日消息,榕基软件发布公告称,公司与河南省信阳市政务服务和大数据管理局签订了区块链项目框架协议。(新浪财经)[2020/6/8]

随着2017年底,四?浏览器?商全部完成对WebAssembly的初步实现,以及Webpackimplementingfifirst-classsupportforWebAssembly的消息公布,越来越多的团队在实现需求的时候将WebAssembly作为备选技术之?考虑。Rust作为语?是?种?效、可靠的通??级语?。其?效不仅限于开发效率,它的执?效率也是令?称赞的,是?种少有的兼顾开发效率和执?效率的语?。Rust速度惊?且内存利?率极?。由于没有运?时和垃圾回收,它能够胜任对性能要求特别?的服务,可以在嵌?式设备上运?,还能轻松和其他语?集成。在探讨WASM在智能合约领域的巨?潜?时,前?提到WASM的??优势就是?持有影响?的新锐编程语?,例如Rust。使?Rust编写WASM具有如下优势:可预?的性能没有难以预料的GC暂停,也没有JIT编译器造成性能抖动,只有底层控制与上层?体?程学的完美结合。更?的代码代码尺?越?,??加载速度就越快。Rust?成的wasm模块不含类似于垃圾回收器这样的额外成本。?级优化和TreeShaking优化可移除??代码。?态友好充满活?的库?态系统助您旗开得胜。Rust拥有丰富的表达能?和零成本的抽象,以及助?您学习的友好社区。Rust编译器?前?持两个wasm关联的?标(target):wasm32-unknown-unknown。此?标直接使?llvm后端编译成wasm。它适合纯rust代码编译,譬如你没有C依赖的时候。跟emscripten?标?起来,它默认就?成更加洗练的代码,?且也便于设置搭建。wasm32-unknown-emscripten。此?标利?emscripten?具链编译成wasm。当你具有C依赖的时候就得使?它了,包括libc。wasm32-unknown-unknown?分有望将新?的Rust代码融?JS项?中。Rust&WebAssembly(WASM)安全

耐克、CK等服装品牌正寻求用区块链技术解决假冒问题:耐克、Calvin Klein和Tommy Hilfiger等服装品牌正在参与一个链集成项目(CHIP),以跟踪全球供应链上的产品。该项目由阿拉巴马州奥本大学的RFID实验室领导,利用企业区块链Hyperledger Fabric和RFID标签来解决假冒问题。据悉,假冒问题使这些品牌和零售商每年损失980亿美元。(Decrypt)[2020/3/6]

Rust被证明是可?于?型的、拥有不同层次系统编程知识的开发者团队间协作的?效?具。底层代码中容易出现种种隐晦的BUG,在其他编程语?中,只能通过?量的测试和经验丰富的开发者细?的代码评审来捕获它们。在Rust中,编译器充当了守?员的??,它拒绝编译存在这些难以捕获的BUG的代码,这其中包括并发BUG。使?Rust构建的区块链项?上,Libra可以说知名度最?,在实现语?上,Libra(已更名为Diem)项?选择了?个?常?众但宣称安全性突出的语?RUST。然?,宣称的安全不表示实际上的安全。过于?众的语?往往缺乏?时间的锤炼,导致隐藏的问题较多。再安全的语?也?法确保实现的安全,漏洞常常来?代码实现过程,来?于?。RUST社区也在讨论随机数?成函数的安全升级。所以RUST语?虽然具有安全的特?,但是并不完美,不排除有可能成为Libra项?的阿喀琉斯之踵。最后,过于依赖RUST语?有可能带来单?性依赖问题,如果RUST语?出现安全问题,则会波及整个Libra系统,这?点可能需要时间来解决,毕竟Libra出现时间尚短,需要时间来实现必要的多样化部署。虽然Rust在编译时会强制执?的内存安全保证。然?,Rust还隐藏有第?种语?,它不会强制执?这类内存安全保证:这被称为不安全Rust。它与常规Rust代码?异,但是会提供额外的超级?量。??说有?个u8,它可以存放从零到255的值。那么当你将其修改为256时会发?什么呢?这被称为「整型溢出」,关于这??为Rust有?些有趣的规则。当在debug模式编译时,Rust检查这类问题并使程序panic,这个术语被Rust?来表明程序因错误?退出。

金色财经现场报道 ConsenSys创始人宣布了从根本上简化企业使用区块链技术解决方案:金色财经现场报道,今日在Coindesk 2018共识会议上,ConsenSys创始人Joseph Lubin宣布了从根本上简化企业使用区块链技术的ConsenSys解决方案,他表示这将改变我们如何共同建设社会,经济和系统。[2018/5/15]

在release构建中,Rust不检测溢出,相反会进??种被称为?进制补码包装的操作。简??之,256变成0,257变成1,依此类推。

近?年,Rust语?以极快的增?速度获得了?量关注。其特点是在保证?安全性的同时,获得不输C++/C++的性能,让系统编程领域难得的出现了充满希望的新选择。在Rust被很多项?使?以后,其实际安全性表现到底如何呢?前?有?篇专?针对Rust安全的研究成果,针对近?年使?Rust语?的开源项?中的安全缺陷进?了全?的调查。这项研究调查了5个使?Rust语?开发的软件系统,5个被?泛使?的Rust库,以及两个漏洞数据库。调查总共涉及了850处unsafe代码使?、70个内存安全缺陷、100个线程安全缺陷。不安全Rust之所以存在,是因为静态分析本质上是保守的。当编译器尝试确定?段代码是否?持某个保证时,拒绝?些有效的程序?接受?效程序要好?些。这必然意味着有时代码可能是合法的,但是Rust不这么认为!在这种情况下,可以使?不安全代码告诉编译器,「相信我,我知道我在?什么。」这么做的缺点就是你只能靠??了:如果不安全代码出错了,?如解引?空指针,可能会导致不安全的内存使?。另?个Rust存在不安全??的原因是:底层计算机硬件固有的不安全性。如果Rust不允许进?不安全操作,那么有些任务则根本完成不了。Rust需要能够进?像直接与操作系统交互,甚?于编写你??的操作系统这样的底层系统编程!总结

不安全的Rust直接影响了以Rust构建的WASM智能合约的安全性,例如可能的整数溢出,导致转账?额前后出现巨?偏差等。好在编译器充当了守?员的??,它拒绝编译存在这些难以捕获的BUG甚?是安全性的代码。

标签:USTASMWASWEBBLOCKBUSTERASM价格SWASSMETAWEB3PA价格

FTT热门资讯
Marvel:MixMarvel多个项目齐头并进,社群互动量再创新高|四月要闻

上月回顾上月,MixMarvel项目进展顺利,市场方面发布了多个项目合作。据非小号数据统计,3月31日MIX以18.19%的涨幅领涨NFT赛道,3月完美收官.

1900/1/1 0:00:00
POL:波卡国库报告第二期: 145 万个 DOT 竟然大部分都被...

加入PolkaWorld社区,共建Web3.0! PolkaWorld发布DOT国库报告第二期!本报告旨在帮助波卡社区了解国库资金使用情况,帮助生态项目更好地获得波卡国库的支持.

1900/1/1 0:00:00
OIN:麦道夫,旁氏局和加密世界

伯纳德·麦道夫于4月14日去世,享年82岁。自2009年入狱至今,麦道夫已经在监狱中度过了将近十二年.

1900/1/1 0:00:00
CYB:是什么驱动人们去获得或者买入NFT??

对于花大价钱购买NFTs艺术品的人,你的第一直觉是不是觉得这些人要么太有钱,要么就是很傻,但真的都是这样吗?要想开启投资NFT艺术品的投资之旅.

1900/1/1 0:00:00
ZAP:如何使用Zapier和IPFS创建无代码的NFT文件工具

黑客松的奇妙之处在于人们可以想出各式各样的应用,创意观点自由地交流碰撞,会让人无意中发现从未想到过的点子。我们在ETHGlobalNFT黑客松做评委时就是这种情况.

1900/1/1 0:00:00
SEQ: 去中心化的衍生品交易协议:为什么我看好INJ

作者:SEQ编译:Justin 在本文中,我将概述为什么我相信INJ可能是一项非常好的投资,因为预计主网上线后每个月都要回购和销毁大量的INJ。以下是我的几点总结,和详细的展开叙述.

1900/1/1 0:00:00