头图 | CSDN 下载自视觉中国
出品 | CSDN(ID:CSDNnews)
以下为译文:
你觉得互联 怎么样?我希望它能够更加私密和安全。
然而,我们的个人想法并不能左右互联 的发展。WebAssembly是一项令人期待的新技术,你可以通过浏览器运行原生代码或底层代码,因此,众所周知,这项技术将终结互联 的隐私和安全性。
什么是WebAssembly?
简单来说,WebAssembly是一种运行时,允许在浏览器中运行原生代码。这里我所说的原生代码指的是用低级语言(例如C、C++、Rust等)编写的代码。
这张图简要地说明了WebAssembly的原理。编译器以一种兼容LLVM的语言输入代码,然后生成一个二进制.wasm文件。
该文件可以通过JavaScript的互操作层加载到现有的JS代码,然后由WebAssembly运行时执行.wasm文件。
如今,WebAssembly已可以在所有主流浏览器中使用,并得到了原生的支持。
WebAssembly可以做些什么?
WebAssembly具有出色的性能。这意味着 站的运行速度与那些在PC上(在浏览器之外)常规软件的运行速度几乎相同。
我不禁感叹,这是一项多么伟大的革命。以前由于性能问题而无法运行的软件和游戏,如今在WebAssembly的帮助下,都可以在浏览器中运行了。复杂的WebVR体验也可能成为现实了。WebAssembly也可以让Chromebook崛起了。
微软的Blazor是一款非常有趣的WebAssembly应用程序。微软基本上是将整个.NET平台移植到了WebAssembly,并在上面添加了一个UI库。
这表示,如果你是.NET开发人员,那么你不需要做任何事就掌握了所有Web应用开发技术。
滥用WebAssembly的方式
WebAssembly的滥用使用方式有很多种,其中很多方法都是建立在.wasm文件的不可读性上的。虽然你还可以反编译和分析.wasm文件,但绝不会像整理JavaScript格式那样简单。
例如,你可以将一个很小的跟踪脚本神不知鬼不觉地添加到 站使用的某个库中。由于wasm文件不可读,所以第一方(Firefox)和第三方(插件)的跟踪保护都检测不到。
其次,性能提高意味着 站可以更好地利用硬件。例如,加密数字货币挖矿。同样,这些行为也很难阻止。
最后,还有安全问题。凭借如此强大的功能和底层的访问权限,攻击和漏洞将无处不在。我们只希望开源 区能够跟上发展。
结束语
因此,等到WebAssembly被广泛采用后,互联 将发生翻天覆地的变化。
然而,这种后果对我们是有益的,还是灾难性的?让我们拭目以待吧。感谢您的阅读!
原文:
https://medium.com/better-programming/webassembly-is-the-end-of-the-internet-as-we-know-it-9085a49cbc7b
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!