Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Google的Titan与可信计算

Google的Titan与可信计算

作者头像
段立功
发布于 2022-06-13 03:11:08
发布于 2022-06-13 03:11:08
7130
举报
文章被收录于专栏:云计算之道云计算之道

近日,谷歌宣称定制Titan芯片,为谷歌的重计算负载主机,提供硬件验证的启动和端到端认证的信任根。并声称在Google Cloud Platform中加固了服务器的各个层面,包括Google设计的硬件,受控的固件栈,OS镜像,加固过的hypervisor等。主要包括两个方面:secure boot的增强和基于硬件的身份加密。

当我第一眼看到这个消息时,我不由地问自己:这不就是TPM和以及TPM实现的一套可信启动系吗? 谷歌为何自己实现一套

类似TPM的系统? Intel不是已经有基于TPM的tboot/TXT以及OpenCIT的解决方案了吗?

的确,类似TPM,Titan综合了很多组件:一个安全应用处理器,一个加密协处理器,一个硬件随机数生成器,一个密钥体系,嵌入式静态RAM,嵌入式闪存和只读内存块。Titan芯片通过SPI总线(Serial Peripheral Interface)与主CPU进行通信.

基于Titan,谷歌宣称对Secure Boot进行了增强并且实现了基于硬件的身份加密系统。

Secure Boot的增强

首先,我们看一下服务器的典型的启动过程:

1)BMC配置机器硬件让CPU启动时,服务器开始启动;

2)CPU从引导固件闪存中加载引导固件(BIOS或者UEFI),这些引导固件会进行更进一步的软硬件配置;

3)一旦服务器配置成功后,引导固件会从服务器硬盘上的启动扇区读取boot loader程序,并加载到系统内存中;

4)启动固件将执行控制转交给boot loader程序,boot loader程序会从硬盘中读取操作系统镜像到系统内存;

5)boot loader程序把执行控制转移给操作系统。

Titan除了传统的secure boot的典型特性以外,还提供另外两个重要特性:修复(Remediation)和首指令完整性(first-instruction integrity)。

修复,提供了在Titan固件中找到并补上漏洞时,重新建立信任的机制。

首指令完整性,可以识别出每台机器启动周期中最早运行的代码。

根据谷歌的资料(https://cloudplatform.googleblog.com/2017/08/Titan-in-depth-security-in-plaintext.html),使用了Titan之后的Secure Boot,服务器的启动过程如下:

1)当服务器Reset时,Titan的安全应用处理器立即从嵌入的只读内存中执行代码,即引导ROM。制造工艺预置了这些不可变代码,默认为是可信的并且在每次芯片重置时被验证。Titan在每次芯片启动时进行内存自带的自检测试,以确保所有的内存,包括ROM,没有被篡改。

2)载入Titan的固件。尽管该固件是嵌入在芯片自带的闪存中的,但是Titian启动ROM并不是盲目地信任它。事实上,启动ROM会使用公钥密码验证Titian的固件,并把经过验证的代码的身份加入到Titan的密钥体系中;

3)引导ROM加载经过验证的固件。

4)Titan在安全地启动完它本身的固件之后,它使用公钥密码来检查主机引导固件闪存里的内容。在Titan检查完引导固件闪存以前,它会阻止BMC/PCH访问引导固件闪存。当检查完毕,它会发出Ready信号使服务器从reset状态中出来。在Titan检查引导固件时把服务器保持在reset状态,提供给我们首指令完整性这一特性:我们可以从首指令中得到什么引导固件和OS在服务器上启动。

5)经过检验的引导固件会配置服务器并且加载Boot loader;

6)经过检验的Boot loader会检查和加载操作系统。

使用Titan进行身份加密

谷歌开发了基于Titan芯片的端到端的身份加密系统,该系统在数据中心里被用作各种加密操作的信任根。

Titan芯片制造工艺会为每个芯片生成独一无二的密钥材料(keying material)。该密钥材料和密钥的出处信息安全地存放在注册数据库里。该数据库的内容使用离线的Titan CA维护的密钥进行加密保护。各Titan芯片生成认证签名请求(Cerfiticate Signing Request)发给CA,CA会使用预先存放的注册数据库的信息验证CSR,并发给身份证书(identity certificate)。

