基于可信执行环境的认证方法、装置与流程

文档序号:33245554发布日期:2023-02-17 23:07阅读:69来源:国知局
基于可信执行环境的认证方法、装置与流程

1.本发明涉及网络安全技术领域,特别是指一种基于可信执行环境的认证方法、装置。


背景技术:

2.tee(trust execution environment,可信执行环境)能够以硬件架构背书提供不可被非法访问、不可篡改的安全执行环境。当一台设备中部署有tee架构时,该tee架构可被看作该设备的可信根。现有的tee架构有:tpm(可信平台模块)、sgx(软件保护扩展)、trustzone等。
3.eap(使用可扩展的身份验证)-tls(传输层安全)协议是eap协议的一种,该协议可工作于数据链路层。主要功能为对身份进行认证。通常情况下,eap-tls协议只负责协议过程的安全性,对于peer节点的安全无法保证。也就是说,当peer节点本身被攻破,则所运行的eap-tls协议无法保证安全。


技术实现要素:

4.本发明要解决的技术问题是提供一种基于可信执行环境的认证方法、装置,能够确保终端在任何状态下都可以判断出小区广播消息的真实性。
5.为解决上述技术问题,本发明的实施例提供技术方案如下:
6.一方面,提供一种基于可信执行环境的认证方法,应用于终端,所述终端具有普通执行环境ree和可信执行环境tee,所述方法包括:
7.所述ree接收eap-tls服务器发送的eap请求消息,指示传输层安全tls开始;
8.所述ree向所述tee发送tls握手消息参数请求;
9.所述tee向所述ree发送tls握手消息参数响应,其中携带握手消息所需密钥;
10.所述ree将tls握手消息发送给eap-tls服务器;
11.所述ree接收所述eap-tls服务器发送的加密后的身份信息;
12.所述ree向所述tee发送tls结束参数请求,其中携带所述加密后的身份信息;
13.所述tee对所述加密后的身份信息进行解密,利用所述身份信息对所述eap-tls服务器进行身份验证,向所述ree发送tls结束参数响应,其中携带验证结果和加密后的tee证书;
14.所述ree向所述eap-tls服务器发送eap响应消息;
15.所述ree接收所述eap-tls服务器发送的tls结束信息。
16.一些实施例中,所述ree接收eap-tls服务器发送的eap请求消息之前,所述方法还包括:
17.所述ree接收eap-tls服务器发送的eap-request,其中携带终端的身份信息;
18.所述ree向所述eap-tls服务器返回eap-response。
19.一些实施例中,所述ree接收所述eap-tls服务器发送的tls结束信息之后,所述方
法还包括:
20.所述ree将加密的tls应用数据发送给tee;
21.所述ree向所述eap-tls服务器发送空消息。
22.本发明实施例还提供了一种基于可信执行环境的认证方法,应用于eap-tls服务器,所述方法包括:
23.向终端的ree发送eap请求消息,指示传输层安全tls开始,所述终端具有普通执行环境ree和可信执行环境tee;
24.接收所述ree发送的tls握手消息;
25.向所述ree发送加密后的身份信息;
26.接收所述ree发送的eap响应消息;
27.向所述ree发送tls结束信息。
28.一些实施例中,所述向终端的ree发送eap请求消息之前,所述方法还包括:
29.向所述ree发送eap-request,其中携带终端的身份信息;
30.接收所述ree发送的eap-response。
31.一些实施例中,所述向所述ree发送tls结束信息之后,所述方法还包括:
32.接收所述ree发送的空消息;
33.发送验证成功消息。
34.本发明实施例还提供了一种基于可信执行环境的认证装置,应用于终端,包括处理器和收发器,
35.所述收发器用于接收eap-tls服务器发送的eap请求消息,指示传输层安全tls开始;将tls握手消息发送给eap-tls服务器;接收所述eap-tls服务器发送的加密后的身份信息;向所述eap-tls服务器发送eap响应消息;接收所述eap-tls服务器发送的tls结束信息。
36.一些实施例中,所述收发器还用于接收eap-tls服务器发送的eap-request,其中携带终端的身份信息;向所述eap-tls服务器返回eap-response。
37.一些实施例中,所述收发器还用于将加密的tls应用数据发送给tee;向所述eap-tls服务器发送空消息。
38.本发明实施例还提供了一种基于可信执行环境的认证装置,应用于eap-tls服务器,包括处理器和收发器,
39.所述收发器用于向终端的ree发送eap请求消息,指示传输层安全tls开始,所述终端具有普通执行环境ree和可信执行环境tee;接收所述ree发送的tls握手消息;向所述ree发送加密后的身份信息;接收所述ree发送的eap响应消息;向所述ree发送tls结束信息。
40.一些实施例中,所述收发器还用于向所述ree发送eap-request,其中携带终端的身份信息;接收所述ree发送的eap-response。
41.一些实施例中,所述收发器还用于接收所述ree发送的空消息;发送验证成功消息。
42.本发明实施例还提供了一种基于可信执行环境的认证装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序;其特征在于,所述处理器执行所述程序时实现如上所述的基于可信执行环境的认证方法。
43.一些实施例中,基于可信执行环境的认证装置,应用于终端,所述处理器用于接收
eap-tls服务器发送的eap请求消息,指示传输层安全tls开始;将tls握手消息发送给eap-tls服务器;接收所述eap-tls服务器发送的加密后的身份信息;向所述eap-tls服务器发送eap响应消息;接收所述eap-tls服务器发送的tls结束信息。
44.一些实施例中,所述处理器还用于接收eap-tls服务器发送的eap-request,其中携带终端的身份信息;向所述eap-tls服务器返回eap-response。
45.一些实施例中,所述处理器还用于将加密的tls应用数据发送给tee;向所述eap-tls服务器发送空消息。
46.一些实施例中,基于可信执行环境的认证装置,应用于eap-tls服务器,所述处理器用于向终端的ree发送eap请求消息,指示传输层安全tls开始,所述终端具有普通执行环境ree和可信执行环境tee;接收所述ree发送的tls握手消息;向所述ree发送加密后的身份信息;接收所述ree发送的eap响应消息;向所述ree发送tls结束信息。
47.一些实施例中,所述处理器还用于向所述ree发送eap-request,其中携带终端的身份信息;接收所述ree发送的eap-response。
48.一些实施例中,所述处理器还用于接收所述ree发送的空消息;发送验证成功消息。
49.本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的基于可信执行环境的认证方法中的步骤。
50.本发明的实施例具有以下有益效果:
51.上述方案中,所有加解密操作、认证操作都是在tee中执行,与ree相比tee能提供完整性、机密性的保护,能够使认证的整个流程在tee环境下运行,能够使设备身份的认证安全可信,杜绝设备身份的仿冒。
附图说明
52.图1为本发明实施例基于可信执行环境的认证方法的流程示意图;
53.图2为本发明实施例基于可信执行环境的认证装置的结构示意图;
54.图3为本发明实施例基于可信执行环境的认证装置的组成示意图。
具体实施方式
55.为使本发明的实施例要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
56.对于入网设备的身份认证通常发生在二层协议,即数据链路层。当设备身份获得认证后,就可以通过dhcp(动态主机配置)等协议对设备发放ip地址,使设备能够访问互联网。采用eap-tls协议进行身份认证时,在peer端会保存有设备的身份信息(通常以x509标准存在)。假设这一身份信息被窃取,则仿冒攻击者可以采用此身份信息直接获得网络接入权限。
57.因此,若想得到安全可信的终端设备认证体系,则在终端设备中部署可信计算环境必不可少。可信计算环境可以用于存储终端设备的身份信息,当需要和eap-tls的server端进行通信以验证终端身份时,采用基于tee的eap-tls协议能够确保peer节点的身份信息不泄露,能够确保认证过程的安全可信。
58.本发明实施例提供一种基于可信执行环境的认证方法、装置,能够确保终端在任何状态下都可以判断出小区广播消息的真实性。
59.本发明的实施例提供一种基于可信执行环境的认证方法,应用于终端,所述终端具有普通执行环境ree和可信执行环境tee,所述方法包括:
60.所述ree接收eap-tls服务器发送的eap请求消息,指示传输层安全tls开始;
61.所述ree向所述tee发送tls握手消息参数请求;
62.所述tee向所述ree发送tls握手消息参数响应,其中携带握手消息所需密钥;
63.所述ree将tls握手消息发送给eap-tls服务器;
64.所述ree接收所述eap-tls服务器发送的加密后的身份信息;
65.所述ree向所述tee发送tls结束参数请求,其中携带所述加密后的身份信息;
66.所述tee对所述加密后的身份信息进行解密,利用所述身份信息对所述eap-tls服务器进行身份验证,向所述ree发送tls结束参数响应,其中携带验证结果和加密后的tee证书;
67.所述ree向所述eap-tls服务器发送eap响应消息;
68.所述ree接收所述eap-tls服务器发送的tls结束信息。
69.一些实施例中,所述ree接收eap-tls服务器发送的eap请求消息之前,所述方法还包括:
70.所述ree接收eap-tls服务器发送的eap-request,其中携带终端的身份信息;
71.所述ree向所述eap-tls服务器返回eap-response。
72.一些实施例中,所述ree接收所述eap-tls服务器发送的tls结束信息之后,所述方法还包括:
73.所述ree将加密的tls应用数据发送给tee;
74.所述ree向所述eap-tls服务器发送空消息。
75.本发明实施例还提供了一种基于可信执行环境的认证方法,应用于eap-tls服务器,所述方法包括:
76.向终端的ree发送eap请求消息,指示传输层安全tls开始,所述终端具有普通执行环境ree和可信执行环境tee;
77.接收所述ree发送的tls握手消息;
78.向所述ree发送加密后的身份信息;
79.接收所述ree发送的eap响应消息;
80.向所述ree发送tls结束信息。
81.一些实施例中,所述向终端的ree发送eap请求消息之前,所述方法还包括:
82.向所述ree发送eap-request,其中携带终端的身份信息;
83.接收所述ree发送的eap-response。
84.一些实施例中,所述向所述ree发送tls结束信息之后,所述方法还包括:
85.接收所述ree发送的空消息;
86.发送验证成功消息。
87.在终端设备中,应该分为两个计算环境:tee(trust execution environment,可信执行环境)和ree(rich execution environment,普通执行环境)。tee由相关安全硬件组
成,tee能够以硬件为基础对可信标识及相关信息进行背书,确保可信标识的唯一性、机密性以及完整性。同时,tee也具有相关的加密、解密功能,能够确保运算过程不被泄露。可信标识可以在tee中保存。tee是一种以硬件为基础的存储和计算单元。ree是设备的普通运算环境,不能保证该运行环境的安全性。认证过程依据eap-tsl实现,具体过程如下。tee中存储的相关信息如下:certificate,包括id,certificate可以遵循x509。
88.如图1所示,为基于tee的设备认证和数据转发过程,具体包括以下步骤:
89.(1)server发送eap-request(遵循eap-tls1.3协议)/identity信息给ree;
90.(2)ree反馈eap-response(遵循eap-tls1.3协议)/identity(privacy friendly);
91.(3)server发送eap-request(遵循eap-tls1.3协议)/eap-start(遵循eap-tls1.3协议);
92.(4)ree收到request,向tee发送tls-clienthello parameter request,也就是message1;
93.(5)tee计算clienthello所需密钥,发送给ree,也就是message2;
94.(6)ree将tls clienthello信息发送给server,利用message2信息,组装成tls clienthello信息。clienthello信息遵循eap-tls1.3;
95.(7)server通过key exchange,计算握手密钥,通过密钥将相关信息发送给ree,根据clienthello message提供的keyshare extension信息(其中包括协商握手秘钥所需的参数),生成握手秘钥。该秘钥生成过程由eap-tls1.3定义,具体算法为ecdhe;
96.(8)ree收到相关信息,相关信息包括除tls serverhello之外的所有信息,tls serverhello利用明文反馈秘钥协商所需的参数。之后利用协商好的秘钥对步骤(7)其余信息进行加密。由于是加密信息,ree将信息发送给tee,由tee解密。同时,ree将上述所有握手信息(也就是message3)发给tee,tee将用于步骤(9)的certificateverify以及finish消息;
97.(9)tee通过握手密钥解密,验证server身份,并将自身certificate加密,计算certificateverify消息和finish消息,发送给ree,也就是message4,通过message3的handshake context生成,具体生成过程遵循eap-tls规则,需要使用秘钥。由于秘钥只在tee中,因此需要把handshake context发送到tee中再生成certificateverify和finish;
98.(10)ree将相关信息(包括握手秘钥加密的certificate,certificateverify,finsh)发送给server;
99.(11)server给ree发送tls结束信息(包括握手秘钥加密的application data 0x00);
100.(12)ree将加密的tls application data 0x00(遵循eap-tls1.3定义)转发给tee;
101.(13)tee解密message5,得到明文message6(application data 0x00),发送给ree
102.(14)ree向server发送空消息,由eap-tls1.3定义,消息头为eap-response/eap-type=eap-tls,内容为空;
103.(15)server发送验证成功消息,即反馈eap-success。
104.其中,message1包括:keyshareextension request;message2包括:
keyshareextension response;message3包括:明文serverhello message,转发来自server端的(tls encryptedextensions,tls certificaterequest,tls certificate,tls certificateverify,tls finished),用于生成client端certificateverify和finished的handshake context;message4包括:用步骤(6)(7)(8)(9)协商产生的握手秘钥加密的tls client certificate,tls certificateverify,和tls finishend。message5包括:上述握手秘钥加密的application data 0x00;message6包括:明文信息,由tee告知ree整个eap-tls过程是否成功。
105.基于tee的可信标识及其认证。传统协议例如eap等的认证默认终端始终为ree状态,没有区分终端的tee和ree。本实施例根据现有的sgx、trustzone、tpm等可信计算技术,将可信标识存储于tee中,由tee进行保护。并且,在进行身份验证时由tee实现和border gateway(server)的双向认证。
106.本实施例的所有加解密操作、认证操作都是在tee中执行,与ree相比tee能提供完整性、机密性的保护,能够使认证的整个流程在tee环境下运行。基于此提案,能够使设备(终端client)身份的认证安全可信,杜绝设备身份的仿冒。
107.本发明实施例还提供了一种基于可信执行环境的认证装置,如图2所示,应用于终端,包括处理器12和收发器11,
108.所述收发器11用于接收eap-tls服务器发送的eap请求消息,指示传输层安全tls开始;将tls握手消息发送给eap-tls服务器;接收所述eap-tls服务器发送的加密后的身份信息;向所述eap-tls服务器发送eap响应消息;接收所述eap-tls服务器发送的tls结束信息。
109.一些实施例中,所述收发器11还用于接收eap-tls服务器发送的eap-request,其中携带终端的身份信息;向所述eap-tls服务器返回eap-response。
110.一些实施例中,所述收发器11还用于将加密的tls应用数据发送给tee;向所述eap-tls服务器发送空消息。
111.本发明实施例还提供了一种基于可信执行环境的认证装置,应用于eap-tls服务器,如图2所示,包括处理器12和收发器11,
112.所述收发器11用于向终端的ree发送eap请求消息,指示传输层安全tls开始,所述终端具有普通执行环境ree和可信执行环境tee;接收所述ree发送的tls握手消息;向所述ree发送加密后的身份信息;接收所述ree发送的eap响应消息;向所述ree发送tls结束信息。
113.一些实施例中,所述收发器11还用于向所述ree发送eap-request,其中携带终端的身份信息;接收所述ree发送的eap-response。
114.一些实施例中,所述收发器11还用于接收所述ree发送的空消息;发送验证成功消息。
115.本发明实施例还提供了一种基于可信执行环境的认证装置,如图3所示,包括存储器21、处理器22及存储在所述存储器21上并可在所述处理器22上运行的计算机程序;其特征在于,所述处理器22执行所述程序时实现如上所述的基于可信执行环境的认证方法。
116.一些实施例中,基于可信执行环境的认证装置,应用于终端,所述处理器22用于接收eap-tls服务器发送的eap请求消息,指示传输层安全tls开始;将tls握手消息发送给
eap-tls服务器;接收所述eap-tls服务器发送的加密后的身份信息;向所述eap-tls服务器发送eap响应消息;接收所述eap-tls服务器发送的tls结束信息。
117.一些实施例中,所述处理器22还用于接收eap-tls服务器发送的eap-request,其中携带终端的身份信息;向所述eap-tls服务器返回eap-response。
118.一些实施例中,所述处理器22还用于将加密的tls应用数据发送给tee;向所述eap-tls服务器发送空消息。
119.一些实施例中,基于可信执行环境的认证装置,应用于eap-tls服务器,所述处理器22用于向终端的ree发送eap请求消息,指示传输层安全tls开始,所述终端具有普通执行环境ree和可信执行环境tee;接收所述ree发送的tls握手消息;向所述ree发送加密后的身份信息;接收所述ree发送的eap响应消息;向所述ree发送tls结束信息。
120.一些实施例中,所述处理器22还用于向所述ree发送eap-request,其中携带终端的身份信息;接收所述ree发送的eap-response。
121.一些实施例中,所述处理器22还用于接收所述ree发送的空消息;发送验证成功消息。
122.本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的基于可信执行环境的认证方法中的步骤。
123.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储待检测终端设备或任何其他非传输介质,可用于存储可以被计算待检测终端设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
124.以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1