[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN109086588A - 一种认证方法及认证设备 - Google Patents

一种认证方法及认证设备 Download PDF

Info

Publication number
CN109086588A
CN109086588A CN201810866705.XA CN201810866705A CN109086588A CN 109086588 A CN109086588 A CN 109086588A CN 201810866705 A CN201810866705 A CN 201810866705A CN 109086588 A CN109086588 A CN 109086588A
Authority
CN
China
Prior art keywords
value
user
module
mark
verification result
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.)
Granted
Application number
CN201810866705.XA
Other languages
English (en)
Other versions
CN109086588B (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.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies 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 Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN201810866705.XA priority Critical patent/CN109086588B/zh
Publication of CN109086588A publication Critical patent/CN109086588A/zh
Priority to PCT/CN2019/097383 priority patent/WO2020024852A1/zh
Application granted granted Critical
Publication of CN109086588B publication Critical patent/CN109086588B/zh
Priority to US17/159,051 priority patent/US11930118B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • G06F21/46Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • Collating Specific Patterns (AREA)

Abstract

本发明公开了一种认证方法,包括:认证设备接收上位机的命令;对上位机的命令中的选项参数进行解析;判断选项参数中指纹认证标识的值,如果是第一预设值,则提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;如果是第二预设值,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;认证设备对用户操作验证结果进行判断,如果用户操作验证结果为成功,则根据指纹认证标识的值设置认证方式确认标识,从上位机的命令中获取客户端数据,并根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果,将签名结果发送给上位机;如果用户操作验证结果为失败,则报错。

Description

一种认证方法及认证设备
技术领域
本发明涉及信息安全领域,特别涉及一种认证方法及认证设备。
背景技术
安全环境芯片(SE,security environment)作为认证设备的一个重要部分,广泛的应用在计算和通信系统中,以提高系统整体的安全性。在现有技术中,由于安全环境芯片自身的硬件隔离特征,所以现有的认证设备通常不支持多种认证方式。
发明内容
为解决以上技术问题,本发明提供了一种认证方法,包括以下步骤:
步骤101,认证设备接收上位机的命令;
步骤102,认证设备对上位机的命令中的选项参数进行解析;
步骤103,认证设备判断选项参数中指纹认证标识的值,如果是第一预设值,则执行步骤104;如果是第二预设值,则执行步骤105;
步骤104,认证设备提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果,执行步骤106;
步骤105,认证设备提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,执行步骤106;
步骤106,认证设备对用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错;
步骤107,认证设备根据指纹认证标识的值设置认证方式确认标识,从上位机的命令中获取客户端数据,并根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果;
步骤108,认证设备将签名结果发送给上位机。
步骤103中当认证设备判断选项参数中指纹认证标识的值为第一预设值时,还包括:认证设备判断上位机的指令的命令头中录入指纹状态标识的值,如果录入指纹状态标识的值为第三预设值,则执行步骤104,如果录入指纹状态标识的值为第四预设值,则报错。
步骤101中上位机的命令具体为产生凭证命令。
步骤101中上位机的命令具体为获取断言命令,
步骤103中认证设备判断选项参数中指纹认证标识的值为第二预设值时,还包括:认证设备判断选项参数中按键认证标识的值,如果是第一预设值,执行步骤105,如果是第二预设值,执行步骤107;
当步骤103中认证设备判断选项参数中指纹认证标识的值为第二预设值且选项参数中按键认证标识的值为第二预设值时,步骤107具体为认证设备根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识,从上位机的命令中获取客户端数据,根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果。
步骤103认证设备判断选项参数中指纹认证标识的值为第一预设值时,步骤107中认证设备根据指纹认证标识的值设置认证方式确认标识具体为:认证设备将认证方式确认标识中指纹认证标识所对应的比特位置位;
步骤103认证设备判断选项参数中指纹认证标识的值为第二预设值时,步骤107中认证设备根据指纹认证标识的值设置认证方式确认标识具体为:认证设备将认证方式确认标识中指纹认证标识所对应的比特位复位。
当按键认证标识的值为第一预设值时,所步骤107中认证设备根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识具体为:认证设备将认证方式确认标识中指纹认证标识所对应的比特位复位,将认证方式确认标识中按键认证标识所对应的比特位置位;
当按键认证标识的值为第二预设值时,所步骤107中认证设备根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识具体为:认证设备将认证方式确认标识中指纹认证标识所对应的比特位复位,将认证方式确认标识中按键认证标识所对应的比特位复位。
认证设备包括安全环境芯片和指纹管理芯片,上述方法中
步骤101具体为指纹管理芯片将接收到的上位机的命令封装成应用协议数据单元指令,发送给安全环境芯片;
步骤102具体为安全环境芯片接收应用协议数据单元指令,并对应用协议数据单元指令中的选项参数进行解析;
步骤103具体为安全环境芯片判断选项参数中指纹认证标识的值,如果是第一预设值,则执行步骤104;如果是第二预设值,则执行步骤105;
步骤104具体为指纹管理芯片提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果,并将用户操作验证结果发送给安全环境芯片,执行步骤106;
步骤105具体为指纹管理芯片提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,并将用户操作验证结果发送给安全环境芯片,执行步骤106;
步骤106具体为安全环境芯片对用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错;
步骤107具体为安全环境芯片根据指纹认证标识的值设置认证方式确认标识,安全环境芯片从应用协议数据单元指令中获取客户端数据,并根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果,并将签名结果发送给指纹管理芯片;
步骤108具体为指纹管理芯片接收签名结果,并将签名结果发送给上位机。
步骤103中当安全环境芯片判断选项参数中指纹认证标识的值为第一预设值时,还包括:安全环境芯片判断应用协议数据单元指令的命令头中录入指纹状态标识的值,如果录入指纹状态标识的值为第三预设值,则执行步骤104,如果录入指纹状态标识的值为第四预设值,则报错。
步骤101具体为指纹管理芯片接收到的上位机的命令为产生凭据命令。
步骤101具体为指纹管理芯片接收到的上位机的命令为获取断言命令;
步骤103安全环境芯片判断选项参数中指纹认证标识的值为第二预设值之后还包括:安全环境芯片判断选项参数中按键认证标识的值,如果是第一预设值,执行步骤105,如果是第二预设值,执行步骤107;
当步骤103中安全环境芯片判断选项参数中指纹认证标识的值为第二预设值时且安全环境芯片判断选项参数中按键认证标识的值为第二预设值时,步骤107具体为,安全环境芯片根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识,安全环境芯片从获取断言命令中获取客户端数据,并根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果。
步骤103具体为安全环境芯片判断选项参数中指纹认证标识的值,如果是第一预设值,则生成特殊状态码,并将特殊状态码发送给指纹管理芯片,执行步骤104;如果是第二预设值,则生成特殊状态码,并将特殊状态码发送给指纹管理芯片,则执行步骤105;
步骤104具体为指纹管理芯片接收特殊状态码并判断特殊状态码是否合法,如果是,指纹管理芯片生成随机数,并提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果,指纹管理芯片使用随机数和第一会话密钥对用户操作验证结果进行加密,得到加密的用户操作验证结果,并将加密的用户操作验证结果和随机数发送给安全环境芯片,执行步骤106;如果否,则报错;
步骤105具体为指纹管理芯片接收特殊状态码并判断特殊状态码是否合法,如果是,指纹管理芯片生成随机数,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,指纹管理芯片使用随机数和第一会话密钥对用户操作验证结果进行加密,得到加密的用户操作验证结果,并将加密的用户操作验证结果和随机数发送给安全环境芯片,执行步骤106;如果否,则报错;
步骤106具体为安全环境芯片使用随机数和第二会话密钥对接收到的加密的用户操作验证结果进行解密,对用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错。
步骤103具体为安全环境芯片判断选项参数中指纹认证标识的值,如果是第一预设值,则生成随机数和特殊状态码,并将所述随机数和所述特殊状态码送给指纹管理芯片,执行步骤104;如果是第二预设值,则生成随机数和特殊状态码,并将所述随机数和所述特殊状态码送给指纹管理芯片,则执行步骤105;
步骤104具体为指纹管理芯片接收所述随机数和所述特殊状态码,并判断特殊状态码是否合法,如果是,指纹管理芯片并提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果,指纹管理芯片使用随机数和第一会话密钥对用户操作验证结果进行加密,得到加密的用户操作验证结果,并将加密的用户操作验证结果发送给安全环境芯片,执行步骤106;如果否,则报错;
步骤105具体为指纹管理芯片接收特殊状态码和随机数并判断特殊状态码是否合法,如果是,指纹管理芯片提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,指纹管理芯片使用随机数和第一会话密钥对用户操作验证结果进行加密,得到加密的用户操作验证结果,并将加密的用户操作验证结果发送给安全环境芯片,执行步骤106;如果否,则报错;
步骤106具体为安全环境芯片使用随机数和第二会话密钥对接收到的加密的用户操作验证结果进行解密,对用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错。
本发明还提供了一种认证设备,包括:
第一接收模块,用于接收上位机的命令;
解析模块,用于对上位机的命令中的选项参数进行解析;
第二判断模块,用于判断选项参数中指纹认证标识的值;还用于判断提示验证模块得到的用户操作验证结果为成功或者失败;
提示验证模块,用于当第二判断模块判断到选项参数中指纹认证标识的值为第一预设值时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;还用于当第二判断模块判断到选项参数中指纹认证标识的值为第二预设值时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
第二报错模块,用于当第二判断模块判断用户操作验证结果为失败时报错;
设置模块,用于根据指纹认证标识的值设置认证方式确认标识,
获取模块,从上位机的命令中获取客户端数据
第二生成模块,用于根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果;
第一发送模块,用于将第二生成模块生成的签名结果发送给上位机。
第二判断模块,还用于当第二判断模块判断到选项参数中指纹认证标识的值为第一预设值时,判断上位机的指令的命令头中录入指纹状态标识的值;
提示验证模块,还用于当第二判断模块判断到录入指纹状态标识的值为第三预设值时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;
报错模块,还用于当第二判断模块判断到上位机的指令的命令头中录入指纹状态标识的值为第四预设值时,报错。
上位机的命令为产生凭据命令。
上位机的命令具体为获取断言命令,认证设备还包括:第二判断模块,用于当第二判断模块判断选项参数中指纹认证标识的值为第二预设值时,判断选项参数中按键认证标识的值;
提示验证模块具体用于,当第二判断模块判断选项参数中指纹认证标识的值为第二预设值且选项参数中按键认证标识的值为第一预设值时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
设置模块,还用于当第二判断模块判断选项参数中指纹认证标识的值为第二预设值且选项参数中按键认证标识的值为第二预设值时,根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识;
第二生成模块,具体用于根据设置模块设置的认证方式确认标识和获取模块获取的客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果。
设置模块,具体用于当第二判断模块判断选项参数中指纹认证标识的值为第一预设值时,将认证方式确认标识中指纹认证标识所对应的比特位置位;当第二判断模块判断选项参数中指纹认证标识的值为第二预设值时,将认证方式确认标识中指纹认证标识所对应的比特位复位。
设置模块,还用于当第二判断模块判断选项参数中指纹认证标识的值为第二预设值且选项参数中按键认证标识的值为第二预设值时,用于将认证方式确认标识中指纹认证标识所对应的比特位复位,将认证方式确认标识中按键认证标识所对应的比特位复位。
认证设备包括指纹管理芯片和安全环境芯片,指纹管理芯片包括:第一接收模块,封装模块,第一发送模块,提示验证模块;安全环境芯片包括:第二接收模块,解析模块,第二判断模块,获取模块,第二生成模块,设置模块,第二发送模块,报错模块;
第一接收模块,用于接收上位机的命令;还用于接收第二发送模块发送的签名结果;
封装模块,用于将第一接收模块接收到的上位机的命令封装成应用协议数据单元指令;
第一发送模块,用于将应用协议数据单元指令发送给第二接收模块;还用于将提示验证模块得到用户操作验证结果发送给第二接收模块;还用于将第一接收模块接收到的第二发送模块发送的签名结果发送给上位机;
第二接收模块,用于接收应用协议数据单元指令;还用于第一发送模块发送的用户操作验证结果;
解析模块,用于对应用协议数据单元指令中的选项参数进行解析;
第二判断模块,用于判断选项参数中指纹认证标识的值,还用于判断用户操作验证结果;
提示验证模块,用于当第二判断模块判断选项参数中指纹认证标识的值是第一预设值时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;还用于当第二判断模块判断选项参数中指纹认证标识的值是第二预设值时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
设置模块,用于当第二判断模块判断用户操作验证结果为成功时,根据指纹认证标识的值设置认证方式确认标识;
获取模块,用于从应用协议数据单元指令中获取客户端数据;
第二生成模块,用于根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果;
第二发送模块,用于将签名结果发送给第一接收模块;
第二报错模块,用于当第二判断模块判断用户操作验证结果为失败时,报错。
第二判断模块还用于,当第二判断模块判断选项参数中指纹认证标识的值为第一预设值时,判断应用协议数据单元指令的命令头中录入指纹状态标识的值;
提示验证模块,具体用于当第二判断模块判断选项参数中指纹认证标识的值是第一预设值时且判断应用协议数据单元指令的命令头中录入指纹状态标识的值为第三预设值时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;报错模块具体用于,当第二判断模块判断选项参数中指纹认证标识的值是第三预设值时且判断应用协议数据单元指令的命令头中录入指纹状态标识的值为第二预设值时,报错。
第一接收模块接收到的上位机的命令为产生凭据命令。
第一接收模块接收到的上位机的命令为获取断言命令;
第二判断模块还用于,当第二判断模块判断选项参数中指纹认证标识的值为第二预设值时,判断选项参数中按键认证标识的值;
设置模块,还用于当第二判断模块判断选项参数中指纹认证标识的值为第二预设值时且选项参数中按键认证标识的值为第二预设值时,根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识;
获取模块具体用于,从获取断言命令中获取客户端数据;
第二生成模块具体用于,当第二判断模块判断选项参数中指纹认证标识的值为第二预设值时且选项参数中按键认证标识的值为第二预设值时,根据设置模块所设置的认证方式确认标识和获取模块获取的客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果。
指纹管理芯片还包括第一判断模块,第一生成模块,加密模块,第一报错模块,安全环境芯片还包括解密模块;
第二生成模块还用于,当第二判断模块判断选项参数中指纹认证标识的值是第一预设值时,则生成特殊状态码;还用于第二判断模块判断选项参数中指纹认证标识的值是第二预设值时,则生成特殊状态码;
第一发送模块,还用于将特殊状态码发送给第一接收模块;
第一判断模块还用于,判断特殊状态码是否合法;
第一生成模块用于,当第一判断模块判断特殊状态码合法时,生成随机数;
提示验证模块,具体用于当第二判断模块判断选项参数中指纹认证标识的值是第一预设值时且当第一判断模块判断特殊状态码合法时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;当第二判断模块判断选项参数中指纹认证标识的值是第二预设值时,且当第一判断模块判断特殊状态码合法时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
加密模块用于使用随机数和第一会话密钥对用户操作验证结果进行加密,得到加密的用户操作验证结果;
第一发送模块还用于,将加密的用户操作验证结果和随机数发送给第二接收模块;
第一报错模块,用于当第一判断模块判断特殊状态码不合法时,报错;
解密模块,用于使用第二接收模块接收到随机数对接收到的加密的用户操作验证结果进行解密得到用户操作验证结果。
指纹管理芯片还包括第一判断模块,加密模块,第一报错模块,安全环境芯片还包括解密模块;
第二生成模块,还用于当第二判断模块判断选项参数中指纹认证标识的值为第一预设值时,生成随机数和特殊状态码;还用于当第二判断模块判断选项参数中指纹认证标识的值为第二预设值时,生成随机数和特殊状态码;
第一接收模块,还用于接收特殊状态码和随机数;
第一判断模块还用于,判断特殊状态码是否合法;
提示验证模块还用于,当第二判断模块判断选项参数中指纹认证标识的值为第一预设值且第一判断模块判断特殊状态码合法时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;还用于当第二判断模块判断选项参数中指纹认证标识的值为第二预设值且第一判断模块判断特殊状态码合法时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
加密模块,用于使用第一会话密钥和第一接收模块接收到的随机数对用户操作验证结果进行加密,得到加密的用户操作验证结果;
第一发送模块,还用于将加密的用户操作验证结果发送给第二接收模块;
第一报错模块,还用于当第一判断模块判断特殊状态码不合法时,报错;
所述解密模块,用于使用所述第二生成模块生成的随机数对第二接收模块接收到的所述加密的用户操作验证结果进行解密,得到用户操作验证结果。
本发明的有益效果为:本发明提供了一种认证方法及设备,使得认证设备具备多种认证方式,同时还有效的防止了中间人攻击。
附图说明
为了更清楚的说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的一种认证方法的流程图;
图2为本发明实施例2提供的一种认证方法的流程图;
图3为本发明实施例2提供的认证方式确认标识的格式图;
图4为本发明实施例3提供的一种认证方法的流程图;
图5为本发明实施例3提供的一种认证方法中特殊状态码和随机数的另一种生成和验证方式的流程图;
图6为本发明实施例4提供的一种认证方法的流程图;
图7为本发明实施例5提供的一种认证设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本实施例提供了一种认证方法,如图1所示,具体包括如下步骤:
步骤101,认证设备接收上位机的命令;
步骤102,认证设备对上位机的命令中的选项参数进行解析;
步骤103,认证设备判断选项参数中指纹认证标识的值,如果是第一预设值,则执行步骤104;如果是第二预设值,则执行步骤105;
步骤104,认证设备提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果,执行步骤106;
步骤105,认证设备提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,执行步骤106;
步骤106,认证设备对用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错;
步骤107,认证设备根据指纹认证标识的值设置认证方式确认标识,从上位机的命令中获取客户端数据,并根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果;
步骤108,认证设备将签名结果发送给上位机。
在本实施例提供的一种认证方法中,步骤103中当认证设备判断选项参数中指纹认证标识的值为第一预设值时,还包括:认证设备判断上位机的指令的命令头中录入指纹状态标识的值,如果录入指纹状态标识的值为第三预设值,则执行步骤104,如果录入指纹状态标识的值为第四预设值,则报错。
在本实施例提供的一种认证方法中,步骤101中上位机的命令具体为产生凭证命令。
在本实施例提供的一种认证方法中,步骤101中上位机的命令具体为获取断言命令,
步骤103中认证设备判断选项参数中指纹认证标识的值为第二预设值时,还包括:认证设备判断选项参数中按键认证标识的值,如果是第一预设值,执行步骤105,如果是第二预设值,执行步骤107;
当步骤103中认证设备判断选项参数中指纹认证标识的值为第二预设值且选项参数中按键认证标识的值为第二预设值时,步骤107具体为认证设备根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识,从上位机的命令中获取客户端数据,根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果。
在本实施例提供的一种认证方法中,步骤103认证设备判断选项参数中指纹认证标识的值为第一预设值时,步骤107中认证设备根据指纹认证标识的值设置认证方式确认标识具体为:认证设备将认证方式确认标识中指纹认证标识所对应的比特位置位;
步骤103认证设备判断选项参数中指纹认证标识的值为第二预设值时,步骤107中认证设备根据指纹认证标识的值设置认证方式确认标识具体为:认证设备将认证方式确认标识中指纹认证标识所对应的比特位复位。
在本实施例提供的一种认证方法中,当按键认证标识的值为第一预设值时,所步骤107中认证设备根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识具体为:认证设备将认证方式确认标识中指纹认证标识所对应的比特位复位,将认证方式确认标识中按键认证标识所对应的比特位置位;
当按键认证标识的值为第二预设值时,所步骤107中认证设备根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识具体为:认证设备将认证方式确认标识中指纹认证标识所对应的比特位复位,将认证方式确认标识中按键认证标识所对应的比特位复位。
在本实施例提供的一种认证方法中,认证设备包括安全环境芯片和指纹管理芯片,方法中
步骤101具体为指纹管理芯片将接收到的上位机的命令封装成应用协议数据单元指令,发送给安全环境芯片;
步骤102具体为安全环境芯片接收应用协议数据单元指令,并对应用协议数据单元指令中的选项参数进行解析;
步骤103具体为安全环境芯片判断选项参数中指纹认证标识的值,如果是第一预设值,则执行步骤104;如果是第二预设值,则执行步骤105;
步骤104具体为指纹管理芯片提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果,并将用户操作验证结果发送给安全环境芯片,执行步骤106;
步骤105具体为指纹管理芯片提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,并将用户操作验证结果发送给安全环境芯片,执行步骤106;
步骤106具体为安全环境芯片对用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错;
步骤107具体为安全环境芯片根据指纹认证标识的值设置认证方式确认标识,安全环境芯片从应用协议数据单元指令中获取客户端数据,并根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果,并将签名结果发送给指纹管理芯片;
步骤108具体为指纹管理芯片接收签名结果,并将签名结果发送给上位机。
在本实施例提供的一种认证方法中,步骤103中当安全环境芯片判断选项参数中指纹认证标识的值为第一预设值时,还包括:安全环境芯片判断应用协议数据单元指令的命令头中录入指纹状态标识的值,如果录入指纹状态标识的值为第三预设值,则执行步骤104,如果录入指纹状态标识的值为第四预设值,则报错。
在本实施例提供的一种认证方法中,步骤101具体为指纹管理芯片接收到的上位机的命令为产生凭据命令。
在本实施例提供的一种认证方法中,步骤101具体为指纹管理芯片接收到的上位机的命令为获取断言命令;
步骤103安全环境芯片判断选项参数中指纹认证标识的值为第二预设值之后还包括:安全环境芯片判断选项参数中按键认证标识的值,如果是第一预设值,执行步骤105,如果是第二预设值,执行步骤107;
当步骤103中安全环境芯片判断选项参数中指纹认证标识的值为第二预设值时且安全环境芯片判断选项参数中按键认证标识的值为第二预设值时,步骤107具体为,安全环境芯片根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识,安全环境芯片从获取断言命令中获取客户端数据,并根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果。
在本实施例提供的一种认证方法中,步骤103具体为安全环境芯片判断选项参数中指纹认证标识的值,如果是第一预设值,则生成特殊状态码,并将特殊状态码发送给指纹管理芯片,执行步骤104;如果是第二预设值,则生成特殊状态码,并将特殊状态码发送给指纹管理芯片,则执行步骤105;
步骤104具体为指纹管理芯片接收特殊状态码并判断特殊状态码是否合法,如果是,指纹管理芯片生成随机数,并提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果,指纹管理芯片使用随机数和第一会话密钥对用户操作验证结果进行加密,得到加密的用户操作验证结果,并将加密的用户操作验证结果和随机数发送给安全环境芯片,执行步骤106;如果否,则报错;
步骤105具体为指纹管理芯片接收特殊状态码并判断特殊状态码是否合法,如果是,指纹管理芯片生成随机数,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,指纹管理芯片使用随机数和第一会话密钥对用户操作验证结果进行加密,得到加密的用户操作验证结果,并将加密的用户操作验证结果和随机数发送给安全环境芯片,执行步骤106;如果否,则报错;
步骤106具体为安全环境芯片使用随机数和第二会话密钥对接收到的加密的用户操作验证结果进行解密,对用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错。
在本实施例提供的一种认证方法中,步骤103具体为安全环境芯片判断选项参数中指纹认证标识的值,如果是第一预设值,则生成随机数和特殊状态码,并将随机数和特殊状态码送给指纹管理芯片,执行步骤104;如果是第二预设值,则生成随机数和特殊状态码,并将随机数和特殊状态码送给指纹管理芯片,则执行步骤105;
步骤104具体为指纹管理芯片接收随机数和特殊状态码,并判断特殊状态码是否合法,如果是,指纹管理芯片并提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果,指纹管理芯片使用随机数和第一会话密钥对用户操作验证结果进行加密,得到加密的用户操作验证结果,并将加密的用户操作验证结果发送给安全环境芯片,执行步骤106;如果否,则报错;
步骤105具体为指纹管理芯片接收特殊状态码和随机数并判断特殊状态码是否合法,如果是,指纹管理芯片提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,指纹管理芯片使用随机数和第一会话密钥对用户操作验证结果进行加密,得到加密的用户操作验证结果,并将加密的用户操作验证结果发送给安全环境芯片,执行步骤106;如果否,则报错;
步骤106具体为安全环境芯片使用随机数和第二会话密钥对接收到的加密的用户操作验证结果进行解密,对用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错。
实施例2
本实施例提供了一种认证方法,如图2所示,具体包括如下步骤:
步骤201,认证设备上电初始化;
具体的,认证设备可以为USB接口的认证设备,还可以为BLE(蓝牙低能耗)接口的认证设备。
步骤202,认证设备接收上位机的命令;
具体的,上位机的命令为产生凭证命令或者获取断言命令。
具体的,产生凭据命令包括命令头部分8010010000 00AD和数据域部分
01A5015820687134968222EC17202E42505F8ED2B16AE22F16BB05B88C25DB9E602645F14102A2626964666368656E7169646E616D65666368656E716903A3626964582001B65EBF914724C5FC50BE4E9FF2E61787FE97F8F0B1544344316ECD24925F01646E616D656E6368656E7169403136332E636F6D6B646973706C61794E616D65666368656E71690481A263616C672664747970656A7075626C69632D6B657907A2627576F562726BF5;
其中,数据域的第一个字节表示命令的类型,01表示此命令为产生凭据命令。
具体的,获取断言命令包括数据头8010010000 0033和数据域部分
02A301666368656E7169025820687134968222EC17202E42505F8ED2B16AE22F16BB05B88C25DB9E602645F14105A2627576F4627570F5;
数据域的第一个字节表示命令的类型,02表示此命令为产生凭据命令。
步骤203,认证设备对上位机的命令中的选项参数进行解析;
具体的,在本实施例中选项参数为options。
当上位机的命令为产生凭据命令时,认证设备对产生凭据命令中的参数7进行解析。
具体的,认证设备从产生凭据命令的数据域部分获取关键词07,获取关键词07之后的第一个字节A2,将其高三位101作为参数7的类型标识,根据参数7的类型标识判断参数7的类型为MAP类型,则将其低五位00001作为参数7中的成员个数,并将关键词07之后的第二个字节62的高三位011作为待获取数据的类型标识,根据关键词07之后的第二个字节62的低五位00010获取待获取数据的长度为2个字节,判断这两个字节为7576,则继续获取待获取数据之后的一个字节的数据。
当上位机的命令为获取断言命令时,认证设备对获取断言命令中的参数5进行解析。
具体的,认证设备从获取断言命令中获取关键词05获取关键词05之后的第一个字节A1,将其高三位101作为参数5的类型标识,根据参数5的类型标识判断参数5的类型为MAP类型,则将其低五位00001作为参数5中的成员个数,并将关键词05之后的第二个字节62的高三位011作为待获取数据的类型标识,根据关键词05之后的第二个字节62的低五位00010获取待获取数据的长度为2个字节,判断这两个字节为7576,则继续获取待获取数据之后的一个字节的数据。
步骤204,认证设备判断选项参数中指纹认证标识的值,如果是第一预设值,则执行步骤205;如果是第二预设值,则执行步骤206;
具体的,在本实施例中,指纹认证标识为uv,第一预设值为true,第二预设值为false。
本步骤具体为认证设备判断options中uv的值,如果参数options中uv的值为true,则执行步骤205;如果参数options中uv的值为false,,执行步骤206;
具体的,本步骤为,在本步骤中,认证设备判断待获取数据之后的一个字节的数据是否是与true对应的F5或与false对应的F4;即
认证设备判断步骤203中获取的7576之后的数据之后的一个字节的数据是为F5还是F4,如果是F5,则参数options中uv的值为true,则执行步骤205;如果是F4,参数options中uv的值为false,执行步骤206。
在本步骤中认证设备根据选项参数options中指纹认证标识uv的值来判断是否需要验证指纹,如果指纹认证标识uv为第一预设值true,则表示需要验证指纹,如果指纹认证标识uv为第二预设值false则表示不需要验证指纹。
步骤205,认证设备判断上位机的命令中命令头中录入指纹状态标识的值,如果录入指纹状态标识的值为第三预设值,则执行步骤206,如果录入指纹状态标识的值为第四预设值,则报错。
具体的,在实施例中,录入指纹状态标识为p1,第三预设值为01,第四预设值为00。
本步骤具体为认证设备判断上位机的命令中命令头中p1的值,如果p1的值为01,执行步骤206,如果p1的值为00,则报错;
在本步骤中,认证设备根据接收到上位机的命令中命令头中录入指纹状态标识p1的值判断是否已经录入指纹,即,录入指纹状态标识p1的值表示指纹的录入状态。认证设备判断录入指纹状态标识p1的值,如果p1=00,则表示未录入指纹,报错,如果p1=01,则表示已经录入指纹,执行步骤206;
在本实施例中,p1的值并未做任何特定的限定,也可以用其他的值来表示是否已经录入指纹。
具体的,认证设备判断上位机命令中,命令头中第三字节的值。例如,如果上位机命令为产生凭据命令,则判断8010010000 00AD中第三字节的值,判断为01,则表示已经录入指纹,执行步骤206。
如果上位机命令为获取断言命令,则判断8010010000 0033中第三字节的值,判断为01,则表示已经录入指纹,执行步骤206。
步骤206,认证设备提示用户操作,对用户的操作进行验证,得到用户操作验证结果。
在本实施例中,当步骤205中认证设备判断选项参数options中指纹认证标识uv的值为第一预设值true时,步骤206具体为认证设备提示用户输入指纹,并对所述用户输入的指纹进行验证得到用户操作验证结果;如果用户的指纹验证成功,则用户操作验证结果为成功,如果用户指纹验证结果失败,则用户操作验证结果为失败。
当步骤205中认证设备判断选项参数options中指纹认证标识uv的值为false时,则步骤206具体为认证设备提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果。
具体的,如果用户按下的按键验证成功,则用户操作验证结果为成功,如果用户按下的按键验证失败,则用户操作验证结果为失败。
具体的,在本实施例中,当步骤205中认证设备判断选项参数options中指纹认证标识uv的值为false时,选项参数options中按键认证标识up的值默认为第一预设值true。
步骤207,认证设备对用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤208,如果用户操作验证结果为失败,则报错;
步骤208,认证设备执行签名操作,得到签名结果;
具体的,在本步骤中,认证设备根据选项参数中指纹认证标识和按键认证标识设置认证方式确认标识的值,并上位机的命令中获取客户端数据,根据认证方式确认标识的值和客户端数据生成待签名数据,使用自身生成的密钥对待签名数据进行签名,生成签名结果。
在本实施中,认证方式确认标识为flag,flag的格式如图3所示,其中包括指纹认证标识uv所对应的比特位和按键认证标识up所对应的比特位。
具体的,认证方式确认标识flag中指纹认证标识uv和按键认证标识up所对应的比特位的值是根据指纹认证标识uv和按键认证标识up的值来设定的,例如,如果指纹认证标识uv的值为true,则认证方式确认标识flag中指纹认证标识uv所对应的比特位设为1,如果指纹认证标识uv所对应的比特位的值为false,则认证方式确认标识flag中指纹认证标识uv所对应的比特位设置为0;如果按键认证标识up的值为true,则认证方式确认标识flag中按键认证标识up所对应的比特位设为1,如果按键认证标识up所对应的比特位的值为false,则认证方式确认标识flag中按键认证标识up所对应的比特位设置为0。
具体的,认证设备根据选项参数options中指纹认证标识uv和按键认证标识up的值设置认证方式确认标识flag的值,并从上位机的命令中获取所述客户端数据,根据flag的值和客户端数据生成待签名数据,使用自身生成的密钥对待签名数据进行签名,生成签名结果。
具体的,上位机的命令为产生凭证命令时,签名结果为:
3045022100B7B13D6506319E17EC4A4E9CD5D4A614D9C91A85377898B272CD83A1687BF88A02200F625891FC87E50E01A68F2BAE83B422DEE8623176920CBF79267753D1A56AAC
当上位机的命令为或者获取断言命令时,签名结果为:
304502201C5EE6D7644FA05449B397FB418755CF1652C05041F230FE64292A4E645C64ED022100C39D530AAD0B30F31B6EC59FF44EB720D91EE4D697856E6DF65066A9C19C7522。
步骤209,认证设备将得到的签名结果发送给上位机。
在本实例的一种认证的方法中还可以包括,步骤204中认证设备判断选项参数中指纹认证标识的值为第二预设值时,认证设备判断选项参数中按键认证标识的值,如果选项参数中按键认证标识的值为第一预设值,则执行步骤207,如果选项参数中按键认证标识的值为第二预设值,则执行步骤209。
具体的,步骤205中,如果认证设备判断选项参数options中指纹认证标识uv的值为false,则认证设备判断选项参数options中按键认证标识up的值,如果up=true,执行步骤207,如果up=false,执行步骤209;相应的,步骤207具体为认证设备提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果。
实施例3
本实施例提供了一种认证方法,如图4所示,具体包括如下步骤:
步骤301,指纹管理芯片上电初始化;
具体的,指纹管理芯片可以为USB接口的指纹管理芯片,还可以为BLE(蓝牙低耗)接口的指纹管理芯片。
步骤302,指纹管理芯片与安全环境芯片协商得到会话密钥;
在本步骤中,会话密钥的获取还可以通过其他方式,例如会话密钥还可以分别预先设置在指纹管理芯片与安全环境芯片中。
在本实施例中,指纹管理芯片和安全环境芯片可以包括在认证设备中。
步骤303,指纹管理芯片等待接收上位机的命令;
步骤304,指纹管理芯片将接收到的上位机的命令封装成APDU(应用协议单元)指令;
步骤305,指纹管理芯片将APDU指令发送给安全环境芯片;
步骤306,安全环境芯片接收指纹管理芯片发送的APDU指令;
步骤307,安全环境芯片对APDU指令中的选项参数options进行解析;
步骤308,安全环境芯片判断选项参数options中指纹认证标识uv的值,如果选项参数options中指纹认证标识uv=true,则执行步骤309;如果选项参数options中指纹认证标识uv=false,执行步骤310;
具体的,在本步骤中安全环境芯片根据选项参数options中指纹认证标识uv的值来判断是否需要验证指纹,如果指纹认证标识uv=true,则表示需要验证指纹,如果指纹认证标识uv=false则表示不需要验证指纹。
步骤309,安全环境芯片判断APDU命令命令头中指纹录入状态标识p1的值,如果指纹录入状态标识p1=01,执行步骤310,如果指纹录入状态标识p1=00,则报错;
在本实施例中,安全环境芯片根据接收到的APDU指令中命令头中指纹录入状态标识p1的值判断是否已经录入指纹,即,APDU指令中命令头中指纹录入状态标识p1的值表示指纹的录入状态。
本步骤具体为:安全环境芯片判断命令头中指纹录入状态标识p1的值,如果指纹录入状态标识p1=00,则表示未录入指纹,报错,如果指纹录入状态标识p1=01,则表示已经录入指纹,执行步骤309;
在本实施例中,指纹录入状态标识p1的值并未做任何特定的限定,也可以用其他的值来表示是否已经录入指纹。
步骤310,安全环境芯片生成随机数和特殊状态码,保存随机数;
步骤311,安全环境芯片将随机数和特殊状态码发送给指纹管理芯片;
步骤312,指纹管理芯片接收安全环境芯片发送的随机数和特殊状态码;
步骤313,指纹管理芯片判断是否存在特殊状态码,如果是,执行步骤314,如果否,报错。
步骤314,指纹管理芯片提示用户操作,并对用户操作进行验证获取用户操作验证结果。
在本实施例中,当步骤307中安全环境芯片判断选项参数options中指纹认证标识uv的值为true时,步骤314中用户操作为用户输入指纹,用户操作验证结果为用户指纹验证结果;如果用户的指纹验证成功,则用户操作验证结果为成功,如果用户指纹验证结果失败,则用户操作验证结果为失败。
当步骤307中安全环境芯片判断选项参数options中指纹认证标识uv的值为false时,步骤314具体为指纹管理芯片提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果。
具体的,如果对用户按下的按键验证成功,则用户操作验证结果为成功,如果对用户按下的按键验证失败,则用户操作验证结果为失败。
步骤315,指纹管理芯片使用会话密钥和接收到的随机数对用户操作验证结果进行加密;
步骤316,指纹管理芯片将加密的用户操作验证结果发送给安全环境芯片;
步骤317,安全环境芯片接收加密的用户操作验证结果,使用保存的随机数和会话密钥对接收到的加密的用户操作验证结果进行解密;
步骤318,安全环境芯片对解密的用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤319,如果用户操作验证结果为失败,则报错;
步骤319,安全环境芯片执行签名操作,获取签名结果;
具体的,在本步骤中,安全环境芯片根据选项参数中指纹认证标识和按键认证标识设置认证方式确认标识的值,从APDU命令中获取客户端数据,根据认证方式确认标识的值和客户端数据生成待签名数据,使用自身生成的密钥对待签名数据进行签名,生成签名结果。
在本实施中,认证方式确认标识为flag,flag的格式如图3所示,其中包括指纹认证标识uv和按键认证标识up所对应的比特位。
具体的,认证方式确认标识flag中指纹认证标识uv和按键认证标识up所对应的比特位的值是根据指纹认证标识uv和按键认证标识up的值来设定的,例如,如果指纹认证标识uv的值为true,则认证方式确认标识flag中指纹认证标识uv所对应的比特位设为1,如果指纹认证标识uv所对应的比特位的值为false,则认证方式确认标识flag中指纹认证标识uv所对应的比特位设置为0;如果按键认证标识up的值为true,则认证方式确认标识flag中按键认证标识up所对应的比特位设为1,如果按键认证标识up所对应的比特位的值为false,则认证方式确认标识flag中按键认证标识up所对应的比特位设置为0。
具体的,安全环境芯片根据选项参数options中指纹认证标识uv和按键认证标识up的值设置认证方式确认标识flag的值,根据flag的值生成待签名数据,使用自身生成的私钥对待签名数据进行签名,生成签名结果。
步骤320,安全环境芯片将签名结果发送给指纹管理芯片;
步骤321,指纹管理芯片将接收到的签名结果发送给上位机。
如图5所示,在本实施例中,步骤310-步骤317还可以被替换为如下步骤:
步骤310',安全环境芯片生成特殊状态码;
步骤311',安全环境芯片将特殊状态码发送给指纹管理芯片;
步骤312',指纹管理芯片接收安全环境芯片发送的特殊状态码;
步骤313',指纹管理芯片判断特殊状态码是否合法,如果合法,执行步骤314,如果不合法,报错。
步骤314',指纹管理芯片提示用户操作,获取用户操作验证结果;
步骤315',指纹管理芯片生成随机数;
步骤316',指纹管理芯片使用会话密钥和生成的随机数对用户操作验证结果进行加密;
步骤317',指纹管理芯片将加密的用户操作验证结果和生成的随机数发送给安全环境芯片;
步骤318',安全环境芯片接收指纹管理芯片发送的加密的用户操作验证结果和随机数,使用接收到的随机数和会话密钥对接收到的加密的用户操作验证结果进行解密。
在本实施例中,当步骤308中安全环境芯片判断参数options中的指纹认证标识uv的值为false之后,本方法中还可以包括:安全环境芯片判断参数options中按键认证标识up的值,如果按键认证标识up=true,执行步骤310,如果按键认证标识up=false,执行步骤319;相应的,步骤314中用户操作为用户输入指纹,用户操作验证结果为用户指纹验证结果。
实施例4
本实施例提供了一种认证的方法,如图6所示,具体包括如下步骤:
步骤401,安全环境芯片与指纹管理芯片进行协商,获取会话密钥;
具体的,协商的会话密钥为:EFC566E1D1D14B13AC5ED3F713EC9632。
在本实施例中,安全环境芯片和指纹管理芯片可以包括在认证设备中。
步骤402,安全环境芯片接收指纹管理芯片发送的APDU指令;
步骤403,安全环境芯片判断APDU指令的类型;当APDU指令为产生凭证命令时,执行步骤404;当APDU指令为获取断言命令时,执行步骤415;
具体的,指纹管理芯片可以为USB接口的指纹管理芯片,还可以为BLE接口的指纹管理芯片。
在本实施例中,安全环境芯片根据接收到的APDU指令中数据域部分的第一个字节来判断APDU的指令类型,当数据域部分第一个字节为01时,此APDU指令为产生凭证命令,执行步骤404,当数据域部分第一个字节为02时,APDU指令为断言命令,执行步骤415;
步骤404,安全环境芯片解析产生凭证命令中的参数7,并判断参数7中uv的值,如果uv=true,则执行步骤405;
如果uv=false,则执行步骤411;
具体的,安全环境芯片获取产生凭据命令中数据域部分的关键词07,将其作为第参数7的关键词,获取关键词07之后的第一个字节,将其高三位作为参数7的类型标识,根据参数7的类型标识判断参数7的类型是否为Map类型,如果否,则向上位机报错,返回步骤403;如果是,则将其低五位作为参数7中的成员个数,并将关键词07之后的第二个字节的高三位作为待获取数据的类型标识,根据关键词07之后的第二个字节的低五位获取待获取数据的长度,根据待获取数据的长度在关键词07之后的第二个字节之后的数据中获取待获取数据,判断获取到的待获取数据是否为与uv对应的7576,如果否,则向上位机报错;如果是,则继续获取待获取数据之后的一个字节的数据,判断带获取数据之后的一个字节的数据是否是与true对应的F5或与false对应的F4,如果是F5,则执行步骤405;如果是F4,则执行步骤410。
例如:安全环境芯片接收到指纹管理芯片发送的产生凭据命令,产生凭据命令包括命令头部分8010010000 00AD和数据域部分
01A5015820687134968222EC17202E42505F8ED2B16AE22F16BB05B88C25DB9E602645F14102A2626964666368656E7169646E616D65666368656E716903A3626964582001B65EBF914724C5FC50BE4E9FF2E61787FE97F8F0B1544344316ECD24925F01646E616D656E6368656E7169403136332E636F6D6B646973706C61794E616D65666368656E71690481A263616C672664747970656A7075626C69632D6B657907A2627576F562726BF5;安全环境芯片从产生凭据命令的数据域部分获取关键词07,获取关键词07之后的第一个字节A2,将其高三位101作为参数7的类型标识,根据参数7的类型标识判断参数7的类型为MAP类型,则将其低五位00001作为参数7中的成员个数,并将关键词07之后的第二个字节62的高三位011作为待获取数据的类型标识,根据关键词07之后的第二个字节62的低五位00010获取待获取数据的长度为2个字节,判断这两个字节为7576,则继续获取待获取数据之后的一个字节的数据F5,则执行步骤405。
步骤405,安全环境芯片判断p1的值,
如果p1=1,则执行步骤406,
如果p1=0,则报错;
具体的,安全环境芯片判断命令头部分的第三字节的值,如果第三字节的值为01,则执行步骤406,如果第三字节的值为00,则报错。
在本实施例中,安全环境芯片判断接收到的产生凭据命令中命令头部分8010010000 00A9中第三字节的值为01,则执行步骤406。
步骤406,安全环境芯片生成第一随机数和第一特殊状态码,保存第一随机数,并将第一随机数和第一特殊状态码发送给指纹管理芯片;
具体的,安全环境芯片生成的第一随机数为
B57CD1951B370DAD7794044101E25102,第一特殊状态码为F2。
步骤407,安全环境芯片接收指纹管理芯片发送的使用会话密钥和第一随机数加密的用户指纹验证结果;
步骤408,安全环境芯片使用保存的第一随机数和会话密钥对加密的用户指纹验证结果进行解密;
步骤409,安全环境芯片对解密的验证结果进行判断,如果验证结果为成功,则执行步骤411,如果验证结果为失败,则报错;
步骤410,安全环境芯片执行第一签名操作,并将第一签名结果发送给指纹管理芯片;结束。
关于本步骤的第一签名操作请参见实施例3的步骤319部分,本部分不在赘述。
步骤411,安全环境芯片生成第二随机数和第二特殊状态码,保存第二随机数,并将第二随机数和第二特殊状态码发送给指纹管理芯片;
步骤412,安全环境芯片接收指纹管理芯片发送的使用会话密钥和第二随机数加密的用户按键操作结果;
步骤413,安全环境芯片使用保存的第二随机数和会话密钥对加密的用户按键操作结果进行解密,
步骤414,安全环境芯片对解密的用户按键操作结果进行判断,如果收到用户的按键操作,执行步骤410;如果未收到用户确认按键操作,报错;
步骤415,安全环境芯片解析获取断言命令中的参数5,并判断参数5中uv的值,如果uv=true,则执行步骤416;
如果uv=false,则执行步骤422;
具体的,安全环境芯片获取产生凭据命令中的关键词05,将其作为第参数5的关键词,获取关键词05之后的第一个字节,将其高三位作为参数5的类型标识,根据参数5的类型标识判断参数5的类型是否为Map类型,如果否,则向上位机报错,返回步骤403;如果是,则将其低五位作为参数7中的成员个数,并将关键词05之后的第二个字节的高三位作为待获取数据的类型标识,根据关键词05之后的第二个字节的低五位获取待获取数据的长度,根据待获取数据的长度在关键词07之后的第二个字节之后的数据中获取待获取数据,判断获取到的待获取数据是否为与uv对应的7576,如果否,则向上位机报错,返回步骤403;如果是,则继续获取待获取数据之后的一个字节的数据,判断待获取数据之后的一个字节的数据是否是与true对应的F5或与false对应的F4,如果F5,则执行步骤416;如果是F4,执行步骤422。
例如:安全环境芯片获取断言命令8010010000 0033
02A301666368656E7169025820687134968222EC17202E42505F8ED2B16AE22F16BB05B88C25DB9E602645F14105A1627576F5中获取关键词05获取关键词05之后的第一个字节A1,将其高三位101作为参数5的类型标识,根据参数5的类型标识判断参数5的类型为MAP类型,则将其低五位00001作为参数5中的成员个数,并将关键词05之后的第二个字节62的高三位011作为待获取数据的类型标识,根据关键词05之后的第二个字节62的低五位00010获取待获取数据的长度为2个字节,判断这两个字节为7576,则继续获取待获取数据之后的一个字节的数据F5,则执行步骤416。
步骤416,安全环境芯片判断p1的值,
如果p1=1,则执行步骤417,
如果p1=0,则报错;
具体的,安全环境芯片判断命令头之后的第三字节的值,如果第三字节的值为01,则执行步骤414,如果第三字节的值为00,则报错。
步骤417,安全环境芯片生成第三随机数和第三特殊状态码,保存第三随机数,并将第三随机数和第三特殊状态码发送给指纹管理芯片;
具体的,第三随机数为D7FE60FA62BD176C5986382C0E6A6E47,第三特殊状态码为F2。
步骤418,安全环境芯片接收指纹管理芯片发送的使用会话密钥和第三随机数加密的用户指纹验证结果;
步骤419,安全环境芯片使用保存的第三随机数和会话密钥对加密的用户指纹验证结果进行解密;
步骤420,安全环境芯片对解密的用户指纹验证结果进行判断,如果为成功,则执行步骤421,如果为失败,则报错;
步骤421,安全环境芯片执行第二签名操作,并将第二签名结果发送给指纹管理芯片;结束。
关于本步骤的第二签名操作请参见实施例3的步骤319部分,本部分不在赘述。
步骤422,安全环境芯片判断参数5中up的值,如果up=true,则执行步骤423,如果up=false,执行步骤421;
具体的,安全环境芯片将F4之后的第一个字节的高三位作为待获取数据的类型标识,根据F4之后第一个字节的低五位获取待获取数据的长度,根据待获取数据的长度在F4之后第一个字节之后的数据中获取待获取数据,判断获取到的待获取数据是否为与up对应的7570,如果否,则向上位机报错,返回步骤403;如果是,则继续获取待获取数据之后的一个字节的数据,判断待获取数据之后的一个字节的数据是否是与true对应的F5或与false对应的F4,如果F5,则执行步骤423;如果是F4,执行步骤421。
例如,在步骤415中,如果安全环境芯片获取断言命令8010010000 0033 02A301666368656E7169025820687134968222EC17202E42505F8ED2B16AE22F16BB05B88C25DB9E602645F14105A2627576F4627570F5,通过对此命令进行解析后获取的与uv对应的7576的值为与false对应的F4,则在步骤422中安全环境芯片执行如下操作:
安全环境芯片根据F4之后第一个字节62的高三位011作为待获取数据的类型标识,根据F4之后第一个字节62的低五位00010获取待获取数据的长度为2个字节,判断这两个字节为7570,则继续获取待获取数据之后的一个字节的数据F5,执行步骤423。
步骤423,安全环境芯片生成第四随机数和第四特殊状态码,保存第四随机数,并将第四随机数和第四特殊状态码发送给指纹管理芯片;
步骤424,安全环境芯片接收指纹管理芯片发送的使用会话密钥和第四随机数加密的用户按键操作结果;
步骤425,安全环境芯片使用保存的第四随机数和会话密钥对加密的用户按键操作结果进行解密;
步骤426,安全环境芯片对解密的用户按键操作结果进行判断,如果收到用户确认按键操作,执行步骤421,如果未收到用户确认按键操作,报错。
实施例5
本实施例提供了一种认证设备,如图7所示,认证设备包括:
第一接收模块701,用于接收上位机的命令;
解析模块702,用于对上位机的命令中的选项参数进行解析;
第二判断模块703,用于判断选项参数中指纹认证标识的值;还用于判断提示验证模块704得到的用户操作验证结果为成功或者失败;
提示验证模块704,用于当第二判断模块703判断到选项参数中指纹认证标识的值为第一预设值时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;还用于当第二判断模块703判断到选项参数中指纹认证标识的值为第二预设值时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
第二报错模块705,用于当第二判断模块703判断用户操作验证结果为失败时报错;
设置模块706,用于根据指纹认证标识的值设置认证方式确认标识;
获取模块707,从上位机的命令中获取客户端数据;
第二生成模块708,用于根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果;
第一发送模块709,用于将第二生成模块708生成的签名结果发送给上位机。
在本实施例中,第二判断模块703,还用于当第二判断模块703判断到选项参数中指纹认证标识的值为第一预设值时,判断上位机的指令的命令头中录入指纹状态标识的值;
提示验证模块704,还用于当第二判断模块703判断到录入指纹状态标识的值为第三预设值时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;
报错模块,还用于当第二判断模块703判断到上位机的指令的命令头中录入指纹状态标识的值为第四预设值时,报错。
在本实施例中,上位机的命令为产生凭据命令。
在本实施例中,上位机的命令具体还可以为获取断言命令,认证设备还包括:第二判断模块703,用于当第二判断模块703判断选项参数中指纹认证标识的值为第二预设值时,判断选项参数中按键认证标识的值;
提示验证模块704具体用于,当第二判断模块703判断选项参数中指纹认证标识的值为第二预设值且选项参数中按键认证标识的值为第一预设值时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
设置模块706,还用于当第二判断模块703判断选项参数中指纹认证标识的值为第二预设值且选项参数中按键认证标识的值为第二预设值时,根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识;
第二生成模块708,具体用于根据设置模块706设置的认证方式确认标识和获取模块707获取的客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果。
在本实施例中,设置模块706,具体用于当第二判断模块703判断选项参数中指纹认证标识的值为第一预设值时,将认证方式确认标识中指纹认证标识所对应的比特位置位;当第二判断模块703判断选项参数中指纹认证标识的值为第二预设值时,将认证方式确认标识中指纹认证标识所对应的比特位复位。
在本实施例中,设置模块706,还用于当第二判断模块703判断选项参数中指纹认证标识的值为第二预设值且选项参数中按键认证标识的值为第二预设值时,用于将认证方式确认标识中指纹认证标识所对应的比特位复位,将认证方式确认标识中按键认证标识所对应的比特位复位。
在本实施例中,认证设备包括指纹管理芯片和安全环境芯片,指纹管理芯片包括:第一接收模块701,封装模块,第一发送模块709,提示验证模块704;安全环境芯片包括:第二接收模块,解析模块702,第二判断模块703,获取模块707,第二生成模块708,设置模块706,第二发送模块,报错模块;
第一接收模块701,用于接收上位机的命令;还用于接收第二发送模块发送的签名结果;
封装模块,用于将第一接收模块701接收到的上位机的命令封装成应用协议数据单元指令;
第一发送模块709,用于将应用协议数据单元指令发送给第二接收模块;还用于将提示验证模块704得到用户操作验证结果发送给第二接收模块;还用于将第一接收模块701接收到的第二发送模块发送的签名结果发送给上位机;
第二接收模块用于接收应用协议数据单元指令;还用于第一发送模块709发送的用户操作验证结果;
解析模块702用于对应用协议数据单元指令中的选项参数进行解析;
第二判断模块703用于判断选项参数中指纹认证标识的值,还用于判断用户操作验证结果;
提示验证模块704,用于当第二判断模块703判断选项参数中指纹认证标识的值是第一预设值时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;还用于当第二判断模块703判断选项参数中指纹认证标识的值是第二预设值时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
设置模块706,用于当第二判断模块703判断用户操作验证结果为成功时,根据指纹认证标识的值设置认证方式确认标识;
获取模块707,用于从应用协议数据单元指令中获取客户端数据;
第二生成模块708,用于根据认证方式确认标识和客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果;
第二发送模块,用于将签名结果发送给第一接收模块701;
第二报错模块705,用于当第二判断模块703判断用户操作验证结果为失败时,报错。
在本实施例中,第二判断模块703还用于,当第二判断模块703判断选项参数中指纹认证标识的值为第一预设值时,判断应用协议数据单元指令的命令头中录入指纹状态标识的值;
提示验证模块704,具体用于当第二判断模块703判断选项参数中指纹认证标识的值是第一预设值时且判断应用协议数据单元指令的命令头中录入指纹状态标识的值为第三预设值时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;报错模块具体用于,当第二判断模块703判断选项参数中指纹认证标识的值是第三预设值时且判断应用协议数据单元指令的命令头中录入指纹状态标识的值为第二预设值时,报错。
在本实施例中,第一接收模块701接收到的上位机的命令为产生凭据命令。
在本实施例中,第一接收模块701接收到的上位机的命令为获取断言命令;
第二判断模块703还用于,当第二判断模块703判断选项参数中指纹认证标识的值为第二预设值时,判断选项参数中按键认证标识的值;
设置模块706,还用于当第二判断模块703判断选项参数中指纹认证标识的值为第二预设值时且选项参数中按键认证标识的值为第二预设值时,根据指纹认证标识的值和按键认证标识的值设置认证方式确认标识;
获取模块707具体用于,从获取断言命令中获取客户端数据;
第二生成模块708具体用于,当第二判断模块703判断选项参数中指纹认证标识的值为第二预设值时且选项参数中按键认证标识的值为第二预设值时,根据设置模块706所设置的认证方式确认标识和获取模块707获取的客户端数据生成待签名数据,对待签名数据执行签名操作,生成签名结果。
在本实施例中,指纹管理芯片还包括第一判断模块,第一生成模块,加密模块,第一报错模块,安全环境芯片还包括解密模块;
第二生成模块708还用于,当第二判断模块703判断选项参数中指纹认证标识的值是第一预设值时,则生成特殊状态码;还用于第二判断模块703判断选项参数中指纹认证标识的值是第二预设值时,则生成特殊状态码;
第二发送模块,还用于将特殊状态码发送给第一接收模块701;
第一判断模块还用于,判断特殊状态码是否合法;
第一生成模块用于,当第一判断模块判断特殊状态码合法时,生成随机数;
提示验证模块704,具体用于当第二判断模块703判断选项参数中指纹认证标识的值是第一预设值时且当第一判断模块判断特殊状态码合法时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;当第二判断模块703判断选项参数中指纹认证标识的值是第二预设值时,且当第一判断模块判断特殊状态码合法时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
加密模块用于使用随机数和第一会话密钥对用户操作验证结果进行加密,得到加密的用户操作验证结果;
第一发送模块709还用于,将加密的用户操作验证结果和随机数发送给第二接收模块;
第一报错模块,用于当第一判断模块判断特殊状态码不合法时,报错;
解密模块,用于使用第二接收模块接收到随机数对接收到的加密的用户操作验证结果进行解密得到用户操作验证结果。
在本实施例中,指纹管理芯片还包括第一判断模块,加密模块,第一报错模块,安全环境芯片还包括解密模块;
第二生成模块708,还用于当第二判断模块703判断选项参数中指纹认证标识的值为第一预设值时,生成随机数和特殊状态码;还用于当第二判断模块703判断选项参数中指纹认证标识的值为第二预设值时,生成随机数和特殊状态码;
第二发送模块,还用于将随机数和特殊状态码发送给所述第一接收模块;
第一接收模块701,还用于接收特殊状态码和随机数;
第一判断模块还用于,判断特殊状态码是否合法;
提示验证模块704还用于,当第二判断模块703判断选项参数中指纹认证标识的值为第一预设值且第一判断模块判断特殊状态码合法时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;还用于当第二判断模块703判断选项参数中指纹认证标识的值为第二预设值且第一判断模块判断特殊状态码合法时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
加密模块,用于使用第一会话密钥和第一接收模块701接收到的随机数对用户操作验证结果进行加密,得到加密的用户操作验证结果;
第一发送模块709,还用于将加密的用户操作验证结果发送给第二接收模块,
第一报错模块,还用于当第一判断模块判断特殊状态码不合法时,报错;
解密模块,用于使用第二生成模块708生成的随机数对第二接收模块接收到的加密的用户操作验证结果进行解密,得到用户操作验证结果。
以上所述,仅为本发明较佳的具体实施方法,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (24)

1.一种认证方法,其特征在于,所述认证方法包括以下步骤:
步骤101,认证设备接收上位机的命令;
步骤102,所述认证设备对所述上位机的命令中的选项参数进行解析;
步骤103,所述认证设备判断所述选项参数中指纹认证标识的值,如果是第一预设值,则执行步骤104;如果是第二预设值,则执行步骤105;
步骤104,所述认证设备提示用户输入指纹,并对所述用户输入的指纹进行验证得到用户操作验证结果,执行步骤106;
步骤105,所述认证设备提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,执行步骤106;
步骤106,所述认证设备对所述用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错;
步骤107,所述认证设备根据所述指纹认证标识的值设置认证方式确认标识,从所述上位机的命令中获取客户端数据,并根据所述认证方式确认标识和所述客户端数据生成待签名数据,对所述待签名数据执行签名操作,生成签名结果;
步骤108,所述认证设备将所述签名结果发送给所述上位机。
2.如权利要求1所述的方法,其特征在于,步骤103中当所述认证设备判断所述选项参数中指纹认证标识的值为第一预设值时,还包括:所述认证设备判断所述上位机的指令的命令头中录入指纹状态标识的值,如果所述录入指纹状态标识的值为第三预设值,则执行步骤104,如果所述录入指纹状态标识的值为第四预设值,则报错。
3.如权利要求1或2所述的方法,其特征在于,所述步骤101中所述上位机的命令具体为产生凭证命令。
4.如权利要求1所述的方法,其特征在于,所述步骤101中所述上位机的命令具体为获取断言命令,
所述步骤103中所述认证设备判断所述选项参数中指纹认证标识的值为第二预设值时,还包括:所述认证设备判断所述选项参数中按键认证标识的值,如果是所述第一预设值,执行步骤105,如果是所述第二预设值,执行步骤107;
当所述步骤103中所述认证设备判断所述选项参数中指纹认证标识的值为第二预设值且所述选项参数中按键认证标识的值为所述第二预设值时,所述步骤107具体为所述认证设备根据所述指纹认证标识的值和所述按键认证标识的值设置所述认证方式确认标识,从所述上位机的命令中获取客户端数据,根据所述认证方式确认标识和所述客户端数据生成待签名数据,对所述待签名数据执行签名操作,生成签名结果。
5.如权利要求1所述的方法,其特征在于,所述步骤103所述认证设备判断所述选项参数中指纹认证标识的值为所述第一预设值时,步骤107中所述认证设备根据所述指纹认证标识的值设置认证方式确认标识具体为:所述认证设备将所述认证方式确认标识中所述指纹认证标识所对应的比特位置位;
所述步骤103所述认证设备判断所述选项参数中指纹认证标识的值为所述第二预设值时,所述步骤107中所述认证设备根据所述指纹认证标识的值设置认证方式确认标识具体为:所述认证设备将所述认证方式确认标识中所述指纹认证标识所对应的比特位复位。
6.如权利要求4所述的方法,其特征在于,当所述按键认证标识的值为所述第一预设值时,所步骤107中所述认证设备根据所述指纹认证标识的值和所述按键认证标识的值设置所述认证方式确认标识具体为:所述认证设备将所述认证方式确认标识中所述指纹认证标识所对应的比特位复位,将所述认证方式确认标识中所述按键认证标识所对应的比特位置位;
当所述按键认证标识的值为所述第二预设值时,所步骤107中所述认证设备根据所述指纹认证标识的值和所述按键认证标识的值设置所述认证方式确认标识具体为:所述认证设备将所述认证方式确认标识中所述指纹认证标识所对应的比特位复位,将所述认证方式确认标识中所述按键认证标识所对应的比特位复位。
7.如权利要求1所述的方法,其特征在于,所述认证设备包括安全环境芯片和指纹管理芯片,所述方法中
所述步骤101具体为所述指纹管理芯片将接收到的上位机的命令封装成应用协议数据单元指令,发送给所述安全环境芯片;
所述步骤102具体为所述安全环境芯片接收所述应用协议数据单元指令,并对所述应用协议数据单元指令中的选项参数进行解析;
所述步骤103具体为所述安全环境芯片判断所述选项参数中指纹认证标识的值,如果是第一预设值,则执行步骤104;如果是第二预设值,则执行步骤105;
所述步骤104具体为所述指纹管理芯片提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果,并将所述用户操作验证结果发送给所述安全环境芯片,执行步骤106;
所述步骤105具体为所述指纹管理芯片提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,并将所述用户操作验证结果发送给所述安全环境芯片,执行步骤106;
所述步骤106具体为所述安全环境芯片对所述用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错;
所述步骤107具体为所述安全环境芯片根据所述指纹认证标识的值设置认证方式确认标识,所述安全环境芯片从应用协议数据单元指令中获取客户端数据,并根据所述认证方式确认标识和所述客户端数据生成待签名数据,对所述待签名数据执行签名操作,生成签名结果,并将所述签名结果发送给所述指纹管理芯片;
所述步骤108具体为所述指纹管理芯片接收所述签名结果,并将所述签名结果发送给所述上位机。
8.如权利要求7所述的方法,其特征在于,所述步骤103中当安全环境芯片判断所述选项参数中所述指纹认证标识的值为第一预设值时,还包括:所述安全环境芯片判断所述应用协议数据单元指令的命令头中录入指纹状态标识的值,如果所述录入指纹状态标识的值为第三预设值,则执行步骤104,如果所述录入指纹状态标识的值为第四预设值,则报错。
9.如权利要求7或8所述的方法,其特征在于,所述步骤101具体为所述指纹管理芯片接收到的所述上位机的命令为产生凭据命令。
10.如权利要求7所述的方法,其特征在于,所述步骤101具体为所述指纹管理芯片接收到的所述上位机的命令为获取断言命令;
所述步骤103所述安全环境芯片判断选项参数中所述指纹认证标识的值为第二预设值之后还包括:所述安全环境芯片判断所述选项参数中按键认证标识的值,如果是所述第一预设值,执行步骤105,如果是所述第二预设值,执行步骤107;
当所述步骤103中所述安全环境芯片判断所述选项参数中指纹认证标识的值为第二预设值时且所述安全环境芯片判断所述选项参数中按键认证标识的值为第二预设值时,所述步骤107具体为,所述安全环境芯片根据所述指纹认证标识的值和所述按键认证标识的值设置认证方式确认标识,所述安全环境芯片从所述获取断言命令中获取所述客户端数据,并根据所述认证方式确认标识和所述客户端数据生成待签名数据,对所述待签名数据执行签名操作,生成签名结果。
11.如权利要求7所述的方法,其特征在于,所述步骤103具体为所述安全环境芯片判断选项参数中指纹认证标识的值,如果是第一预设值,则生成特殊状态码,并将所述特殊状态码发送给所述指纹管理芯片,执行步骤104;如果是第二预设值,则生成特殊状态码,并将所述特殊状态码发送给所述指纹管理芯片,则执行步骤105;
所述步骤104具体为所述指纹管理芯片接收所述特殊状态码并判断所述特殊状态码是否合法,如果是,所述指纹管理芯片生成随机数,并提示用户输入指纹,并对所述用户输入的指纹进行验证得到用户操作验证结果,所述指纹管理芯片使用所述随机数和第一会话密钥对所述用户操作验证结果进行加密,得到加密的用户操作验证结果,并将所述加密的用户操作验证结果和所述随机数发送给所述安全环境芯片,执行步骤106;如果否,则报错;
所述步骤105具体为所述指纹管理芯片接收所述特殊状态码并判断所述特殊状态码是否合法,如果是,所述指纹管理芯片生成随机数,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,所述指纹管理芯片使用所述随机数和第一会话密钥对所述用户操作验证结果进行加密,得到加密的用户操作验证结果,并将所述加密的用户操作验证结果和所述随机数发送给所述安全环境芯片,执行步骤106;如果否,则报错;
所述步骤106具体为所述安全环境芯片使用所述随机数和第二会话密钥对接收到的所述加密的用户操作验证结果进行解密,对所述用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错。
12.如权利要求7所述的方法,其特征在于,所述步骤103具体为所述安全环境芯片判断选项参数中指纹认证标识的值,如果是第一预设值,则生成随机数和特殊状态码,并将所述随机数和所述特殊状态码送给所述指纹管理芯片,执行步骤104;如果是第二预设值,则生成随机数和特殊状态码,并将所述随机数和所述特殊状态码送给所述指纹管理芯片,则执行步骤105;
所述步骤104具体为所述指纹管理芯片接收所述随机数和所述特殊状态码,并判断所述特殊状态码是否合法,如果是,所述指纹管理芯片并提示用户输入指纹,并对所述用户输入的指纹进行验证得到用户操作验证结果,所述指纹管理芯片使用所述随机数和第一会话密钥对所述用户操作验证结果进行加密,得到加密的用户操作验证结果,并将所述加密的用户操作验证结果发送给所述安全环境芯片,执行步骤106;如果否,则报错;
所述步骤105具体为所述指纹管理芯片接收所述特殊状态码和所述随机数并判断所述特殊状态码是否合法,如果是,所述指纹管理芯片提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果,所述指纹管理芯片使用所述随机数和第一会话密钥对所述用户操作验证结果进行加密,得到加密的用户操作验证结果,并将所述加密的用户操作验证结果发送给所述安全环境芯片,执行步骤106;如果否,则报错;
所述步骤106具体为所述安全环境芯片使用所述随机数和第二会话密钥对接收到的所述加密的用户操作验证结果进行解密,对所述用户操作验证结果进行判断,如果用户操作验证结果为成功,则执行步骤107,如果用户操作验证结果为失败,则报错。
13.一种认证设备,其特征在于,所述认证设备包括:
第一接收模块,用于接收上位机的命令;
解析模块,用于对所述上位机的命令中的选项参数进行解析;
第二判断模块,用于判断所述选项参数中指纹认证标识的值;还用于判断提示验证模块得到的所述用户操作验证结果为成功或者失败;
所述提示验证模块,用于当所述第二判断模块判断到所述选项参数中指纹认证标识的值为第一预设值时,提示用户输入指纹,并对所述用户输入的指纹进行验证得到用户操作验证结果;还用于当所述第二判断模块判断到所述选项参数中指纹认证标识的值为第二预设值时,提示用户按下按键,并对用户按下的按键进行验证得到所述用户操作验证结果;
第二报错模块,用于当所述第二判断模块判断所述用户操作验证结果为失败时报错;
设置模块,用于根据所述指纹认证标识的值设置认证方式确认标识,
获取模块,从所述上位机的命令中获取客户端数据
第二生成模块,用于根据所述认证方式确认标识和所述客户端数据生成待签名数据,对所述待签名数据执行签名操作,生成签名结果;
第一发送模块,用于将所述第二生成模块生成的签名结果发送给所述上位机。
14.如权利要求13所述的认证设备,其特征在于,所述第二判断模块,还用于当所述第二判断模块判断到所述选项参数中指纹认证标识的值为第一预设值时,判断所述上位机的指令的命令头中录入指纹状态标识的值;
所述提示验证模块,还用于当所述第二判断模块判断到所述录入指纹状态标识的值为第三预设值时,提示用户输入指纹,并对所述用户输入的指纹进行验证得到用户操作验证结果;
所述报错模块,还用于当所述第二判断模块判断到所述上位机的指令的命令头中录入指纹状态标识的值为第四预设值时,报错。
15.如权利要求13或14所述的认证设备,其特征在于,
所述上位机的命令为产生凭据命令。
16.如权利要求13所述的认证设备,其特征在于,所述上位机的命令具体为获取断言命令,所述认证设备还包括:第二判断模块,用于当所述第二判断模块判断所述选项参数中指纹认证标识的值为第二预设值时,判断所述选项参数中按键认证标识的值;
所述提示验证模块具体用于,当所述第二判断模块判断所述选项参数中指纹认证标识的值为第二预设值且所述选项参数中按键认证标识的值为所述第一预设值时,提示用户按下按键,并对用户按下的按键进行验证得到所述用户操作验证结果;
所述设置模块,还用于当所述第二判断模块判断所述选项参数中指纹认证标识的值为第二预设值且所述选项参数中按键认证标识的值为所述第二预设值时,根据所述指纹认证标识的值和所述按键认证标识的值设置所述认证方式确认标识;
所述第二生成模块,具体用于根据所述设置模块设置的认证方式确认标识和所述获取模块获取的所述客户端数据生成待签名数据,对所述待签名数据执行签名操作,生成签名结果。
17.如权利要求13所述的认证设备,其特征在于,
所述设置模块,具体用于当所述第二判断模块判断所述选项参数中指纹认证标识的值为第一预设值时,将所述认证方式确认标识中所述指纹认证标识所对应的比特位置位;当所述第二判断模块判断所述选项参数中指纹认证标识的值为第二预设值时,将所述认证方式确认标识中所述指纹认证标识所对应的比特位复位。
18.如权利要求16所述的认证设备,其特征在于,所述设置模块,还用于当所述第二判断模块判断所述选项参数中指纹认证标识的值为第二预设值且所述选项参数中按键认证标识的值为所述第二预设值时,用于将所述认证方式确认标识中所述指纹认证标识所对应的比特位复位,将所述认证方式确认标识中所述按键认证标识所对应的比特位复位。
19.如权利要求13所述的认证设备,其特征在于,所述认证设备包括指纹管理芯片和安全环境芯片,所述指纹管理芯片包括:第一接收模块,封装模块,第一发送模块,提示验证模块;所述安全环境芯片包括:第二接收模块,解析模块,第二判断模块,获取模块,第二生成模块,设置模块,第二发送模块,报错模块;
所述第一接收模块,用于接收上位机的命令;还用于接收所述第二发送模块发送的签名结果;
所述封装模块,用于将所述第一接收模块接收到的上位机的命令封装成应用协议数据单元指令;
所述第一发送模块,用于将所述应用协议数据单元指令发送给第二接收模块;还用于将所述提示验证模块得到用户操作验证结果发送给所述第二接收模块;还用于将第一接收模块接收到的所述第二发送模块发送的签名结果发送给所述上位机;
所述第二接收模块,用于接收所述应用协议数据单元指令;还用于第一发送模块发送的所述用户操作验证结果;
所述解析模块,用于对所述应用协议数据单元指令中的选项参数进行解析;
所述第二判断模块,用于判断所述选项参数中指纹认证标识的值,还用于判断用户操作验证结果;
所述提示验证模块,用于当所述第二判断模块判断所述选项参数中指纹认证标识的值是第一预设值时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;还用于当所述第二判断模块判断所述选项参数中指纹认证标识的值是第二预设值时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
所述设置模块,用于当所述第二判断模块判断用户操作验证结果为成功时,根据所述指纹认证标识的值设置认证方式确认标识;
所述获取模块,用于从所述应用协议数据单元指令中获取客户端数据;
所述第二生成模块,用于根据所述认证方式确认标识和所述客户端数据生成待签名数据,对所述待签名数据执行签名操作,生成所述签名结果;
所述第二发送模块,用于将所述签名结果发送给所述第一接收模块;
所述第二报错模块,用于当所述第二判断模块判断用户操作验证结果为失败时,报错。
20.如权利要求19所述的认证设备,其特征在于,所述第二判断模块还用于,当所述第二判断模块判断所述选项参数中所述指纹认证标识的值为第一预设值时,判断所述应用协议数据单元指令的命令头中录入指纹状态标识的值;
所述提示验证模块,具体用于当所述第二判断模块判断选项参数中指纹认证标识的值是第一预设值时且判断所述应用协议数据单元指令的命令头中录入指纹状态标识的值为第三预设值时,提示用户输入指纹,并对用户输入的指纹进行验证得到用户操作验证结果;所述报错模块具体用于,当所述第二判断模块判断选项参数中指纹认证标识的值是第三预设值时且判断所述应用协议数据单元指令的命令头中录入指纹状态标识的值为第二预设值时,报错。
21.如权利要求19或20所述的认证设备,其特征在于,
所述第一接收模块接收到的所述上位机的命令为产生凭据命令。
22.如权利要求19所述的认证设备,其特征在于,所述第一接收模块接收到的所述上位机的命令为获取断言命令;
所述第二判断模块还用于,当所述第二判断模块判断所述选项参数中所述指纹认证标识的值为第二预设值时,判断所述选项参数中按键认证标识的值;
所述设置模块,还用于当所述第二判断模块判断所述选项参数中所述指纹认证标识的值为第二预设值时且所述选项参数中按键认证标识的值为第二预设值时,根据所述指纹认证标识的值和所述按键认证标识的值设置认证方式确认标识;
所述获取模块具体用于,从所述获取断言命令中获取所述客户端数据;
所述第二生成模块具体用于,当所述第二判断模块判断所述选项参数中所述指纹认证标识的值为第二预设值时且所述选项参数中按键认证标识的值为第二预设值时,根据所述设置模块所设置的认证方式确认标识和所述获取模块获取的所述客户端数据生成待签名数据,对所述待签名数据执行签名操作,生成签名结果。
23.如权利要求19所述的认证设备,其特征在于,
所述指纹管理芯片还包括第一判断模块,第一生成模块,加密模块,第一报错模块,所述安全环境芯片还包括解密模块;
所述第二生成模块还用于,当所述第二判断模块判断所述选项参数中指纹认证标识的值是第一预设值时,则生成特殊状态码;还用于所述第二判断模块判断所述选项参数中指纹认证标识的值是第二预设值时,则生成特殊状态码;
所述第二发送模块,还用于将所述特殊状态码发送给所述第一接收模块;
所述第一判断模块还用于,判断所述特殊状态码是否合法;
所述第一生成模块用于,当所述第一判断模块判断所述特殊状态码合法时,生成随机数;
所述提示验证模块,具体用于当所述第二判断模块判断所述选项参数中指纹认证标识的值是第一预设值时且当所述第一判断模块判断所述特殊状态码合法时,提示用户输入指纹,并对所述用户输入的指纹进行验证得到所述用户操作验证结果;当所述第二判断模块判断所述选项参数中指纹认证标识的值是第二预设值时,且当所述第一判断模块判断所述特殊状态码合法时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
所述加密模块用于使用所述随机数和第一会话密钥对所述用户操作验证结果进行加密,得到加密的用户操作验证结果;
所述第一发送模块还用于,将所述加密的用户操作验证结果和所述随机数发送给所述第二接收模块;
所述第一报错模块,用于当所述第一判断模块判断所述特殊状态码不合法时,报错;
所述解密模块,用于使用所述第二接收模块接收到随机数对接收到的所述加密的用户操作验证结果进行解密得到所述用户操作验证结果。
24.如权利要求19所述的认证设备,其特征在于,所述指纹管理芯片还包括第一判断模块,加密模块,第一报错模块,所述安全环境芯片还包括解密模块;
所述第二生成模块,还用于当所述第二判断模块判断选项参数中指纹认证标识的值为第一预设值时,生成随机数和特殊状态码;还用于当所述第二判断模块判断选项参数中指纹认证标识的值为第二预设值时,生成所述随机数和所述特殊状态码;
所述第二发送模块,还用于将所述随机数和所述特殊状态码发送给所述第一接收模块;
所述第一接收模块,还用于接收所述特殊状态码和所述随机数;
所述第一判断模块还用于,判断所述特殊状态码是否合法;
所述提示验证模块还用于,当所述第二判断模块判断选项参数中指纹认证标识的值为第一预设值且所述第一判断模块判断所述特殊状态码合法时,提示用户输入指纹,并对所述用户输入的指纹进行验证得到用户操作验证结果;还用于当所述第二判断模块判断选项参数中指纹认证标识的值为第二预设值且所述第一判断模块判断所述特殊状态码合法时,提示用户按下按键,并对用户按下的按键进行验证得到用户操作验证结果;
所述加密模块,用于使用第一会话密钥和所述第一接收模块接收到的所述随机数对所述用户操作验证结果进行加密,得到加密的用户操作验证结果;
所述第一发送模块,还用于将所述加密的用户操作验证结果发送给所述第二接收模块;
所述第一报错模块,还用于当所述第一判断模块判断所述特殊状态码不合法时,报错;
所述解密模块,用于使用所述第二生成模块生成的随机数对第二接收模块接收到的所述加密的用户操作验证结果进行解密,得到用户操作验证结果。
CN201810866705.XA 2018-08-01 2018-08-01 一种认证方法及认证设备 Active CN109086588B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201810866705.XA CN109086588B (zh) 2018-08-01 2018-08-01 一种认证方法及认证设备
PCT/CN2019/097383 WO2020024852A1 (zh) 2018-08-01 2019-07-24 一种认证方法及认证设备
US17/159,051 US11930118B2 (en) 2018-08-01 2021-01-26 Authentication method and authentication device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810866705.XA CN109086588B (zh) 2018-08-01 2018-08-01 一种认证方法及认证设备

Publications (2)

Publication Number Publication Date
CN109086588A true CN109086588A (zh) 2018-12-25
CN109086588B CN109086588B (zh) 2020-08-07

Family

ID=64833563

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810866705.XA Active CN109086588B (zh) 2018-08-01 2018-08-01 一种认证方法及认证设备

Country Status (3)

Country Link
US (1) US11930118B2 (zh)
CN (1) CN109086588B (zh)
WO (1) WO2020024852A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110740043A (zh) * 2019-10-21 2020-01-31 飞天诚信科技股份有限公司 一种智能密钥设备及其验证方法
WO2020024852A1 (zh) * 2018-08-01 2020-02-06 飞天诚信科技股份有限公司 一种认证方法及认证设备
CN110889123A (zh) * 2019-11-01 2020-03-17 浙江地芯引力科技有限公司 一种认证方法及密钥对的处理方法、装置与可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095460A (zh) * 2013-01-22 2013-05-08 飞天诚信科技股份有限公司 一种智能卡安全通讯的方法
US20130333015A1 (en) * 2011-12-29 2013-12-12 Derek J. Reynolds Biometric cloud communication and data movement
CN104901937A (zh) * 2014-10-17 2015-09-09 腾讯科技(深圳)有限公司 一种数据处理方法及其系统、终端、服务器
CN107612940A (zh) * 2017-10-31 2018-01-19 飞天诚信科技股份有限公司 一种身份认证方法及认证装置
CN108123957A (zh) * 2017-12-29 2018-06-05 飞天诚信科技股份有限公司 一种登录虚拟专用网络服务器的多方式认证的方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060075259A1 (en) * 2004-10-05 2006-04-06 Bajikar Sundeep M Method and system to generate a session key for a trusted channel within a computer system
CN101599836B (zh) * 2009-07-14 2011-12-28 北京坚石诚信科技有限公司 一种签名方法、签名设备和系统
US10958435B2 (en) * 2015-12-21 2021-03-23 Electro Industries/ Gauge Tech Providing security in an intelligent electronic device
CN106549973A (zh) * 2016-11-21 2017-03-29 飞天诚信科技股份有限公司 一种基于生物特征识别的客户端及其工作方法
CN109086588B (zh) * 2018-08-01 2020-08-07 飞天诚信科技股份有限公司 一种认证方法及认证设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130333015A1 (en) * 2011-12-29 2013-12-12 Derek J. Reynolds Biometric cloud communication and data movement
CN103095460A (zh) * 2013-01-22 2013-05-08 飞天诚信科技股份有限公司 一种智能卡安全通讯的方法
CN104901937A (zh) * 2014-10-17 2015-09-09 腾讯科技(深圳)有限公司 一种数据处理方法及其系统、终端、服务器
CN107612940A (zh) * 2017-10-31 2018-01-19 飞天诚信科技股份有限公司 一种身份认证方法及认证装置
CN108123957A (zh) * 2017-12-29 2018-06-05 飞天诚信科技股份有限公司 一种登录虚拟专用网络服务器的多方式认证的方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020024852A1 (zh) * 2018-08-01 2020-02-06 飞天诚信科技股份有限公司 一种认证方法及认证设备
US11930118B2 (en) 2018-08-01 2024-03-12 Feitian Technologies Co., Ltd. Authentication method and authentication device
CN110740043A (zh) * 2019-10-21 2020-01-31 飞天诚信科技股份有限公司 一种智能密钥设备及其验证方法
CN110889123A (zh) * 2019-11-01 2020-03-17 浙江地芯引力科技有限公司 一种认证方法及密钥对的处理方法、装置与可读存储介质

Also Published As

Publication number Publication date
CN109086588B (zh) 2020-08-07
US11930118B2 (en) 2024-03-12
WO2020024852A1 (zh) 2020-02-06
US20210152361A1 (en) 2021-05-20

Similar Documents

Publication Publication Date Title
CN105187450B (zh) 一种基于认证设备进行认证的方法和设备
CN113014539B (zh) 一种物联网设备安全保护系统及方法
CN109862040A (zh) 一种安全认证方法及认证系统
CN106034123B (zh) 认证方法、应用系统服务器及客户端
CN109150541A (zh) 一种认证系统及其工作方法
CN108881310A (zh) 一种注册系统及其工作方法
CN106612180A (zh) 实现会话标识同步的方法及装置
CN110189442A (zh) 认证方法及装置
CN107360175A (zh) 车联网控车安全方法
CN103500202B (zh) 一种轻量级数据库的安全保护方法及系统
CN109618334A (zh) 控制方法及相关设备
CN109086588A (zh) 一种认证方法及认证设备
CN106572082A (zh) 一种审批签名验证方法、移动设备、终端设备及系统
CN106571907A (zh) 一种上位机与u盘间安全传输数据的方法及系统
CN112600669B (zh) 一种密码算法和符合性验证系统
CN108881243A (zh) 基于CPK的Linux操作系统登录认证方法、设备、终端及服务器
US10862675B2 (en) Method for exchanging messages between security-relevant devices
CN106452845B (zh) 一种在线解锁的实现方法及装置
CN108833381A (zh) 软件定义网络的可信连接方法及系统
CN114338052B (zh) 一种身份认证的实现方法及装置
US20120272303A1 (en) Method and device for enhancing security of user security model
CN114297597B (zh) 一种账户管理方法、系统、设备及计算机可读存储介质
CN109088733A (zh) 一种智能卡应用扩展的实现方法及装置
Verleg et al. Inferring SSH state machines using protocol state fuzzing
CN115171245A (zh) 一种基于hce的门锁安全认证方法及系统

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
OL01 Intention to license declared
OL01 Intention to license declared