基于Titan的身份系统不近使用CSR验证芯片的来源,而且,由于固件的代码身份的哈希值存放到芯片的密钥系统里,该系统也可以检查芯片里运行的固件。这一特点使得修复(Remediatioin)成为可能。它允许我们修改Titian固件里的bug,并且发送CA证书给修复后的Titan芯片使用。

同时,基于Titan的身份系统使能了后端系统来给各携带Titan芯片的服务器以及运行在上面的业务生成密钥。

Titan也可以为重要的审计日志进行签名,确保Log的修改会留有证据。Titan维护一个连续的计数器,把每条log和计数关联;同时使用私有密钥,对这种关联进行签名。这种把日志消息和计数器的连续数值进行绑定的做法,确保了审计日志不会毫无痕迹或觉察的情况下被具有root权限的入侵者进行修改或删除。

总结陈词:

确保服务器的启动过程的完整性这方面,现在比较流行的2种技术:基于UEFI的secure boot 和基于TPM的系统启动的度量。前者需要一个前提是Firmware本身是可信和完整的。而基于TPM的度量,则由于TCG在设计TPM规范时,考虑到兼容性和厂商中立性,把更多的空间留给了服务厂商来实现。Intel有一个trusted boot和txt的实现,以及CIT的解决方案,但是感觉实际使用的客户并不太多。相比TPM,除了提供所谓的首指令完整性之外,Google的Titan更主动地去测量服务器启动过程中的每一个状态,并主动进行修改。这一点对可信计算的厂商来说应该是一个很好的参考。其实,国内沈昌祥院士倡导的TPCM是一种主动的方式,但是由于需要硬件的支持,个人觉得有点太heavy,使用客户也不多。

参考资料:

https://youtu.be/kwnWfHq2EfQ?t=31m27s

