​做安全操作系统,这位技术老兵是认真的!_CSDN云计算的博客-程序员宅基地

技术标签: 编译器  芯片  人工智能  编程语言  物联网  


受访者 | 王文东

记者 | 伍杏玲

出品 | CSDN云计算(ID:CSDNcloud)

近年来国际形势变化莫测,基础软件作为建设国家信息系统的核心,其自主研发能力备受关注与热议。作为企业和个人开发者,我们如何打破当前国产基础软件窘境,做出“卡别人脖子”的产品?

际遇风云之时,操作系统领域资深专家王文东和庹凌云,积极关注我国基础软件发展,于2020 年 8 月,布局创办了拥有自主技术的企业——熵核科技,并研发出熵核安全操作系统XCOS,致力于解决智能物联网、车联网与区块链等领域的安全问题。

该如何强化基础软件自主可控体系,更好地创新国产操作系统生态?对此,CSDN 专访熵核科技联合创始人兼 CEO 王文东,聊聊国产安全操作系统的技术创新与思考。

王文东

拒绝“卡脖子”威胁,自研安全操作系统

 

对于技术创业者而言,如何寻找风口,如何寻找与专业特长契合的大浪潮,始终是世纪难题。拥有高性能编译器Open64 优化、美满科技(Marvell) JavaScript 虚拟机 Kinoma 优化技术经验的王文东,结合近年来大众对底层系统软件自主研发技术的渴望;以及通用安全操作系统市场中80-90% 均被国外厂家所垄断、国产安全操作系统正面临“卡脖子”风险的现状,毅然带领团队敲下第一行 XCOS的代码,开启安全操作系统的创业之旅。

《创能量》一书如此劝告创业者:“不要去跟着市场的尾巴,要站在国家的角度、行业的角度去预测风向。发现有所改变,就尽全力带领公司站在顺风口那里,这是一种智慧也是一种谋略。”

尽管王文东团队拥有操作系统、虚拟机丰富的研发经验,但研发安全操作系统并不是一件容易的事情,王文东坦言有以下三大难题:

在技术上,安全操作系统与通用操作系统存在差异性,安全操作系统最大的特性是安全虚拟机,因此研发人员除了掌握操作系统原理和技术外,还需对 CPU 架构、指令集、编译器等各模块技术深入了解,当前国内同时拥有这些技术经验的人才是相对比较少的。

在人才培养上,王文东观察到,自 2008 年后,上述技术人才存在断层现象。在 2008 年以前,这方面的人才相对多一些,但在 2008 年后,由于移动互联网、电商等潮流席卷,人才的培养更偏向应用层开发,因此出现了底层系统软件人才断层的现象。

在生态上,安全操作系统需适配 GlobalPlatform 等国际安全标准、匹配企业业务需求,促进行业生态健康发展。这要求开发人员在掌握安全操作系统技术外,还需了解相关的行业知识。王文东举例:物联网设备种类众多,各厂家的技术栈存在较大差异,需要的安全解决方案也是各种各样的,因此在对接各个厂商,提供安全操作系统时存在适配难题。

王文东迎难而上,率领 17 人核心研发团队打造的 XCOS拥有以下技术优势:一是完全自主研发,拥有自主知识产权;二是自定义字节码、指令集,适配GlobalPlatform 等国际安全标准,并兼容主流安全操作系统的 API;三是支持多语言开发,XCOS 已支持 Java、C++,未来将支持 JavaScript 、Solidity 等编程语言。另外,熵核科技正与多家国内知名安全芯片厂家交流对接,并携手几家方案提供商,进行深度的合作,打通安全操作系统的上、中、下游,促进国产安全操作系统生态发展。

 

安全操作系统的技术与应用

 

据中国信通院发布的《物联网白皮书(2020年)》显示,到 2025 年,全球联网的物联网设备将达到 250 亿台左右,其中中国的物联网设备将达到 80 亿台。随着 5G、AI 等技术的发展,威胁攻击手段不断升级:例如今年美国最大燃油管道受攻击导致美国17个州和华盛顿特区进入紧急状态,2020 年 Ripple20 0day 漏洞曝光,波及数亿台联网设备,CallStrangerUPnP 漏洞影响数十亿台设备……

由于物联网的万物互联特性,物联网安全也是一个宽泛的领域,在设备侧、传输过程、服务侧等方面均有可能受到安全威胁,其中以设备侧最容易发生隐私泄露、恶意代码攻击、数据窃取、数据篡改、固件完整性被破坏等安全事故。

目前在物联网设备侧的安全解决方案中,以安全芯片为基础、搭载通用安全操作系统的 SE 方案已成为物联网端侧安全的最优解决方案。

熵核科技自主研发的安全操作系统 XCOS,可对物联网设备提供固件防护、系统安全引导、数据加密、秘钥保护、远程身份认证等服务,同时提供了高效灵活的 API,便捷开发与集成,保障物联网设备的安全。

王文东举例,物联网设备在数据传输时通常采用 TLS、SSL加密技术,但在远程身份认证中很难识别端侧设备的真实性。熵核科技的基于安全芯片的安全操作系统针对此提供了解决方案,来解决远程身份问题。这相当于在设备上添加一个芯片,当运行安全操作系统后,设备的身份等信息固化在芯片里,并对设备的安全启动做出保护,以达到固件升级防护的效果。

尽管熵核科技才创办一年,王文东却信心满满:他清晰定位熵核的技术边界是安全和虚拟机。计划花费一年时间研发第一款产品 XCOS(已达成),紧接着市场验证一年左右的时间,第三年发力生态,将产品全面推向市场。另外,规划中的第二款安全虚拟机产品将用于区块链场景,第三款虚拟机产品将面向领域的编程语言相关的训练。

 

建议开发者

据 CSDN《2020-2021 中国开发者调查报告》数据显示,31% 的被调查开发者认为实现国产操作系统弯道超车的突破点,在于大力培养操作系统人才。对此,王文东建议有志于从事操作系统的开发者:

一是作为在校大学生,应深入学习体系结构、操作系统、编译原理等相关的课程,储备理论知识; 

二是国内众多企业和科研机构正在积极参与 RISC-V 生态,开展了各类线上线下培训和讲座分享,大家可以学习相关知识;

三是实践,初学者可以从一块简单的开发板、从开源系统开始,通过编程来搭建出特定系统,实践出真知。

 

结语

作为一位 20 多年的老程序员,编程已成为王文东的习惯,如今作为熵核 CEO 的他仍会投入 30-40%的时间精力在研发上,“对我而言,编程已成为我调整心情的‘工具’了,当遇到难解或纠结的问题时,我会埋头敲代码,心情随着一行行代码的输出,慢慢地平静下来了。”

笔者采访王文东时,发现 70 后的他虽为创企的 CEO,言语间是一位技术者朴素的初心:喜欢编程,想自主研发出硬核安全操作系统,怀着一颗敬畏的心,兢兢业业,带领团队砥砺前行,为国产基础软件贡献技术力量。

祝福王文东团队,祝福熵核科技。

往期推荐

一部手机是否能用7年?你的手机用了多久?

海量秋招面试资料等你来拿!

Python自制成语接龙小游戏

张一鸣购得元宇宙入场券,谁将是头号玩家?

点分享

点收藏

点点赞

点在看

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/FL63Zv9Zou86950w/article/details/120231732

智能推荐

《Unity3D网络游戏实战》第2章_yxqq378287007的博客-程序员宅基地

《Unity3D网络游戏实战》第2章异步代码异步客户端异步代码Async.csusing System;using System.Threading;namespace Async { class MainClass { public static void Main (string[] args) { Timer timer = new Timer(Timeout, null, 2000, 0); Thread.Sleep(2000*2); Console.WriteL

安装系统_iefanrui的博客-程序员宅基地

第一步、准备工作    安装系统前要做一些准备工作,首先是制作你要安装的系统的系统镜像。制作系统镜像要先下载一个UltraISO软件。然后右键点击选择“以管理员的身份运行”(注意:必须这样做)。打开后点击左上角的“文件”-—“打开”,找到存放系统镜像的目录,选中系统镜像,然后点击“打开”。然后点击 “启动”—“开始硬盘录入”,然后选择一个U盘作为系统启动盘(注意:这个U盘必须足够大,一般16G的就...

pv3d 的 Camera3D练习_suzhou_boy1的博客-程序员宅基地

 http://www.sandy1219.com/3d/test2/testflabcamera.html  package{ import flab3d.FlabCamera3D; import flash.display.Sprite; import flash.display.StageAlign; import flash.display.Stage

CAsyncSocket::Send()、OnSend()_hahahapeige的博客-程序员宅基地

virtual int Send( const void* lpBuf, int nBufLen, int nFlags = 0);Dialog中Socket设置AsyncSelect(FD_WRITE),触发虚函数OnSend(),之后调用Send()发送消息。参数lpBuf包含要传输的数据的缓冲区。nBufLen中的数据的长度lpBuf以字节为单位。nFlags...

怎么学python-新手如何自学python课程?_weixin_37988176的博客-程序员宅基地

为了Python的自学党们,传智播客真的是拼了,今天给大家讲讲新手如何自学python课程?传智播客不仅有“人工智能+Python学习路线图”,还根据以往的经验,总结出学习Python之前的各种问题,想详细了解,从此贴开始吧!!!想学Python就已经迈出了通向成功的第一步,想要通过自学成才的话,是需要很大的毅力和吃苦精神,切忌三天打鱼两天晒网。建议通过我们传智黑马论坛的python相关帖子来一步...

利用compositionstart/end事件监听输入法事件_青山院长白菜的博客-程序员宅基地_compositionstart

var flag = false;document.querySelector('input').oninput = function() { setTimeout(() => { if (!flag) console.log(this.value); }, 0);};document.querySelector('input').onkeyup = function(...

随便推点

解决zabbix中文不能导入数据库和图形中文乱码的问题_运维饺子的博客-程序员宅基地

一.解决中文不能导入:先说以下没安装之前,正常的解决方法:设置数据库 :vim /etc/my.cnf在[mysqld]下添加:character_set_server=utf8并且在创建zabbix库的时候,设置utf8:create database zabbix character set utf8;以上。然后再说以下已经安装完了出现如下错误的解决方法:导出数据库:...

Django自定义模板标签与过滤器_mapyking的博客-程序员宅基地

常用内置标签:标签描述{% for %} {% endfor %}遍历输出上下文内容{% if %} {% endif %}对上下文条件进行判断{% csrf_token %}生成csrf_token标签,用于防护跨站请求伪造攻击{% url %}生成相应路由地址{% load %}加载导入django标签库{% static %}加载读取静态资源文件{% extends xxx %}使当前模板继承xxx模板

SpringBoot遗忘知识点整理_大忽悠爱忽悠的博客-程序员宅基地

SpringBoot遗忘知识点整理@[email protected]@PropertySourceSpring高级之注解@PropertySource详解(超详细)@PropertySource配置的用法@Value【Spring注解驱动开发】如何使用@Value注解为bean的属性赋值,我们一起吊打面试官!OncePerRequestFilterOncePerRequestFilter 过滤器Spring MVC应用 – 过滤器Spr

JAVA 方法重写_白帽菌的博客-程序员宅基地

子类通过重写可以隐藏已继承的方法(方法重写称为方法覆盖(method overriding))1、重写的语法规则:如果子类可以继承父类的某个方法,那么子类就有权利重写这个方法。所谓方法重写,是指子类中定义一个方法,这个方法的类型和父类的方法的类型一致或者是父类的方法的类型的子类型,并且这个方法的名字、参数个数、参数的类型和父类的方法完全相同。2、重写的目的:子类通过方法的重写可以隐藏继承的...

Android.mk 文件语法详解_一米阳光-ing的博客-程序员宅基地

转:http://blog.sina.com.cn/s/blog_602f8770010148ce.html=====================================================================================0. Android.mk简介:Android.mk文件用来告知NDK Build 系统关于Source的信息...

交换排序_hailushijie的博客-程序员宅基地

/** * 从0位置开始,依次和后面所有元素进行比较,并将小数交换到前面。 * o(N*N) * @author *冒泡排序,选择排序,插入排序,交换排序属于简单排序方法 */public class ExchangeSort { private static int[] array = new int[]{1,8,2,9,3,7,11,23,90,4,5}; public sta