峰会回顾第18期 | 基于可信的机密计算

OpenHarmony TSC   2023-07-11 10:03:27

演讲嘉宾 | 赵 波

回顾整理 | 廖 涛

排版校对 | 李萍萍


(资料图)

嘉宾简介

赵波,博士,教授,武汉大学国家网络安全学院党委书记,国家网络安全先进个人,国家网络安全优秀教师,武汉大学珞珈特聘教授,中国密码学会理事,中关村可信计算联盟副理事长,CCF(中国计算机学会)高级会员,CCF 信息安全与保密专委会、容错计算专委会委员。TCG(国际可信计算组织)组织个人会员。主要研究方向为密码学应用、信息系统安全、可信计算、嵌入式系统云计算安全、网络安全技术等。参与多项重点工作,发表七十余篇学术论文,获得国家发明授权十余项。并出版《可信计算》等学术专著。

内容来源

第一届开放原子开源基金会OpenHarmony技术峰会——安全及机密计算分论坛

视频回顾

正 文 内 容

可信计算引领的整体安全架构和主动免疫安全体系,已经成为网络空间安全技术版图中不可或缺的重要一环;机密计算提供硬件级的系统隔离,在数据安全领域起到了重要的作用。两者能够碰撞出什么火花呢?武汉大学国家网络安全学院党委书记、二级教授赵波在第一届OpenHarmony技术峰会上分享了几点思路。

01

可信计算及发展历程

1.1►►

可信计算

什么是可信计算呢?根据ISO/IEC定义:参与计算的组件、操作或过程在任意的条件下都是可预测的,并能够抵御病毒和一定程度的物理干扰;根据IEEE定义:计算机所提供的服务的可信赖性是可论证的。赵波教授所在团队认为可信可以理解为可靠与安全的结合体:如果一个实体的行为总是以预期的方式,达到预期的目的,那么其就是可信的。

可信计算如何实现呢?可信计算是通过硬件层、应用层以及基础平台层三者共同实现的。可信计算技术是保障信息系统安全的关键技术,特点是从底层做起、从PC终端做起,强调信任关系传递的可信计算平台适合作为软硬件软硬件安全的基准度量平台。利用可信计算技术,能够从芯片层面、主板层面、系统软件层面、应用软件层面以及网络层面综合考虑,构建起可信的计算体系。

1.2►►

技术落地

在可信技术落地的实践上,赵波教授所在团队实现了可信计算机和可信嵌入式平台:(1)可信计算机搭载了内置可信根芯片,从可信根出发对BIOS、OS、APP逐级度量并与可信存储中的度量值进行对比来建立可信链,在通用计算机的基础上实现了基于可信的安全功能;(2)可信嵌入式平台搭载了ETPM,不仅作为可信平台模块,而且主动控制系统I/O。此外,该嵌入式平台还使用了一种带数据恢复功能的星型信任结构, 利用可信根分别对引导程序、操作系统内核、文件系统等分别度量,采用星型度量方法,相较于传统链式可信启动模型具有降低信任损失,方便增删组件以及版本升级开销小的优势。

赵波教授所在团队也实现了面向云存储的可信计算环境技术落地。什么是可信计算环境呢?可信计算环境即利用可信计算的思想,从信任根出发,基于信任度量建立信任链,构建一种运算与防护并存的运行环境,保证了计算的行为与预期一致,同时保证全程可检测可监控。

在云存储领域,由于云存储环境本身并无任何可信机制,缺乏信任源头,无法满足数据存储的安全,在云内外部攻击者的威胁下,云内存储的数据面临被窥探的风险。基于该痛点,赵波教授所在团队以外置硬件可信根,将可信从客户机延伸至云端,构建可信计算环境,保护数据安全。该云储存产品以外置可信硬件为支撑,将“服务商提供安全”转变为“个人掌握安全”,将可信从用户处延申至云端,构建了面向安全存储的可信计算环境,以用户可感知的方法解决了软件和数据的隐私保护问题。

02

从可信到机密计算

2.1►►

机密计算

什么是机密计算呢?机密计算是在基于硬件的可信执行环境(TEE)中保护软件及数据运行态安全的安全范式。相比于多方安全计算和同态加密,TEE效率高,适应数据量大,交互频繁,响应时间快的交互需求。在计算机和大数据技术飞速发展的新场景下,各领域都越来越注重数据安全需求,例如:(1)云计算业务越来越依赖公共云和混合云服务,数据在第三方提供的环境中存储,运行。云中的数据隐私保护势在必行;(2)机器学习依赖模型训练,机构间共享数据可大幅度提升模型性能,机器学习中的数据隐私需要得到保障;(3)区块链用户之间数据一致性的验证需要基于历史数据的运算,该数据通常以明文方式进行运算,历史数据的隐私需要得到保护。机密计算能够有效满足这些场景的数据安全诉求。

机密计算的目标是什么呢?机密计算主要实现以下三方面能力:可用不可见:通过对TEE在运算过程中所使用的系统资源的隔离,使得数据在计算的过程中不被恶意窃取;可算不可识:对TEE中运行程序所使用的数据和代码进行加密存储,使敏感数据在使用过程中达到匿名化要求;专数专用:通过用户证书在创建TEE时确定其所有权,加密数据仅在授权的TEE中解密、运算,确保数据专数专用。

2.2►►

现状与不足

机密计算还处在发展初期,2019年由Linux基金会宣布由多家巨头企业组成的机密计算联盟成立,旨在推进机密计算的标准化和商业化发展进程。目前,IntelARMt等已经推出了各自的机密计算产品。

然而,当前已有的机密计算产品还存在较多不足,例如:

Intel通过对CPU一组指令的扩展,使得用户可以创建名为Enclave的TEE环境,系统为其分配专用的内存地址进行隔离。但当数据和代码被拷贝至环境中解码运行时,任何来自于Enclave外的访问都会被拒绝,对于Enclave而言,只有Intel的CPU是可信的;

ARM将系统运行态分为两类:安全世界、普通世界,并通过总线上的一位来区分运行态完成环境隔离。但任何来自普通世界的请求都无法访问安全世界运行的进程和数据。尽管CPU是可信的,但只能分别被两个运行态的环境分时使用。

03

基于可信的机密计算

可信计算环境与机密计算是两个不同的概念,但两者能够在硬件基础、技术架构、安全侧重点、数据安全以及云网段端应用等维度在一定程度上实现优势互补。总的来说,可信计算环境有信任根可以保证从硬件、软件、网络的整体安全,但对数据的动态安全保护能力较弱;机密计算可以保护数据运行态安全,但缺乏从下至上的信任环境,攻击面过大。赵波教授所在团队将二者结合,优势互补即构建可信的机密计算环境来保护系统安全。

基于可信的机密计算可以定义为:从硬件可信基出发,构造一个可信计算环境,并将可信向上延伸至机密计算环境,从而得到一个从启动到运行全方位安全的基于可信的机密计算环境。

与传统机密计算不同,可信机密计算将机密计算的底层技术扩大到了可信计算基,利用可信计算加密、度量等服务支撑机密计算的运行环境,同时解决了原有可信计算环境无法保证数据运行态安全的盲点。得益于可信计算的良好适用性,能够将机密计算的应用场景从云计算扩大到嵌入式系统。

构建基于可信的机密计算过程主要有以下几个步骤:首先构建可信根,如果设备本身没有可信组件,则需要使用嵌入式可信根,可信根需要对上层提供认证,加密、安全存储等基础可信服务的支撑;再基于可信根实现可信计算环境,通过对计算机系统代码和状态的度量等技术,构建自底向上的信任链,为机密计算提供可信的系统服务;最后构建基于可信根的机密计算环境,为运行程序构造隔离环境,并对运行在隔离环境内的应用程序提供度量、判定、控制、报告与审计等服务,确保其运行态安全。

目前,赵波教授所在团队研究了安卓环境下基于TF卡的半机密计算环境以及基于PCI的可信软件保护构建的机密计算环境两方面内容。

研究内容1:安卓环境下基于TF卡的半机密计算环境

构建可信计算根:基于加密TF卡构建信任基,内置加解密引擎,独立的运算单元,能够保证较高的加解密效率,同时由于密钥不出卡,能够保证安全性。通过TF卡提供的安全存储、加解密引擎、可信度量等服务,将信任从底部硬件通过信任链传递向上延伸,在不改变设备原本硬件构成的基础上,建立了可信计算环境,为后续机密运算环境的建立提供度量与判定的支撑功能。相比于通过硬件芯片构建信任基的方式,该方法效率更高,适应性更强。

基于可信根实现可信计算环境:可信基础软件基TSB是系统运行过程中可信度量、判定、控制、报告与审计功能的实际执行部件。TSB通过身份认证机制度量主客体身份的合法性,通过静态度量机制度量系统启动环境的可信性与文件的可信性,通过动态度量机制度量系统运行环境和应用的可信性,通过保密存储的支撑机制对系统和用户的数据进行私密保护,从而构建可信计算环境。

构建基于可信的机密计算环境:TSB通过基于可信根实现的安全存储、加解密、可信度量等服务,向运行于REE下的可信基础软件模块提供动态度量与判定的支撑功能,完成了对运行数据的保护,实现了机密计算功能。但由于应用程序并未运行在TEE中,而是运行在受到保护和监控的REE中,所以称之为半机密计算环境。

研究内容2:基于PCI的可信软件保护构建的机密计算环境

FPGA芯片等可信组件构成的硬件保护板通过PCI总线与工控机进行通信,基于其提供的加密、解密等服务,能够构建可信计算环境。通过可信根提供的硬件加密服务的支撑对运行在软件平台中的APP进行加壳保护,使敏感数据在使用过程中达到匿名化要求,实现了机密计算“可算不可识”的目标;通过文件过滤驱动,实现敏感数据的访问控制功能,实现了机密计算“专数专用”的目标;同时使用双进程保护和时间戳保护对其进行动态安全防护,实现了机密计算“可用不可见”的目标。软件平台基于可新环境构建,减小了攻击面,保证了程序从启动到运行的全方位数据安全,完成了可信的机密计算环境的构建。

研究展望

基于RISC-V的研究展望:作为一种新兴的精简指令集架构,RISC-V已经成为和X86、ARM并列的三大主流处理器架构之一。在缺乏硬件生产商信任的环境下,通过这一新兴架构实现自主可控的机密计算环境有两个思路:(1)利用Trustzone的思想,在可信根创建的可信计算环境内,复用RISC-V现有的PMP寄存器,为RISC-V提供独立物理机抽象,每个区域都能运行独立的OS和受保护的应用,实现可信机密计算环境;(2)利用SGX的思想,在可信硬件支持的计算环境中提供用户态的Enclave抽象,确保App在可信隔离环境中运行,实现可信机密计算环境。

04

总结

未来,基于可信的机密计算需要进一步与计算机硬件、密码和隐私机制相结合,以进一步实现基于硬件的内存隔离、资源划分等功能机制,同时在AI态势感知、漏洞挖掘、VM和OS安全、容器和微服务安全的协同支持下进一步提升体系安全能力;基于可信的机密计算在PC、嵌入式系统、IoT、移动网络等方面的也将会有进一步的应用。此外,国内开源运动的逐渐成熟也为机密计算相关技术的研究提供了良好的助力。

欢迎大家加入到机密计算相关的研究中来,利用开源平台构建可信的机密计算环境,打破机密计算环境目前所面临的黑盒子的瓶颈,共同为自主可控的机密计算技术贡献智慧。

E N D

点击下方阅读原文获取演讲PPT。

关注我们,获取更多精彩。审核编辑 黄宇