https://cloudplatform.googleblog.com/2017/08/Titan-in-depth-security-in-plaintext.html

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-09-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云计算之道 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
可信计算之虚拟可信平台模块
随着虚拟化技术的普及,单台物理机上运行多个虚拟机逐渐成为主流,但是,单台物理机上的TPM芯片只有一个。为了让物理机上的多个虚拟机都能使用可信计算,2006年,IBM在USENIX论文《vTPM: Virtualizing the Trusted Platform Module》中首次提出了虚拟可信平台模块技术(vTPM)。vTPM是TPM的软件实现,让虚拟机也能够使用安全存储、密码操作等功能,而不需要专属的TPM芯片。
绿盟科技研究通讯
2024/04/17
5330
可信计算之虚拟可信平台模块
可信计算之可信平台模块介绍
早期计算机安全主要依赖于杀毒软件,然而,这种纯软件防御存在明显缺陷。一旦恶意软件获得与杀毒软件相同的权限,它可以轻易关闭防护程序并悄悄隐藏自身。更甚的是,一旦恶意软件针对固件和引导程序发起攻击,杀毒软件的查杀难度进一步增加。针对这些挑战,可信平台模块(Trusted Platform Module,TPM)应运而生。
绿盟科技研究通讯
2024/04/17
8460
可信计算之可信平台模块介绍
谷歌密钥,中国制造
今年7月,谷歌在旧金山举行的Next云大会上发布了新一代“Titan”物理密钥产品。Titan是一种安全芯片,可以防止间谍窃听硬件和插入固件植入来攻击电脑。
新智元
2018/09/25
1.3K0
谷歌密钥,中国制造
芯安全 新发展 | 国民技术可信计算再上新台阶
8月11日,为期三天的密码与安全行业盛会——“2023商用密码大会”在郑州国际会展中心降下帷幕,国民技术携带近40个优秀安全应用案例参展,全面展示了国民技术“芯安全 新发展”成果。首次亮相的可信计算NS350系列TCM2.0密码安全新品等可信计算相关产品与应用案例在展会上尤为受到关注。
芯智讯
2023/09/07
4620
芯安全 新发展 | 国民技术可信计算再上新台阶
secure boot (二)基本概念和框架
secure boot是指确保在一个平台上运行的程序的完整性的过程或机制。secure boot会在固件和应用程序之间建立一种信任关系。在启用secure boot功能后,未经签名的固件或程序将不能运行在该设备上。
嵌入式与Linux那些事
2022/12/01
2K0
secure boot (二)基本概念和框架
SecureBoot101:初始安全启动
几十年来,个人电脑一直受到病毒、蠕虫和其他恶意软件的困扰。最早的一些个人电脑病毒是以引导扇区病毒的形式传播的:它们以代码形式存在于软盘的引导扇区中,当用户使用受感染的 DOS 软盘启动计算机时,病毒就会从一台计算机传播到另一台计算机。虽然随着软盘的淘汰和互联网连接的普及,其他病毒传播方式也逐渐受到重视,但预启动的恶意软件对系统安全仍造成巨大威胁。通过在操作系统内核获得计算机控制权之前执行,恶意软件可以 "隐藏 "起来,从而使病毒扫描程序几乎无法检测到恶意软件。
绿盟科技研究通讯
2023/12/05
6680
SecureBoot101:初始安全启动
隐私计算中可信执行环境的一知半解
隐私计算是使数据“可用不可见”的技术,它包括了密码学、人工智能、安全硬件等众多领域交叉的学科体系。对于隐私计算而言,业界通常分为三大路径技术:以安全多方计算为代表的密码学路径、以可信任执行环境为代表的硬件路径和以联邦学习为代表的人工智能路径。
半吊子全栈工匠
2022/12/03
1.3K0
隐私计算中可信执行环境的一知半解
可信计算常用术语整理
在读《可信计算–理论与实践》时,一大堆各种英文简写,很快就看晕了,于是在此整理一下。 TCG:Trusted Computing Group:可信计算组织 TPM:Trusted Platform Module:可信平台模块 TCM:Trusted Cryptography Module:可新密码模块 MTM: Mobile Trusted Module:移动可信模块 DAA:直接匿名功能。 DMA:Direct Memory Access,直接存储器访问 PCA:Privacy Certificate Authority隐私签证机构.
yifei_
2022/11/14
1.1K0
让安全启动更加安全
在上篇文章中,我们介绍了安全启动Secure Boot的几个核心的概念。在现实中,用户的计算机通常是加密的,使用TPM来保存加密口令是一个很好的解决方案——用户可以拥有一个加密磁盘,但不必在每次重启时重复输入口令。此外还可以确保当硬盘被恶意者从电脑上拔出来时,由于密钥保存在TPM中,密钥不会泄露。
绿盟科技研究通讯
2023/12/12
5410
让安全启动更加安全
可信软件基概述
安智客长期关注可信执行环境TEE,今天了解学习一些可信软件基TSB(Trusted Software Base)。要了解可信软件基,先来了解可信计算基TCB(Trusted Computing Base)这一个传统概念。由于可信计算规范内容较多既包括计算节点也包括服务器可信支撑平台。本文参考大量规范标准只对可信软件基做一个浅述。
安智客
2018/07/30
8.4K0
可信软件基概述
可信计算之完整性度量架构
可信计算场景下,证明一个系统是否可信的信息由系统自身产生,验证方需要判断系统哪一部分给出的答案才是值得相信的。返回可信信息的程序本身,以及运行这些程序的BIOS、内核,都是不可信的,因为它们都可能被篡改。
绿盟科技研究通讯
2024/04/17
6780
可信计算之完整性度量架构
什么是UEFI签名认证?UEFI代码签名有什么好处?
为了防御恶意软件攻击,目前市面上所有电脑设备启动时默认开启安全启动(Secure Boot)模式。安全启动(Secure Boot)是UEFI扩展协议定义的安全标准,可以确保设备只使用OEM厂商信任的软件启动。UEFI签名认证就是对运行在 UEFI 系统下的 efi 驱动和通过 UEFI 启动的 shim(垫片)进行测试审查后,获得微软 UEFI 签名。UEFI签名认证能够解决固件在启动时加载不了,无法正常工作等问题。
沃通WoTrus数字证书
2023/03/13
1.5K0
什么是UEFI签名认证?UEFI代码签名有什么好处?
物联网安全漏洞案例研究与解决方案
随着物联网技术的不断推进,基于物联网的设备在我们的生活中越来越普及,但同时设备漏洞也成为了很大的隐患。
天钧
2019/11/25
2.4K0
ThreatSource:Google BeyondProd安全架构详解
安全乐观主义点评:由cnbird鸟哥分享的一份介绍Google BeyondProd实现的ppt,笔者遗憾没有现场听到具体的内容,ppt下面的“安全乐观主义点评”字样为小编的发散思考,并不代表鸟哥大佬原始观点。 安全乐观主义点评:ppt分为四个章节,介绍了云原生环境下的安全风险、Google的基础信任机制、BeyondProd实践以及实现技术细节。 安全乐观主义点评:咦!攻守之势异也。攻防两端,当具备完成基础的技术能力之后,将由传统被动挨打转移到主动防御建设阶段。从防御的层层积累,到检测、溯源、审计手段的多
安全乐观主义
2020/12/02
1.6K0
ThreatSource:Google BeyondProd安全架构详解
Android手机启动流程与TEE OS
一个移植了TEEOS的Android手机系统启动流程如下: 系统启动流程如图所示,具体为: ①系统上电,PC指针指向芯片内部BOOT ROM地址并执行。 ②BOOT ROM从外部存储设备加载、验证p
安智客
2018/02/24
3.2K0
Android手机启动流程与TEE OS
FPGA Xilinx Zynq 系列(三十七)Linux 启动
今天给大侠带来FPGA Xilinx Zynq 系列第三十七篇,开启第二十四章,带来Linux 启动相关内容,本篇为本系列最后一篇,本篇内容目录简介如下:
FPGA技术江湖
2020/12/30
3.9K0
苹果安全体系架构
下图是IOS系统安全架构图,它分为两个部分,第一个部分是硬件和固件层上面提供的安全保障,第二个部分是软件上面提供的安全保障,可以看到的是在硬件层上面它有一个加密引擎对我们的设备密钥、组密钥以及Apple的根证书进行加密,除了加密引擎以外它还有一个Secure Enclave的一个模块,这个模块是用来加密和解密我们Touch ID保存用户的指纹密码,在软件层有一个用户分区,整个用户分区是完全加密的,而且这个加密功能是不能关闭的,苹果的加密引擎是硬件级别的,所有进出的存储数据都要通过苹果加密引擎进行加密,而且加密引擎进行加密的key是跟硬件相关的,所以说我不能把一个设备加密的数据拿到另外一个设备上面去解密,应用沙盒提供了一个数据保护类的一个安全机制,这个数据保护类可以保护我们应用类数据的安全性,比如我们在应用沙盒里面写入的数据,我们可以通过数据保护类限定只有在用户解锁了设备之后才能读取这个数据
Al1ex
2024/04/29
2650
苹果安全体系架构
可信执行环境之AMD内存加密技术概述
可信执行环境(Trusted Execution Environment,下称TEE)是目前主流隐私计算技术之一,其通过软硬件方法在中央处理器中构建一个安全的区域,保证其内部加载的程序和数据在机密性和完整性上得到保护[1]。基于硬件的TEE使用硬件支持的技术为代码的执行和环境中数据的保护提供了更好的安全性保证。目前主流TEE方案有x86架构的Intel SGX技术、Intel TDX技术、AMD SEV技术及ARM架构的TrustZone技术等[2]。
绿盟科技研究通讯
2023/02/22
2.5K0
可信执行环境之AMD内存加密技术概述
可信计算和可信赖计算的渊源
看到业界在谈论可信计算时,将任何微软做的事情都称为可信计算,其实这里面发展过程很复杂,历史的交叉结合翻译的错误颇有故事,微软做的一些事情和可信计算既有区别又有联系,这里有必要说明一下。按照我很尊敬的某位做可信计算的同事对此的评价:"看那些乱七八糟,东拼西凑,自己造出的词语,会被误导的"。
安全乐观主义
2019/11/20
1.5K0
全解Google(谷歌)基础设施架构安全设计
谷歌的技术基础设施共同构建了搜索、邮件(Gmail)、照片等普通用户系统和G Suite 、谷歌云存储平台等企业系统,是谷歌数据中心的关键,是整个谷歌网络服务赖以存在的安全基础。 FreeBuf在原文基础上,针对谷歌技术基础设施的安全设计作了简要分析与介绍,这些技术基础设施为谷歌全球信息系统提供了一系列安全防护,它们包括运行安全服务、终端用户数据安全存储、服务安全通信、用户安全通信和运维安全管理等。 在介绍中,我们将围绕谷歌数据中心的物理安全、整体软硬件基础安全、技术限制和操作的运维安全进行逐层描述。
FB客服
2018/02/09
3.2K0
全解Google(谷歌)基础设施架构安全设计
相关推荐
可信计算之虚拟可信平台模块
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档