diff --git a/src/SUMMARY.md b/src/SUMMARY.md
index 74df2667ca4eabf152a28367aa5b8a0698e88ad1..2f4eaf8ab712eba3cf10884d75577d5b4cfa7257 100644
--- a/src/SUMMARY.md
+++ b/src/SUMMARY.md
@@ -1,4 +1,5 @@
# Summary
+- [版权声明](copyright.md)
- [OpenAnolis 龙蜥社区](openanolis.md)
- [浪潮信息龙蜥联合实验室](laboratory.md)
- [可信计算SIG简介](trustedcomputingSig.md)
@@ -19,5 +20,6 @@
- [基于国密的可信计算最佳实践](practices-shangmi_trusted_computing.md)
- [基于机密计算的虚拟可信根解决方案](practices-Confidential_vtpm.md)
- [可信计算3.0解决方案](practices-trustedComputing3.md)
+- [参考资料](reference.md)
- [白皮书作者](contributers.md)
diff --git a/src/anolisos-kernel.md b/src/anolisos-kernel.md
index b1ff5b2d13d6ed7ada06c476ac9c692847a3c1d0..908458e689ed6bc4078eb00acf675205e0aab71b 100644
--- a/src/anolisos-kernel.md
+++ b/src/anolisos-kernel.md
@@ -1,22 +1,22 @@
-# 内核可信特性
-## 一、概述
+# 3.2 内核可信特性
+## 3.2.1 概述
龙蜥操作系统内核提供了成熟的可信计算特性支持,满足内核安全可信需求、为应用层提供安全可信服务。
-## 二、可信驱动
-### 2.1 TPM Eventlog
+## 3.2.2 可信驱动
+### TPM Eventlog
本节简要描述了什么是TPM Eventlog,以及如何将TPM Eventlog从预引导固件传递到操作系统,事件中一般也将TPM Eventlog称为度量日志。
1. **TPM Eventlog概述**
预引导固件维护一个TPM Eventlog,每当固件度量新的组件并将度量结果扩展到任何PCR寄存器时,该日志都会新增一条记录。按事件类型分隔,并包含了扩展后的新PCR值。TPM Eventlog的主要用于远程证明,用于向挑战者证明平台的可信状态。度量日志(即TPM Eventlog)的主要作用是向挑战提供详细的度量日志、来证明详细的度量对象和度量结果,远程证明过程中通过包含PCR内容的可信报告验证度量日志的可信性。
2. **UEFI TPM Eventlog**
UEFI提供的 TPM Eventlog查询的protocol服务。在调用ExitBootServices()之前,Linux EFI存根将事件日志复制到由内核自定义的配置表中。
需要说明的是,ExitBootServices()生成的度量结果不会出现在最终的度量日志表中。固件提供了最终事件配置表来解决这个问题。在第一次调用EFI_TCG2_PROTOCOL.GetEventLog()之后,事件被镜像到这个表中。
-### 2.2 vTPM Proxy Driver for linux Container
-1. **面向容器的虚拟TPM驱动概述**
+### vTPM Proxy Driver for linux Container
+1) **面向容器的虚拟TPM驱动概述**
该特性是为每个Linux容器提供TPM功能,该特性允许程序以与物理系统上TPM交互相同的方式与容器中的TPM交互。每个容器都有自己独特的、模拟的软件TPM。
-2. **面向容器的虚拟TPM驱动的设计**
+2) **面向容器的虚拟TPM驱动的设计**
为了使模拟swTPM可用于每个容器,容器管理堆栈需要创建一个设备对,该设备对由一个客户端TPM字符设备/dev/tpmX (X=0,1,2…)和一个“服务器端”文件描述符组成。在将文件描述符传递给TPM仿真器的同时,通过创建具有适当主编号和副编号的字符设备将前者移动到容器中。然后,容器内的软件可以使用字符设备发送TPM命令,仿真器将通过文件描述符接收命令,并使用它发送回响应。
虚拟TPM代理驱动程序提供了一个设备/dev/vtpmx,用于使用ioctl创建设备对。ioctl将其作为配置设备的输入标志。例如,这些标志指示TPM模拟器是否支持TPM 1.2或TPM 2功能。ioctl的结果是“服务器端”的文件描述符以及所创建的字符设备的主次编号。此外,还会返回TPM字符设备的编号。例如,如果创建了/dev/tpm10,则返回数字(dev_num) 10。
一旦设备被创建,驱动程序将立即尝试与TPM通信。驱动程序的所有命令都可以从ioctl返回的文件描述符中读取。这些命令应该立即得到响应。
-3. **UAPI**
+3) **UAPI**
- flags for the proxy TPM
```C
enum vtpm_proxy_flags
@@ -62,7 +62,7 @@ long vtpmx_ioc_new_dev(struct file *file, unsigned int ioctl, unsigned long arg)
* 将为调用者提供一个文件描述符,用于与客户端通信,以及TPM设备的主要和次要编号。
*/
```
-### 2.3 vTPM interface for Xen
+### vTPM interface for Xen
本文档描述Xen的虚拟可信平台模块(vTPM)子系统。假定读者熟悉构建和安装Xen、Linux,并对TPM和vTPM概念有基本的了解。
**介绍**
这项工作的目标是为虚拟客户机操作系统(用Xen术语来说就是DomU)提供TPM功能。这允许程序以与物理系统上的TPM交互相同的方式与虚拟系统中的TPM交互。每个客户机都有自己独特的、仿真的软件TPM。然而,每个vTPM的秘密(密钥,NVRAM等)都由vTPM Manager域管理,该域将秘密密封到物理TPM。如果创建这些域(管理器、vTPM和客户机)的过程是可信的,那么vTPM子系统将根植于硬件TPM的信任链扩展到Xen中的虚拟机。vTPM的每个主要组件都作为一个单独的域实现,提供由hypervisor保证的安全分离。vTPM域在mini-o中实现,以减少内存和处理器开销。
@@ -116,7 +116,7 @@ vTPM的架构描述如下:
Xen在4.3中使用libxl工具栈添加了对vTPM驱动程序的支持。有关设置vTPM和vTPM Manager存根域的详细信息,请参阅Xen文档(docs/misc/ vTPM .txt)。一旦存根域开始运行,就会按照与域配置文件中的磁盘或网络设备相同的方式设置vTPM设备。
为了使用IMA等需要在initrd之前加载TPM的特性,必须将xen-tpmfront驱动程序编译到内核中。如果不使用这些特性,驱动程序可以被编译为一个模块,并将像往常一样加载。
-### 2.4 Firmware TPM Driver
+### Firmware TPM Driver
本文档介绍了固件的fTPM (Trusted Platform Module)设备驱动程序。
**介绍**
这个驱动程序是在ARM的TrustZone环境中实现的固件的垫片。驱动程序允许程序以与硬件TPM交互相同的方式与TPM交互。
@@ -125,8 +125,8 @@ Xen在4.3中使用libxl工具栈添加了对vTPM驱动程序的支持。有关
固件本身基于以下文件:https://www.microsoft.com/en-us/research/wp-content/uploads/2017/06/ftpm1.pdf
当驱动程序加载时,它将向用户空间公开/dev/tpmX字符设备,这将使用户空间能够-通过该设备与固件TPM通信。
-## 三、 IMA
-### 3.1 介绍
+## 3.2.3 IMA
+### 介绍
原始的“ima”模板是固定长度的,包含了文件数据的哈希值和路径名。filedata哈希值限制为20字节(md5/sha1)。路径名是一个以空结尾的字符串,限制为255个字符。为了克服这些限制并添加额外的文件元数据,它是扩展当前版本的IMA是必要的模板。例如,可能报告的信息是索引节点UID/GID或索引节点和进程的LSM标签这就是访问它。然而,引入这个特性的主要问题是,每次定义一个新的模板,生成和显示函数度量列表将包括处理新格式的代码因此,随着时间的推移,它会显著增长。
提出的解决方案通过分离模板解决了这个问题管理从剩余的IMA代码。这个解决方案的核心是定义两个新的数据结构:一个模板描述符,确定测量表中应包括哪些信息;一个模板字段,以生成和显示给定类型的数据。
使用这些结构管理模板非常简单。支持一种新的数据类型,开发人员定义字段标识符并实现两个函数init()和show()分别用于生成和显示测量条目。定义一个新的模板描述符需要指定模板格式(由字段标识符分隔的字符串)通过' ' ima_template_fmt ' '内核命令行输入' ' | ' '字符)参数。在引导时,IMA初始化所选的模板描述符通过将格式转换为模板字段结构的数组从支撑点的集合中。
@@ -135,7 +135,7 @@ Xen在4.3中使用libxl工具栈添加了对vTPM驱动程序的支持。有关
使用相同的机制来显示度量条目。
函数``ima[_ascii]_measurements_show()``检索每个条目,用于生成该条目并调用show()的模板描述符方法,用于模板字段结构数组的每个项。
-### 3.2 支持的模板字段和描述符
+### 支持的模板字段和描述符
下面是支持的模板字段列表``('<identifier>': description)``,可用于定义新的模板将描述符的标识符添加到格式字符串中(稍后将添加对更多数据类型的支持):
- 'd':事件的摘要(即测量文件的摘要);用SHA1或MD5哈希算法计算;
- 'n':事件的名称(即文件名),大小为255字节;
@@ -163,23 +163,23 @@ Xen在4.3中使用libxl工具栈添加了对vTPM驱动程序的支持。有关
- “ima-buf”:格式为“d-ng|n-ng|buf”;
- “ima-modsig”:格式为“d-ng|n-ng|sig|d-modsig|modsig”;
- "evm-sig":格式为' ' d-ng|n-ng|evmsig|xattrnames|xattrlength |xattrvalues|iuid|igid|imode ' ';
-### 3.3 IMA使用
+### IMA使用
要指定用于生成度量条目的模板描述符,请目前支持以下方法:
- 从内核支持的模板描述符中选择一个配置(``ima-ng``是默认选择);
- 指定模板描述符名称从内核命令行通过``ima_template=``参数;
- 注册一个新的模板描述符与自定义格式通过内核命令行参数``ima_template_fmt=``。
-## 四、内核可信密钥与加密密钥支持
+## 3.2.4 内核可信密钥与加密密钥支持
可信密钥和加密密钥是添加到现有内核密钥环服务中的两种新密钥类型。这两种新类型都是可变长度对称密钥,在这两种情况下,所有密钥都是在内核中创建的,用户空间只能看到、存储和加载加密的blob。可信密钥需要可信源的可用性以获得更高的安全性,而加密密钥可以在任何系统上使用。为了方便起见,所有用户级blob都以十六进制ASCII格式显示和加载,并经过完整性验证。
-### 4.1 信任源
+### 信任源
可信源为可信密钥提供安全来源。信任源是否足够安全取决于其实现的强度和正确性,以及特定用例的威胁环境。由于内核不知道环境是什么,也没有信任度量,因此它依赖于可信密钥的使用者来确定信任源是否足够安全。
内核支持硬件可信根(如TPM/TCM)作为内核可信密钥的可信源。由于TPM/TCM提供的SRK机制确保了根密钥不会离开可信根、且提供芯片级安全保障机制和高安全等级的密钥熵源。
-### 4.2 将密钥使用与平台完整性状态绑定
+### 将密钥使用与平台完整性状态绑定
基于TPM/TCM提供的密钥服务,密钥可以选择性地密封到指定的PCR值,并且只有在PCR和blob可信验证通过的情况下,TPM才会对密钥进行解封。加载的可信密钥可以使用新的(未来的)PCR值更新,因此密钥很容易迁移到新的PCR值,例如当内核和initramfs更新时。同一个密钥在不同的PCR值下可以保存多个blob,因此很容易支持多个boot。
-### 4.3 接口和API
+### 接口和API
内核支持TPM/TCM访问接口和API
-## 五、内核可信配置参数(KConfig)
+## 3.2.5 内核可信配置参数(KConfig)
内核中有需要可信计算相关的配置参数,下表中列举出部分常用的参数以及解释其含义
| 内核可信配置名称 | 用途 | 依赖的Config(以下省略`CONFIG_`开头) |
| :-: | :-: | :-: |
diff --git a/src/anolisos-swtpm.md b/src/anolisos-swtpm.md
index ac3829509eb1f7715972f4786a3e0171acc5fa07..4d642d95bfaa88f4fd1c487c031950c7c568aeba 100644
--- a/src/anolisos-swtpm.md
+++ b/src/anolisos-swtpm.md
@@ -1,15 +1,15 @@
-# 模拟可信根
-## swtpm概述
+# 3.1 模拟可信根
+## 3.1.1 swtpm概述
可信平台模块(TPM)是一个提供多种安全功能的组件,例如加密、随机数生成、测量等,由于操作系统安全认证的要求,现在已广泛部署在服务器、PC、终端设备中。对于想要使用TPM来开发安全功能的开发人员来说,通过访问主机上的TPM硬件,往往会受到TPM物理设备访问数量的限制。而软件TPM模拟器通常是一个不错的选择,通过使用软件实现的TPM模拟器,访客可以轻松地在TPM 1.2和TPM 2.0之间切换,这使开发人员的使用上更加轻松。
[swtpm](https://github.com/stefanberger/swtpm)项目的目标是提供一个TPM(TPM1.2和TPM2)模拟器,该模拟器可以集成到虚拟化的环境中,如虚拟机和容器。到目前为止,swtpm已经集成到QEMU中,并作为原型集成到RunC(PR)中。
swtpm的构建基于libtpms项目。
-## 龙蜥社区在swtpm上的工作与探索
+## 3.1.2 龙蜥社区在swtpm上的工作与探索
龙蜥社区自其可信计算SIG成立以来,一直在关注可信计算业界进展和国际OSV厂商的可信计算方案。在完成swtpm的适配和实践后,龙蜥社区也将自己的swtpm的开发与使用经验写入到白皮书中。未来,龙蜥社区除了继续加强与swtpm项目的交流与贡献外,还将结合自己在国密/国产化/云计算的积累围绕swtpm开展一些国密、国产化、机密计算相关的工作,敬请期待。
-## 龙蜥Anolis OS上swtpm实践
+## 3.1.3 龙蜥Anolis OS上swtpm实践
### Anolis OS上swtpm安装与配置、运行
Anolis OS中可使用swtpm和libtpm源码安装或使用Anolis OS 提供的yum源进行安装,安装方式如下:
diff --git a/src/anolisos-tpm2-tss-engine.md b/src/anolisos-tpm2-tss-engine.md
index 3c5044963a87a0e0005db5a1a3f509092b5abd2d..799ae760ea883ee8ba5efa6b1f54e4f05e49aa90 100644
--- a/src/anolisos-tpm2-tss-engine.md
+++ b/src/anolisos-tpm2-tss-engine.md
@@ -1,7 +1,7 @@
-# 可信服务引擎
-## tpm2-tss-engine概述
+# 3.5可信服务引擎
+## 3.5.1 tpm2-tss-engine概述
tpm2-tss-engine利用遵循可信计算组织(Trusted Computing Group,TCG)的软件栈——TSS2.0,实现了基于TPM2设备的OpenSSL密码引擎。tpm2-tss-engine利用TSS2.0中的增强型系统API(Enhanced System Applicaion Service Interface, ESAPI)与TPM2设备通信。tpm2-tss-engine支持RSA加解密、签名以及ECDSA签名功能。
-## 龙蜥Anolis OS上tpm2-tss-engine实践
+## 3.5.2 龙蜥Anolis OS上tpm2-tss-engine实践
龙蜥社区自其可信计算SIG成立以来,一直在关注可信计算业界进展和国际OSV厂商的可信计算方案。在完成tpm2-tss-engine的实践后,龙蜥社区也将自己的使用经验写入到白皮书中。未来,龙蜥社区除了继续加强与tpm2-tss-engine项目的交流与贡献外,还将结合自己在国密/国产化/云计算的积累围绕tpm2-tss-engine开展一些国密支持相关的工作,敬请期待。
### Anolis OS上tpm2-tss-engine安装与使用
#### 安装
@@ -19,7 +19,7 @@ make install
popd
```
#### 使用
-##### 1、引擎信息
+##### 引擎信息
```
openssl engine -t -c tpm2tss
@@ -27,7 +27,7 @@ openssl engine -t -c tpm2tss
[RSA, RAND]
[ available ]
```
-##### 2、随机数
+##### 随机数
基于TPM2生成128字节随机数
```
@@ -40,7 +40,7 @@ b85bd15bb77375a4d5a69b998c4717e7b4c8b1bdb1f3b0e3936a6f528d \
23ce2afe5802af2317b27a43
```
-##### 3、RSA算法功能
+##### RSA算法功能
###### 创建密钥
tpm2tss-genkey创建密钥
@@ -141,7 +141,7 @@ openssl pkeyutl -engine tpm2tss -keyform engine -inkey 0x81000000 \
openssl pkeyutl -pubin -inkey rsatpmkey.pub -verify -in mydata \
-sigfile mysig #使用TPM2中持久对象0x81000000的公钥验证签名
```
-#### 4、ECC算法功能
+#### ECC算法功能
##### 创建密钥
tpm2tss-genkey创建密钥
@@ -217,7 +217,7 @@ engine "tpm2tss" set.
Enter password for user key:
Signature Verified Successfully
```
-#### 5、X509证书功能
+#### X509证书功能
##### 自签名证书
使用TPM2中密钥生成自签名证书
diff --git a/src/anolisos-tss.md b/src/anolisos-tss.md
index e991177754307ce10c1b0b66d10aa4b6bb27b6d3..cd04922b77e06a0143b43a902972b757940da9f0 100644
--- a/src/anolisos-tss.md
+++ b/src/anolisos-tss.md
@@ -58,7 +58,7 @@ tpm2-tss包含以下由高到低的几层软件:FAPI,ESAPI,SAPI,TCTI(T
- RM: 因为TPM内部的存储资源非常有限,所以需要一个资源管理器RM,它的原理于虚拟内存管理类似,它可以将TPM对象和会话换进换出TPM。
- 驱动:最后一层就是设备驱动,它主要是控制通信外设与TPM互相传输数据。如果你愿意的话,直接调用设备驱动接口来编写应用程序也是可以的,当然这就像是你用二进制数据编写程序一样。
-![undefined](https://intranetproxy.alipay.com/skylark/lark/0/2023/png/136439/1695722940095-e3a6fa1e-ccd2-4981-b97f-dbf92e9b5d9f.png)
+![tpm2-tss软件栈架构](images/tpm2-tss-arch.PNG)
### tpm2-tss开发接口
diff --git a/src/anolisos.md b/src/anolisos.md
index 0375fd945d099492d7a40c4334905ab5641b559e..bd3d9bcbdf7f5c13d8528a68fb0be1f99726cbca 100644
--- a/src/anolisos.md
+++ b/src/anolisos.md
@@ -1,4 +1,4 @@
-#
龙蜥操作系统可信计算实践指南
+# 3.龙蜥操作系统可信计算实践指南
龙蜥操作系统以开源社区优秀成果为上游集成了模拟可信根、可信软件、可信工具集,满足用户对可信计算基础服务的需求。同时,可信计算SIG对可信根增强引擎等可信计算基础软件进行了探索分析,形成了龙蜥操作系统可信计算实践指南相关内容。未来,针对可信计算基础软件全展国密支持也将是可信计算SIG的重点工作,本白皮书最佳实践章节呈现了SIG成员单位在全栈国密支持方面的实践成果。
![Anolis Trusted Computing Practices](images/AnolisOS实践指南.png)
diff --git a/src/copyright.md b/src/copyright.md
new file mode 100644
index 0000000000000000000000000000000000000000..ae7aca3af5b09af3002fd3bde4a428094175eba1
--- /dev/null
+++ b/src/copyright.md
@@ -0,0 +1,2 @@
+版权声明
+本文遵循 MulanPSL v2 协议,版权归属于龙蜥社区。0penAnolis 网站所载的所有材料或内容受版权法的保护,所有版权由 0penAnolis 社区所有,但注明引用其他方的除外。未经 0penAnolis 社区事先书面许可,任何人不得将本网站上的任何内容以任何方式进行复制、修改、传播、经销、翻印、播放、拆解、反向工程、反编译、以超级链路连接或传送、以镜像法载入其他服务器上、存储于信息检索系统或者其他任何商业目的的使用。对于非商业目的浏览复制、打印和传播属于 OpenAnolis 网站信息内容的,所有信息内容及其任何部分的使用都必须包括上述版权声明。
\ No newline at end of file
diff --git a/src/images/tpm2-tss-arch.PNG b/src/images/tpm2-tss-arch.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..0668c4241ad98845aac56c3ea471b014c4a6f07e
Binary files /dev/null and b/src/images/tpm2-tss-arch.PNG differ
diff --git a/src/images/tss2.0spec-arch.PNG b/src/images/tss2.0spec-arch.PNG
index 022d7f8ceb75fc1209547570dcd70fb39c4bc2c2..d22f297d45a95a0667a7a57fef05cbf5899b47cb 100644
Binary files a/src/images/tss2.0spec-arch.PNG and b/src/images/tss2.0spec-arch.PNG differ
diff --git "a/src/images/\345\217\257\344\277\241\345\272\246\351\207\217\344\272\213\344\273\266\347\244\272\346\204\217\345\233\276.PNG" "b/src/images/\345\217\257\344\277\241\345\272\246\351\207\217\344\272\213\344\273\266\347\244\272\346\204\217\345\233\276.PNG"
index 9552d375e827ac4af661d562723b05e0aef5e2c2..07daf3d971a6089f604a1ec94de61ede44a537bf 100644
Binary files "a/src/images/\345\217\257\344\277\241\345\272\246\351\207\217\344\272\213\344\273\266\347\244\272\346\204\217\345\233\276.PNG" and "b/src/images/\345\217\257\344\277\241\345\272\246\351\207\217\344\272\213\344\273\266\347\244\272\346\204\217\345\233\276.PNG" differ
diff --git a/src/introduction.md b/src/introduction.md
index c99f0548423362b9b6ee79d6ec677a4f4ff354ae..2a134eef15bcabdd1c5f52bc01e39912a1a07583 100644
--- a/src/introduction.md
+++ b/src/introduction.md
@@ -1,14 +1,13 @@
-# 可信计算概述
-## (一) 可计算的概念
+# 1. 可信计算概述
可信计算是通过检测和强化实体行为的预期性来保障实体信任的技术,是一种从体系结构入手解决信息系统安全问题的技术理念;其基本思想是先在计算机系统中建立一个信任根(基),信任根的可信性由物理安全、技术安全与管理安全共同确保;再建立一条信任链,从信任根开始,到硬件平台,到操作系统,再到应用,一级度量认证一级,一级信任一级,把这种信任扩展到整个计算机系统。
可信并不等同于安全,但可信是安全的基础,因为安全组件、策略只有运行在可信的环境下才能进一步达到安全目的。通过系统和安全组件的完整性保障,可以确保业务应用使用正确的软件栈,并在软件栈受到攻击发生改变后能及时发现。总之,在系统和应用中引入可信计算能够极大地降低由于使用未知或遭到篡改的系统/软件遭到攻击的可能性。
-## (二)可信计算应用发展现状
+## 1.1 可信计算应用发展现状
可信计算概念最早可以追溯到 1983 美国国防部的 TCSEC 准则及之后出现的彩虹系列信息系统安全文件。1999 年,IBM、微软、Intel 等企业成了 TCPA(2003年改名为 TCG),主要致力于形成可信计算的工业标准。目前 TCG 已经制定了包括 TPM、TSS、TNC 等一系列技术规范,并形成了针对IoT、云计算、个人终端、移动终端、存储等不同场景的工作组、致力于可信计算在相关场景的应用标准编制与解决方案推动。
国际上已经形成以 Trusted Computing Group(TCG)为代表的可信计算组,并推动 TPM 规范在 PC、服务器、移动终端、网络、云计算、物联网等领域的应用。在服务器及云计算领域,国际 IT 巨头已将可信计算技术作为其产品的重要支撑。Intel服务器 CPU 已经全面支持 TPM2.0;微软 Windows Server 2012 已支持 TPM2.0,并计划发布 Server2016 将支持 vTPM2.0,支持可信云计算环境的构建;Linux Kernel4.0已经集成 TPM2.0,以及主流虚拟化软件 Xen、KVM、Openstack、VMware 等都提供了对 TPM 和 vTPM 的支持;IBM 收购的 Softlayer 公司为全球 60 多个重要客户提供可信云主机服务;同时, 许多芯片公司都将部分可信计算功能集成到商用的处理器中, 如 ARM 公司的 TrustZone 技术、 Intel 公司的 SGX 技术和 AMD 公司的SEV(secure encrypted virtualization)技术等, 都在处理器中实现了内存隔离, 可以为上层应用提供安全的执行环境, 保障敏感程序的安全性, 并被广泛应用在移动手机和云平台中.
鉴于可信计算技术对国家信息安全体系的重要性, 经国家密码管理局批准, 中国于2006年成立了可信计算密码专项组, 并于2008年12月更名为中国可信计算工作组(China TCM Union), 简称TCMU.2007年12月, 国家密码管理局颁布了《可信计算密码支撑平台功能与接口规范》, 将国内使用的可信基础模块定义为TCM(trust cryptography module).相较于TPM, TCM采用了我国《商用密码管理条例》中规定的SM2、SM3等国密算法, 同时引入了对称密钥算法, 简化了TPM中复杂的密钥管理.TCM的证书认证机制采用签名密钥以及加密密钥的双证书机制, 将对称密钥与非对称密钥结合保护系统安全, 在密钥管理体系和基础密码服务体系等方面进行了改进, 提升了系统的安全性. TPM和TCM的构成和功能类似, 提供可信计算平台的信任根(RTS, RTR), 是由CPU、存储器、I/O、密码协处理器、随机数产生器和嵌入式操作系统等部件组成的独立SoC芯片, 具备可信度量的存储、可信度量的报告、密钥产生、加密和签名、数据安全存储等功能.2015年TPM 2.0 library specification(Trusted Platform Module)正式成为国际标准ISO/IEC 11889,吸纳了TCM中相关的安全改进,并首次成体系支持中国密码算法体系,包括SM2/SM3/SM4密码算法。这是中国密码算法技术和标准的又一次重要突破,也是中国信息安全标准在国际标准化工作中的重要进展。ISO/IEC 11889 支持中国商用密码算法体系(SM2/SM3/SM4),使得在数据安全保护上更加牢不可破。
我国学者则从传统计算机体系结构着手,考虑到传统冯诺伊曼架构存在的安全设计缺陷,提出了“在计算运行的同时进行安全防护的可信计算模式,即以密码为基因产生抗体,实施身份识别、状态度量、保密存储等功能,及时识别自己和非自己成份,从而破坏和排斥进入机体的有害物质”即“主动免疫安全可信计算”技术体系(这一体系被学界称为“可信计算3.0”)。主动免疫安全可信计算通过构建“计算+防护”并行双体系结构,实现防护部件并行动态的方式对计算部件运算过错进行可信验证,达到主动免疫防护效果。在并行的双体系结构中,采用了一种安全可信策略管控下的运算和防护并列的主动免疫的新计算体系结构,以可信密码模块(TCM)连接可信平台控制模块(TPCM),组成可信根,由策略产生可信验证规则,由可信软件基根据安全可信策略规则实施身份识别、状态度量、保密存储等功能,及时发现异常并加以处置,从根本上防止(恶意代码)对计算部件(主机)的攻击.该体系的可信验证通过对人的操作访问策略4要素(主体、客体、操作、环境)进行动态可信度量、识别和控制,以达到纠正传统访问控制策略模型局限于授权标识属性进行操作,而不作可信验证、难防篡改的安全缺陷.另外,传统访问控制不考虑环境要素(代码及参数)是否被破坏,难以防止恶意代码攻击,为此必须对环境要素进行可信验证的基础上依据策略规则进行动态访问控制。当前,国内主要以中关村可信计算产业联盟代表推动可信计算3.0技术体系及其生态的繁荣发展,推出了一系列团体标准,并通过“等级保护2.0与可信计算3.0联合攻关基地”推动相关团体标准的落地实施。
-## (三) 可信计算关键技术及术语
-### 3.1 信任根
+## 1.2 可信计算关键技术及术语
+### 1.2.1 信任根
- **概念**
信任根是可信计算机系统可信的基础,可信计算平台包含三个信任根:可信度量根(Root of Trust for Measurement, RTM)、可信报告根(Root of Trust for Report, RTR)、可信存储根(Root of Trust for Storage, RTS)。如下图所示:
@@ -26,7 +25,7 @@
|TCM|TCM1.0在服务器领域应用较少,开源成果有限,随着TCM2.0规范的发布,与国际可信计算开源生态的融合,未来TCM在服务器领域的应用将丰富起来。|国家密码局牵头发布的系列TCM规范,当前已发布TCM2.0、TCM2.0配套的软件服务模块(TSM)标准正在修订中|被动可信:可信根由处理器拉起|- 独立芯片实现,接口主要为SPI或I2C
- 软件模拟,主要用于研究开发与虚拟化场景
- 处理器内置,提高一个独立的核作为TCM的计算资源
|
|TPCM|TPCM由国内学者提出,用于实现可信计算3。0平台构建。在特种领域应用成熟、开源生态方面的建设亟待提升|已发布TPCM国家标准及配套的可信软件基(TSB)国家标准|主动可信:可信根优先上电运行且相对独立|- 独立版卡,接口多为PCIe、也有为USB接口
- 软件模拟,主要用于研究开发与虚拟化场景
- 处理器内置,处理器开辟出一个专用的核作为TPCM的计算单元,同时提供专用的计算存储资源|
-### 3.2可信度量与信任链
+### 1.2.2可信度量与信任链
可信计算中采用对客体哈希的方式实现客体完整性值的采集,通过实时采集到的完整性值与客体完整性基准值比对的方式验证客体的可信状态。对客体进行哈希、将哈希结果扩展到可信根、并记录事件日志的过程称为可信度量或度量事件。 如下图所示。
![可信度量事件](images/可信度量事件示意图.PNG)
@@ -40,12 +39,12 @@
![信任链](images/信任链.png)
-### 3.3 可信计算平台
+### 1.2.3 可信计算平台
可信计算平台是指具有可信计算安全机制并能够提供可信服务的计算平台.其主要特征是:有信任根,并基于此构建信任链机制、具有度量存储报告机制、能够提供确保系统数据完整性、数据安全存储和平台远程证明等可信功能服务[ 张焕国、赵波等著. 可信计算. 武汉大学出版社.]。典型的可信计算平台包括:可信PC、可信服务器、可信PDA等。
可信计算平台以CRTM(可信度量根核)为起点,以信任链的方式来度量整个平台资源的完整性,将度量值存储至可信根的平台配置寄存器中,并通过可信芯片向询问平台可信状态的实体提供报告,供访问者判断平台是否可信,以决定是否可以与其交互。这种工作机制被称为可信度量、报告、存储机制,是可信计算机和普通计算机在安全机制上的最大区别。
-### 3.4 可信软件栈
+### 1.2.4 可信软件栈
可信软件栈是为了方便操作系统层面的安全应用访问可信芯片提供的服务,从而实现为用户提供可信服务。
- 位于用户应用软件与可信芯片之间,作为使用可信芯片的入口
- 提供安全芯片访问、安全认证、密码服务和资源管理等功能
@@ -56,7 +55,7 @@
- TPM对应可信软件栈TSS(TCG Software Stack)
- TCM对应TCM服务模块TSM(TCM Service Module)
-### 3.5 远程证明
+### 1.2.5 远程证明
远程证明是指可信计算平台向外部实体证明平台身份及可信状态的过程。相对于基于身份的认证机制,远程证明进一步扩展和丰富了认证的内容,使得认证的实体能够对认证客体进行更深层次更细粒度的认证。有效的避免了基于身份认证的过程中对实体安全状态一无所知的窘境。远程证明不仅对用户和平台身份进行了认证、还进一步的对平台的安全状态、软硬件配置等信息进行了验证,保证了平台的状态符合预期的安全策略,从源头上消除了大量潜在的安全攻击。
基于TPM/TCM的远程证明与上述目标一致,是一种验证计算机系统软硬件配置正确性的方法。在这个方法中,验证者向系统发送挑战查询,选择要验证的范围。证明者收集描述系统的引导状态、当前配置和身份的证据。背书密钥用于签署证明证据,其公钥会传递给验证者。验证者使用密码学方式检查证据是否满足其信任评估策略,并确定设备是否来自期望的制造商。
**远程证明基本流程:** 完整的远程证明流程包括两个主要步骤:
@@ -85,7 +84,7 @@
* 客户端平台直接将事件日志发送给服务器。
* 服务器回放事件日志以还原PCR值。如果还原的PCR值与原始PCR值相同,则服务器确认事件日志是真实的。
-### 3.6 可信网络连接
+### 1.2.6 可信网络连接
**TNC可信连接架构**
可信网络连接(TNC)是对可信平台应用的扩展,其目的是是确保网络访问者的完整性,其认证过程可简述为:终端接入网络的过程中先后对终端用户身份、终端平台身份、终端平台可信状态等信息进行认证,只有全部满足认证需求的情况下才允许接入网络。
TNC的架构分为3 层.网络访问层: 从属于传统的网络互联和安全层, 支持现有的如VPN 和802.1X 等技术, 这一层包括NAR (网络访问请求)、PEP (策略执行) 和NAA (网络访问管理) 3 个组件. 完整性评估层:这一层依据一定的安全策略评估AR(访问请求者)的完整性状况. 完整性度量层: 这一层负责搜集和验证AR 的完整性信息.TNC 通过网络访问请求, 搜集和验证请求者的完整性信息, 依据一定的安全策略对这些信息进行评估, 决定是否允许请求者与网络连接, 从而确保网络连接的可信性.
@@ -99,7 +98,7 @@
![TCA](images/TCA.png)
-### 3.7 TCM2.0/TPM2.0特性概述
+### 1.2.7 TCM2.0/TPM2.0特性概述
TCM2.0/TPM2.0是本白皮书主体内容重点介绍了基于TPM2.0/TCM2.0为可信根的的可信计算最佳实践,因此本节简要介绍TCM2.0/TPM2.0的关键特性,便于读者理解白皮书主体内容。
$\color{gray} {说明:为了叙述方便,在没有明确说明的情况下本节下文中“可信根”指代TPM/TCM }$
**1. TCM2.0/TPM2.0提供的安全功能**
@@ -162,8 +161,8 @@
- NV索引:可以基于NV索引是否已写人来进行授权。
- 物理存在:该方法需要证明用户实际拥有该平台
-## (四) futureTPM
-### 4.1 可信计算技术面临的挑战
+## 1.3 futureTPM
+### 1.3.1 可信计算技术面临的挑战
随着移动互联网、量子计算、物联网、云计算、区块链等技术的发展和应用, 可信计算技术也面临很多新的应用场景和研究问题:
1. 在移动可信计算方面, 设计包含更小可信计算基 (TCB) 的移动可信体系架构, 以及实现内核运行时和移动应用的安全防护是重要的研究问题;
2. 在可信物联网方面, 轻量级的信任根、高效安全的软件证明、代码安全更新机制是该领域的重要研究问题;
@@ -171,13 +170,13 @@
4. 在可信区块链方面, 新型的可信执行环境技术可以为区块链提供新的思路, 例如利用硬件安全机制改进共识协议, 使用可信执行环境 (TEE) 保障区块链的计算环境等.
5. 随着量子计算的发展, 设计高效的抗量子密码算法和协议是一个亟需解决的科学问题; 更进一步, 需要设计具有抗量子能力的可信计算模块, 并且构建抗量子可信计算技术体系;
-### 4.2 抗量子可信计算研究与futureTPM
+### 1.3.2 抗量子可信计算研究与futureTPM
随着量子计算理论的发展, 部分经典模型下的计算困难问题可以在量子计算模型下得到有效或高效求解, 现有基于传统数学困难问题的密码算法和协议将面临严峻的挑战。1994 年 Shor提出了可以在多项式时间内有效求解大整数分解问题和离散对数问题的量子计算模型, 使得工业界广泛使用的公钥密码算法与密钥交换协议从理论上变得不再安全。2019 年谷歌声称, 在具有 53 个量子比特位的量子计算机上约 200 s 完成的任务在传统计算机上需要执行一万年, 显示出量子计算机相比于传统图灵计算机根本性的优势.
目前国际上对抗量子可信计算平台模块的研究, 以 FutureTPM 项目最具代表性。FutureTPM 是欧盟“地平线2020计划”资助的一项前沿性研究项目, 旨在设计和开发具有抗量子能力(QR)的可信计算平台模块(TPM). 其主要目标是实现从现有广泛应用的 TPM 系统到未来具有抗量子功能的系统的平稳过渡。(欧盟“地平线2020计划”- Horizon 2020“欧盟科研框架计划”始于1984年,以研究国际前沿和竞争性科技难点为主要内容,是欧盟成员国共同参与的中期重大科研计划)。
抗量子可信计算技术体系在架构上与传统可信计算技术体系类似, 不同之处在于抗量子可信计算技术体系需要以抗量子密码算法和协议实现相应的可信计算平台功能. 此外, 还需要考虑到传统体系的兼容性以及更高需求的计算性能.
futureTPM的愿景是结合强大且经过正式验证的QR加密原语提供新一代基于TPM的解决方案。其目标是实现平稳过渡来自当前TPM环境,基于广泛使用和标准化的密码技术,到系统地通过QR密码功能提供增强的安全性,包括安全身份验证、加密和签名功能。futureTPM将通过为诸如密钥协议之类的原语设计高安全性QR算法的创新组合,包括加密、签名、哈希、消息验证码(MAC)功能和直接匿名认证(DAA)等,使FutureTPM系统能够生成更安全的信任根,并可适用于与云服务交互、访问公司服务、执行银行业务和电子商务交易,以及广泛的其他服务。
-### 4.3 futureTPM工作组与主要目标
+### 1.3.3 futureTPM工作组与主要目标
* **为TPM设计的安全量子抗密码算法**
diff --git a/src/laboratory.md b/src/laboratory.md
index b1c6402da359a6c7c9a95dd4b22846f941edd238..d47c968e42a74871df5153d36a953c83ee22c5cd 100644
--- a/src/laboratory.md
+++ b/src/laboratory.md
@@ -13,7 +13,7 @@
> 🟢 **实验室设施及业务概况**
-* 物理设施:覆盖Intel、AMD、海光、飞腾、安培等架构的100+服务器
+* 物理设施:覆盖主流x86、ARM等架构的100+服务器
* 支撑业务:T-One、测试执行
* Anolis服务器整机兼容性适配
* 龙蜥衍生版操作系统KOS兼容性测试
diff --git a/src/openanolis.md b/src/openanolis.md
index 8933ee80bc69dd4accf8985e26321eed75df8b44..d035b3abe4bd92c511d40b92f043ff96d4622200 100644
--- a/src/openanolis.md
+++ b/src/openanolis.md
@@ -28,15 +28,6 @@
---
-> 🟢 **浪潮信息龙蜥联合实验室**
-
-浪潮信息龙蜥联合实验室以“平台共建、联合创新、繁荣生态”为目标,整合芯片、整机、板卡、数据库、中间件、ISV 等上下游生态力量,打造了一套完善的操作系统产业生态链,推动操作系统产业发展创新。实验室下设三个中心:
-* 标准制定中心:主要开展服务器操作系统相关标准制定工作,推动操作系统相关标准的落地与实施。
-* 生态认证中心:主要开展龙蜥及龙蜥衍生版硬件兼容性认证、适配认证体系建立等工作,不断完善操作系统生态体系。
-* 联合创新中心:主要面向智慧计算、云原生、系统安全等领域开展技术创新,联合生态伙伴进行课题研究与技术攻关,打造创新、开放、共享的实验室环境,持续推动技术创新发展。
-
----
-
> 🟢 **龙蜥开放的生态**
为了鼓励合作伙伴在社区探索出更多的商业合作方式,真正牵引企业在龙蜥社区的合作落地,社区推出「龙腾计划」的升级版——「生态发展计划」,更聚焦在产品和商业合作本身。
详情可参看:[https://openanolis.cn/page/partner2](https://openanolis.cn/page/partner2)
diff --git a/src/practices.md b/src/practices.md
index 08fcdef63012626c8e930ee955623edd9c1bc6cb..8a6a0463a44bf4b8a4f6e1f4d281b89d0d07befc 100644
--- a/src/practices.md
+++ b/src/practices.md
@@ -1,4 +1,4 @@
-# 可信计算最佳实践及解决方案
+# 4. 可信计算最佳实践及解决方案
如图所示,可信计算技术作为一种系统级安全增强技术,例如系统可信验证(动态、静态)、系统全盘加密增强、轻量级可信集群构建等,应用得当可以极大的提升操作系统安全能力、这些能力的应用也是可信计算SIG探索可信计算最佳实践的重要方向。本节主要主要选编了基于海光平台内置可信根服务的可信计算最佳实践,基于keylime的轻量级可信集群构建实践探索、基于可信根的全盘加密安全增强最佳实践等内容。
![Anolis Trusted Computing Practices](images/AnolisOS最佳实践.png)
在解决方案方面,近年来随着关键信息基础设施建设及合规要求的发展与演变,可信计算面临的场景与挑战也截然不同,面向边缘场景的轻量远程证明要求、面向混合云场景的数据安全要求、面向公有云场景的信任优先要求、面向合规建设场景的可信验证及可信计算3.0要求等;本节节选了可信计算3.0解决方案、基于机密计算的虚拟可信根解决方案等内容。未来,可信计算SIG将挑选痛点场景的痛点需求重点开展相关解决方案的挖掘与探索工作。
diff --git a/src/reference.md b/src/reference.md
new file mode 100644
index 0000000000000000000000000000000000000000..945394501f323d594819c3d046680ca1f9db3de5
--- /dev/null
+++ b/src/reference.md
@@ -0,0 +1,10 @@
+# 参考资料
+[1]冯登国,刘敬彬,秦宇等,创新发展中的可信计算理论与技术U].中国科学:信息科学,2020,50(08):1127-1147.
+[2]沈昌祥,公备.基于国产密码体系的可信计算体系框架盯.密码学报,2015,2(05):381-389.DO1:10.13868/j.
+[3]石文昌编著.信息系统安全概论,电子工业出版社,2014.68-71.
+[4]张焕国、赵波等著.可信计算.武汉大学出版社.
+[5]威尔·亚瑟(WillArthur)/大卫·查林纳(David Challener)等《TPM 2.0原理及应用指南》.机械工业出版社.2017-10-1.
+[6]王勇,张雨菡,洪智等.基于TPM 2.0 的内核完整性度量框架川.计算机工程,2018,44(03):166-170+177.
+[7]https://www.intel.com/content/www/us/en/developer/articles/codesample/protecting-secret-data-and-keys-using-intel-platform-trust-technology.html.
+[8]沈昌祥院士《可信计算筑牢网络强国底座》演讲稿.
+[9]浪潮信息张东于 2022年Keyarch0s发布会.
\ No newline at end of file
diff --git a/src/standard-china.md b/src/standard-china.md
index 340ce37baac8de502c594721435640df9f8fbc96..f07afa8e142ea36f6fdecbeb66cbca14e0de4525 100644
--- a/src/standard-china.md
+++ b/src/standard-china.md
@@ -1,7 +1,7 @@
-# 国内可信计算标准
-当前国内可信计算标准已构建了密码为基础、芯片为支柱、主板为平台,软件为核心,网络为纽带、应用成体系的可信计算标准化体系。为落实《网络安全法》,支持《网络安全等级保护条例》、《关键信息基础设施条例》执法,促进“网络安全等级保护”系列标准的实施提供了重要依据和支撑。
+# 2.1 国内可信计算标准
+ 当前国内可信计算标准已构建了密码为基础、芯片为支柱、主板为平台,软件为核心,网络为纽带、应用成体系的可信计算标准化体系。为落实《网络安全法》,支持《网络安全等级保护条例》、《关键信息基础设施条例》执法,促进“网络安全等级保护”系列标准的实施提供了重要依据和支撑。
![国内可信标准体系](images/standard-china-1.png)
-## 国家标准化委员会发布
+## 2.1.1 国家标准化委员会发布
### 全国信息安全标准化技术委员会
| 标准编号 | 标准名称 | 归口单位 | 标准概述 |
|---------|--------|---------|----------------------------|
@@ -19,8 +19,8 @@
|GB/T 30847.1-2014| 系统与软件工程 可信计算平台可信性度量 第1部分:概述与词汇|国家标准化管理委员会|对可信计算平台可信性度量进行概述;总述可信计算平台及可信计算平台 可信性度量方法;简要描述 Plan-Do-Check-Act(PDCA)循环过程;定义可信计算平台可信性度量标准 中使用的词汇。|
|GB/T 30847.2-2014| 系统与软件工程 可信计算平台可信性度量 第2部分:信任链|国家标准化管理委员会|从信任链的角度定义了可信计算平台的可信度量方法,包括信任链度量模型和度量指标。|
-## 国家密码管理局标准化委员会发布
-我国可信计算密码应用相关技术标准自2007年开始起步,目前已经形成比较完善的可信密码模块(TCM)标准体系,TCM以SM2、SM3、SM4商用密码算法为核心,相关行业应用标准包括:
+## 2.1.2 国家密码管理局标准化委员会发布
+ 我国可信计算密码应用相关技术标准自2007年开始起步,目前已经形成比较完善的可信密码模块(TCM)标准体系,TCM以SM2、SM3、SM4商用密码算法为核心,相关行业应用标准包括:
| 标准编号 | 标准名称 | 归口单位 | 标准概述 |
|---------|--------|---------|----------------------------|
|GM/T 0011-2012| 可信计算 可信密码支撑平台功能与接口规范|密码行业标准化技术委员会|描述可信计算密码支撑平台功能原理与要求,并详细定义了可信计算密码支撑平台的密码算法、密钥管理、证书管理、密码协议、密码服务等应用接口规范。该标准在2012年发布,2013年升级成国标(GB/T 29829-2013)。目前该标准在修订中,修订后的标准与GM/T 0012-202兼容|
@@ -29,8 +29,18 @@
|GM/T 0058-2018| 可信计算 TCM服务模块接口规范 |密码行业标准化技术委员会|该标准规定了TCM服务模块的组成和接口标准,包含TSP、TCS和TDDL,是面向TCM应用层的接口标准。**该标准目前正在修订中,修订后兼容GM/T 0012-2020,修订牵头单位为SIG成员国民技术股份有限公司**|
|GM/T 0079-2020| 可信计算平台直接匿名证明规范 |密码行业标准化技术委员会|该标准规定了可信计算平台的直接匿名证明协议的功能、接口和数据结构。该标准为第一次发布。 |
|GM/T 0082-2020| 可信密码模块保护轮廓 |密码行业标准化技术委员会|该标准以GB/T 29829和GB/T 18336为基础,构建可信密码模块的保护轮廓,对符合评估保障级第3级的TOE的定义、安全环境、安全目的、安全要求等进行了详细的说明,并给出相应的基本原理说明|
-- 目前可信计算标准已由TCM 1.0全面向TCM 2.0演进,密标委组织制定了支撑可信计算密码应用的机制、协议,接口的相关标准。我国SM2密码算法的密钥生成、SM2密码算法签名/验签,SM2密码算法密钥交换,SM3密码算法,SM4密码算法应用等已经被纳入ISO/IEC 11889国际可信计算标准。
-## 可信计算密码产品认证
+ 目前可信计算标准已由TCM 1.0全面向TCM 2.0演进,密标委组织制定了支撑可信计算密码应用的机制、协议,接口的相关标准。我国SM2密码算法的密钥生成、SM2密码算法签名/验签,SM2密码算法密钥交换,SM3密码算法,SM4密码算法应用等已经被纳入ISO/IEC 11889国际可信计算标准。
+
+## 2.1.3 国内行业与团体发布
+| 标准编号 | 标准名称 | 归口单位 | 标准概述 |
+|---------|--------|---------|----------------------------|
+|GA/T 2001-2022| 移动警务 可信计算总体技术要求|公安部计算机与信息处理标准化技术委员会|该标准规定了移动警务可信计算总体架构、技术要求和密码使用要求。|
+|T/ZTCIA 001-2022|可信计算产品规范|中关村可信计算产业联盟 标准化委员会|N/A|
+|T/ZTCIA 002-2022|网络安全产品安全可信要求》|中关村可信计算产业联盟 标准化委员会|N/A|
+|T/ZTCIA 003-2022|嵌入式可信计算技术要求与测评方法》|中关村可信计算产业联盟 标准化委员会|N/A|
+|T/ZTCIA 004-2022|外设产品可信计算技术规范》|中关村可信计算产业联盟 标准化委员会|N/A|
+
+## 2.1.4 可信计算密码产品认证
在由市场监管总局、国家密码管理局联合发布的《商用密码产品认证目录》第一批/第二批中,包括如下可信计算密码相关产品种类:
| 产品种类 | 产品描述 | 认证依据 |
@@ -38,10 +48,10 @@
| 可信计算密码支撑平台 | 采取密码技术,为可信计算平台自身的完整性、身 份可信性和数据安全性提供密码支持。其产品形态 主要表现为可信密码模块和可信密码服务模块。 | GM/T 0011《可信计算密码支撑平台功能与接口规范》 GM/T 0012《可信计算可信密码模块接口规范》GM/T 0058《可信计算TCM服务模块接口规范》GM/T 0028《密码模块安全技术要求》 |
| 可信密码模块 | 可信计算密码支撑平台的硬件模块,为可信计算平台提供密码运算功能,具有受保护的存储空间。 | GM/T 0012《可信计算可信密码模块接口规范》GM/T 0028《密码模块安全技术要求》 |
| 安全芯片 | 含密码算法、安全功能,可实现密钥管理机制的集 成电路芯片。 | GM/T 0008《安全芯片密码检测准则》 |
- - 可信密码模块认证:为了适应TCM标准规范由1.0向2.0升级,2022年7月在由市场监管总局、国家密码管理局发布的《商用密码产品认证目录(第二批)》中,新增了可信密码模块产品认证种类,其依据《GM/T 0028 密码模块安全技术要求》和《GM/T 0012-2020 可信计算密码模块接口规范》进行认证,即所谓TCM 2.0认证。TCM2.0协议依据GM/T 0012-2020测试,GM/T 0012-2020中规定,TCM 2.0协议是TPM 2.0协议的一个子集。GM/T 0028则分为安全等级1-4级进行认证。
+ - 可信密码模块认证:为贯彻落实《中华人民共和国密码法》,进一步健全完善商用密码产品认证体系,更好满足商用密码产业发展需要,市场监管总局、国家密码管理局于 2022年7月10日发布了商用密码产品认证目录第二批,可信密码模块在该目录中。关于可信密码模块的认证,依据GM/T 0012《可信计算可信密码模块接口规范》和 GM/T0028《密码模块安全技术要求》进行认证。关于可信密码模块功能接口,按照 GM/T0012《可信计算可信密码模块接口规范》进行测试;关于密码模块的安全性按照 GM/T 0028《密码模块安全技术要求》进行认证,可以根据实际需要选择安全等级1~4 级进行认证。当前最新的可信计算可信密码模块接口规范为 GM/T 0012-2020《可信计算可信密码模块接口规范》,也就是TCM2.0 标准,其协议为 TPM2.0 协议的一个子集,在算法上只支持中国算法SM2/SM3/SM4.
- 可信计算密码支撑平台认证:在《商用密码产品认证目录(第一批)》中,有《可信计算密码支撑平台》产品认证类别,依据GM/T 0011/0012/0058/0028进行认证。GM/T 0028分为1-4安全等级进行认证。
- 安全芯片认证:单颗芯片实现的TCM可信密码模块属于密码安全芯片类,在《商用密码产品认证目录(第一批)》中,安全芯片依据《GM/T 0008-2012 安全芯片密码检测准则》来检测,分为1-4安全等级进行认证。
-## 可信计算产品认证
+## 2.1.5 可信计算产品认证
由中关村可信计算产业联盟和公安部第三研究所联合开展的可信计算产品联合认证,认证范围包括如下产品种类:
|产品种类|认证依据|
@@ -50,13 +60,3 @@
|可信网络安全产品|T/ZTCIA 002-2022 可信计算 网络安全产品安全可信要求|
|办公设备产品|T/ZTCIA 003-2022 可信计算 办公设备产品技术规范|
-## 国内行业与团体发布
-| 标准编号 | 标准名称 | 归口单位 | 标准概述 |
-|---------|--------|---------|----------------------------|
-|GA/T 2001-2022| 移动警务 可信计算总体技术要求|公安部计算机与信息处理标准化技术委员会|该标准规定了移动警务可信计算总体架构、技术要求和密码使用要求。|
-|T/ZTCIA 001-2022|可信计算产品规范|中关村可信计算产业联盟 标准化委员会||
-|T/ZTCIA 002-2022|网络安全产品安全可信要求》|中关村可信计算产业联盟 标准化委员会||
-|T/ZTCIA 003-2022|嵌入式可信计算技术要求与测评方法》|中关村可信计算产业联盟 标准化委员会||
-|T/ZTCIA 004-2022|外设产品可信计算技术规范》|中关村可信计算产业联盟 标准化委员会||
-
-
diff --git a/src/standard-international.md b/src/standard-international.md
index 9b4784b60ec79dbb8e171419abdcbe2d4f3e9f9e..8dfd2c2862ced986a67ae286554eabb73c18155b 100644
--- a/src/standard-international.md
+++ b/src/standard-international.md
@@ -1,5 +1,5 @@
-# 国际可信计算标准
-## ISO发布
+# 2.2 国际可信计算标准
+## 2.2.1 ISO发布
### ISO简介
ISO(国际标准化组织)和IEC(国际电工委员会)组成了专门的全球标准化体系。作为ISO或IEC成员的国家机构通过各自组织建立的技术委员会参与国际标准的制定,以处理特定领域的技术活动。ISO和IEC技术委员会在共同感兴趣的领域进行合作。与ISO和IEC保持联系的其他政府和非政府国际组织也参加了这项工作。在信息技术领域,ISO和IEC成立了一个联合技术委员会ISO/IEC JTC 1。国际标准是根据ISO/IEC指令第2部分中给出的规则起草的。联合技术委员会的主要任务是制定国际标准。联合技术委员会通过的国际标准草案分发给国家机构表决。作为国际标准出版需要至少75%的国家机构投票通过。
### ISO/IEC 11889系列标准概述
@@ -14,7 +14,7 @@
- [ISO/IEC 11889-2:2015 Information technology — TPM Library — Part 2: Structures](https://www.iso.org/standard/66511.html)
- [ISO/IEC 11889-3:2015 Information technology — TPM Library — Part 3: Commands](https://www.iso.org/standard/66512.html)
- [ISO/IEC 11889-4:2015 Information technology — TPM Library — Part 4: Supporting Routines](https://www.iso.org/standard/66513.html)
-## TCG发布
+## 2.2.2 TCG发布
### 关于TCG
可信计算组(Trusted Computing Group,TCG)是一个非营利组织,旨在为可互操作的可信计算平台开发、定义和推广基于硬件信任根的供应商无关的全球行业规范和标准。TCG的核心技术包括可信平台模块(Trusted Platform Module,TPM),可信网络通信(Trusted Network Communications,TNC)以及网络安全和自加密驱动器的规范和标准。TCG还设有工作组,将信任的核心概念从企业扩展到物联网的云安全、虚拟化和其他平台以及计算服务。
![TCG Work Group](images/TCG工作组.png)
@@ -38,11 +38,6 @@
![TCG Software Stack 2.0](images/tss2.0spec-arch.PNG)
-__说明:附图源自TCG官网__
-TSS2各组成部分所需资源如下图所示:
-![Resource Requirements for TSS 2.0 Component](images/Resource_Requirements_for_TSS_2.0_Component.PNG)
-
-__说明:附图源自TCG官网__
应用程序开发人员可以参考该规范开发可互操作的客户端应用程序,以实现对可信计算能力的调用。TSS的另一个作用是将程序程序员与与TPM接口的底层细节隔离开来、降低TPM应用开发的学习成本。
- [TSS规范官网入口](https://trustedcomputinggroup.org/resource/tcg-software-stack-tss-specification/)
### PC Client
@@ -95,9 +90,9 @@ TNC工作组已经定义并发布了一个开放架构和一套不断增长的
|一级标准|子标准|
|-------|-----|
-|TNC Architecture for Interoperability|无|
-|IF-IMC – Integrity Measurement Collector Interface|无|
-|IF-IMV – Integrity Measurement Verifier Interface|无|
+|TNC Architecture for Interoperability|N/A|
+|IF-IMC – Integrity Measurement Collector Interface|N/A|
+|IF-IMV – Integrity Measurement Verifier Interface|N/A|
|IF-TNCCS – Trusted Network Connect Client-Server Interface|IF-TNCCS: TLV Binding|
|IF-TNCCS – Trusted Network Connect Client-Server Interface|IF-TNCCS: Protocol Bindings for SoH|
|IF-M – Vendor-Specific IMC/IMV Messages Interface|IF-M: TLV Binding|
@@ -109,10 +104,10 @@ TNC工作组已经定义并发布了一个开放架构和一套不断增长的
|IF-MAP – Metadata Access Point Interface|IF-MAP Metadata for Network Security|
|IF-MAP – Metadata Access Point Interface|IF-MAP Metadata for ICS Security|
|IF-MAP – Metadata Access Point Interface|MAP Content Authorization|
-|ECP – Endpoint Compliance Profile|无|
-|CESP – Clientless Endpoint Support Profile|无|
-|Server Discovery and Validation|无|
-|Federated TNC|无|
+|ECP – Endpoint Compliance Profile|N/A|
+|CESP – Clientless Endpoint Support Profile|N/A|
+|Server Discovery and Validation|N/A|
+|Federated TNC|N/A|
|IF-PTS – Platform Trust Services Interface|Attestation PTS Protocol: Binding to IF-M|
|IF-PTS – Platform Trust Services Interface|Simple Object Schema|
|IF-PTS – Platform Trust Services Interface|Core Integrity Schema|
@@ -160,7 +155,7 @@ TNC可以与TPM集成,以实现安全身份验证和认证,解决rootkit和
|Infrastructure|PCIe-based Component Class RegistryZ|
|Server|TCG Server Management Domain Firmware Profile Specification|
|virtualized Platform|Virtualized Trusted Platform Architecture Specification|
-|Cyber Resilient Technologies|
+|Cyber Resilient Technologies|N/A|
|DICE|DICE Endorsement Architecture for Devices|
|DICE|DICE Attestation Architecture|
|DICE|DICE Layering Architecture|
@@ -179,6 +174,6 @@ TNC可以与TPM集成,以实现安全身份验证和认证,解决rootkit和
|Mobile|TCG Runtime Integrity Preservation in Mobile Devices|
|Mobile|TCG Trusted Network Communications for Mobile Platforms|
|Mobile|TCG TPM 2.0 Mobile Specification Implementation Guidance|
-|Embedded Systems| |
+|Embedded Systems|N/A |
diff --git a/src/standard.md b/src/standard.md
index 0adfe55643874e58aa168aaa4b118e44398886ae..90a25d1680e5d1dfd0c39dbad500a2c4a83dc1e3 100644
--- a/src/standard.md
+++ b/src/standard.md
@@ -1,4 +1,4 @@
-# 可信计算标准化
+# 2.可信计算标准化
标准是技术产业化应用成熟的标志、也是技术广泛应用的基础保障。经过20多年的探索发展,可信计算技术已形成成熟的标准体系。
- 国际方面,可信计算标准主要由国际可信计算组织(TCG,Trusted Computing Group)维护与发布,NIST等其他国际标准化机构主要是对相关标准的引用及应用推广。
diff --git a/src/trustedcomputingSig.md b/src/trustedcomputingSig.md
index f3a93715da1f483bed07e781d3c9269fae231d4e..109b0b8ed6dd82338177158bb0ad002117731cd1 100644
--- a/src/trustedcomputingSig.md
+++ b/src/trustedcomputingSig.md
@@ -12,7 +12,7 @@
2. 没有统一可用的可信计算解决方案:
- 客户不知道如何使用可信根提供的安全能力服务
- 作为可信计算技术落地应用的核心,远程证明server侧没有现成可用开源参考实践,TPM虽然在Windows中非常成熟,但是在 LinuxOS用户有感知地透传,应用可信计算技术目前比较有限;
- - 缺乏面向基础设施的通用可信计算特性使能开源参考实现;
+ - 缺乏面向基础设施的通用可信计算特性使能开源参考实现;
为夯实关键信息基础设施主动安全纵深防御能力,促进可信计算技术开源开放生态繁荣发展,可信计算SIG由此成立。后续,SIG将依托浪潮信息龙蜥社区联合实验室丰富多样的服务器可信计算平台设备环境,联合SIG成员伙伴共同推动可信计算实践及解决方案探索,输出易用好用的可信计算解决方案及配套成果,繁荣国内可信计算开源开放生态。
## SIG 愿景
1. 立足龙蜥社区国内OS根社区定位,将龙蜥社区可信计算SIG打造为国内可信计算技术开源开放的总入口;