CN113868665B - 一种身份验证方法、装置及存储介质 - Google Patents

一种身份验证方法、装置及存储介质 Download PDF

Info

Publication number
CN113868665B
CN113868665B CN202111128273.0A CN202111128273A CN113868665B CN 113868665 B CN113868665 B CN 113868665B CN 202111128273 A CN202111128273 A CN 202111128273A CN 113868665 B CN113868665 B CN 113868665B
Authority
CN
China
Prior art keywords
tee
level signal
data
level
sequence
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111128273.0A
Other languages
English (en)
Other versions
CN113868665A (zh
Inventor
任杰
王光全
薛淼
刘千仞
任梦璇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202111128273.0A priority Critical patent/CN113868665B/zh
Publication of CN113868665A publication Critical patent/CN113868665A/zh
Application granted granted Critical
Publication of CN113868665B publication Critical patent/CN113868665B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本申请提供了一种身份验证方法、装置及存储介质,涉及通信领域,用于对可信执行环境TEE同时进行本地身份验证流程与远程身份验证流程,包括:第一可信执行环境TEE获取硬件和业务数据。第一TEE生成第一身份验证信息。第一TEE接收来自第二TEE的第二身份验证信息,第二TEE为与第一TEE进行身份互验的TEE。在第一身份验证信息与第二身份验证信息相同的情况下,第一TEE确定对第二TEE的身份验证成功。若第一TEE接收到来自第二TEE的第一指示信息,且第一TEE对第二TEE身份验证成功,则第一TEE确定与第二TEE的身份互验成功;其中,第一指示信息用于指示第二TEE对第一TEE的身份验证成功。

Description

一种身份验证方法、装置及存储介质
技术领域
本申请涉及通信领域,尤其涉及一种身份验证方法、装置及存储介质。
背景技术
在数据共享场景下,“数据不出机房”已经成为主流的数据共享趋势。当进行数据共享业务时,存在分散的多个数据提供方,数据需求方只能得到使用数据进行运算的结果,而无法得到这些数据的真正内容,即。这些由数据运算得到的结果的可信性是由数据可信性决定的。目前,数据提供方的数据使用可信执行环境(Trusted Execution Environment,TEE)进行数据的可信存储。得益于可信执行环境的安全特性,在进行数据共享时,只需确认可信执行环境的身份,即可同时确认其中存储数据的可信性。
目前的可信执行环境的身份认证方法主要依托于TEE的制造商或对TEE签发证书的背书机构进行身份验证,并将验证结果返回至TEE环境中。这种方法大量依托于公共网络,因此,即使执行可信执行环境、背书机构和TEE环境的服务器处于一个机房中,也无法使用内网进行身份认证。
当可信执行环境TEE的特征信息通过公网发送至中心化的背书机构时,背书机构将获得可信执行环境当前所有的特征信息,这就加大了数据存储的安全隐患。同时,可信执行环境的TEE特征信息需要先在本地环境中进行本地身份认证,认证通过后生成数据包再发送至远程背书机构进行身份验证,也增加了业务时间成本。甚至对一些可信执行环境而言,认证所用网络经常无法连通,导致身份认证无法完成,使得后续数据共享无法完成。
发明内容
本申请提供一种身份验证方法、装置及存储介质,能够基于时序电路对TEE同时进行本地身份验证流程与远程身份验证流程。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供一种身份验证方法,包括:第一可信执行环境TEE获取硬件和业务数据;其中,硬件和业务数据包括:第一TEE初始化硬件数据、第二TEE初始化硬件数据、第一TEE实时硬件数据、第一TEE上次调用后环境状态数据、第一TEE实时环境状态数据;第二TEE为与第一TEE进行身份互验的TEE。第一TEE生成第一身份验证信息;其中,第一身份验证信息用于表征根据第一TEE实时硬件数据和第一TEE初始化硬件数据的比对结果,以及第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据的比对结果对第一处理信息进行选择输出的结果;第一处理信息为第一TEE根据触发器对第一TEE实时硬件数据和第二TEE初始化硬件数据处理后确定的信息。第一TEE接收来自第二TEE的第二身份验证信息;第二身份验证信息为第二TEE根据触发器对第一TEE实时硬件数据和第二TEE初始化硬件数据处理后确定的信息。在第一身份验证信息与第二身份验证信息相同的情况下,第一TEE确定对第二TEE的身份验证成功。若第一TEE接收到来自第二TEE的第一指示信息,且第一TEE对第二TEE身份验证成功,则第一TEE确定与第二TEE的身份互验成功;其中,第一指示信息用于指示第二TEE对第一TEE的身份验证成功。
基于上述技术方案,本申请通过获取本地TEE和远程TEE的硬件和业务数据,以TEE双方的初始化硬件数据、实时硬件数据、实时环境状态数据及上次调用后环境状态数据为验证依据,能够同时进行本地验证与远程验证。既在验证本机TEE环境的身份的同时,也验证参与身份互验的另一方TEE环境的身份。由此,可以减少对第三方验证机制的依赖,增加对内网的支持,并最大限度减少外网链接依赖。同时,提升了原有TEE环境身份验证的效率,使得身份验证(互验)流程高效且可靠。
在一种可能的设计方案中,上述身份验证方法还包括:第一TEE获取第一随机数和第二随机数;第一随机数为第一TEE生成的随机数,第二随机数为第二TEE生成的随机数。第一TEE根据哈希hash算法,确定硬件和业务数据的hash值;硬件和业务数据的hash值包括:第一TEE初始化硬件数据、第二TEE初始化硬件数据、第一TEE实时硬件数据、第一TEE上次调用后环境状态数据、第一TEE实时环境状态数据的hash值。第一TEE对硬件和业务数据的hash值执行第一操作,以确定第一数组序列、第二数组序列、第三数组序列、第四数组序列和第五数组序列;其中,第一操作为:将hash值的每一位数字与第一随机值进行对比,若该位数字大于或等于第一随机值,则重新将此位数字记为1;若该位数字小于第一随机值,则重新将此位数字记为0。第一TEE对第一TEE实时硬件数据和第二TEE初始化硬件数据的hash值执行第二操作,以确定第六数组序列和第七数组序列;其中,第二操作为:将hash值每一位数字与第二随机值进行对比,若该位数字大于或等于第二随机值,则重新将此位数字记为1;若该位数字小于第二随机值,则重新将此位数字记为0。第一TEE对第一数组序列、第二数组序列、第三数组序列、第四数组序列、第五数组序列、第六数组序列和第七数组序列执行第三操作,以确定第一电平序列、第二电平序列、第三电平序列、第四电平序列、第五电平序列、第六电平序列和第七电平序列;其中,第三操作为:将数组序列的每一位数字逐位与第一数值的时刻进行一一对应,第一数值与数组序列的数位长度值相同,数组序列的第一位数字对应的时刻为初始时刻t0,第一数值的时刻中每两个相邻时刻之间的时间间隔为d。第一TEE对第一电平序列、第二电平序列、第三电平序列、第四电平序列、第五电平序列、第六电平序列和第七电平序列进行第四操作,以确定第一电平信号、第二电平信号、第三电平信号、第四电平信号、第五电平信号、第六电平信号和第七电平信号;其中,第四操作为:若电平序列的数位上的数字为1,则将此数位对应的时刻在时序电路上输入的电平信号确定高电平信号;若电平序列的数位上的数字为0,则将此数位对应的时刻在时序电路上输入的电平信号确定为低电平信号。其中,第一电平信号、第二电平信号、第三电平信号、第四电平信号和第五电平信号分别为第一TEE对第一TEE实时硬件数据、第二TEE初始化硬件数据、第一TEE初始化硬件数据、第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据执行第一操作、第三操作和第四操作后得到的电平信号。第六电平信号和第七电平信号分别为第一TEE对第一TEE实时硬件数据和第二TEE初始化硬件数据执行第二操作、第三操作和第四操作后得到的电平信号。
在一种可能的设计方案中,第一TEE生成第一身份验证信息,具体包括:第一TEE将时间间隔d、第一电平信号和第二电平信号输入到触发器中,确定第一处理信息。第一TEE将第一电平信号和第三电平信号输入第一同或逻辑门,确定第一电平信号和第三电平信号的第一比对结果。第一TEE将第四电平信号和第五电平信号输入第二同或逻辑门,确定第四电平信号和第五电平信号的第二比对结果。第一TEE将第一处理信息,第一比对结果和第二比对结果输入数据选择器,确定第一身份验证信息。
在一种可能的设计方案中,在在第一身份验证信息与第二身份验证信息相同的情况下,第一TEE确定对第二TEE的身份验证成功,具体包括:第一TEE将第一身份验证信息和第二身份验证信息输入第三同或逻辑门,确定第一身份验证信息和第二身份验证信息的比对结果。若第一身份验证信息和第二身份验证信息相同,则第一TEE确定对第二TEE的身份验证成功。
在一种可能的设计方案中,上述身份验证方法还包括:第一TEE将时间间隔d、第六电平信号和第七电平信号输入触发器,确定第三身份验证信息;第三身份验证信息为第一TEE根据触发器对第一TEE实时硬件数据和第二TEE初始化硬件数据处理后确定的信息。第一TEE向第二TEE发送第三身份验证信息。第一TEE向第二TEE发送对第二TEE身份验证的验证结果。
第二方面,本申请提供一种身份验证装置,包括:获取单元、处理单元和接收单元。获取单元,用于获取硬件和业务数据;其中,硬件和业务数据包括:第一TEE初始化硬件数据、第二TEE初始化硬件数据、第一TEE实时硬件数据、第一TEE上次调用后环境状态数据、第一TEE实时环境状态数据;第二TEE为与第一TEE进行身份互验的TEE。处理单元,用于生成第一身份验证信息;其中,第一身份验证信息用于表征根据第一TEE实时硬件数据和第一TEE初始化硬件数据的比对结果,以及第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据的比对结果对第一处理信息进行选择输出的结果;第一处理信息为第一TEE根据触发器对第一TEE实时硬件数据和第二TEE初始化硬件数据处理后确定的信息。接收单元,用于接收来自第二TEE的第二身份验证信息;第二身份验证信息为第二TEE根据触发器对第二TEE实时硬件数据和第一TEE初始化硬件数据处理后确定的信息。处理单元,还用于在第一身份验证信息与第二身份验证信息相同的情况下,第一TEE确定对第二TEE的身份验证成功。处理单元,还用于在第一TEE接收到来自第二TEE的第一指示信息,且第一TEE对第二TEE身份验证成功时,确定与第二TEE的身份互验成功;其中,第一指示信息用于指示第二TEE对第一TEE的身份验证成功。
在一种可能的设计方案中,获取单元,还用于获取第一随机数和第二随机数;第一随机数为第一TEE生成的随机数,第二随机数为第二TEE生成的随机数。处理单元,还用于根据哈希hash算法,确定硬件和业务数据的hash值;硬件和业务数据的hash值包括:第一TEE初始化硬件数据、第二TEE初始化硬件数据、第一TEE实时硬件数据、第一TEE上次调用后环境状态数据、第一TEE实时环境状态数据的hash值。处理单元,还用于对硬件和业务数据的hash值执行第一操作,以确定第一数组序列、第二数组序列、第三数组序列、第四数组序列和第五数组序列;其中,第一操作为:将hash值的每一位数字与第一随机值进行对比,若该位数字大于或等于第一随机值,则重新将此位数字记为1;若该位数字小于第一随机值,则重新将此位数字记为0。处理单元,还用于对第一TEE实时硬件数据和第二TEE初始化硬件数据的hash值执行第二操作,以确定第六数组序列和第七数组序列;其中,第二操作为:将hash值每一位数字与第二随机值进行对比,若该位数字大于或等于第二随机值,则重新将此位数字记为1;若该位数字小于第二随机值,则重新将此位数字记为0。处理单元,还用于对第一数组序列、第二数组序列、第三数组序列、第四数组序列、第五数组序列、第六数组序列和第七数组序列执行第三操作,以确定第一电平序列、第二电平序列、第三电平序列、第四电平序列、第五电平序列、第六电平序列和第七电平序列;其中,第三操作为:将数组序列的每一位数字逐位与第一数值的时刻进行一一对应,第一数值与数组序列的数位长度值相同,数组序列的第一位数字对应的时刻为初始时刻t0,第一数值的时刻中每两个相邻时刻之间的时间间隔为d。处理单元,还用于对第一电平序列、第二电平序列、第三电平序列、第四电平序列、第五电平序列、第六电平序列和第七电平序列进行第四操作,以确定第一电平信号、第二电平信号、第三电平信号、第四电平信号、第五电平信号、第六电平信号和第七电平信号;其中,第四操作为:若电平序列的数位上的数字为1,则将此数位对应的时刻在时序电路上输入的电平信号确定高电平信号;若电平序列的数位上的数字为0,则将此数位对应的时刻在时序电路上输入的电平信号确定为低电平信号。其中,第一电平信号、第二电平信号、第三电平信号、第四电平信号和第五电平信号分别为第一TEE对第一TEE实时硬件数据、第二TEE初始化硬件数据、第一TEE初始化硬件数据、第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据执行第一操作、第三操作和第四操作后得到的电平信号。第六电平信号和第七电平信号分别为第一TEE对第一TEE实时硬件数据和第二TEE初始化硬件数据执行第二操作、第三操作和第四操作后得到的电平信号。
在一种可能的设计方案中,处理单元,还用于将时间间隔d、第一电平信号和第二电平信号输入到触发器中,确定第一处理信息。处理单元,还用于将第一电平信号和第三电平信号输入第一同或逻辑门,确定第一电平信号和第三电平信号的第一比对结果。处理单元,还用于将第四电平信号和第五电平信号输入第二同或逻辑门,确定第四电平信号和第五电平信号的第二比对结果。处理单元,还用于将第一处理信息,第一比对结果和第二比对结果输入数据选择器,确定第一身份验证信息。
在一种可能的设计方案中,处理单元,还用于将第一身份验证信息和第二身份验证信息输入第三同或逻辑门,确定第一身份验证信息和第二身份验证信息的比对结果。处理单元,还用于在第一身份验证信息和第二身份验证信息相同时,确定对第二TEE的身份验证成功。
在一种可能的设计方案中,上述身份验证装置还包括发送单元。处理单元,还用于将时间间隔d、第六电平信号和第七电平信号输入触发器,确定第三身份验证信息;第三身份验证信息为第一TEE根据触发器对第一TEE实时硬件数据和第二TEE初始化硬件数据处理后确定的信息。发送单元,用于向第二TEE发送第三身份验证信息。发送单元,还用于向第二TEE发送对第二TEE身份验证的验证结果。
可选地,第二方面所述的身份验证装置还可以包括存储单元,该存储单元存储有程序或指令。当处理单元执行该程序或指令时,使得身份验证装置可以执行上述第一方面所述的身份验证方法。
此外,第二方面所述的单元装置的技术效果可以参考上述第一方面所述的身份验证方法的技术效果,此处不再赘述。
第三方面,本申请提供一种时序电路,时序电路包括信号生成模块、触发器、数据选择器、第一同或逻辑门、第二同或逻辑门、第三同或逻辑门、第一开关、第二开关和第三开关。信号生成模块用于生成电平信号。触发器包括第一输入端、第二输入端、第三输入端、第一输出端和第二输出端。第一同或逻辑门包括第四输入端、第五输入端和第三输出端。第二同或逻辑门包括第六输入端、第七输入端和第四输出端。数据选择器包括第八输入端、第九输入端、第十输入端、第十一输入端、第十二输入端、第十三输入端和第五输出端。第三同或逻辑门包括第十四输入端、第十五输入端和第六输出端。其中,信号生成模块与第一输入端、第二输入端、第三输入端、第四输入端、第五输入端、第六输入端、第七输入端和第十五输入端连接,第一输出端与第八输入端连接,第二输出端分别与第九输入端、第十输入端、第十一输入端连接,第三输出端与第十二输入端连接,第四输出端与第十三输入端连接,第五输出端与第十四输入端连接。第一开关位于第五输出端和第五输出端的信号输出数据接口的连接电路之间。第二开关位于第五输出端与第十四输入端的连接电路之间。第三开关位于第十五输入端和第十五输入端的信号输入数据接口的连接电路之间。
在一种可能的设计方案中,时序电路包括第一工作状态和第二工作状态;第一工作状态用于输出第三身份验证信息,第二工作状态用于对第二TEE进行验证。在第一工作状态下,第一开关为闭合状态,第二开关和第三开关为断开状态,数据选择器输出第八输入端输入的信号。在第二工作状态下,第一开关为断开状态,第二开关和第三开关为闭合状态。
此外,第三方面所述的时序电路的技术效果可以参考上述第一方面所述的身份验证方法的技术效果,此处不再赘述。
第四方面,本申请提供一种存储一个或多个程序的计算机可读存储介质,该一个或多个程序包括指令,上述指令当被本申请的电子设备执行时使电子设备执行如第一方面和第一方面的任一种可能的实现方式中所描述的身份验证方法。
第五方面,本申请提供一种身份验证设备,包括:处理器以及存储器;其中,存储器用于存储一个或多个程序,一个或多个程序包括计算机执行指令,当身份验证设备运行时,处理器执行存储器存储的计算机执行指令,以使身份验证设备执行如第一方面和第一方面的任一种可能的实现方式中所描述的身份验证方法。
第六方面,本申请提供一种包含指令的计算机程序产品,当该指令在计算机上运行时,使得本申请的电子设备执行如第一方面和第一方面的任一种可能的实现方式中所描述的身份验证方法。
第七方面,本申请提供一种芯片系统,该芯片系统应用于身份验证装置;所述芯片系统包括一个或多个接口电路,以及一个或多个处理器。所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述身份验证装置的存储器接收信号,并向所述处理器发送所述信号,所述信号包括所述存储器中存储的计算机指令。当所述处理器执行所述计算机指令时,所述身份验证装置执行如第一方面及其任一种可能的设计方式所述的身份验证方法。
附图说明
图1为本申请实施例提供的一种时序电路的结构示意图;
图2为本申请实施例提供的一种身份验证方法的流程示意图;
图3为本申请实施例提供的另一种身份验证方法的流程示意图;
图4为本申请实施例提供的另一种身份验证方法的流程示意图;
图5为本申请实施例提供的另一种身份验证方法的流程示意图;
图6为本申请实施例提供的另一种身份验证方法的流程示意图;
图7为本申请实施例提供的另一种身份验证方法的流程示意图;
图8为本申请实施例提供的一种身份验证装置的架构示意图;
图9为本申请实施例提供的另一种身份验证装置的架构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
本文中字符“/”,一般表示前后关联对象是一种“或者”的关系。例如,A/B可以理解为A或者B。
本申请的说明书和权利要求书中的术语“第一”和“第二”是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一边缘服务节点和第二边缘服务节点是用于区别不同的边缘服务节点,而不是用于描述边缘服务节点的特征顺序。
此外,本申请的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
另外,在本申请实施例中,“示例性的”、或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”、或者“例如”等词旨在以具体方式呈现概念。
为了便于理解本申请的技术方案,下面对本申请涉及到的一些技术术语进行介绍。
1、可信执行环境(trusted execution environment,TEE)
TEE部署于用于提供实际业务的多个终端中,用于安全的存储用户、程序的数据。当进行业务请求时,由于涉及多个终端,应首先进行可信执行环境的身份验证。
在TEE上运行的应用叫做可信应用(trusted application,TA),可信应用之间通过密码学技术保证它们之间是隔离开的,不会随意读取和操作其它可信应用的数据。另外,可信应用在执行前需要做完整性验证,保证应用没有被篡改。
具体来说,TEE中可以包括四个安全容器,分别记为:安全容器1、安全容器2、安全容器3、安全容器4。
安全容器1用于存储第一TEE初始化硬件数据和第一TEE上次调用后环境状态数据。
安全容器2用于存储第二TEE初始化硬件数据。
安全容器3用于存储第一TEE实时硬件数据、第一TEE实时环境状态数据、第一随机数和第二随时数。其中,第一随机数为第一TEE生成的随机数,第二随机数为第二TEE生成的随机数。安全容器3还用于存储第一至第五电平序列。安全容器3还用于存储第三身份验证信息。
安全容器4用于存储第六电平序列和第七电平序列。安全容器4还用于存储第二身份验证信息。
2、时序电路
时序电路是由最基本的逻辑门电路加上反馈逻辑回路(输出到输入)或器件组合而成的电路。
在本申请实施例中,时序电路可以是独立于可信执行环境的硬件PCB芯片,也可以是可信执行环境内部署的可信应用(TA)通过软件模拟的逻辑电路环境,并提供相应功能,本申请对此不做限定。
3、触发器
在数字电路系统中把在时钟信号触发时才能动作的存储单元电路称为触发器。在实际的数字电路系统中往往包含大量的存储单元,而且经常要求他们在同一时刻同步动作,为达到这个目的,引入触发器的概念,即在每个存储单元电路上引入一个时钟信号(CLK)作为控制信号,只有当CLK到来时电路才被“触发”而动作,并根据输入信号改变输出状态。
在本申请实施例中,触发器的类型选用JK触发器(JK flip-flop)。根据实际应用也可以选择其它类型的触发器,本申请对此不做限定。
4、数据选择器
数据选择器是指经过选择,从多个通道的数据中确定一个通道的数据并传送到唯一的公共数据通道上去,实现数据选择功能的逻辑电路。
在本申请实施例中,数据选择器示例性的选用4选1数据选择器。根据实际应用也可以选择其它类型的数据选择器,本申请对此不做限定。
5、同或逻辑门
同或逻辑门是一种基本的逻辑门,是数字逻辑电路的基本单元,有2个输入端、1个输出端。当2个输入端中有且只有一个是低电平时,输出为低电平;当输入电平相同,即都为高电平或都为低电平时,输出为高电平。
本申请实施例提供一种身份验证方法,通过获取本地TEE和远程TEE的硬件和业务数据,能够同时进行本地验证与远程验证。既在验证本机TEE环境的身份的同时,也验证参与身份互验的另一方TEE环境的身份。
本申请实施例提供的身份验证方法,可以基于时序电路实现。图1示出了该时序电路的一种结构。如图1所示,本申请实施例提供的时序电路包括信号生成模块10、触发器11、第一同或逻辑门12、第二同或逻辑门13、数据选择器14、第三同或逻辑门15、第一开关16、第二开关17和第三开关18。
其中,信号生成模块10用于根据TEE获取的硬件和业务数据,生成用于输入时序电路的电平信号。在本申请实施例中,输入时序电路的电平信号的电平值为高电平“1”和低电平值”0”。
触发器11包括第一输入端111、第二输入端112、第三输入端113、第一输出端114和第二输出端115。其中,第二输入端用于输入时钟信号CLK。第一输入端111、第二输入端112、第三输入端113皆与信号生成模块连接。
第一同或逻辑门12包括第四输入端121、第五输入端122和第三输出端123。其中,第四输入端121和第五输入端122皆与信号生成模块10连接。
第二同或逻辑门13包括第六输入端131、第七输入端132和第四输出端133。其中,第六输入端131和第七输入端132皆与信号生成模块10连接。
数据选择器14包括第八输入端141、第九输入端142、第十输入端143、第十一输入端144、第十二输入端145、第十三输入端146和第五输出端147。其中,第八输入端141与触发器11的第一输出端114连接,第九输入端142、第十输入端143和第十一输入端144皆与触发器11的第二输出端115连接,第十二输入端145与第一同或逻辑门12的第三输出端123连接,第十三输入端146与第二同或逻辑门13的第四输出端133连接。
第三同或逻辑门15包括第十四输入端151、第十五输入端152和第六输出端153。其中,第十四输入端151与数据选择器14的第五输出端147连接。第六输出端153输出的电平信号,用于表征时序电路对TEE的身份验证结果。
可选的,时序电路包括第一工作状态和第二工作状态。
其中,第一工作状态用于输出第三身份验证信息,第三身份验证信息为第一TEE根据触发器11对第一TEE实时硬件数据和第二TEE初始化硬件数据处理后确定的信息。在第一工作状态下,第一开关16为闭合状态,第二开关17和第三开关18为断开状态,数据选择器14输出第八输入端141输入的信号。
第二工作状态用于第一TEE对自身进行硬件与环境状态验证,并且能够同时对第二TEE进行身份验证。具体的,第二工作状态下,第一TEE能够判断第一TEE实时硬件数据与第一TEE初始化硬件数据,第二TEE实时硬件数据与第二TEE初始化硬件数据,第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据,这三组数据是否全部相同,进而判断第一TEE和第二TEE的设备硬件和业务环境是否存在异常,以实现第一TEE对自身的硬件和环境状态验证及对第二TEE的身份验证。在第二工作状态下,第一开关16为断开状态,第二开关17和第三开关18为闭合状态。
在实际应用中,时序电路可以是独立于TEE的印制电路板(Printed CircuitBoard,PCB)芯片,也可以是TEE内部署的可信应用TA通过软件模拟的提供相应功能的逻辑电路环境,本申请对此不做限定。
在本申请实施例中,通过时序电路的信号生成模块10将TEE获取的硬件和业务数据转换为电平信号并输入相应的输入端中,经过时序电路对电平信号的处理,获取最终的身份验证结果,进而实现基于时序电路的身份验证。
本申请实施例提供的身份验证方法的执行主体为身份验证装置。该身份验证装置可以是第一TEE,也可以是第一TEE中的中央处理器(centralproce-ssing unit,CPU),还可以是第一TEE种用于身份验证的控制模块,还可以是第一TEE种用于身份验证的应用客户端。本申请实施例中以第一TEE为身份验证装置来执行身份验证方法为例,对本申请提供的身份验证方法进行说明。
下面结合附图对本申请实施例提供的身份验证方法进行描述。
图2为本申请实施例提供的一种身份验证方法的流程示意图。如图2所示,本申请实施例提供的身份验证方法包括如下步骤:
S201、第一TEE获取硬件和业务数据。
其中,硬件和业务数据包括:第一TEE初始化硬件数据、第二TEE初始化硬件数据、第一TEE实时硬件数据、第一TEE上次调用后环境状态数据、第一TEE实时环境状态数据。第二TEE即为与第一TEE进行身份互相验证的TEE。
以下分别针对硬件数据和业务数据进行详细说明:
(1)、针对硬件数据
TEE的硬件数据即为TEE所包括的设备硬件的相关特征信息,例如,硬件数据可以包括:TEE所用芯片的名称、种类、身份ID、制造商,TEE所用内存的信息、TEE所用存储介质的信息,TEE的架构信息,TEE内置运行系统的信息等。
在本申请中,TEE的初始化硬件数据为该TEE初次接入网络进行设备初始化时的设备硬件的相关特征信息;TEE的实时硬件数据为该TEE在进行身份验证的当前时刻设备硬件的相关特征信息。
(2)、针对业务数据
TEE的业务数据即为该TEE运行业务时相关的环境状态数据。具体来说,TEE在运行业务时,会生成一个或多个安全容器,并按照业务要求对安全容器和安全容器中的数据进行相应的安全操作,因此TEE的环境状态会根据业务要求的变化而发生改变。并且,TEE在每一次完成业务调用后,都会存储此时的环境状态数据包并存储至安全容器内。示例性的,业务数据可以包括:安全容器的相关信息、可信应用TA的相关信息、TEE操作后的日志信息。
在本申请中,TEE的上次调用后环境状态数据为该TEE在上一次业务调用的结束时刻的环境状态数据;TEE的实时环境状态数据为该TEE在进行身份验证的当前时刻的环境状态数据。
可选的,第一TEE从安全容器处查询第一TEE的硬件信息和环境状态信息,进而获取第一TEE初始化硬件数据、第一TEE实时硬件数据、第一TEE上次调用后环境状态数据、第一TEE实时环境状态数据。
可选的,第一TEE接收第二TEE发送的第二TEE初始化硬件数据。需要说明的是,当TEE进行系统初始化时,会存储自身的初始化硬件数据至安全容器,并将该初始化硬件数据广播至与其进行数据交互的其它TEE。由此,第一TEE在第二TEE进行系统初始化时就会接收到第二TEE发送的第二TEE初始化硬件数据包并存储在安全容器中,以待后续身份验证流程的调用。
S202、第一TEE生成第一身份验证信息。
其中,第一身份验证信息用于表征根据第一TEE实时硬件数据和第一TEE初始化硬件数据的比对结果,以及第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据的比对结果对第一处理信息进行选择输出的结果。第一处理信息为第一TEE根据触发器对第一TEE实时硬件数据和第二TEE初始化硬件数据处理后确定的信息。
可以理解的是,第一TEE的硬件数据与第二TEE的硬件数据通常为不同的硬件数据,这是由于第一TEE和第二TEE的设备硬件是不同的,其设备硬件对应的硬件信息也自然不同。
S203、第一TEE接收来自第二TEE的第二身份验证信息。
其中,第二身份验证信息为第二TEE根据触发器对第二TEE实时硬件数据和第一TEE初始化硬件数据处理后确定的信息。需要说明的是,第二TEE并未对第二身份验证信息进行选择输出的数据处理。
可以理解的是,在第一TEE和第二TEE的设备硬件未收到攻击或出现异常的情况下,第一TEE根据第一TEE实时硬件数据和第二TEE初始化硬件数据,确定出的第一身份验证信息与第二TEE根据第二TEE实时硬件数据和第一TEE初始化硬件数据确定的第二身份验证信息,应当是相同的。这是由于,若一个TEE再不收到攻击或出现异常的情况下,其包括TEE所用芯片的名称、种类、身份ID、制造商,TEE所用内存的信息、TEE所用存储介质的信息,TEE的架构信息,TEE内置运行系统的信息等在内的硬件数据是不会发生改变的,因此在正常情况下第一身份验证信息与第二身份验证信息是相同的。
S204、第一TEE确定对第二TEE的身份验证结果。
其中,第一TEE对第二TEE的身份验证结果包括身份验证成功和身份验证失败。进一步的,在第一身份验证信息与第二身份验证信息相同的情况下,第一TEE确定对第二TEE的身份验证成功;在第一身份验证信息与第二身份验证信息不相同的情况下,第一TEE确定对第二TEE的身份验证失败。
S205、第一TEE接收到来自第二TEE的指示信息,确定第一TEE与第二TEE身份互验是否成功。
可选的,指示信息包括第一指示信息和第二指示信息。其中,第一指示信息用于指示第二TEE对第一TEE的身份验证结果为成功,第二指示信息用于指示第二TEE对第一TEE的身份验证结果为失败。
可选的,若第一TEE接收到来自第二TEE的指示信息为第一指示信息且第一TEE对第二TEE身份验证结果为成功,则执行S206。
S206、第一TEE确定与第二TEE的身份互验成功,并与第二TEE正常开启数据交互以保证业务的进行。
可以理解的是,若第一TEE接收到来自第二TEE的指示信息为第二指示信息或第一TEE对第二TEE身份验证结果为失败,则第一TEE确定与第二TEE的身份互验失败,并不与第二TEE开启数据交互以保证数据安全性。
需要说明的是,第二TEE对第一TEE进行身份验证的方法与第一TEE对第二TEE进行身份验证的方法相同,仅是用于验证过程的硬件和业务数据为第二TEE侧的硬件和业务数据,对于数据的处理和判断方法都是相同的,本实施例在此不再赘述。
需要指出的是,在第一TEE和第二TEE的设备硬件未受到攻击或出现异常的情况下,第一TEE实时硬件数据与第一TEE初始化硬件数据相同,第二TEE初始化硬件数据与第二TEE实时硬件数据相同。因此,在该情况下,根据触发器对第一TEE实时硬件数据和第二TEE初始化硬件数据处理后确定的第一处理信息,与根据触发器对第二TEE实时硬件数据和第一TEE初始化硬件数据处理后确定的第二身份验证信息是相同的。
若第一处理信息与第二身份验证信息不同,则可以确定第一TEE实时硬件数据与第一TEE初始化硬件数据不同,和/或,第二TEE初始化硬件数据与第二TEE实时硬件数据不同。
进一步的,由于第一身份验证信息是根据第一TEE实时硬件数据和第一TEE初始化硬件数据的比对结果,以及第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据的比对结果对第一处理信息进行选择输出来确定,因此在第一TEE的设备硬件和业务环境未受到攻击或出现异常的情况下,第一TEE根据触发器对第一TEE实时硬件数据和第二TEE初始化硬件数据处理后确定的第一处理信息与第一身份验证信息是相同的。
因此,第一TEE可以根据第一身份验证信息和第二身份验证信息是否相同,来判断第一TEE实时硬件数据与第一TEE初始化硬件数据,第二TEE实时硬件数据与第二TEE初始化硬件数据,第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据,这三组数据是否全部相同,进而判断第一TEE和第二TEE的设备硬件和业务环境是否存在异常。
基于上述技术方案,本申请实施例通过获取需要进行身份互验的TEE的硬件和业务信息,以TEE双方的初始化硬件数据、实时硬件数据、实时环境状态数据及上次调用后环境状态数据为验证依据,对TEE同时进行本地身份验证和远程身份验证。由此,既在验证本机TEE环境的身份的同时,也验证参与身份互验的另一方TEE环境的身份。由此,可以减少对第三方验证机制的依赖,增加对内网的支持,并最大限度减少外网链接依赖。同时,提升了原有TEE环境身份验证的效率,使得身份验证(互验)流程高效且可靠。
结合图2,如图3所示,本申请提供的身份验证方法具体可以结合时序电路对TEE进行身份验证,在该场景下,该方法在S201之后,S202之前还包括:
S301、第一TEE根据硬件和业务数据,确定用于输入时序电路的电平信号。
示例性的,图4示出了本申请提供的身份验证方法中对于电平信号的具体确定流程。如图4所示,S301具体可分为以下步骤:
S401、第一TEE获取第一随机数和第二随机数。
其中,第一随机数为第一TEE生成的随机数,第二随机数为第二TEE生成的随机数。
S402、第一TEE根据哈希hash算法,确定硬件和业务数据的hash值。
可以理解的是,第一TEE对硬件和业务数据中包含的每一个数据都进行hash值的计算。这样一来,硬件和业务数据的hash值包括:第一TEE初始化硬件数据、第二TEE初始化硬件数据、第一TEE实时硬件数据、第一TEE上次调用后环境状态数据、第一TEE实时环境状态数据的hash值。
需要说明的是,硬件和业务数据的hash值的位数由第一TEE选取的hash值算法确定。具体第一TEE选取何种hash值算法,本申请不做限定。
S403、第一TEE对硬件和业务数据的hash值执行第一操作,以确定第一至第五数组序列。
可选的,第一操作为:将hash值的每一位数字与第一随机值进行对比,若该位数字大于或等于第一随机值,则重新将此位数字记为1;若该位数字小于第一随机值,则重新将此位数字记为0。
在一种可能的实现方式中,第一TEE分别对第一TEE实时硬件数据、第二TEE初始化硬件数据、第一TEE初始化硬件数据、第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据的hash值执行第一操作,以对应获取第一数组序列、第二数组序列、第三数组序列、第四数组序列和第五数组序列。
S404、第一TEE对第一TEE实时硬件数据和第二TEE初始化硬件数据的hash值执行第二操作,以对应确定第六数组序列和第七数组序列。
可选的,第二操作为:将hash值每一位数字与第二随机值进行对比,若该位数字大于或等于第二随机值,则重新将此位数字记为1;若该位数字小于第二随机值,则重新将此位数字记为0。
S405、第一TEE对第一至第七数组序列执行第三操作,以对应确定第一至第七电平序列。
可选的,第三操作为:将数组序列的每一位数字逐位与第一数值的时刻进行一一对应,第一数值与数组序列的数位长度值相同,数组序列的第一位数字对应的时刻为初始时刻t0,第一数值的时刻中每两个相邻时刻之间的时间间隔为d。
可选的,将电平序列中的时间间隔d输入JK触发器,作为JK触发器的时钟信号(clock signal,CLK)。
S406、第一TEE对第一至第七电平序列执行第四操作,以对应确定第一至第七电平信号。
可选的,第四操作为:若电平序列的数位上的数字为1,则将此数位对应的时刻在时序电路上输入的电平信号确定高电平信号;若电平序列的数位上的数字为0,则将此数位对应的时刻在时序电路上输入的电平信号确定为低电平信号。
可以理解的是,经过上述步骤S401-S406,第一TEE将硬件和业务数据,确定为能够用于输入时序电路的电平信号。其中,第一电平信号、第二电平信号、第三电平信号、第四电平信号和第五电平信号分别为第一TEE对第一TEE实时硬件数据、第二TEE初始化硬件数据、第一TEE初始化硬件数据、第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据执行第一操作、第三操作和第四操作后得到的电平信号,第六电平信号和第七电平信号分别为第一TEE对第一TEE实时硬件数据和第二TEE初始化硬件数据执行第二操作、第三操作和第四操作后得到的电平信号。
根据图2,结合图5,图2所示的身份验证方法中S202具体包括:
S501、第一TEE将时间间隔d、第一电平信号和第二电平信号输入到触发器中,确定第一处理信息。
可选的,第一TEE根据JK触发器,对第一电平信号和第二电平信号进行处理,得到数位与第一电平信号和第二电平信号的数位相同的合并电平信号并将其确定为第一处理信息。
在一种可能的实现方式中,结合图1,当时序电路为第二工作状态时,在JK触发器11的第一输入端111输入第一电平信号,在第二输入端112输入时间间隔d作为时钟信号CLK,在第三输入端113输入第二电平信号,在第一输出端114输出上述合并电平信号,在第二输出端115输出第一处理信息的逆。其中,第一处理信息的逆电平信号为与第一处理信息的高低电平相反的电平信号。
S502、第一TEE将第一电平信号和第三电平信号输入第一同或逻辑门,确定第一电平信号和第三电平信号的第一比对结果。
其中,第一比对结果即为第一TEE实时硬件数据和第一TEE初始化硬件数据的比对结果。
在一种可能的实现方式中,结合图1,当时序电路为第二工作状态时,在第一同或逻辑门12的第四输入端121输入第一电平信号,在第五输入端122输入第三电平信号,在第三输出端123输出第一比对结果。
需要说明的是,在同一时刻,若第一同或逻辑门12的两个输入端输入的电平信号相同,即同为高电平或同为低电平,则第三输出端123输出的电平信号为高电平;若第一同或逻辑门12的两个输入端输入的电平信号不相同,也即有且仅有一个为低电平,则第三输出端123输出的电平信号为低电平。
可以理解的是,当第一TEE实时硬件数据和第一TEE初始化硬件数据相同时,根据第一TEE实时硬件数据和第一TEE初始化硬件数据确定的第一电平信号和第三电平信号也是相同的,此时第一同或逻辑门12的第三输出端123输出的电平信号全部为高电平,即第一比对结果此时用于表征第一TEE的硬件数据没有出现异常,硬件环境为安全。
同理,当第一TEE实时硬件数据和第一TEE初始化硬件数据不相同时,第一同或逻辑门12的第三输出端123输出的电平信号不全为高电平,此时第一比对结果表征第一TEE的硬件数据出现了异常,硬件环境不安全。
具体第一同或逻辑门12的输入端与输出端的电平信号对照关系如下表1。
表1第一同或逻辑门12输入输出电平信号对照表
Figure BDA0003279509930000171
Figure BDA0003279509930000181
S503、第一TEE将第四电平信号和第五电平信号输入第二同或逻辑门,确定第四电平信号和第五电平信号的第二比对结果。
其中,第二比对结果即为第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据的比对结果。
在一种可能的实现方式中,结合图1,当时序电路为第二工作状态时,在第二同或逻辑门13的第六输入端131输入第四电平信号,在第七输入端132输入第五电平信号,在第四输出端133输出第二比对结果。
需要说明的是,在同一时刻,若第二同或逻辑门13的两个输入端输入的电平信号相同,即同为高电平或同为低电平,则第四输出端133输出的电平信号为高电平;若第二同或逻辑门13的两个输入端输入的电平信号不相同,也即有且仅有一个为低电平,则第四输出端133输出的电平信号为低电平。
可以理解的是,当第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据相同时,根据第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据确定的第四电平信号和第五电平信号也是相同的,此时第二同或逻辑门13的第四输出端133输出的电平信号全部为高电平,即此时第二比对结果用于表征第一TEE的业务环境没有出现异常,环境状态为安全。
同理,当第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据不相同时,第二同或逻辑门13的第四输出端133输出的电平信号不全为高电平,此时第二比对结果表征第一TEE的业务环境出现了异常,环境状态为不安全。
具体第一同或逻辑门13的输入端与输出端的电平信号对照关系如下表2。
表2第一同或逻辑门13输入输出电平信号对照表
Figure BDA0003279509930000182
Figure BDA0003279509930000191
S504、第一TEE将第一处理信息,第一比对结果和第二比对结果输入数据选择器,确定第一身份验证信息。
在一种可能的实现方式中,结合图1,当时序电路为第二工作状态时,将第一处理信息输入数据选择器14的四个输入端:在第八输入端141输入第一处理信息中的合并电平信号,在第九输入端142、第十输入端143和第十一输入端144输入第一处理信息中的合并电平信号的逆电平信号。在第十二输入端145输入第一比对结果,在第十三输入端146输入第二比对结果,在第五输出端147输出第一身份验证信息。
其中,合并电平信号的逆电平信号,即与合并电平信号的高低电平相反的电平信号。示例性的,某一时刻合并电平信号为高电平,则此时合并电平信号的逆电平信号为低电平。
需要说明的是,在某一时刻,数据选择器14对第一处理信息的选择输出的结果有四种情况,下面具体进行说明:
(1)若第十二输入端145和第十三输入端146输入的电平信号都为高电平,则数据选择器14选择输出第八输入端141的合并电平信号。
(2)若第十二输入端145输入的电平信号为高电平,第十三输入端146输入的电平信号为低电平,则数据选择器14选择输出第九输入端142的合并电平信号的逆电平信号。
(3)若第十二输入端145输入的电平信号为低电平,第十三输入端146输入的电平信号为高电平,则数据选择器14选择输出第十输入端143的合并电平信号的逆电平信号。
(4)若第十二输入端145输入的电平信号为低电平,第十三输入端146输入的电平信号为低电平,则数据选择器14选择输出第十一输入端144的合并电平信号的逆电平信号。
示例性的,具体数据选择器14的输入端与输出端的电平信号对照关系如下表3。
表3数据选择器14输入输出电平信号对照表
Figure BDA0003279509930000192
Figure BDA0003279509930000201
需要说明的是,上述表3及相关叙述仅为本申请实施例对数据选择器14的输入端与输出端的电平信号对照关系的一种举例说明,在实际应用中,该对照关系也可根据数据选择器的类型和人为设置来决定,并不局限于表3一种对照关系,本申请实施例对此不做限定。
可以理解的是,在第一TEE实时硬件数据和第一TEE初始化硬件数据相同,且第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据相同的情况下,数据选择器14对第一处理信息的选择输出的结果,也即第一身份验证信息为输出的第一TEE实时硬件数据和第二TEE初始化硬件数据的合并电平信号。
同理,在第一TEE实时硬件数据和第一TEE初始化硬件数据不相同,或者第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据不相同的情况下,数据选择器14对第一处理信息的选择输出的结果,也即第一身份验证信息为输出的第一TEE实时硬件数据和第二TEE初始化硬件数据的合并电平信号的逆电平信号。
根据图2,结合图6,本申请提供的身份验证方法中步骤S204具体包括:
S601、第一TEE将第一身份验证信息和第二身份验证信息输入第三同或逻辑门,确定第一身份验证信息和第二身份验证信息的比对结果。
在一种可能的实现方式中,结合图1,当时序电路为第二工作状态时,第三同或逻辑门15的第十四输入端151输入第一身份验证信息,在第十五输入端152输入第二身份验证信息,第六输出端153输出第一身份验证信息和第二身份验证信息的比对结果。
需要说明的是,在同一时刻,若第三同或逻辑门15的两个输入端输入的电平信号相同,即同为高电平或同为低电平,则第六输出端153输出的电平信号为高电平;若第三同或逻辑门15的两个输入端输入的电平信号不相同,也即有且仅有一个为低电平,则第六输出端153输出的电平信号为低电平。
可以理解的是,根据前文所述,在第一TEE实时硬件数据和第一TEE初始化硬件数据相同,且第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据相同,且第二TEE实时硬件数据和第二TEE初始化硬件数据相同的情况下,第一身份验证信息和第二身份验证信息也会是相同的,此时第三同或逻辑门15的第六输出端153输出的电平信号全部为高电平,即第一身份验证信息和第二身份验证信息的比对结果为相同。
同理,在第一TEE实时硬件数据和第一TEE初始化硬件数据不相同,或第一TEE实时环境状态数据和第一TEE上次调用后环境状态数据不相同,或第二TEE实时硬件数据和第二TEE初始化硬件数据不相同的情况下,第一身份验证信息和第二身份验证信息也会是不相同的,此时第三同或逻辑门15的第六输出端153输出的电平信号不全为高电平,即第一身份验证信息和第二身份验证信息的比对结果为不相同。
具体第三同或逻辑门15的输入端与输出端的电平信号对照关系如下表4。
表4第三同或逻辑门15输入输出电平信号对照表
Figure BDA0003279509930000211
S602、若第一身份验证信息和第二身份验证信息相同,则第一TEE确定对第二TEE的身份验证成功。
S603、若第一身份验证信息和第二身份验证信息不相同,则第一TEE确定对第二TEE的身份验证失败。
根据图2,结合图7,本申请提供的身份验证方法还包括:
S701、第一TEE将时间间隔d、第六电平信号和第七电平信号输入触发器,确定第三身份验证信息。
其中,第三身份验证信息为第一TEE根据触发器对第一TEE实时硬件数据和第二TEE初始化硬件数据处理后确定的信息。
可选的,第一TEE根据JK触发器,对第六电平信号和第七电平信号进行处理,得到数位与第六电平信号和第七电平信号的数位相同的第三身份验证信息。
在一种可能的实现方式中,结合图1,当时序电路为第一工作状态时,在JK触发器11的第一输入端111输入第六电平信号,在第二输入端112输入时间间隔d作为时钟信号CLK,在第三输入端113输入第七电平信号,在第一输出端114输出第三身份验证信息。
需要说明的是,在第一TEE根据JK触发器确定第三身份验证信息后,直接将第三身份验证信息从第一输出端114输出并输入数据选择器14的第八输入端141,由于时序电路为第一工作状态,因此数据选择器14直接输出第八输入端141输入的第三身份验证信息。
S702、第一TEE向第二TEE发送第三身份验证信息。
可以理解的是,第一TEE向第二TEE发送第三身份验证信息的作用,是用于第二TEE后续与第二TEE本地生成的身份验证信息进行比对,以使得第二TEE对第一TEE进行身份验证。
S703、第一TEE向第二TEE发送对第二TEE身份验证的验证结果。
可以理解的是,第一TEE向第二TEE发送对第二TEE身份验证的验证结果的作用,是用于第二TEE结合第二TEE对第一TEE身份验证的验证结果,以使得第二TEE确定第一TEE确定与第二TEE的身份互验是否成功。
本申请实施例可以根据上述方法示例对身份验证装置进行功能模块或者功能单元的划分,例如,可以对应各个功能划分各个功能模块或者功能单元,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块或者功能单元的形式实现。其中,本申请实施例中对模块或者单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
示例性的,如图8所示,为本申请实施例所涉及的一种身份验证装置的一种可能的结构示意图。该身份验证装置800包括:获取单元801、处理单元802和接收单元803。
其中,获取单元801,用于获取硬件和业务数据。例如,结合图2,获取单元801具体用于执行步骤S201。
处理单元802,用于生成第一身份验证信息。例如,结合图2,处理单元802具体用于执行步骤S202。
接收单元803,用于接收来自第二TEE的第二身份验证信息。例如,结合图2,接收单元803具体用于执行步骤S203。
处理单元802,还用于在第一身份验证信息与第二身份验证信息相同的情况下,第一TEE确定对第二TEE的身份验证成功。例如,结合图2,处理单元802具体用于执行步骤S204。
处理单元802,还用于在第一TEE接收到来自第二TEE的第一指示信息,且第一TEE对第二TEE身份验证成功时,确定与第二TEE的身份互验成功。例如,结合图2,处理单元802具体用于执行步骤S206。
可选的,获取单元801,还用于获取第一随机数和第二随机数。例如,结合图4,获取单元801具体用于执行步骤S401。
可选的,处理单元802,还用于根据哈希hash算法,确定硬件和业务数据的hash值。例如,结合图4,处理单元802具体用于执行步骤S402。
可选的,处理单元802,还用于对硬件和业务数据的hash值执行第一操作,以确定第一数组序列、第二数组序列、第三数组序列、第四数组序列和第五数组序列。例如,结合图4,处理单元802具体用于执行步骤S403。
可选的,处理单元802,还用于对第一TEE实时硬件数据和第二TEE初始化硬件数据的hash值执行第二操作,以确定第六数组序列和第七数组序列。例如,结合图4,处理单元802具体用于执行步骤S404。
可选的,处理单元802,还用于对第一数组序列、第二数组序列、第三数组序列、第四数组序列、第五数组序列、第六数组序列和第七数组序列执行第三操作,以确定第一电平序列、第二电平序列、第三电平序列、第四电平序列、第五电平序列、第六电平序列和第七电平序列。例如,结合图4,处理单元802具体用于执行步骤S405。
可选的,处理单元802,还用于对第一电平序列、第二电平序列、第三电平序列、第四电平序列、第五电平序列、第六电平序列和第七电平序列进行第四操作,以确定第一电平信号、第二电平信号、第三电平信号、第四电平信号、第五电平信号、第六电平信号和第七电平信号。例如,结合图4,处理单元802具体用于执行步骤S406。
可选的,处理单元802,还用于将时间间隔d、第一电平信号和第二电平信号输入到触发器中,确定第一处理信息。例如,结合图5,处理单元802具体用于执行步骤S501。
可选的,处理单元802,还用于将第一电平信号和第三电平信号输入第一同或逻辑门,确定第一电平信号和第三电平信号的第一比对结果。例如,结合图5,处理单元802具体用于执行步骤S502。
可选的,处理单元802,还用于将第四电平信号和第五电平信号输入第二同或逻辑门,确定第四电平信号和第五电平信号的第二比对结果。例如,结合图5,处理单元802具体用于执行步骤S503。
可选的,处理单元802,还用于将第一处理信息,第一比对结果和第二比对结果输入数据选择器,确定第一身份验证信息。例如,结合图5,处理单元802具体用于执行步骤S504。
可选的,处理单元802,还用于将第一身份验证信息和第二身份验证信息输入第三同或逻辑门,确定第一身份验证信息和第二身份验证信息的比对结果。例如,结合图6,处理单元802具体用于执行步骤S601。
可选的,处理单元802,还用于在第一身份验证信息和第二身份验证信息相同时,确定对第二TEE的身份验证成功。例如,结合图6,处理单元802具体用于执行步骤S602。
可选的,处理单元802,还用于将时间间隔d、第六电平信号和第七电平信号输入触发器,确定第三身份验证信息。例如,结合图7,处理单元802具体用于执行步骤S701。
可选的,身份验证装置800还包括发送单元804。发送单元804,用于用于向第二TEE发送第三身份验证信息。例如,结合图7,处理单元802具体用于执行步骤S702。
可选的,发送单元804,还用于向第二TEE发送对第二TEE身份验证的验证结果。例如,结合图7,发送单元804具体用于执行步骤S703。
可选的,身份验证装置800还可以包括存储单元(图8中以虚线框示出),该存储单元存储有程序或指令。当处理单元802执行该程序或指令时,使得身份验证装置可以执行上述方法实施例所述的身份验证方法。
此外,图8所述的身份验证装置的技术效果可以参考上述实施例所述的身份验证方法的技术效果,此处不再赘述。
示例性地,图9为上述实施例中所涉及的身份验证装置的又一种可能的结构示意图。如图9所示,身份验证装置900包括:处理器902。
其中,处理器902,用于对该身份验证装置的动作进行控制管理,例如,执行上述获取单元801、处理单元802、接收单元803和发送单元804执行的步骤,和/或用于执行本文所描述的技术方案的其它过程。
上述处理器902可以是实现或执行结合本申请内容所描述的各种示例性的逻辑方框,模块和电路。该处理器可以是中央处理器,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
可选地,身份验证装置900还可以包括通信接口903、存储器901和总线904。其中,通信接口903用于支持身份验证装置900与其他网络实体的通信。存储器901用于存储该身份验证装置的程序代码和数据。
其中,存储器901可以是身份验证装置中的存储器,该存储器可以包括易失性存储器,例如随机存取存储器;该存储器也可以包括非易失性存储器,例如只读存储器,快闪存储器,硬盘或固态硬盘;该存储器还可以包括上述种类的存储器的组合。
总线904可以是扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。总线904可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例提供一种包含指令的计算机程序产品,当所述计算机程序产品在本申请的电子设备上运行时,使得所述计算机执行上述方法实施例所述的身份验证方法。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当计算机执行该指令时,该本申请的电子设备执行上述方法实施例所示的方法流程中身份验证装置执行的各个步骤。
其中,计算机可读存储介质,例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘。随机存取存储器(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、寄存器、硬盘、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的人以合适的组合、或者本领域数值的任何其他形式的计算机可读存储介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于特定用途集成电路(Application Specific Integrated Circuit,ASIC)中。在本申请实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

Claims (14)

1.一种身份验证方法,其特征在于,所述方法包括:
获取硬件和业务数据;其中,所述硬件和业务数据包括:第一TEE初始化硬件数据、第二TEE初始化硬件数据、第一TEE实时硬件数据、第一TEE上次调用后环境状态数据、第一TEE实时环境状态数据;所述第二TEE为与第一TEE进行身份互验的TEE;
生成第一身份验证信息;其中,所述第一身份验证信息用于表征根据所述第一TEE实时硬件数据和第一TEE初始化硬件数据的比对结果,以及所述第一TEE实时环境状态数据和所述第一TEE上次调用后环境状态数据的比对结果,对第一处理信息进行选择输出的结果;所述第一处理信息为所述第一TEE根据触发器对所述第一TEE实时硬件数据和所述第二TEE初始化硬件数据处理后确定的信息;
接收来自所述第二TEE的第二身份验证信息;所述第二身份验证信息为所述第二TEE根据触发器对第二TEE实时硬件数据和所述第一TEE初始化硬件数据处理后确定的信息;
在所述第一身份验证信息与所述第二身份验证信息相同的情况下,确定对所述第二TEE的身份验证成功;
若接收到来自所述第二TEE的第一指示信息,且所述第一TEE对所述第二TEE身份验证成功,则确定与所述第二TEE的身份互验成功;其中,所述第一指示信息用于指示所述第二TEE对所述第一TEE的身份验证成功。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取第一随机数和第二随机数;所述第一随机数为所述第一TEE生成的随机数,所述第二随机数为所述第二TEE生成的随机数;
根据哈希hash算法,确定所述硬件和业务数据的hash值;所述硬件和业务数据的hash值包括:所述第一TEE初始化硬件数据、所述第二TEE初始化硬件数据、所述第一TEE实时硬件数据、所述第一TEE上次调用后环境状态数据、所述第一TEE实时环境状态数据的hash值;
对所述硬件和业务数据的hash值执行第一操作,以确定第一数组序列、第二数组序列、第三数组序列、第四数组序列和第五数组序列;其中,所述第一操作为:将所述hash值的每一位数字与所述第一随机值进行对比,若该位数字大于或等于所述第一随机值,则重新将此位数字记为1;若该位数字小于所述第一随机值,则重新将此位数字记为0;
对所述第一TEE实时硬件数据和所述第二TEE初始化硬件数据的hash值执行第二操作,以确定第六数组序列和第七数组序列;其中,所述第二操作为:将所述hash值每一位数字与所述第二随机值进行对比,若该位数字大于或等于所述第二随机值,则重新将此位数字记为1;若该位数字小于所述第二随机值,则重新将此位数字记为0;
对所述第一数组序列、所述第二数组序列、所述第三数组序列、所述第四数组序列、所述第五数组序列、所述第六数组序列和所述第七数组序列执行第三操作,以确定第一电平序列、第二电平序列、第三电平序列、第四电平序列、第五电平序列、第六电平序列和第七电平序列;其中,所述第三操作为:将所述数组序列的每一位数字逐位与第一数值的时刻进行一一对应,所述第一数值与所述数组序列的数位长度值相同,所述数组序列的第一位数字对应的时刻为初始时刻t0,所述第一数值的时刻中每两个相邻时刻之间的时间间隔为d;
对所述第一电平序列、所述第二电平序列、所述第三电平序列、所述第四电平序列、所述第五电平序列、所述第六电平序列和所述第七电平序列进行第四操作,以确定第一电平信号、第二电平信号、第三电平信号、第四电平信号、第五电平信号、第六电平信号和第七电平信号;其中,所述第四操作为:若所述电平序列的数位上的数字为1,则将此数位对应的时刻在所述时序电路上输入的电平信号确定高电平信号;若所述电平序列的数位上的数字为0,则将此数位对应的时刻在所述时序电路上输入的电平信号确定为低电平信号;
其中,所述第一电平信号、所述第二电平信号、所述第三电平信号、所述第四电平信号和所述第五电平信号分别为所述第一TEE对所述第一TEE实时硬件数据、所述第二TEE初始化硬件数据、所述第一TEE初始化硬件数据、所述第一TEE实时环境状态数据和所述第一TEE上次调用后环境状态数据执行所述第一操作、所述第三操作和所述第四操作后得到的电平信号;
所述第六电平信号和所述第七电平信号分别为对所述第一TEE实时硬件数据和所述第二TEE初始化硬件数据执行所述第二操作、所述第三操作和所述第四操作后得到的电平信号。
3.根据权利要求2所述的方法,其特征在于,所述生成所述第一身份验证信息,具体包括:
将所述时间间隔d、所述第一电平信号和所述第二电平信号输入到所述触发器中,确定所述第一处理信息;
将所述第一电平信号和第三电平信号输入第一同或逻辑门,确定所述第一电平信号和所述第三电平信号的第一比对结果;
将所述第四电平信号和第五电平信号输入第二同或逻辑门,确定所述第四电平信号和所述第五电平信号的第二比对结果;
将所述第一处理信息,所述第一比对结果和所述第二比对结果输入数据选择器,确定所述第一身份验证信息。
4.根据权利要求3所述的方法,其特征在于,在所述第一身份验证信息与所述第二身份验证信息相同的情况下,确定对所述第二TEE的身份验证成功,具体包括:
将所述第一身份验证信息和所述第二身份验证信息输入第三同或逻辑门,确定所述第一身份验证信息和所述第二身份验证信息的比对结果;
若所述第一身份验证信息和所述第二身份验证信息相同,则确定对所述第二TEE的身份验证成功。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
将所述时间间隔d、所述第六电平信号和所述第七电平信号输入所述触发器,确定第三身份验证信息;所述第三身份验证信息为所述第一TEE根据触发器对所述第一TEE实时硬件数据和所述第二TEE初始化硬件数据处理后确定的信息;
向所述第二TEE发送所述第三身份验证信息;
向所述第二TEE发送对所述第二TEE身份验证的验证结果。
6.一种身份验证装置,其特征在于,所述身份验证装置包括:获取单元、处理单元和接收单元;
所述获取单元,用于获取硬件和业务数据;其中,所述硬件和业务数据包括:第一TEE初始化硬件数据、第二TEE初始化硬件数据、第一TEE实时硬件数据、第一TEE上次调用后环境状态数据、第一TEE实时环境状态数据;所述第二TEE为与所述第一TEE进行身份互验的TEE;
所述处理单元,用于生成第一身份验证信息;其中,所述第一身份验证信息用于表征根据所述第一TEE实时硬件数据和第一TEE初始化硬件数据的比对结果,以及所述第一TEE实时环境状态数据和所述第一TEE上次调用后环境状态数据的比对结果对第一处理信息进行选择输出的结果;所述第一处理信息为所述第一TEE根据触发器对所述第一TEE实时硬件数据和所述第二TEE初始化硬件数据处理后确定的信息;
所述接收单元,用于接收来自所述第二TEE的第二身份验证信息;所述第二身份验证信息为所述第二TEE根据触发器对第二TEE实时硬件数据和所述第一TEE初始化硬件数据处理后确定的信息;
所述处理单元,还用于在所述第一身份验证信息与所述第二身份验证信息相同的情况下,确定对所述第二TEE的身份验证成功;
所述处理单元,还用于在接收到来自所述第二TEE的第一指示信息,且所述第一TEE对所述第二TEE身份验证成功时,确定与所述第二TEE的身份互验成功;其中,所述第一指示信息用于指示所述第二TEE对所述第一TEE的身份验证成功。
7.根据权利要求6所述的身份验证装置,其特征在于,
所述获取单元,还用于获取第一随机数和第二随机数;所述第一随机数为所述第一TEE生成的随机数,所述第二随机数为所述第二TEE生成的随机数;
所述处理单元,还用于根据哈希hash算法,确定所述硬件和业务数据的hash值;所述硬件和业务数据的hash值包括:所述第一TEE初始化硬件数据、所述第二TEE初始化硬件数据、所述第一TEE实时硬件数据、所述第一TEE上次调用后环境状态数据、所述第一TEE实时环境状态数据的hash值;
所述处理单元,还用于对所述硬件和业务数据的hash值执行第一操作,以确定第一数组序列、第二数组序列、第三数组序列、第四数组序列和第五数组序列;其中,所述第一操作为:将所述hash值的每一位数字与所述第一随机值进行对比,若该位数字大于或等于所述第一随机值,则重新将此位数字记为1;若该位数字小于所述第一随机值,则重新将此位数字记为0;
所述处理单元,还用于对所述第一TEE实时硬件数据和所述第二TEE初始化硬件数据的hash值执行第二操作,以确定第六数组序列和第七数组序列;其中,所述第二操作为:将所述hash值每一位数字与所述第二随机值进行对比,若该位数字大于或等于所述第二随机值,则重新将此位数字记为1;若该位数字小于所述第二随机值,则重新将此位数字记为0;
所述处理单元,还用于对所述第一数组序列、所述第二数组序列、所述第三数组序列、所述第四数组序列、所述第五数组序列、所述第六数组序列和所述第七数组序列执行第三操作,以确定第一电平序列、第二电平序列、第三电平序列、第四电平序列、第五电平序列、第六电平序列和第七电平序列;其中,所述第三操作为:将所述数组序列的每一位数字逐位与第一数值的时刻进行一一对应,所述第一数值与所述数组序列的数位长度值相同,所述数组序列的第一位数字对应的时刻为初始时刻t0,所述第一数值的时刻中每两个相邻时刻之间的时间间隔为d;
所述处理单元,还用于对所述第一电平序列、所述第二电平序列、所述第三电平序列、所述第四电平序列、所述第五电平序列、所述第六电平序列和所述第七电平序列进行第四操作,以确定第一电平信号、第二电平信号、第三电平信号、第四电平信号、第五电平信号、第六电平信号和第七电平信号;其中,所述第四操作为:若所述电平序列的数位上的数字为1,则将此数位对应的时刻在所述时序电路上输入的电平信号确定高电平信号;若所述电平序列的数位上的数字为0,则将此数位对应的时刻在所述时序电路上输入的电平信号确定为低电平信号;
其中,所述第一电平信号、所述第二电平信号、所述第三电平信号、所述第四电平信号和所述第五电平信号分别为所述第一TEE对所述第一TEE实时硬件数据、所述第二TEE初始化硬件数据、所述第一TEE初始化硬件数据、所述第一TEE实时环境状态数据和所述第一TEE上次调用后环境状态数据执行所述第一操作、所述第三操作和所述第四操作后得到的电平信号;
所述第六电平信号和所述第七电平信号分别为所述第一TEE对所述第一TEE实时硬件数据和所述第二TEE初始化硬件数据执行所述第二操作、所述第三操作和所述第四操作后得到的电平信号。
8.根据权利要求7所述的身份验证装置,其特征在于,
所述处理单元,还用于将所述时间间隔d、所述第一电平信号和所述第二电平信号输入到所述触发器中,确定所述第一处理信息;
所述处理单元,还用于将所述第一电平信号和第三电平信号输入第一同或逻辑门,确定所述第一电平信号和所述第三电平信号的第一比对结果;
所述处理单元,还用于将所述第四电平信号和第五电平信号输入第二同或逻辑门,确定所述第四电平信号和所述第五电平信号的第二比对结果;
所述处理单元,还用于将所述第一处理信息,所述第一比对结果和所述第二比对结果输入数据选择器,确定所述第一身份验证信息。
9.根据权利要求8所述的身份验证装置,其特征在于,
所述处理单元,还用于将所述第一身份验证信息和所述第二身份验证信息输入第三同或逻辑门,确定所述第一身份验证信息和所述第二身份验证信息的比对结果;
所述处理单元,还用于在所述第一身份验证信息和所述第二身份验证信息相同时,确定对所述第二TEE的身份验证成功。
10.根据权利要求9所述的身份验证装置,其特征在于,所述身份验证装置还包括发送单元;
所述处理单元,还用于将所述时间间隔d、所述第六电平信号和所述第七电平信号输入所述触发器,确定第三身份验证信息;所述第三身份验证信息为所述第一TEE根据触发器对所述第一TEE实时硬件数据和所述第二TEE初始化硬件数据处理后确定的信息;
所述发送单元,用于向所述第二TEE发送所述第三身份验证信息;
所述发送单元,还用于向所述第二TEE发送对所述第二TEE身份验证的验证结果。
11.一种时序电路,其特征在于,所述时序电路包括信号生成模块、触发器、数据选择器、第一同或逻辑门、第二同或逻辑门、第三同或逻辑门、第一开关、第二开关和第三开关;
所述信号生成模块用于生成电平信号;
所述触发器包括第一输入端、第二输入端、第三输入端、第一输出端和第二输出端;
所述第一同或逻辑门包括第四输入端、第五输入端和第三输出端;
所述第二同或逻辑门包括第六输入端、第七输入端和第四输出端;
所述数据选择器包括第八输入端、第九输入端、第十输入端、第十一输入端、第十二输入端、第十三输入端和第五输出端;
所述第三同或逻辑门包括第十四输入端、第十五输入端和第六输出端;
其中,所述信号生成模块与所述第一输入端、所述第二输入端、所述第三输入端、所述第四输入端、所述第五输入端、所述第六输入端、所述第七输入端和所述第十五输入端连接,所述第一输出端与所述第八输入端连接,所述第二输出端分别与第九输入端、第十输入端、第十一输入端连接,所述第三输出端与所述第十二输入端连接,所述第四输出端与所述第十三输入端连接,所述第五输出端与所述第十四输入端连接;
所述第一开关位于所述第五输出端和所述第五输出端的信号输出数据接口的连接电路之间;
所述第二开关位于所述第五输出端与所述第十四输入端的连接电路之间;
所述第三开关位于所述第十五输入端和所述第十五输入端的信号输入数据接口的连接电路之间。
12.根据权利要求11所述的时序电路,其特征在于,所述时序电路包括第一工作状态和第二工作状态;所述第一工作状态用于输出第三身份验证信息,所述第二工作状态用于对第二TEE进行验证;
在所述第一工作状态下,所述第一开关为闭合状态,所述第二开关和所述第三开关为断开状态,所述数据选择器输出所述第八输入端输入的信号;
在所述第二工作状态下,所述第一开关为断开状态,所述第二开关和所述第三开关为闭合状态。
13.一种身份验证设备,其特征在于,处理器以及存储器;其中,所述存储器用于存储计算机执行指令,当所述身份验证设备运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述身份验证设备执行权利要求1-5中任一项所述的身份验证方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括指令,所述指令当被TEE执行时使所述计算机执行如权利要求1-5中任一项所述的身份验证方法。
CN202111128273.0A 2021-09-26 2021-09-26 一种身份验证方法、装置及存储介质 Active CN113868665B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111128273.0A CN113868665B (zh) 2021-09-26 2021-09-26 一种身份验证方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111128273.0A CN113868665B (zh) 2021-09-26 2021-09-26 一种身份验证方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN113868665A CN113868665A (zh) 2021-12-31
CN113868665B true CN113868665B (zh) 2023-01-24

Family

ID=78994534

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111128273.0A Active CN113868665B (zh) 2021-09-26 2021-09-26 一种身份验证方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN113868665B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111866808A (zh) * 2020-07-22 2020-10-30 中国联合网络通信集团有限公司 身份验证方法、装置及存储介质
CN111931154A (zh) * 2020-10-10 2020-11-13 支付宝(杭州)信息技术有限公司 基于数字凭证的业务处理方法、装置及设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111866808A (zh) * 2020-07-22 2020-10-30 中国联合网络通信集团有限公司 身份验证方法、装置及存储介质
CN111931154A (zh) * 2020-10-10 2020-11-13 支付宝(杭州)信息技术有限公司 基于数字凭证的业务处理方法、装置及设备

Also Published As

Publication number Publication date
CN113868665A (zh) 2021-12-31

Similar Documents

Publication Publication Date Title
US20210240869A1 (en) Secure memory device with unique identifier for authentication
KR102182894B1 (ko) 패스워드 기반의 인증을 수행하는 사용자 장치 및 그것의 패스워드 등록 방법 및 인증 방법
CN108628743B (zh) 应用程序测试方法、装置、设备及存储介质
US9755831B2 (en) Key extraction during secure boot
CN111726224A (zh) 一种基于量子保密通信的数据完整性快速认证方法、系统、终端及存储介质
CN110442756A (zh) 数据校验方法、装置、计算机设备和存储介质
CN112714158B (zh) 事务处理方法、中继网络、跨链网关、系统、介质和设备
CN110839002B (zh) 云的开户、认证及访问方法和设备
CN111030980A (zh) 一种Linux透明网络设备平台实现方法、装置及存储介质
CN111259370A (zh) 一种fpga程序安全验证方法、系统、终端及存储介质
CN113868665B (zh) 一种身份验证方法、装置及存储介质
CN112215593B (zh) 一种支付方法、装置、服务器及存储介质
CN114116356A (zh) 模拟测试方法、装置、设备及介质
CN113935737A (zh) 基于区块链的随机数生成方法及装置
CN111859424B (zh) 物理管理平台的数据加密方法、系统、终端及存储介质
CN111404897A (zh) 消息分发方法、装置、存储介质及电子设备
CN111767553A (zh) 数据加密解密方法、mcu及电子设备、可读存储介质
CN115964721A (zh) 一种程序验证方法及电子设备
CN115129642A (zh) 芯片总线延时调整方法、电子设备和介质
CN113282897A (zh) 一种多系统的账号共用方法、装置、设备及介质
US20200235917A1 (en) Shared secret generation
RU2633186C1 (ru) Персональное устройство аутентификации и защиты данных
CN113486375B (zh) 设备信息的存储方法和装置、存储介质及电子装置
CN113572578B (zh) 基于数据中台的tcp数据传输方法、装置、设备和介质
CN112632573B (zh) 智能合约执行方法、装置、系统、存储介质及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant