在整个信息系统中,计算平台是系统的基础,决定了整个IT系统的安全性和可靠性。纵向上,计算平台从下到上的每一层都面临着不同的安全威胁。2018年以来,芯片被曝出侧信道攻击漏洞,硬件可能遭受物理攻击,固件可能被篡改植入后门。木马、应用程序和操作系统是黑客攻击的重点领域。因此,构建整个计算平台自下而上的完整信任链是保证平台算力安全可信的第一步。另一方面,要保证数据的安全,需要保证数据全生命周期的安全。目前,在数据的全生命周期中,每个环节都有成熟的安全技术和解决方案保障,唯独数据使用的安全性仍然是业界的难题。原因是当数据被处理时,它必须是确定性的并且必须被处理器理解。例如,要使用密钥,必须以明文形式输入以获得确定性结果。这个过程为攻击者提供了可乘之机。使用中的数据安全问题需要通过隐私计算或机密计算技术来解决。所以这些技术将是未来几年数据安全的核心竞争力。安全计算平台:快速开发安全可信应用的基础为了支持客户和合作伙伴快速开发安全可信应用,鲲鹏致力于提供基于鲲鹏处理器和EulerOS的完整安全解决方案,为鲲鹏提供应用使能BoostKit套件,包括机密计算TrustZone套件、KAE加速引擎等一系列组件,构建全栈安全能力,支持多场景应用。在硬件方面,鲲鹏提供三大核心能力:可信计算、机密计算、安全加速。可信计算是基于芯片内置的信任根,实现安全启动和可信测量,防止系统被篡改;机密计算基于ARMTrustZone架构构建安全可靠的可信执行环境,让数据可用不可见;安全加速是通过处理器内置的“高性能安全密码加速卡”KAE加速引擎实现的。在操作系统内核上,鲲鹏不仅增强了openEuler的安全性,还为机密计算TrustZone提供了专用的TEE安全操作系统。操作系统安全性通过形式化验证测试,获得CCEAL4+安全认证。其微内核由华为自研,经过成熟市场验证,已在数亿端侧设备上稳定运行十余年。在应用使能层,鲲鹏提供鲲鹏安全库和secGear机密计算框架,结合硬件能力,赋能鲲鹏开发者快速打造安全可靠的应用。目前鲲鹏安全解决方案已覆盖主流安全场景,在金融、运营商、政府等行业均有实际应用案例。鲲鹏可信计算:基于芯片内置的信任根实现安全启动和可信测量我们知道,在一个完整的计算系统中,存在被攻击、篡改和植入后门木马的风险。可信计算技术是通过安全启动、可信启动等技术手段,从硬件的信任根开始构建一条自下而上的信任链,保证整个系统的完整性,防止被恶意篡改。鲲鹏服务器提供完整的可信计算解决方案,以硬件鲲鹏处理器为信任根,向上提供完整的信任链,支持安全启动和可信启动两套解决方案。安全启动确保系统启动过程遵循签名的逐步验证。如果验证失败,将停止启动过程,并为系统加载安全备份版本,以防止系统被篡改和非法运行。可信启动在系统启动过程中对各个关键部件进行测量,并将测量结果保存在可信硬件TPM中。系统运行后,可以随时提供系统测量报告,允许第三方远程验证系统的安全和信任状态。其中,系统可信度动态度量的远程认证开发框架已经开源并贡献到openEuler社区鲲鹏安全库中,目前仍在持续开发和演进中。有兴趣的朋友可以去社区看看,欢迎大家一起参与。鲲鹏BoostKit机密计算TrustZone套件:使能可信数据流和机密计算技术,也是业界最流行的数据安全技术之一。如前所述,机密计算技术主要是基于硬件芯片构建安全可信的执行环境,并在可信执行环境中运行数据,也称为TEE(TrustExecutionEnvironment),达到保护数据在使用中的目的。目前,不同的芯片厂商都推出了自己的机密计算技术,比如英特尔的SGX技术、AMD的SEV技术和ARM的TrustZone技术。虽然各自的技术实现方式不同,但达到的目的和效果基本相同。与传统的为系统管理员和计算提供无条件信任的计算模型相比,采用保密计算技术的计算模型可以有效防止云厂商等算力提供商非法获取数据。面对恶意管理员或内部犯罪等威胁,仍能在运行时有效保护用户数据。鲲鹏采用ARM的TrustZone开放架构,实现可信执行环境。基于CPU分时复用机制,将CPU和计算资源分为安全世界(TEE)和非安全世界(REE),需要保护的数据放在安全世界中。世界计算,非安全世界无法访问安全世界数据。具体来说,华为以鲲鹏BoostKit机密计算TrustZone套件的形式提供开放的开发架构,提供预装的TEE安全操作系统和系统固件,以及社区开源SDK和补丁。预装部分,从芯片开始,硬件需要BIOS和BMC的配合。BIOS完成对TEEOS的解密和验证,初始化安全内存并启动TEEOS,BMC提供升级和维护能力。TEEOS是鲲鹏机密计算TrustZone套件的核心组件。采用华为自有微内核系统,针对服务器云应用场景适配优化。TEEOS的主要特点是:一是稳定可靠,应用于手机近10年,服务超过1亿用户;二是安全有保障,已获得第三方安全认证,获得CCEAL4+证书,CCEAL6+认证也在进行中。对于开源部分,REE端的补丁提供了驱动和CA开发接口,开发者可以根据自己的操作系统进行编译。同时,TEESDK提供了标准的GP接口,独特的服务接口,POSIXC和C++接口,对开发者比较友好,开发的便捷性也是鲲鹏方案的特点之一。在机密计算的过程中,还有一个问题必须解决,那就是TA(TrustedApps)的来源是不可预测的。为了保证TEE环境的可信度,避免被恶意应用程序污染,TA在运行前必须获得身份和完整性。性确认。鲲鹏机密计算使用发给客户的开发者证书,控制TA的完整性验证。总体流程如下:1.开发者决定启动项目,为其TA生成证书申请文件,提交给华为项目联系人;2、华为项目联系人组织项目评审。审核通过后,联系人通过PKI申请证书,最后将证书发回给客户端;3、开发者构建TA??二进制文件,使用SDK提供的工具对TA进行签名加密,生成最终镜像文件。当然,这样的过程还是有些繁琐。为了进一步简化开发者的开发流程,近期将上线证书二次导入功能,开发者可以在TEEOS中导入自己的证书,直接使用自己的证书进行TA认证。签名验证不需要每次启动项目都通过华为的签名验证,开发更方便。鲲鹏BoostKitKAE加速引擎:处理器内置的“高性能安全加速卡”,鲲鹏安全解决方案,将传统加密解压能力、符合国际标准的加解密能力、国标国密算法集成到鲲鹏处理器中.与传统PCIe加速卡方案相比,性能提升30%以上。在安全性方面,由于明文数据不出芯片,不使用数据总线,安全性也得到了提升。在易用性方面,鲲鹏提供了相应的软件API接口和SDK。应用层无需修改即可直接调用,兼容OpenSSL、Zlib等现有标准接口。鲲鹏秉承以开发者为中心的理念,将易用性做到极致。使用。secGear机密计算开发框架:安全应用开发效率成倍提升当前机密计算行业面临的一个主要问题是不同厂商使用不同的硬件架构,比如我们前面提到的IntelSGX和ARMTrustZone。而不同的硬件架构必然会带来不同的软件接口,进一步带来应用的不兼容。在一个平台上开发的应用不能在另一个平台上使用,面临重复开发的问题。而secGear就是为了帮助开发者解决这个问题,实现一套兼容多种硬件的软件框架,为开发者屏蔽硬件差异。通过使用secGear中间件,开发者只需使用统一的API进行一次开发,即可将开发的应用部署到多种不同的硬件上,大大提高了开发效率,减少了重复性工作,更适应实际现实中多硬件共存的情况。除了安全技术本身,华为还对整个产品的安全质量提出了高标准、严要求。采用科学、系统的方法,将安全可信保障活动纳入产品开发过程的全生命周期,确保产品的安全性、可信性和可持续性。华为基于行业最佳实践建立了一套高效的安全工程能力管理流程。产品开发设计的每个阶段都对应相应的安全活动,从产品概念阶段的安全需求分析,到设计阶段的安全设计,再到安全开发、安全测试,最后到产品发布后的持续维护。尽可能不留盲点,降低产品安全风险,为客户和开发者提供最高安全和品质的产品,解除后顾之忧。本文通过分享鲲鹏的安全解决方案,希望能给客户和合作伙伴在构建行业安全解决方案方面带来启发和价值,也希望有兴趣的朋友能够进一步参与到鲲鹏的项目中,共同发展和构建更完善的安全生态。欢迎登录hikunpeng.com——鲲鹏社区鲲鹏BoostKit专区,了解更多安全解决方案。
