diff --git a/src/Summary.md b/src/Summary.md index 6beaf56c5d86a9883eaf2aae54ccbcffec5181b5..372fc912fbd83b220c575255ab4b51ee6062ac72 100644 --- a/src/Summary.md +++ b/src/Summary.md @@ -13,7 +13,7 @@ - [可信计算最佳实践](practices.md) - [海光平台可信计算实践](practices-hygon.md) - [飞腾平台可信计算实践](practices-phytium.md) - - [xx平台可信计算实践](practices-xxx.md) + - [可信计算3.0实践](practices-trustedComputing3.md) - [可信计算解决方案](solutions.md) - [xxx(厂商/产品/场景)可信计算解决方案] - [xxx(厂商/产品/场景)可信计算解决方案] diff --git "a/src/images/\345\217\257\344\277\2413.0\347\224\237\346\200\201\350\236\215\345\220\210\350\267\257\347\272\277\345\233\276.png" "b/src/images/\345\217\257\344\277\2413.0\347\224\237\346\200\201\350\236\215\345\220\210\350\267\257\347\272\277\345\233\276.png" new file mode 100644 index 0000000000000000000000000000000000000000..942c68f247ae6a736cf6c86ba5dc9259172c9a73 Binary files /dev/null and "b/src/images/\345\217\257\344\277\2413.0\347\224\237\346\200\201\350\236\215\345\220\210\350\267\257\347\272\277\345\233\276.png" differ diff --git "a/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0-\345\217\257\344\277\241BIOS\345\220\257\345\212\250\346\265\201\347\250\213.png" "b/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0-\345\217\257\344\277\241BIOS\345\220\257\345\212\250\346\265\201\347\250\213.png" new file mode 100644 index 0000000000000000000000000000000000000000..6424c6aafeeddae6538e7b11c30897bb7d30f328 Binary files /dev/null and "b/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0-\345\217\257\344\277\241BIOS\345\220\257\345\212\250\346\265\201\347\250\213.png" differ diff --git "a/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0CPU\345\206\205\347\275\256\346\226\271\346\241\210\345\233\276.png" "b/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0CPU\345\206\205\347\275\256\346\226\271\346\241\210\345\233\276.png" new file mode 100644 index 0000000000000000000000000000000000000000..16ba650ced06f878bcae58796c24e8293f263c0a Binary files /dev/null and "b/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0CPU\345\206\205\347\275\256\346\226\271\346\241\210\345\233\276.png" differ diff --git "a/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0\345\217\214\347\263\273\347\273\237\346\236\266\346\236\204\345\233\276.png" "b/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0\345\217\214\347\263\273\347\273\237\346\236\266\346\236\204\345\233\276.png" new file mode 100644 index 0000000000000000000000000000000000000000..bf9ddb6dee3546acd7aece603730e97933931a80 Binary files /dev/null and "b/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0\345\217\214\347\263\273\347\273\237\346\236\266\346\236\204\345\233\276.png" differ diff --git "a/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0\346\225\264\346\234\272\344\272\247\347\272\277\345\257\274\345\205\245\346\265\201\347\250\213\345\233\276.png" "b/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0\346\225\264\346\234\272\344\272\247\347\272\277\345\257\274\345\205\245\346\265\201\347\250\213\345\233\276.png" new file mode 100644 index 0000000000000000000000000000000000000000..6272122d93c7d3bcd34cd6c9295401678e71778c Binary files /dev/null and "b/src/images/\345\217\257\344\277\241\350\256\241\347\256\2273.0\346\225\264\346\234\272\344\272\247\347\272\277\345\257\274\345\205\245\346\265\201\347\250\213\345\233\276.png" differ diff --git a/src/practices-trustedComputing3.md b/src/practices-trustedComputing3.md new file mode 100644 index 0000000000000000000000000000000000000000..92b101e9643c5a75bd06615fd56d146b6b303f68 --- /dev/null +++ b/src/practices-trustedComputing3.md @@ -0,0 +1,87 @@ +# 可信计算3.0 系统架构概述 + +可信计算3.0双体系可信计算架构是整个主动免疫防御体系的基础结构保障,构建了安全隔离的计算部件与防护部件并存的双体系架构,计算部件无法访问防护部件的资源,防护部件可访问计算部件的所有资源,双方通过安全的专用通道进行交互,这是构建整个主动免疫防护体系的基石。防护部件以可信平台控制模块 TPCM 为核心和信任源点,能够先于计算部件处理器启动,并通过直接总线共享机制访问主机所有资源,进行静态和动态可信验证,通过验证方能启动或继 续执行,否则进行报警和控制,主动抵御入侵行为,并能实时生成主机的可信 报告,上报至可信安全管理平台进行进一步关联分析。 + +可信计算3.0双体系架构的核心部件有: +- TSB(Trusted Security Base)是可信安全基,是可信计算3.0中的一个重要概念。它是指在可信计算环境中,能够提供可信服务的最小软硬件集合,包括可信硬件、可信软件和可信数据。TSB是可信计算3.0的基础,它通过自身的完整性保护、隔离保护和密钥管理等机制,保证了自身的可信性,并为上层应用提供了可信接口。 +- TPCM(Trusted Platform Control Module)是可信平台控制模块,是可信计算3.0中的一个核心组件。它是一种基于国产化思路提出的安全芯片,与TPM和TCM不同的是,它不仅提供了传统的密码学功能和度量功能,还提供了主动度量和主动防御功能。TPCM可以主动监控和控制计算平台的运行状态,实现对计算平台的主动免疫防护。 +- TCM(Trusted Cryptography Module)是可信密码模块,是一种符合我国国家标准的安全芯片。它与TPM类似,都遵循TCG(可信计算组)的规范,但使用了我国自主研发的密码算法和协议。TCM提供了基本的密码学功能和度量功能,可以支持静态度量和验证,但不能支持动态度量和验证 + +![图1](./images/可信计算3.0双系统架构图.png) + +为了让终端用户更好的触达和使用到可信计算3.0的技术,可信华泰在与计算技术设施生态的融合上做了若干实践。 + +# 可信计算3.0与计算基础设施生态的融合 + +可信华泰与国产计算基础设施生态的厂商,包括:CPU平台厂商、BIOS厂商、整机厂商、国产OS厂商进行了广泛合作,做了以下的实践: +1. 在国产CPU海光、飞腾的独立安全核心内引入TPCM固件,让CPU具备TPCM的能力。 +2. 与BIOS厂商合作对BIOS进行可信3.0的改造,让BIOS配合TPCM,使TPCM具备主动度量BIOS、GRUB、OS Kernel的能力。 +3. 整机厂商在选择确定整机产线CPU平台的基础上,引入TPCM导入的流程,让TPCM作为整机的Keypart进行采购。 +4. 与整机OS厂商进行合作,让TSB(包括TSS、TPCM驱动)作为OS的可信3.0关键软件能够部署。 + +![图2](./images/可信3.0生态融合路线图.png) + +## 与平台的融合 + + +可信计算3.0在计算平台层面上,对CPU和BIOS引入了可信计算3.0的核心组件TPCM、TCM,让计算平台具备可信计算3.0的 "可信根"。 + +### **海光CPU核内TPCM1** +在海光2-3号(3/5/7全系)中的安全处理器(PSP)中植入了TPCM可信根固件,TPCM固件使用密码协处理器(CCP)的SM2/3/4 以及TRNG密码功能,CCP在此处承担TCM的职责。 + +![图3](./images/可信计算3.0CPU内置方案图.png) + +CPU中嵌入TPCM,可以让整机厂商能够随CPU平台选择使用可信3.0 TPCM作为整机KeyPart进行采购和产线部署 + +### **可信BIOS的改造** +一般BIOS经过可信改造,运行以下流程,完成可信启动的过程。 + +![图4](./images/可信计算3.0-可信BIOS启动流程.png) + +1. 设备加电,TPCM可信根先于 CPU 启动; +2. TPCM可信根优先启动加载可信固件,进入可信执行环境; +3. 在TPCM可信根的支撑下,由 BIOS 内部的 TSB 代理获取 BIOS 数据,并通过通信驱动及接口将数据传至可信根,TPCM可信根依据可信固件的逻辑和策略对 BIOS 进行可信度量验证; +4. 上一步可信验证通过后,由 CPU 计算部件加载启动 BIOS 程序,否则,则禁止加载; +5. TSB 代理将 BIOS 的度量信息传至 TPCM固件OS,并将可信根对 BIOS 的度 量结果在 BIOS 进行展示; +6. 在TPCM可信根的支撑下,由 OSLoader 内部的 TSB 代理获取 OSLoader 文件 数据,并通过通信驱动及接口将数据传至可信根,TPCM可信根依据可信固件的逻辑和策略对 OSLoader 进行可信度量验证; +7. 上一步可信验证通过后,由 CPU 计算部件加载启动 OSLoader,否则,则禁止加载; +8. TSB代理将OSLoader的度量信息传至TPCM固件OS,并将可信根对OSLoader 的度量结果OSLoader 进行展示; +9. 通过TPCM可信根获取操作系统内核镜像文件数据,依据可信固件的逻辑和 策略对操作系统内核进行可信度量验证; +10. 上一步可信验证通过后,由 CPU 计算部件加载启动操作系统内核, 可信软件基TSB随之启动,否则,则禁止加载; +11. TSB 代理将操作系统内核镜像文件数据的度量信息传至 TPCM固件OS,并将TPCM可信根对操作系统内核镜像文件数据的度量结果在 OSKernel 进行展示; +12. 通过TPCM可信根获取内核扩展模块文件数据,依据可信固件的逻辑和策略对内核扩展模块文件进行可信度量验证; +13. 上一步可信验证通过后,由 CPU 计算部件加载启动操作系统内核扩展模块文件数据,TSB 代理也随之同时启动,否则,则禁止加载; +14. TSB 代理将操作系统内核可扩展模块文件数据的度量信息传至 TPCM固件OS,并将可信根对操作系统内核可扩展模块的度量结果在内核扩展模块进行展示; +15. 通过TPCM可信根获取应用程序文件数据,依据可信固件的逻辑和策略对应用程序进行可信度量验证; +16. 上一步可信验证通过后,由计算部件加载执行应用程序,至此系统进入一个可信的启动环境。 + +可信改造后的BIOS同样作为整机厂商随CPU平台采购的keypart在整机产线中进行导入。 + +## 与整机的融合2 + +(本节希望对导入可信计算3.0模块的**整机厂商**做最佳实践指导) +基于带有TPCM可信根功能的CPU和BIOS,整机厂商可以在产线上对可信计算3.0进行导入,流程如下: + +![图5](./images/可信计算3.0整机产线导入流程图.png) + +1. 可信3.0授权服务器上部署的**可信3.0授权信息采集和授权分发程序**发起申请至目标服务器上的**可信3.0授权客户端程序**。 +2. 部署在目标服务器上的**可信3.0授权客户端程序**采集待激活目标服务器上的信息通过接口传送至可信3.0授权服务器的**可信3.0授权信息采集和授权分发程序**。 +3. 可信3.0授权服务器的**可信3.0授权信息采集和授权分发程序**向**可信3.0授权系统**发送授权申请 +4. **可信3.0授权系统**完成签名授权,授权记录存储到服务器上的**可信3.0授权PCIe卡**中,同时将签名后的授权信息传送给**可信3.0授权信息采集和授权分发程序**。 +5. 可信3.0授权服务器的**可信3.0授权信息采集和授权分发程序**推送授权信息到目标服务器上的**可信3.0授权客户端程序**。 +6. 目标服务器上的**可信3.0授权客户端程序**通过安装了**TSS和TPCM驱动**的OS激活目标服务器的TPCM可信根。 + +可信计算3.0的核心部件与海光整机的融合是下面KOS增加可信3.0功能的基础。 + +## 与Anolis OS的衍生发行版之一Inspur KOS的融合 +Inspur KOS是浪潮信息基于Anolis OS发布服务器操作系统,**一方面,践行以系统设计为中心的技术路线,持续推动软硬协同创新;另一方面,通过 Inspur KOS 充分发挥芯片、板卡和服务器的创新成果,为用户提供卓越的整机系统体验**2 +可信计算3.0作为一种包含芯片、整机、操作系统的安全防护体系,已经在Inspur KOS上进行了兼容性适配认证。 + +## 注 +1. 本文以海光CPU作为最佳实践的举例,飞腾CPU目前也支持核内TPCM,并在在架构原理上与海光CPU相似,仅在TPCM与外部通信接口不同。 +2. 可信整机产线流程目前已经在浪潮服务器、新华三服务器产线上进行了实践。 +3. **浪潮信息副总裁张东**于2022年**Inspur KOS**发布会上表示 + + + +{{#template template/footer.md}} \ No newline at end of file