WebAssembly 一周一报0708

WebAssermbly 中文群入群请至文末,添加微信

编者按:

本周,我们将从学术界了解有关 WebAssembly 的新研究。他们问: WebAssembly 足够安全吗?答案可能会让你大吃一惊!我们看到更多关于后端系统采用 WebAssembly 的消息。同样在本周,Rust 有可能作为拥有数十亿用户的两个著名操作系统的未来实现语言,出现在新闻头条中两次!

旧瓶装新酒:WebAssembly的二进制码安全性

斯图加特大学的软件实验室发表了一篇关于 WebAssembly 安全性的论文。他们提供了一组攻击向量,使攻击者能够获得写访问权限、覆盖敏感数据并触发其它不希望发生的行为。他们的结论是,很多经典漏洞,由于常见的缓解措施,在许多本机二进制文件中不再能够被非法利用,这些漏洞在 WebAssembly 中完全暴露出来。

WebAssembly 使得结合了接近本地性能和强大安全保障的可移植平台成为可能。希望这项研究能够帮助我们更好地加强其安全模型。你觉得怎么样?作为社区的一部分,我们如何应对?

WasmPatch 使得 IOS/macOS App 得到 WebAssembly 的洪荒之力

WasmPatch 桥接了 Objective-CWebAssembly. 它将 C 代码编译为 WebAssembly,然后使开发人员能够从 Objective-C 应用程序中调用那些 WebAssembly 函数。它类似于 ssvmup 为JavaScript 和 WebAssembly 所做的事情。

有了 WasmPatch, iOS 和 macOS 应用可以发挥 WebAssembly 的力量。例如,他们可以添加特性或替换 Objective-C 代码来动态修复 bug。

V8 v8.4版本的新特性

谷歌 V8 JavaScript 引擎最近发布了 v8.4。 新版本的亮点包括:

WebAssembly:

  • 提升了 WebAssembly 启动和去漏洞性能;
  • 更新了 SIMD 支持;

JavaScript:

  • 弱引用和终结器

Grain,新的WebAssembly赋能的编程语言

Grain 是一种为安全性和性能而设计的强类型函数语言。它的语法有一点像 Rust。一个有趣的特性是 Grain 源代码可以直接编译为 WebAssembly。这使得 Grain 程序可以安全地在浏览器、服务器和任何可用的地方运行!

用 Krustlet 将 WebAssembly 引入 Kubernetes

在以前的 issue 中,我们介绍了 Krustlet,用 Rust 写的 Kubernetes Kubelet。我们对 Krustlet 非常感兴趣,因为它支持 WebAssembly。

Rawkode 写了一篇文章来演示如何使用 Krustlet 在 Kubernetes 上与 WASI 一起运行 WASM。路子太野了!

在浏览器中使用 WebAssembly,替换掉 Adobe Flash Player

距离已故的史蒂夫乔布斯发表这篇富有争议的 Thoughts on flash(Flash有感) 公开信,已经过了十年,乔布斯预言 Flash 播放器将终结。在2020年的今天,Adobe 宣布 Flash 的终结。

取而代之的是,Adobe 团队建议在未来的交互式网络应用中使用开放标准,比如 WebAssembly。Flash 时代已经结束了。

Rusty 新闻

Rust 会在 Linux Kernel 中取代C吗?

https___bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com_public_images_08a593a9-89aa-4f51-b069-08d78c9dc79f_557x248.png

对于像 Rust 这样的系统语言,终极的认可就是在关键基础设施系统中可以取代 C ,例如 ... Linux Kernel!就连 Linus Torvalds 本人都在最近一次采访中这么建议。 简直迫不及待了!

Rust 会在安卓中使用吗?

Rust 本周真是火的不行! 除了 Linux Kernel, 安卓团队也在考虑用Rust重写一些安卓系统的组件,非常期待呢!

Rust 写的 Protochess 游戏

https___bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com_public_images_e2a4bbc4-5205-4df3-a00c-13f8381d298f_703x703.png

Protochess,一个允许其用户对他们的棋盘做个性化改变的在线网站。Protochess 在后端使用 Rust,在前端使用 Svelte。如果你选择用电脑玩这个游戏,你其实是在和 protochess-engine-rs 对阵,它通过 wasm-bindgen 编译成 protochess-engine-wasm ,以运行在 WebAssembly 内部。

tui-rs,另一个用 Rust 写的终端用户界面


tui-rs 是一个Rust 库,用于构建丰富的终端用户界面和 dashboard。它的灵感来自 Javascriptblessed-contrib 以及 Go 的库termui。这个 Demo gif 看起来很拉风。

RustPython: 用Rust创建一个 Python 3 解释器

RustPython 是用Rust 而不是 C 写的 Python解释器。 RustPython 也可以被编译为单独的 WebAssembly 模块。 RustPython 团队的在线demo 将 Rust 编译成了 WebAssembly ,以便能够在浏览器中运行。

Serverless 新鲜事

Vendia 的多云无服务平台融资510万美金

Vendia 宣布510万美元的种子轮融资。 Vendia 结合了无服务器和区块链的精华,能够帮助建立真正的用于数据和代码分享的多云无服务平台。

引入 Amazon HoneyCode

Amazon Honeycode,beta 版本已经面世,它是一个完全托管的服务,有了它,用户可以迅速建立强大的移动和网络应用程序,无需编程。

Wasm 中文群.jpeg

你可能感兴趣的:(rust,webassembly)