米国政府呼吁抛弃 C 和 C++

在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「C++的资料从专业入门到高级教程」,

点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!

很多观点认为C 或 C++永远不可被其它语言取代。但是美国政府却呼吁放弃继续使用这两种语言。

在一份新报告中,美国白宫国家网络主任办公室 (ONCD) 呼吁开发人员使用“内存安全编程语言”。该建议是美国总统拜登网络安全战略的一部分,是“确保网络空间基石安全”的举措。


内存安全是指防止处理内存访问的错误和漏洞。缓冲区溢出和悬空指针就是这样的例子。Java 由于其运行时错误检测检查而被认为是内存安全的语言。然而,C 和 C++ 都允许使用直接内存地址进行任意指针运算,并且不进行边界检查。

2019 年,微软安全工程师报告称,约 70% 的安全漏洞是由内存安全问题引起的。谷歌在 2020 年也报告了同样的数字,这次是针对 Chromium 浏览器中发现的漏洞。

报告中写道:"专家们发现,有几种编程语言既缺乏与内存安全相关的特征,又在关键系统中大量使用,如 C 和 C++,按照网络安全和基础设施安全局(CISA)开放源代码软件安全路线图的建议,从一开始就选择使用内存安全的编程语言,就是以安全设计方式开发软件的一个例子。"

这份长达 19 页的报告的目标是确保网络安全的责任不仅仅落在个人和小企业手中。相反,责任在于更大的组织、科技公司,最终是政府。

该报告详细介绍了它认为“不安全”的编程语言,即C和c++。我们不是在这里讨论编程语言的利弊,但有趣的是,报告并没有建议一种特定的语言来代替它们。我们被告知有“几十种内存安全的编程语言可以——而且应该——被使用。”1a02c2e5a16bd58e0ca070083cc2323f.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/40513.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

页面集成技术方案汇总

1.window.open() 优点: 新开窗口或标签页展示内容:允许在新的浏览器窗口或标签页中打开指定的URL,适用于需要独立页面交互的场景。隔离性:新窗口拥有独立的执行环境,不会干扰主页面的JavaScript上下文和DOM结构。易于实现&#…

聚鼎装饰画:装饰画生意现在做晚吗

在这个充满机遇与挑战的时代,涉足装饰画领域是否为时已晚?许多人心中或许有着这样的疑问。事实上,尽管市场上的竞争者众多,但正如“朝霞映满天,别样红”一般,每个行业的黄金时期都有所不同,关键在于我们能…

设计模式-装饰器

装饰器模式是一种结构型设计模式,它允许在运行时扩展一个对象的功能,而不需要改变其现有结构。这种模式的核心思想是通过创建一个装饰器来动态地增强或修改原有对象的行为。装饰器模式是继承的一个补充,提供了比继承更加灵活的方式来扩展对象…

在线JSON可视化工具--改进

先前发布了JSON格式化可视化在线工具,提供图形化界面显示结构关系功能,并提供JSON快速格式化、JSON压缩、快捷复制、下载导出、对存在语法错误的地方能明确显示,而且还支持全屏,极大扩大视野区域。 在线JSON格式化可视化工具 但…

Cannot load configuration class: com.xxx.NacosConfigApplication

Cannot load configuration class: com.xxx.NacosConfigApplication 无法启动成功 表象错误的日志信息解决方案结言 表象 最简单的Spring Boot maven 配置 properties配置 启动类,但是,就是无法启动成功。 错误的日志信息 java.lang.IllegalStateEx…

Java面试题系列 - 第1天

题目:解释Java中的垃圾回收机制(GC)并描述至少两种不同的垃圾回收算法。 背景说明:Java的垃圾回收机制是其自动内存管理的关键特性之一,它自动追踪并回收不再使用的对象所占用的内存空间,从而避免了手动管…

硅纪元AI应用推荐 | 国产创作引擎即梦AI助力创作者探索创作新境界

“硅纪元AI应用推荐”栏目,为您精选最新、最实用的人工智能应用,无论您是AI发烧友还是新手,都能在这里找到提升生活和工作的利器。与我们一起探索AI的无限可能,开启智慧新时代! 在人工智能快速发展的今天,各…

怎么还有人分不清路由器、交换机、光猫、WiFi……你真的都了解吗?

号主:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部 下午好,我的网工朋友。 讲某个具体技术,说不定你头头是道,但关于路由器、交换机、光猫、WiFi的知识细节&…

自然语言处理领域介绍及其发展历史

自然语言处理领域介绍及其发展历史 1 NLP2 主要任务3 主要的方法1 基于规则的方法(1950-1980)2 基于统计的方法(传统的机器学习的方法)3 Connectionist approach(Neural networks) 1 NLP 自动的理解人类语…

新能源组合灶,一灶两用(电燃灶+电陶炉),电生明火,无需燃料

在科技日新月异的今天,厨房电器的创新不断为我们的生活带来便捷与惊喜。华火新能源电燃灶,以其独特的设计和卓越的性能,成为未来厨房的首选,为您打造全新的烹饪体验。 中国人的烹饪文化源远流长,讲究火候的掌控和明火烹…

Android系统system.exit(10);里面10代表的涵义,以及其他可以赋值数字可以是多少?

在Android系统中,System.exit(int status) 方法是Java语言提供的,用于终止当前正在运行的Java虚拟机(JVM)。在Android应用开发中,这个方法的使用并不常见,也不推荐,因为Android应用通常是通过其…

PHP电商系统开发指南高级技巧

开发高级 php 电商系统所需的技巧包括:数据库优化:使用索引、规范化数据结构和缓存机制。性能优化:启用页面缓存、优化图像和使用 cdn。购物车管理:使用会话或数据库存储数据,实现实时更新和弃单恢复。支付集成&#x…

[vue3+js]实现3d旋转效果

1. 实现效果图&#xff1a; 2.实现代码&#xff1a; css: <style lang"scss" scoped>.bottomContainer{width: 1200px;height: 400px;display: flex;justify-content: center;position: relative;margin:200px auto;align-items: center;// background-image…

既美观又方便的后台框架谁需要?进来就对了。

一套既美观又方便的后台框架可以大大幅节约开发时间和成本。 我们来一起看看几个明朗大气的管理控制台页面。 本文档会持续更新 模板编号&#xff1a;翠花_001模板编号&#xff1a;翠花_002模板编号&#xff1a;翠花_003

01 centos7中cmake配置crow开发环境

一、搭建开发环境 1.1 c开发环境 yum -y install gcc gcc-c gdb git1.2 安装crow所需依赖 yum install boost boost-devel yum install openssl openssl-devel1.3 安装cmake_3.27.9 可以借鉴此安装&#xff1a;https://blog.csdn.net/i_coding_/article/details/131883590 …

nginx的匹配及重定向

一、nginx的匹配&#xff1a; nginx中location的优先级和匹配方式&#xff1a; 1.精确匹配&#xff1a;location / 对字符串进行完全匹配&#xff0c;必须完全符合 2.正则匹配&#xff1a;location ^~ ^~ 前缀匹配&#xff0c;以什么为开头 ~区分大小写的匹配 ~* 不区分…

IDEA:插件和配置推荐(2024版)

文章目录 一、插件1.1 主题1.2 代码缩略图1.3 Maven插件2.4 彩虹括号2.5 翻译插件2.6 图标插件2.7 MyBatis插件2.8 阿里巴巴开发规范 二、全局配置2.1 主题2.2 字符编码2.3 注释颜色2.4 自动导包2.5 鼠标控制界面大小 三、新项目设置3.1 Maven3.2 SDK 四、恢复初始化 一、插件 …

SpringBoot 多数据源配置

目录 一. 引入maven依赖包 二. 配置yml 三、创建 xml 分组文件 四、切换数据源 一. 引入maven依赖包 <dependency><groupId>com.baomidou</groupId><artifactId>dynamic-datasource-spring-boot-starter</artifactId><version>3.6.1&…