【Rust日报】 2019-07-17:微软安全响应中心:一种主动性的方式来提升安全

本文主要是介绍【Rust日报】 2019-07-17:微软安全响应中心:一种主动性的方式来提升安全,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Rust的可测试组件设计

#TestableComponentDesign

本文简单介绍了在Rust中编写一个工程性更强的组件(crate)所必须要遵循的一些原则:

  • 自动化测试覆盖

  • 需要可配置的依赖

  • 公共api应该更加易于使用和理解

  • 契约层应该尽量减少泛型的使用

  • 其他

Read More

从futures 0.1迁移到0.3

#TiKV #futures

nrc 最近为TiKV的客户端从futures的0.1升级到了0.3,本文记录了该过程中他遇到的一些棘手的问题等。想了解0.1和0.3之间的一些区别,可以看看此文。

  • Read More

  • client-rust

使用Yew和Rust进行全栈Web开发

#yew #wasm #web

Read More

2019年如何提升Rust编译器性能

#rustc

该文作者最近给Rust发了很多PR,用于改进Rust编译器的性能,该文是他对这些PR的一些梳理总结,记录了他提升Rustc编译性能的思路。

Read More

「系列文章」微软安全响应中心:一种主动性的方式来提升安全

微软安全响应中心一直在研究Rust语言作为系统编程的安全替代方案,并建议整个软件行业认真研究它。并且会写一系列的相关的文章,本文是第一篇:

自2004年以来,微软安全响应中心(MSRC)已经对所有报告的微软安全漏洞进行了三重分析。从所有这些分类中,有一个惊人的事实凸显出来: 正如马特·米勒在2019年布鲁哈特伊利诺伊州的演讲中所讨论的那样,大多数修复的漏洞和分配的CVE漏洞都是由开发人员无意中在他们的C和C++代码中插入内存损坏错误造成的。随着微软增加其代码基础并在其代码中使用更多的开源软件,这个问题并没有变得更好,反而变得更糟。微软并不是唯一一个暴露在内存崩坏问题之下的公司。

所以需要一种更加内存安全的语言,比如Rust。时代在进步和变革,拿汽车和编程语言类比非常适合。我们不是要等事故发生以后再去处理它,而要在事故发生之前,预判一些可能导致事故的危险行为去避免它。

(微软已经不是以前那个微软了,微软越来越像那个我期待的微软了)

Read More

叫板?为什么我们需要一个actix的替代品

#actix

本文作者尝试解释为什么他不认为actix-web能够成为引领Rust社区向前发展的“那个”框架。作者列出了他的理由:

  • 代码中依旧还有25个unsafe方法在使用。比如std::mem::uninitialized。但有人可能会说,这没什么大不了的,修好就可以了。但是本文作者强调:Nikolay(acitx-web作者)的态度是你难以改变的。本文作者列举了Nikolay在强硬关闭其他人移除actix-web中unsafe代码的PR中的回复:actix-web/pull/968。(这个PR下actix-web作者的几个回复的态度确实不太好,比如他说道:已经失去了和开源社区打交道的动力。)

  • actix不是一个你可以轻易贡献的项目。最终,这使得开发者都将依赖Nikolay来获得新的特性。本文作者用一个词来描述actix-web:Flying Solo。

  • 性能测试作弊?比如硬编码header值、或者放弃检查HTTP方法之类。他呼吁大家仔细研究下TechEmpower的测试代码。

总结:本文作者认为actix-web作者的心态和代码内部的质量,足以让他放弃actix框架。那么还有哪些替代品?

  • Rocket

  • Gotham

  • Thruster

  • Warp

  • Tide

(wow,看完之后我感觉,该文作者描述actix的问题还是挺严重的,真心希望actix-web可以更好)

  • Read More

  • Reddit讨论贴

Ballista:集成了Rust、 Apache Arrow 和 Kubernetes的分布式计算平台

#k8s #Arrow

DataFusion的作者新的项目,目前是PoC(概念验证)阶段。

  • Read More

  • ballista

tokio重构计划:让tokio 的子crate “坍缩”为一个独立的crate

#tokio

主要是解决tokio用户对依赖tokio时候pull的crate数量抱怨的问题。大家可以来此issues下讨论替代的策略。

(合久必分,分久必合)

Read More

advisory-db: RustSec组织发布的安全告警数据库

#RustSec

advisory-db

silicon: 为你的源码创建漂亮的图片

#Carbon

有一个网站叫Carbon,可以创建漂亮的代码图片,而silicon是该功能的Rust实现。

640?wx_fmt=png

  • silicon

  • carbon


From 日报小组 Chaos

日报订阅地址:

独立日报订阅地址:

  • Telgram Channel

  • 阿里云语雀订阅

  • Steemit

  • GitHub

社区学习交流平台订阅:

  • Rust.cc 论坛: 支持 rss

  • Rust Force: 支持 rss

  • 微信公众号:Rust 语言学习交流

这篇关于【Rust日报】 2019-07-17:微软安全响应中心:一种主动性的方式来提升安全的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1085900

相关文章

Java 线程安全与 volatile与单例模式问题及解决方案

《Java线程安全与volatile与单例模式问题及解决方案》文章主要讲解线程安全问题的五个成因(调度随机、变量修改、非原子操作、内存可见性、指令重排序)及解决方案,强调使用volatile关键字... 目录什么是线程安全线程安全问题的产生与解决方案线程的调度是随机的多个线程对同一个变量进行修改线程的修改操

java实现docker镜像上传到harbor仓库的方式

《java实现docker镜像上传到harbor仓库的方式》:本文主要介绍java实现docker镜像上传到harbor仓库的方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 前 言2. 编写工具类2.1 引入依赖包2.2 使用当前服务器的docker环境推送镜像2.2

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

C++中零拷贝的多种实现方式

《C++中零拷贝的多种实现方式》本文主要介绍了C++中零拷贝的实现示例,旨在在减少数据在内存中的不必要复制,从而提高程序性能、降低内存使用并减少CPU消耗,零拷贝技术通过多种方式实现,下面就来了解一下... 目录一、C++中零拷贝技术的核心概念二、std::string_view 简介三、std::stri

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

Mybatis的分页实现方式

《Mybatis的分页实现方式》MyBatis的分页实现方式主要有以下几种,每种方式适用于不同的场景,且在性能、灵活性和代码侵入性上有所差异,对Mybatis的分页实现方式感兴趣的朋友一起看看吧... 目录​1. 原生 SQL 分页(物理分页)​​2. RowBounds 分页(逻辑分页)​​3. Page

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

Linux实现线程同步的多种方式汇总

《Linux实现线程同步的多种方式汇总》本文详细介绍了Linux下线程同步的多种方法,包括互斥锁、自旋锁、信号量以及它们的使用示例,通过这些同步机制,可以解决线程安全问题,防止资源竞争导致的错误,示例... 目录什么是线程同步?一、互斥锁(单人洗手间规则)适用场景:特点:二、条件变量(咖啡厅取餐系统)工作流