我理解的可信计算

  • A+
所属分类:信息安全

最近看到windows11发布,也去下载了工具进行检查,发现检查不通过,需要开启tpm。了解到可信计算,所以做个笔记。

为什么会有可信计算

什么是信任

信任是对事物的一种判断。所以通常它会受两种因素影响。
1. 权威,比如我们相信人民币的价值,是因为有国家背书。
2. 可控,事物对我而言,是清晰可控的,而不是有黑盒,不可控的存在。
我们现在提出可信计算,也就是想方设法解决上面的两个影响因素。

可信计算的场景

我认为可信和常规的安全并不相同,安全是防御外部攻击,而可信是证明内部可靠
现在,越来越多的公司使用了云计算产品,因为方便和低成本。但托管模式会降低可控性,因为云计算提供商存在上帝视角,如何保证云计算提供商是可信的。
自建机房的公司,基本不会关心可信计算,他们不需要,因为机器在私有机房,是可控的。中美关系微妙,使得国家大力发展国产的硬件和软件。也是为了提升自主可控性。

计算和数据的管理

数据传输和保存

现在说的都是可信计算,但数据的可信传输或可信存储没有人提。是因为这个问题目前有可靠的手段保障
密码学解决的就是在不安全的信息通道中安全的传递信息,存储也是一种信息通道。所以数据的传输和保存,存在可靠的解决办法,是可控的,自然也是可信的。
比如我们可以把数据加密,存到共有云上,或者通过外网传输。没有秘钥很难破解出明文。

计算很难做到可信

但计算不同,我们无法拿着密文去计算,明文会被暴露出来。云计算提供商对用户的计算资源存在更高的控制权。这导致用户的控制权受到挑战。
不知道云计算提供商的内部实现,如何证明可信。

如何提高计算的可信度

就是前面所说的,提高权威和可控。

来自权威的背书

参加政府的认证,中立机构的认证。用政府或机构的权威性进行背书。

代码审查/开源

让用户审查内部的代码逻辑,或者直接公开,透明化。

可信计算的技术

目前,对于可信计算,主要是在芯片上做了相应的支持,比如intel的sgx,主板上的tpm。

SGX——安全的执行环境

SGX会开辟一个计算区域,只有通过SGX认证的程序才可以在里面执行并访问被保护的数据。感觉就是一种芯片级的访问控制。
就好比我们看电视剧里,调查组将办公地点选在武警基地。武警基地就是安全的执行环境。
它可以保证,只有被审核的代码才可以有权限对保护的数据进行操作。只要SGX是可靠的,环境也就是可信的。

TPM——可信平台模块

这个是安装在主板上的一个模块。用于提供加密计算,保存秘钥等功能。
软件很容易被篡改,做成芯片更安全。加密芯片提供商需要经过政府备案,自然可信。

可信计算方案

阿里云的可信计算
从这个文章中,可以看到鉴定系统通过使用可信模块来鉴别最终提供的环境(硬件和软件)的完整性
至于提供的硬件和软件是否可靠,可以通过代码审查来确定。只是通常这需要权威机构鉴定,除非将技术细节公开。
所以叫可信计算环境鉴定技术更为确切。

总结

目前可信计算的目标是证明用户使用的环境是可信的。在已知环境通过可信认证的前提下,通过鉴别环境是否被篡改来证明环境可信。已知环境的可信认证应该是基于审查。
可是,确认环境是否可信的动作本身,又是否是可信的呢?这似乎是一个悖论。

其它

在不可信环境计算,依然能保证信息安全,这或许也是一种解决办法。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: