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

UST:技术解析 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等浏览器?商的?持。

国内首家社区型食物银行利用区块链技术解决“余量月饼”问题:金色财经报道,上海长宁区组织了一场“余量月饼大改造”,旨在利用食物银行解决余量月饼问题。国内首家社区型食物银行上海绿洲公益发展中心利用区块链技术,建立起了庞大的食物信息数据库,确保每一份进入循环利用网络的食物都是安全可靠的,既避免了浪费,也惠及了困难户。(北京青年报)[2021/9/21 23:39:54]

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

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月28日消息,拉丁美洲的一些组织已经在采用区块链技术以帮助医疗行业解决患者数据问题。卫生系统面临的主要挑战之一是卫生中心、医院、实验室、保险公司和卫生生态系统其他部分的患者信息分散。基于区块链的解决方案可以通过加密技术及其透明性帮助统一患者记录。(Confidencialcolombia)[2020/6/28]

随着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)安全

声音 | 人大代表李君:使用区块链等技术解决农产品溯源问题:据中国青年网消息,两会期间,全国人大代表、四川省广元市苍溪县白驿镇岫云村党支部书记李君就利用互联网和数字技术助力发展品质农业,推进乡村振兴提出建议。李君建议创新使用数字技术手段,例如区块链技术,解决品质农业的农产品溯源问题。同时,用数字技术将农产品生产、销售过程透明化,进一步解决消费者与生产者、销售者之间的信任问题。[2019/3/11]

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?来表明程序因错误?退出。

动态 | 报告:互金巨头将通过区块链等技术解决传统金融痛点:10月30日消息,今日苏宁金融研究院对外发布《2018金融消费升级报告》,报告指出,中国金融科技迎来窗口红利期,以蚂蚁金服、腾讯金融、苏宁金融为代表的互金巨头,通过大数据、云计算、人工智能、区块链等新技术,改变传统的金融信息采集来源、风险定价模型、投资决策过程、信用中介角色,解决传统金融痛点。[2018/10/30]

在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需要能够进?像直接与操作系统交互,甚?于编写你??的操作系统这样的底层系统编程!总结

声音 | 浙商银行沈金方:通过区块链技术解决企业应收账款真伪等问题:据中国经济新闻网消息,浙商银行公司银行部副总经理沈金方近日提到了浙商银行在区块链的探索。通过区块链技术将企业的应收账款改造成可支付结算和融资的工具,从而解决真伪、确权和资金回笼的问题。这个业务已经做了将近一年多的探索,叫应收款内业务,成效非常明显,尤其对中小企业融资难和融资贵的问题都可以得到有效的解决。[2018/9/18]

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

标签:USTWASASMWEBTrustRiseSWASH币prasmWEBN

FTT热门资讯
SHI:从SHIB身上,看到了区块链精神的传承

昨天关于SHIB的文章有不少读者的留言,其中有些读者表达了一丝遗憾,认为要是能早点知道这类项目就好了。实际上我对SHIB的了解也只是近期才开始。SHIB是去年8月份上线的.

1900/1/1 0:00:00
CAN:CanCan:探索开放式互联网下的代币化潜能 | DFINITY上线发布会

DFINITY生态应用CanCan5月8日,去中心化计算平台DFINITY联合36氪及Odaily星球日报共同举办「DFINITY互联网计算机主网上线发布会」.

1900/1/1 0:00:00
SAMA:Kusama 平行链预计一天后上线,公投已经开启

加入PolkaWorld社区,共建Web3.0! 北京时间,5月13日凌晨1点30,Polkadot发布v0.9.1版本,随后Kusama理事会针对这个版本升级发起了一项motion投票.

1900/1/1 0:00:00
以太坊:Deribit期权市场播报0423 —— 以太新高

播报数据由Greeks.live和Skew.com提供。比特币仍在下跌的泥淖中挣扎,带动大部分币种下跌,而以太坊一马当先,拉出一根10%的阳线,创出历史新高,一举突破2600美元.

1900/1/1 0:00:00
SBF:深挖:3年时间 FTX的SBF是如何赚到上百亿美金的?

吴说作者|miaohash本期编辑|ColinWu20多亿美金的挖矿资金,控制价值上百亿的平台币,以及投资了大量项目的AlamedaResearch,SAM能够控制的资产超过百亿.

1900/1/1 0:00:00
COL:ColdStack为何能给用户提供“物美价廉”的去中心化云存储服务?

本文来自Medium,原文作者:AlexanderShishowOdaily星球日报译者|Moni 对于许多加密社区的用户来说,似乎对ColdStack提供较为低廉的价格服务存在很多一文.

1900/1/1 0:00:00