可信设备和计算系统技术方案

技术编号:31996956 阅读:11 留言:0更新日期:2022-01-22 18:09
本发明专利技术涉及可信计算和云计算领域。本发明专利技术提供了一种用于可信计算系统的可信设备。所述可信设备用于从用户设备获取数值和程序代码;根据所述数值和所述程序代码计算哈希值;对所述哈希值进行签名;将所述签名哈希值提供给验证设备。证设备。证设备。

【技术实现步骤摘要】
【国外来华专利技术】可信设备和计算系统


[0001]本专利技术涉及可信计算领域。更具体地,本专利技术涉及一种可信设备和一种包括所述可信设备的可信计算系统。本专利技术具体可以用于云计算领域。

技术介绍

[0002]云计算涉及多个租户使用共享资源。这样可以降低成本并减少维护。由于这种共享模式,云提供商通常可以完全控制用户的数据和资源(例如虚拟机、存储器或网络)。这包括:访问特权数据(例如,私钥、密码)、存储在云中的安全信息;能够代表用户进行操作;在云中提供的资源方面误导用户。如果攻击者损坏了云基础架构,则他们也可以进行上述操作。
[0003]由于这些原因,云提供商和租户之间需要信任。这在大多数情况下是可以接受的,但在某些情况下(例如,监管或业务原因),无法建立这种信任。
[0004]对于不可能进行这种信任的用例,租户在以下条件下仍可以享受云基础架构的使用:所有特权数据在静止时不可访问,或所有特权数据在处理时不可访问。当所有特权数据在静止时不可访问时,需要对数据进行加密,而当所有特权数据在处理时不可访问时,需要能够对租户代码进行可信执行。
[0005]英特尔提供指令集扩展(软件防护扩展

SGX),以创建可信和安全执行的飞地。用户可以创建这种飞地,运行证明协议并运行计算,而无需将计算的状态暴露给CPU上运行的任何其它代码。具体地,SGX是一组指令,有助于提高任何应用程序代码和数据的安全性,从而为它们提供更多的保护,免遭泄露或篡改。
[0006]ARM提供了TrustZone技术,可将硬件划分为可信环境和不太可信环境,这些环境相互隔离。硬件负责切换模式。
[0007]可信平台模块(trusted platform module,TPM)(也称为ISO/IEC 11889)是安全加密处理器的国际标准,这是一种专用微控制器,旨在通过集成加密密钥保护硬件。
[0008]但是,这些技术不适用于云计算或设备在租户之间共享或不归用户所有的任何其它用例,因为上述方案假定所有者、用户和管理员是同一实体。
[0009]也就是说,租户用户特别缺乏以下可信执行的属性:证明将访问特权数据的已部署软件的能力,以及证明所提供的硬件并验证其处于独占访问状态的能力。

技术实现思路

[0010]鉴于上述问题和缺点,本专利技术实施例旨在改进传统可信设备和系统。
[0011]具体地,目的是提供一种可信设备,该可信设备可以验证由用户设备提供给可信设备的程序代码实际由可信设备执行。
[0012]通过所附独立权利要求中提供的实施例实现所述目的。这些实施例的有利实现方式在从属权利要求中进一步定义。
[0013]本专利技术的第一方面提供了一种用于可信计算系统的可信设备,其中,所述可信设
备用于:从用户设备获取数值和程序代码;根据所述数值和所述程序代码计算哈希值;对所述哈希值进行签名;将所述签名哈希值提供给验证设备。
[0014]这是有益的,因为代码是在专用的和物理上独立的计算核上执行的,这使得它更不容易受到侧信道攻击。这还确保了任何任意程序都可以在可信设备上执行,这对TPM不同,后者提供密钥存储功能以及一组固定的加密和供应商特定功能。这使得可信模块上的程序是从模块传出的消息的唯一仲裁者,并可以被写入,以禁止未经授权访问存储的信息。这与TPM相反,在TPM中,硬件所有者可以调用TPM函数来使用当前存储的密钥对消息进行签名。
[0015]哈希函数具体是使用哈希值计算。哈希函数可以是将任意大小的数据映射到固定大小的数据的任何函数。哈希函数返回的值可以称为哈希值。哈希值具体是使用公钥/私钥加密进行签名。具体地,根据数值和程序代码计算哈希值包括将程序代码的数值用作哈希函数的输入值。具体地,对哈希值进行签名包括对算法进行签名,该算法在给定哈希值和私钥的情况下产生签名(即,签名哈希值)。
[0016]可信设备(也可以称为可信模块)可以被视为包括存储器和IO的可信计算单元。可信设备可以是协处理器、片上系统或其中存储器和总线与其它计算单元隔离并通过物理手段进行检查的任何处理器。可信设备可以暴露低级消息传递接口(发送/接收),以及以可信方式重置和加载新程序的能力。
[0017]可信设备可以是防篡改的,并且可以包括执行可信重置和加载所需的所有设施。因此,可信设备的用户能够获得设备真实性的证据,以及正确完成将设备重置到干净状态并加载新程序(通过可信设备的供应商提供的密钥)。
[0018]可信设备的重置和加载命令可以实现将程序加载到可信设备中。该命令可以确保可信设备硬件中的状态(包括存储器、寄存器的状态和可信设备的其它状态)的重置。该命令可能需要用户提供的质询,并可能以完全加密的应答完成。一旦程序加载到可信设备中,可信设备就可以提供加密完成证据。
[0019]重置和加载命令的证据可以由设备供应商验证,并证明以下方面:证据是在代表供应商制造的可信设备上生成的。可信设备执行了重置,重置到初始状态。可信设备仅加载了具有特定哈希的程序。
[0020]因此,可以确保在可信设备上运行的代码是可信的,这与可以在同一CPU上运行的具有非可信代码的飞地相反。可信设备的用户可以证明所使用的可信设备及其加载代码的真实性。对可信设备的物理访问不会损害其内容。
[0021]在第一方面的一种实现方式中,所述数值为随机数。
[0022]具体地,随机数也被称为“使用一次的数字”。具体地,随机数也可以被称为加密质询。具体地,随机数是一个任意数字,在加密通信中只能使用一次。
[0023]在第一方面的另一种实现方式中,所述可信设备包括可信处理器,所述可信设备还用于重置所述可信处理器并将所述程序代码加载到所述可信处理器。
[0024]这确保了可信处理器仅运行从用户设备获得的程序代码。其它程序代码无法在不被注意到的情况下提供给用户设备。
[0025]在第一方面的另一种实现方式中,所述可信处理器还用于根据所述数值和所述加载的程序代码计算所述哈希值。
[0026]在第一方面的另一种实现方式中,所述可信处理器还用于根据所述可信设备的存储器的内容计算所述哈希值。
[0027]具体地,哈希值是根据存储器的整个内容(具体包括程序代码)计算的。
[0028]在第一方面的另一种实现方式中,所述可信处理器还用于根据所述可信设备的私钥对所述哈希值进行签名。
[0029]具体地,例如在供应商制造可信设备期间,私钥被预先存储在可信设备中。
[0030]在第一方面的另一种实现方式中,所述可信设备被实现为可插拔的卡。
[0031]这是有益的,因为可信设备可以实现为可插拔和非集成设备。
[0032]本专利技术的第二方面提供了一种可信计算系统,所述可信计算系统包括根据第一方面或其任一实现方式所述的可信设备,和验证设备,其中,所述验证设备用于从用户设备获取所述数值;从所述可信设备获取所述签名哈希值;根据所述数值和所述签名哈希值验证所述可信设备的真实性。
[0033]具体本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于可信计算系统(400)的可信设备(100),其特征在于,所述可信设备(100)用于:

从用户设备(501)获取数值(101)和程序代码(102);

根据所述数值(101)和所述程序代码(102)计算哈希值(103);

对所述哈希值(103)进行签名;

将所述签名哈希值(103)提供给验证设备(401)。2.根据权利要求1所述的可信设备(100),其特征在于,所述数值(101)是随机数。3.根据权利要求1或2所述的可信设备(100),其特征在于,所述可信设备(100)包括可信处理器(201),所述可信设备(100)还用于重置所述可信处理器(201),并将所述程序代码(102)加载到所述可信处理器(201)。4.根据权利要求3所述的可信设备(100),其特征在于,所述可信处理器(201)还用于根据所述数值(101)和所述加载的程序代码(102)计算所述哈希值(103)。5.根据权利要求3或4所述的可信设备(100),其特征在于,所述可信处理器(201)还用于根据所述可信设备(100)的存储器(202)的内容计算所述哈希值(103)。6.根据权利要求3至5中任一项所述的可信设备(100),其特征在于,所述可信处理器(201)还用于根据所述可信设备(100)的私钥(203)对所述哈希值(103)进行签名。7.根据上述权利要求中任一项所述的可信设备(100),其特征在于,所述可信设备(100)被实现为可插拔的卡。8.一种可信计算系统(400),其特征在于,包括验证设备(401)和根据权利要求1至7中任一项所述的可信设备(100),其中,所述验证设备(401)用于:

从用户设备(501)获取数值(101);

从所述可信设备(100)获取签名哈希值(103);

根据所述数值(101)和所述签名哈希值(103)验证所述可信设备(100)的真实性。9.根据权利要求8所述的系统(400),其特征在于,所述系统(400)还包括所述用户设备(501),其中,所述用户设备(501)用于计算所述数值(101),获得所述程序代码(102),向所述可信设备(100)提供所述数值(101)和所述程序代码(102),并向所述验证设备(401)提供所述数值(101)。10.根据权利要求8或9所述的系统(400),其特征在于,所述用户设备(501)还用于从所述可信设备(100)获取所述签名哈希值(103),并将所述签名哈希值103转发给所述验证设备(401)。11.根据权利要求8至10中任一项所述的系统(400),其特征在于,所述用户设备(501)还用于在将所述程序代码(102)提供给所述可信设备(100)之前,计算并存储所述程序代码(102)的哈希值(502)。12.根据权利要求11所述的系统(400),其特征在于,所述用户设备(501)还用于比较所述程序代码(102)的所述存储哈希值(502)与根据加载到所述可信处理器(201)的所述程序代码(102)计算的哈希值,以验证所述用户设备(501)提供的所述程序代码...

【专利技术属性】
技术研发人员:萨吉
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1