基于TEE的可信远程验证的方法技术

技术编号:20655273 阅读:20 留言:0更新日期:2019-03-23 06:55
本发明专利技术涉及计算机软件和硬件信息安全技术领域,其公开了一种基于TEE的可信远程验证的方法,有效的解决远程验证的安全性和稳定性的问题。本发明专利技术将原始数据或关键程序分别存储在客户端和服务器,并在服务器中计算数据摘要并存储。利用终端可信执行环境TEE的安全特性,将密钥生成、摘要生成和签名生成的过程完全置于TEE侧,定期向服务器发送数据摘要及签名,可以在执行的时候保证摘要和签名数据不被截取和不被篡改,防止第三方应用在计算摘要和签名过程中对存储区的敏感数据进行修改,这样有效抵抗了第三方在终端恶意篡改数据,能够完全做到可信远程验证。

【技术实现步骤摘要】
基于TEE的可信远程验证的方法
本专利技术涉及计算机软件和硬件信息安全
,具体涉及一种基于TEE(可信执行环境)的可信远程验证的方法。
技术介绍
通常在对数据完整性和稳定性的校验中,都是在REE(普通执行环境)侧生成校验和或数据摘要来完成的,但是这些校验和、摘要在REE侧生成时就可能会被篡改。从而影响用户隐私数据、密钥数据的安全性。TEE技术可以保证数据在计算过程中的安全,防止第三方在运算过程中或在存储区修改敏感数据信息,有效抵抗第三方在终端恶意篡改数据,能够做到硬件级安全。因此,本申请有必要提出一种基于TEE的可信远程验证的方法。
技术实现思路
本专利技术所要解决的技术问题是:提供一种基于TEE的可信远程验证的方法,有效的解决远程验证的安全性和稳定性的问题。本专利技术解决上述技术问题所采用的技术方案是:基于TEE的可信远程验证的方法,包括以下步骤:a.服务器在其TEE侧对数据进行摘要计算并存储;b.客户端在其TEE侧生成公私钥对后发布公钥;c.服务器保存客户端的公钥;d.客户端向服务器发送验证请求;e.服务器在收到客户端发来的验证请求后向客户端发送本次要验证的数据在客户端的存放地址;f.客户端根据所述存放地址找到对应数据后,在其TEE侧计算其摘要,并用私钥签名,然后发送到服务器;g.服务器接收到数据后对数据进行拆帧,在其TEE侧比对摘要是否正确,然后检查签名是否正确,打印并向客户端返回验证结果;h.客户端在收到验证结果后,间隔一段时间再次发起验证。作为进一步优化,所述服务器和客户端同时持有相同数据信息。作为进一步优化,步骤d中,所述客户端循环定时向服务器发起验证请求。作为进一步优化,该方法适用于所有端到端的验证服务。作为进一步优化,所述数据为存储的文件数据,或者存在客户端上的所有敏感数据和关键程序。本专利技术的有益效果是:使用该方法对数据完整性和稳定性的远程验证进行保护,验证中的计算和数据生成都放在TEE侧可信执行环境,能够有效的防止远程验证过程中的私密数据被第三方应用截取、篡改,可以保证隐私数据的安全性和认证结果的稳定性。附图说明图1为本专利技术中的基于TEE的可信远程验证的方法流程图;图2为可信远程验证服务框架图。具体实施方式本专利技术旨在提供一种基于TEE的可信远程验证的方法,有效的解决远程验证的安全性和稳定性的问题。为了防止客户端上的敏感数据和关键程序被篡改,本专利技术方案对于验证中所需要用到的密钥、文件摘要及签名均在TEE侧生成,保证了这些数据在验证过程中的安全性。本专利技术的核心思想是:将原始数据或关键程序分别存储在客户端和服务器,并在服务器中计算数据摘要并存储。利用终端可信执行环境TEE的安全特性,将密钥生成、摘要生成和签名生成的过程完全置于TEE侧,定期向服务器发送数据摘要及签名,可以在执行的时候保证摘要和签名数据不被截取和不被篡改,防止第三方应用在计算摘要和签名过程中对存储区的敏感数据进行修改,这样有效抵抗了第三方在终端恶意篡改数据,能够完全做到可信远程验证。在具体实现上,本专利技术基于TEE可信执行环境技术,提供一种基于TEE的可信远程验证的方法,如图1所示,其包括以下实现步骤:步骤1、服务端和客户端同时持有相同数据信息,服务器在其TEE侧对数据进行摘要计算并存储,并且服务器知道在客户端中数据存储的地址;步骤2、客户端在TEE侧生成公私钥对后发布公钥,然后向服务器发送验证请求;步骤3、服务器保存客户端的公钥,然后在收到客户端发来的验证请求后向客户端发送想要验证的数据存放的地址;步骤4、客户端找到对应数据后,在TEE侧来计算其摘要、签名,并发送到服务器;步骤5、服务器接收到数据后对数据进行拆帧,在TEE侧比对摘要是否正确,然后检查签名是否正确,打印并向客户端返回验证结果;步骤6、客户端在收到验证结果后,间隔一段时间再次发起验证。至此就完成了一次服务器对客户端存储数据的远程验证。其验证过程中的整个计算流程都是在TEE侧完成的,REE侧不涉及到任何的密钥、摘要计算和加解密过程。所以在REE侧第三方应用也无法攻击到我们的整个远程验证过程,这样保证了远程验证过程的安全性和稳定性。为实现上述方法,本专利技术所采用的可信远程验证服务框架如图2所示,在服务器端的TEE侧主要执行的任务有:计算摘要并存储、摘要对比、验签;在服务器端的REE侧,主要执行的任务有:server创建,存储数据,组帧和解帧,计算摘要接口的调用,摘要对比接口的调用,验签接口的调用;客户端TEE侧主要执行的任务有:密钥对生成、计算摘要、签名生成;客户端REE侧主要执行的任务有:client连接,存储数据,组帧和解帧,密钥对生成接口调用,计算摘要的接口调用,签名生成的接口调用。可以看出,本专利技术验证中的计算和数据生成都放在TEE侧可信执行环境,从而提高了数据验证的安全性。本专利技术不仅适用于客户端与服务器的远程验证,还适用于端到端的所有远程验证。在所有的远程验证中,完全保证了用户隐私数据、密钥数据等的安全性,不被第三方应用窃取和攻击。本文档来自技高网...

【技术保护点】
1.基于TEE的可信远程验证的方法,其特征在于,包括以下步骤:a.服务器在其TEE侧对数据进行摘要计算并存储;b.客户端在其TEE侧生成公私钥对后发布公钥;c.服务器保存客户端的公钥;d.客户端向服务器发送验证请求;e.服务器在收到客户端发来的验证请求后向客户端发送本次要验证的数据在客户端的存放地址;f.客户端根据所述存放地址找到对应数据后,在其TEE侧计算其摘要,并用私钥签名,然后发送到服务器;g.服务器接收到数据后对数据进行拆帧,在其TEE侧比对摘要是否正确,然后检查签名是否正确,打印并向客户端返回验证结果;h.客户端在收到验证结果后,间隔一段时间再次发起验证。

【技术特征摘要】
1.基于TEE的可信远程验证的方法,其特征在于,包括以下步骤:a.服务器在其TEE侧对数据进行摘要计算并存储;b.客户端在其TEE侧生成公私钥对后发布公钥;c.服务器保存客户端的公钥;d.客户端向服务器发送验证请求;e.服务器在收到客户端发来的验证请求后向客户端发送本次要验证的数据在客户端的存放地址;f.客户端根据所述存放地址找到对应数据后,在其TEE侧计算其摘要,并用私钥签名,然后发送到服务器;g.服务器接收到数据后对数据进行拆帧,在其TEE侧比对摘要是否正确,然后检查签名是否正确,打印并向客户端返回验证结果;h...

【专利技术属性】
技术研发人员:郭鑫唐博刘建敏张福健杨国东周强强
申请(专利权)人:四川长虹电器股份有限公司
类型:发明
国别省市:四川,51

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

1