Let's Encrypt启动用内存安全Rust替代C语言计划
内容提要
Let's Encrypt计划用Rust替代C/C++软件,提供更安全的NTP实现。
延伸解读
从OpenSSL到Rustls:替换范围与节奏
Let's Encrypt计划在基础架构中用内存安全方案替换多个C/C++组件,包括用Rustls替换OpenSSL、用Hickory替换DNS软件、用River替换Nginx、用sudo-rs替换sudo。这些替换并非一次性完成,而是“在接下来的几年里”逐步推进。目前首个落地的是ntpd-rs,已融入生产环境,其余替换仍处于计划或进行中。
ntpd-rs与systemd-timesyncd的关键差异
文章指出,systemd-timesyncd只是一个SNTP客户端,偶尔发送请求并根据单个响应调整时钟。而ntpd-rs是完整的NTP实现,同时作为服务器和客户端,并实现完整同步算法,可同时同步多个源。此外,ntpd-rs允许操作员自定义行为,适合需要更准确时间或更高安全性的场景。
Prossimo与内存安全生态的长期布局
Prossimo项目于2020年启动,目标是确保互联网内存安全。其投资组合包括Rustls、Hickory DNS、River、sudo-rs、对Linux内核的Rust支持以及ntpd-rs。ntpd-rs最初于2022年4月由Prossimo开始研发,现已由Project Pendulum维护,并于2024年4月部署到Let's Encrypt暂存环境,目前投入生产。
Q&A
Let's Encrypt为什么要用Rust替代C语言软件?
Let's Encrypt计划用内存安全的Rust替代C或C++软件,以提高互联网的安全性。
ntpd-rs是什么?
ntpd-rs是Prossimo推出的第一款内存安全软件,既是NTP服务器也是客户端,旨在提供更安全的时间同步。
Prossimo项目的目标是什么?
Prossimo项目的目标是确保互联网内存安全,这是互联网基础设施的重要组成部分。
ntpd-rs与systemd-timesyncd有什么区别?
ntpd-rs是一个完整的NTP实现,既是服务器又是客户端,而systemd-timesyncd只是一个SNTP客户端,功能较为简单。
Let's Encrypt的主要目标是什么?
Let's Encrypt的主要目标是通过提供免费的SSL/TLS证书,使互联网更加安全。
Rustls在Let's Encrypt中替代了什么?
Rustls在Let's Encrypt中替代了OpenSSL及其衍生产品。