数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 545|回复: 0

[业界] 微软正在开发基于 Rust 的安全编程语言

[复制链接]
发表于 2019-12-3 11:31:35 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
来源:开源中国

此前,微软表示正探索将Rust作为C和C++的安全替代方案,并且也对外展示了使用Rust 重写Windows组件的体验,根据微软的说法,Rust 是一种从根本上考虑安全性的编程语言,他们将尝试使用Rust 重写各种产品,因为在过去的十年里,微软 70%以上的安全补丁都提供了与内存相关的错误,而Rust 正是解决这个问题的“良药”。

而根据 ZDNet的报导,近日在一次演讲中,谈到微软为解决相应内存问题所做的工作,微软研究人员 Matthew Parkinson提到了微软正在开发的基于Rust的新编程语言 Verona。

演讲中,Matthew先是分享了微软在MemGC(Memory Garbage Collector)上所做的工作,MemGC是指IE和 Edge浏览器上的内存垃圾回收器,它解决了标准浏览器一个特性——文档对象模型(DOM)中的漏洞,DOM以树结构表述了 HTML文档内容。

之后他由此牵出另一个问题:如何构建最安全的产品?不仅仅丢弃已有的东西,而要考虑可以在更加安全的系统中构建一些什么。他介绍了微软正在使用Rust重写某些组件,并提出:“如果我们想要隔离,并精简遗留代码,以使攻击者的利用代码无法逃逸出来,那么如何设计语言呢?”

Matthew提出了微软正在开发的基于Rust的新编程语言 Verona,他表示这是首次讨论该项目,Verona是用于微软“安全基础设施编程(safe infrastructure programming)”的一种新语言。

Matthew介绍,Verona由C# 项目经理Mads Torgensen与Microsoft Research Cambridge研究软件工程师 Juliana Franco维护。

微软面临的挑战是应对宽广的应用领域,范围从C#桌面应用到C或C# Exchange、ASP.NET、Azure与设备驱动程序,再到内存管理和启动加载器等底层Windows组件,以及Windows内核硬件抽象层(HAL,hardware abstraction layer)。

“执行内存管理确实很困难,如果有任意并发突变,则临时内存安全性将非常困难”,Matthew介绍了Verona的设计思路:“Verona 的所有权模型是基于对象组的,而不是像Rust那样基于单个对象的所有权模型。在C++中,可以获得指针,并且它是基于对象的。但这与我关于数据和语法的思考不同,我认为数据结构是对象的集合,而对象的集合则是生命周期。 因此,通过在对象的所有权级别获得所有权,我们就可以更接近人们正在使用的抽象级别,它使我们能够构建数据结构而不会超出安全范围。”

另外,Matthew还表示Verona很快将会开源。


您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-1 03:38 , Processed in 0.265201 second(s), 10 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表