CN105184566A - 一种智能密钥设备的工作方法 - Google Patents

一种智能密钥设备的工作方法 Download PDF

Info

Publication number
CN105184566A
CN105184566A CN201510332534.9A CN201510332534A CN105184566A CN 105184566 A CN105184566 A CN 105184566A CN 201510332534 A CN201510332534 A CN 201510332534A CN 105184566 A CN105184566 A CN 105184566A
Authority
CN
China
Prior art keywords
intelligent cipher
cipher key
key equipment
key
user
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
CN201510332534.9A
Other languages
English (en)
Other versions
CN105184566B (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 CN201510332534.9A priority Critical patent/CN105184566B/zh
Publication of CN105184566A publication Critical patent/CN105184566A/zh
Priority to PCT/CN2016/080630 priority patent/WO2016202106A1/zh
Priority to US15/561,779 priority patent/US10263985B2/en
Application granted granted Critical
Publication of CN105184566B publication Critical patent/CN105184566B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3823Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/386Payment protocols; Details thereof using messaging services or messaging apps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00571Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by interacting with a central unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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
    • 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/3234Cryptographic 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 involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • 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/3247Cryptographic 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 involving digital signatures
    • 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/3263Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00309Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with bidirectional data transmission between data carrier and locks
    • G07C2009/00388Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with bidirectional data transmission between data carrier and locks code verification carried out according to the challenge/response method
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00857Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys where the code of the data carrier can be programmed
    • G07C2009/0088Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys where the code of the data carrier can be programmed centrally
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)
  • Telephone Function (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

本发明公开一种智能密钥设备的工作方法,包括:当接收到上位机发送的命令,判断该命令的类型,如为注册请求命令则接收用户按键信息,将生成的用户密钥对与对应的密钥句柄关联,根据预设算法对注册请求命令中的数据域部分进行签名,得到第一签名结果并保存;生成证书序列号,使用预置的根密钥对的私钥对用户密钥对颁发对应的数字证书;根据预定格式保存用户密钥对和对应的密钥句柄,根据数字证书和第一签名结果生成注册响应数据并返回给上位机;如为认证请求命令且用户合法,则接收用户按键信息,根据预设算法使用获取到的用户密钥对中的私钥,对认证请求命令的数据域进行签名得到第二签名结果;根据第二签名结果生成认证响应数据并返回给上位机。

Description

一种智能密钥设备的工作方法
技术领域
本发明涉及信息安全领域,尤其涉及一种智能密钥设备的工作方法。
背景技术
随着互联网和电子商务的快速发展,网上银行(简称网银)在线交易金额不断扩大,网络信息安全问题日益凸显,消费者也越来越关注网上交易的安全问题。在现有技术中,可以利用动态口令或USBKey(智能密钥设备)进行网上交易,进行网上交易时需要每次都输入动态口令,过程太过复杂,而后则出现了快捷支付的方式,现有技术中快捷支付过程中需要使用短信认证码,如用户如丢失手机则可能出现恶意者利用该手机以用户名义进行网上交易的情形,这会给用户造成无法挽回的损失,所以现有技术中的利用短信认证码进行快捷支付是非常不安全的,且每次都需输入短信也非常不便捷。
发明内容
本发明的目的是为了克服现有技术的不足,提供一种智能密钥设备的工作方法。
本发明提供了一种智能密钥设备的工作方法,包括:
步骤S1:智能密钥设备上电,进行初始化;
步骤S2:当所述智能密钥设备接收到上位机发送的枚举描述符命令时,所述智能密钥设备设置描述符并将其返回给所述上位机;
步骤S3:当所述智能密钥设备接收到上位机发送的命令,判断所述命令的类型,如为注册请求命令则执行步骤S4,如为认证请求命令则执行步骤S7,如为其他命令则根据所述命令执行相应操作,返回步骤S3;
步骤S4:所述智能密钥设备判断是否接收到用户按键信息,是则执行步骤S5,否则报错,返回步骤S3;
步骤S5:所述智能密钥设备将生成的用户密钥对与对应的创建的密钥句柄进行关联,并根据预设算法对所述注册请求命令中的数据域部分进行签名,得到第一签名结果并保存;生成证书序列号,并使用预置的根密钥对的私钥对所述用户密钥对颁发一个与所述证书序列号对应的数字证书;所述注册请求命令中的数据域部分包括挑战参数和注册地应用参数;
步骤S6:所述智能密钥设备根据预定格式保存所述用户密钥对和所述密钥句柄,并根据所述数字证书和所述第一签名结果生成注册响应数据并返回给所述上位机,返回步骤S3;
步骤S7:所述智能密钥设备根据所述认证请求命令判断用户是否合法,是则执行步骤S8,否则报错,返回步骤S3;
步骤S8:所述智能密钥设备等待用户按键信息,并判断是否接收到用户按键信息,是则执行步骤S9,否则报错,返回步骤S3;
步骤S9:所述智能密钥设备根据所述认证请求命令中的密钥句柄获取对应的用户密钥对,根据预设算法使用所述用户密钥对中的私钥,对所述认证请求命令的数据域进行签名得到第二签名结果;
步骤S10:所述智能密钥设备根据所述第二签名结果生成认证响应数据并返回给上位机,返回步骤S3。
进一步地,所述智能密钥设备设置描述符并将其返回给所述上位机,包括:
步骤S22-1:所述智能密钥设备设置配置描述符内容为HID设备;
步骤S22-2:所述智能密钥设备设置报告描述符;
步骤S22-3:所述智能密钥设备将所述配置描述符和所述报告描述符返回给所述上位机。
进一步地,所述步骤S3中如所述智能密钥设备判断所述命令的类型为协议命令则执行步骤A1;
步骤A1:所述智能密钥设备检测所述命令中的第五个字节,如第五个字节上的数据为第一数据则将接收到的数据返回给所述上位机,返回步骤S3;如第五个字节上的数据为第二数据则将十七个有效字节的数据返回给所述上位机,返回步骤S3。
进一步地,所述步骤S3中如所述智能密钥设备判断命令的类型为获取版本号命令则执行步骤B1;
步骤B1:所述智能密钥设备将预设的字符串返回给所述上位机,返回步骤S3。
进一步地,所述步骤S3与步骤S4之间包括:
步骤C1:所述智能密钥设备生成用户密钥对和所述密钥句柄,根据所述用户密钥对和所述注册请求命令中的注册地应用参数得到密钥信息,查找空闲的密钥索引,如找到则执行步骤S4,如未找到则执行步骤C2;
步骤C2:所述智能密钥设备判断空间是否有大小合适的剩余空间,是则生成对应的密钥索引,执行步骤S4,否则返回空间不足信息,返回步骤S3;
所述步骤S5还包括:所述智能密钥设备将生成的用户密钥对与所述密钥索引进行关联;
所述步骤S6还包括:所述智能密钥设备根据预定格式保存所述用户密钥对、所述密钥索引和所述注册请求命令中的注册地应用参数。
进一步地,所述步骤S4判断为否时还包括:所述智能密钥设备判断等待时间是否到达预设时间,是则报错,返回步骤S3,否则返回步骤S4。
进一步地,所述根据预设算法对所述注册请求命令中的数据域部分进行签名,包括:
所述智能密钥设备根据所述预设算法对所述注册请求命令中的数据域部分进行哈希计算得到第一哈希值,使用所述用户密钥对中的私钥对所述第一哈希值进行签名得到所述第一签名结果。
进一步地,所述步骤S7判断为是时还包括:
步骤S71:所述智能密钥设备根据所述认证请求命令中的密钥句柄和密钥句柄长度判断对应的密钥句柄是否被注册过,是则执行步骤S72,否则报错,返回步骤S3;
步骤S72:所述智能密钥设备判断所述认证请求命令中的注册地应用参数是否与保存的注册地应用参数一致,是则执行步骤S8,否则报错,返回步骤S3。
进一步地,所述步骤S71具体包括:
步骤S71-1:所述智能密钥设备判断所述认证请求命令中的密钥句柄长度是否与保存的密钥句柄长度相同,是则执行步骤S71-2,否则报错,返回步骤S3;
步骤S71-2:所述智能密钥设备判断所述认证请求命令中的密钥句柄是否与保存的密钥句柄相同,是则执行步骤S72,否则报错,返回步骤S3。
进一步地,所述智能密钥设备根据预定格式保存所述用户密钥对和所述密钥句柄,包括:所述智能密钥设备根据预定格式保存所述用户密钥对、所述密钥句柄和所述注册请求命令中的注册地应用参数;所述步骤S3与步骤S4之间包括:
步骤D1:所述智能密钥设备根据所述注册地应用参数判断当前用户是否已经注册过了,是则报错,返回步骤S3,否则执行步骤D2;
步骤D2:所述智能密钥设备生成所述用户密钥对,根据所述用户密钥对和所述注册请求命令中的注册地应用参数得到密钥信息,执行步骤S4。
进一步地,所述步骤D1包括:
所述智能密钥设备判断是否保存了所述注册地应用参数,是则当前用户已经注册过了,否则当前用户未注册。
进一步地,所述步骤S8判断为否时还包括:所述智能密钥设备判断等待时间是否到达预设时间,是则报错,返回步骤S3,否则返回步骤S8。
进一步地,所述步骤S3中判断所述命令的类型,具体包括:所述智能密钥设备根据所述命令中数据域的第二字节判断所述命令的类型,如数据域的第二字节上的数据为第一数值则为注册请求命令,如数据域的第二字节上的数据为第二数值则为认证请求命令。
本发明与现有技术相比,具有以下优点:
本发明的技术方案中上位机通过浏览器从信任服务器获取数据然后将其发送给智能密钥设备;智能密钥设备接收到上位机发送的数据后在用户按键确认后进行签名操作,然后将签名结果返回给上位机;上位机把智能密钥设备响应的数据发送给信任服务器来验证智能密钥设备的合法性,实现了对用户身份的快速认证,从而可以进行高效、安全、快捷的进行网上交易。
附图说明
图1为本发明实施例一提供的一种智能密钥设备的工作方法流程图;
图2为本发明实施例二提供的一种智能密钥设备的工作方法流程图;
图3为本发明实施例三提供的一种智能密钥设备的工作方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例一提供一种智能密钥设备的工作方法,如图1所示,包括:
步骤S1:智能密钥设备上电,进行初始化;
步骤S2:当智能密钥设备接收到上位机发送的枚举描述符命令时,智能密钥设备设置描述符并将其返回给上位机;
步骤S3:当智能密钥设备接收到上位机发送的命令,判断该命令的类型是否为功能命令,是则执行步骤S4,否则根据命令执行相应操作,返回步骤S3;
步骤S4:智能密钥设备判断功能命令的类型,如为注册请求命令则执行步骤S5,如为认证请求命令则执行步骤S9;
步骤S5:智能密钥设备判断是否接收到用户按键信息,是则执行步骤S6,否则报错,返回步骤S3;
步骤S6:智能密钥设备将生成的用户密钥对与对应的创建的密钥句柄进行关联,并根据预设算法对注册请求命令中的数据域部分进行签名,得到第一签名结果并保存;
在本实施例中,注册请求命令中的数据域部分包括挑战参数和注册地应用参数;
步骤S7:智能密钥设备生成证书序列号,并使用预置的根密钥对的私钥对用户密钥对颁发一个与该证书序列号对应的数字证书;
步骤S8:智能密钥设备根据预定格式保存用户密钥对和对应的密钥句柄,并根据数字证书和第一签名结果生成注册响应数据并返回给上位机,返回步骤S3;
步骤S9:智能密钥设备根据认证请求命令判断用户是否合法,是则执行步骤S10,否则报错,返回步骤S3;
步骤S10:智能密钥设备等待用户按键信息,并判断是否在预设时间内接收到用户按键信息,是则执行步骤S11,否则报错,返回步骤S3;
步骤S11:智能密钥设备根据认证请求命令中的密钥句柄获取对应的用户密钥对,根据预设算法使用用户密钥对中的私钥,对认证请求命令的数据域进行签名得到第二签名结果;
步骤S12:智能密钥设备根据第二签名结果生成认证响应数据并返回给上位机,返回步骤S3。
实施例二
本发明实施例二提供一种智能密钥设备的工作方法,在本实施例中,允许重复进行注册然后再进行身份认证,如图2所示,本实施例的方法包括:
步骤101:智能密钥设备上电,进行初始化;
步骤102:当智能密钥设备接收到上位机发送的枚举描述符命令时,智能密钥设备设置描述符;
具体的,在本实施例中,智能密钥设备设置描述符具体为:
步骤102-1:设置配置描述符内容为HID设备;
步骤102-2:设置报告描述符;
在本实施例中,报告描述符格式具体为:
UsagePage,//用途页
Usage,//用途
Collection,//应用集合
//InputReport结构
Usage(X),Usage(Y),//用途X/Y
LogicalMinimum(0),//逻辑最小值0
LogicalMaximum(255),//逻辑最大值255
FeatureSize(8),//报告大小是8bit
FeatureCount(64),//报告数目64bit
Input(Data,Variable,Relative),//输入用
//OutputReport结构
Usage(X),Usage(Y),//用途X/Y
LogicalMinimum(0),//逻辑最小值0
LogicalMaximum(255),//逻辑最大值255
FeatureSize(8),//报告大小是8bit
FeatureCount(64),//报告数目64bit
Input(Data,Variable,Relative),//输出用
EndCollection//应用集合结束
设置报告描述符具体为:将全局UsagePage设为0xd0f1,将局部Usage设为0x01,将在InputReport结构中的Usage设为0x20,将OutputReport结构中的Usage设为0x21;报告描述符中的其他参数为可变值,可根据需求进行设置;
例如,本发明实施例中的报告描述符设置为:
06d0f1//UsagePage
0901//Usage
a101//Collection
//InputReport
0920//Usage
1500//logicalminimum(0)
26ff//logicalmaximum(255)
007508//FeatureSize(8bits)
9540//FeatureCount(64field,64bytes)
8102//Input
//OutputReport
0921//Usage
1500//logicalminimum(0)
26ff//logicalmaximum(255)
007508//FeatureSize(8bits)
9540//FeatureCount(64field,64bytes)
9102//Output
c0//ApplicationCollectionEnd步骤103:智能密钥设备将描述符返回给上位机,执行步骤104;
步骤104:当智能密钥设备接收到上位机发送的命令,判断该命令的类型,如为协议命令则执行步骤105,如为功能命令则执行步骤106;
在本实施例中,根据命令中的第5个字节进行判断,如该字节为83H则表示为功能命令,如为81H或86H则为协议命令;
步骤105:智能密钥设备将相应的数据返回,返回步骤104;
在本实施例中,如命令中的第五个字节为第一数据则返回接收到的数据;如命令中的第五个字节为第二数据则返回十七个有效字节的数据;优选的,第一数据为81H,第二数据为86H;
步骤106:智能密钥设备判断功能命令的类型,如为注册请求命令则执行步骤107,如为认证请求命令则执行步骤114,如为获取版本号命令则执行步骤119;
具体的,在本实施例中,智能密钥设备根据命令中数据域的第二字节判断功能命令的类型,如数据域的第二字节上的数据为第一数值则为注册请求命令,如数据域的第二字节上的数据为第二数值则为认证请求命令,如数据域的第二字节上的数据为第三数值则为获取版本号命令;优选的,第一数值为01,第二数值为02,第三数值为03;
在本实施例中,注册请求命令的数据域包括32字节的挑战参数和32字节的注册地应用参数,其中,挑战参数是客户信任端数据;注册地应用参数是由用户注册域名与注册用户信息进行摘要计算得到的注册地摘要值;认证请求命令数据域包括32字节的挑战参数、32字节的注册地应用参数、1字节的密钥句柄长度和密钥句柄;认证请求命令符合APDU格式,具体为:CLINP1P2Lc数据域Le,具体的,在本实施例中,P1表示控制字符,如P1的值为0x07则表示智能密钥设备必须返回身份验证响应信息;如P1的值为0x03则表示智能密钥设备进行签名与身份验证操作并返回响应消息;
步骤107:智能密钥设备生成用户密钥对和对应的密钥句柄,根据生成的用户密钥对和注册请求命令中的注册地应用参数得到密钥信息,查找空闲的密钥索引,如找到则执行步骤109,如未找到则执行步骤108;
在本实施例中,每一个密钥索引对应于密钥句柄、注册地应用参数、用户密钥对和计数器;
在本实施例中,密钥句柄用于在智能密钥设备外部进行查询对应的用户密钥对,密钥索引用于在智能密钥设备内部查询对应的用户密钥对;
步骤108:智能密钥设备判断空间是否有大小合适的剩余空间,是则生成对应的密钥索引,执行步骤109,否则报错,返回步骤104;
步骤109:智能密钥设备判断是否在预设时间内接收到用户按键信息,是则执行步骤110,否则报错,返回步骤104;
在本实施例中的预设时间优选为5秒;
步骤110:智能密钥设备将生成的用户密钥对与密钥索引、密钥句柄进行关联,并根据预设算法对注册请求命令中的数据域部分进行签名,得到第一签名结果并保存;
优选的,在本实施例中,用户密钥对为ECC密钥对,长度为96字节;预设算法为ECDSA算法,还可以为SM2算法;
具体的,本实施例中进行签名的待签名数据包括:1字节的保留字符(例如0x00)、32字节应答参数、32字节注册地应用参数、用户密钥对的密钥句柄和65字节的用户公钥;
具体的,在本实施中,进行签名的具体实现过程为:根据预设算法对注册请求命令中的数据域部分进行哈希计算得到第一哈希值,使用用户密钥对中的私钥对第一哈希值进行签名得到第一签名结果;
步骤111:智能密钥设备使用预置的根密钥对的私钥对用户密钥对颁发一个数字证书;
具体的,本实施例中的数字证书中包括:用户信息、用户公钥等注册地应用参数;
在本实施例中,生成数字证书的过程具体为:智能密钥设备内部保存一个证书模板,然后智能密钥设备生成证书序列号,用该证书序列号和用户公钥更新证书中的序列号、用户公钥,使用智能密钥设备内预存的私钥对证书模板中的版本号和公钥等数据进行签名操作,把签名结果放到证书模板的签名项中;
颁发证书的过程包括:智能密钥设备内预置一对根密钥对,该根密钥对的公钥存在服务器端,智能密钥设备使用根密钥对的私钥对用户密钥对颁发一个数字证书;服务器端可以使用根密钥对的公钥验证这个证书的合法性,达到双向认证的目的;
在本实施中,优选的,数字证书为X.509证书,具体格式为:
[Certificate::=SEQUENCE{
tbsCertificateTBSCertificate,//证书信息,结构见下
signatureAlgorithmAlgorithmIdentifier,//办法者签名算法标识
signatureBITSTRING//颁发者的签名
}
其中第一项TBSCertificate的结构:
TBSCertificate::=SEQUENCE{
version[0]EXPLICITVersionDEFAULTv1,//X.509版本号
serialNumberCertificateSerialNumber,//证书序列号
signatureAlgorithmIdentifier,//签名算法标示符
issuerName,//证书的颁发者名称
validityValidity,//证书有效日期
subjectName,//主题信息
subjectPublic智能密钥设备InfoSubjectPublic智能密钥设备Info,//证书持有人的公钥
extensions[3]EXPLICITExtensionsOPTIONAL//证书扩展项,可选
}
本方案中的证书签名对象就是TBSCertificate的内容;即使用智能密钥设备内预存的私钥对TBSCertificate的内容进行签名操作;
步骤112:智能密钥设备根据密钥索引保存生成的用户密钥对;
在本实施例中,用户密钥对的保存格式是预定的,具体为:4字节用户密钥对的密钥句柄+32字节注册地应用参数+96字节用户密钥对+4字节计数器(注册时为0);
其中,计数器用于表示对使用智能密钥设备对身份进行验证操作的次数,初始值为0,每成功认证一次,计数器加1;
步骤113:智能密钥设备按照第一预设格式给上位机返回注册响应数据,返回步骤104;
在本实施中,注册响应数据包括数字证书和第一签名结果,第一预设格式具体为:
保留 用户公 密钥句柄 用户密钥对的 数字 第一签
字符 的长度 密钥句柄 证书 名结果
1字节 65字节 1字节
步骤114:智能密钥设备根据认证请求命令中的密钥句柄长度和密钥句柄判断对应的密钥句柄是否被注册过,是则执行步骤115,否则报错,返回步骤104;
在本实施例中,步骤114具体包括:
步骤114-1:智能密钥设备判断认证请求命令中的密钥句柄长度是否与保存的密钥句柄长度相同,是则执行步骤114-2,否则报错,返回步骤104;
步骤114-2:智能密钥设备判断认证请求命令中的密钥句柄是否与保存的密钥句柄相同,是则执行步骤115,否则报错,返回步骤104;
步骤115:智能密钥设备判断认证请求命令中的注册地应用参数是否与保存的注册地应用参数一致,是则执行步骤116,否则报错,返回步骤104;
具体的,本实施例中,密钥索引、密钥句柄、注册地应用参数、用户密钥对一一对应保存;
步骤116:智能密钥设备等待用户按键信息,并判断是否在预设时间内接收到用户按键信息,是则执行步骤117,否则报错,返回步骤104;
步骤117:智能密钥设备根据认证请求命令中的密钥句柄获取对应的用户密钥对,根据预设算法使用用户密钥对中的私钥,对认证请求命令的数据域进行签名得到第二签名结果;
在本实施例中,步骤117中的数据域包括:32字节的注册地应用参数、1字节的用户存在字节、4字节的计数器、32字节的挑战参数;
步骤118:智能密钥设备按照第二预设格式给上位机返回认证响应数据,返回步骤104。
在本实施例中,第二预设格式为:
用户存在字节 计数器 第二签名结果
1 4
步骤119:智能密钥设备返回预设的字符串,返回步骤104;
具体的,本实施例中的预设的字符串为U2F_V2。
实施例三
本发明实施例三提供一种智能密钥设备的工作方法,在本实施例中,只能注册一次(即不允许重复进行注册),然后再进行身份认证,如图3所示,本实施例的方法包括:
步骤201:智能密钥设备上电,进行初始化;
步骤202:当智能密钥设备接收到上位机发送的枚举描述符命令时,智能密钥设备设置描述符;
具体的,在本实施例中,智能密钥设备设置描述符具体为:
步骤202-1:设置配置描述符内容为HID设备;
步骤202-2:设置报告描述符;
在本实施例中,报告描述符格式具体为:
UsagePage,//用途页
Usage,//用途
Collection,//应用集合
//InputReport结构
Usage(X),Usage(Y),//用途X/Y
LogicalMinimum(0),//逻辑最小值0
LogicalMaximum(255),//逻辑最大值255
FeatureSize(8),//报告大小是8bit
FeatureCount(64),//报告数目64bit
Input(Data,Variable,Relative),//输入用
//OutputReport结构
Usage(X),Usage(Y),//用途X/Y
LogicalMinimum(0),//逻辑最小值0
LogicalMaximum(255),//逻辑最大值255
FeatureSize(8),//报告大小是8bit
FeatureCount(64),//报告数目64bit
Input(Data,Variable,Relative),//输出用
EndCollection//应用集合结束
设置报告描述符具体为:将全局UsagePage设为0xd0f1,将局部Usage设为0x01,将在InputReport结构中的Usage设为0x20,将OutputReport结构中的Usage设为0x21;
步骤203:智能密钥设备将描述符返回给上位机,执行步骤204;
步骤204:当智能密钥设备接收到上位机发送的命令,判断该命令的类型,如为协议命令则执行步骤205,如为功能命令则执行步骤206;
在本实施例中,根据命令中的第5个字节进行判断,如该字节为83H则表示为功能命令,如为81H或86H则为协议命令;
步骤205:智能密钥设备将相应的数据返回,返回步骤204;
在本实施例中,如令中的第五个字节为第一数据则返回接收到的数据;如令中的第五个字节为第二数据则返回十七个有效字节的数据;优选的,第一数据为81H,第二数据为86H;
步骤206:智能密钥设备判断功能命令的类型,如为注册请求命令则执行步骤207,如为认证请求命令则执行步骤214,如为获取版本号命令则执行步骤219;
具体的,在本实施例中,智能密钥设备根据命令中数据域的第二字节判断功能命令的类型,如数据域的第二字节上的数据为01则为注册请求命令,如数据域的第二字节上的数据为02则为认证请求命令,如数据域的第二字节上的数据为03则为获取版本号命令;
在本实施例中,注册请求命令的数据域包括32字节的挑战参数和32字节的注册地应用参数,其中,挑战参数是客户信任端数据;注册地应用参数是注册用户信息;认证请求命令数据域包括32字节的挑战参数、32字节的注册地应用参数、1字节的密钥句柄长度和密钥句柄;认证请求命令符合APDU格式,具体为:CLINP1P2Lc数据域Le,具体的,在本实施例中,P1表示控制字符,如P1的值为0x07则表示智能密钥设备必须返回身份验证响应信息;如P1的值为0x03则表示智能密钥设备进行签名与身份验证操作并返回响应消息;
步骤207:智能密钥设备判断当前用户是否已经注册过,是则报错,返回步骤204,否则执行步骤208;
步骤208:智能密钥设备生成用户密钥对,根据生成的用户密钥对和注册请求命令中的注册地应用参数得到密钥信息,获取空闲的密钥索引;
在本实施例中,每一个密钥索引对应于密钥句柄、注册地应用参数、密钥对、计数器;
步骤209:智能密钥设备判断是否在预设时间内接收到用户按键信息,是则执行步骤210,否则报错,返回步骤204;
在本实施例中的预设时间优选为5秒;
步骤210:智能密钥设备将生成的用户密钥对与密钥索引进行关联,并根据预设算法对注册请求命令中的数据域部分进行签名,得到第一签名结果并保存;
优选的,在本实施例中,用户密钥对为ECC密钥对,长度为96字节;预设算法为ECDSA算法,还可以为SM2算法;
具体的,本实施例中进行签名的待签名数据包括:1字节的保留字符(例如0x00)、32字节应答参数、32字节注册地应用参数、用户密钥对的密钥句柄和65字节的用户公钥;
具体的,在本实施中,进行签名的具体实现过程为:根据预设算法对注册请求命令中的数据域部分进行哈希计算得到第一哈希值,使用用户密钥对中的私钥对第一哈希值进行签名得到第一签名结果;
步骤211:智能密钥设备使用预置的根密钥对的私钥对用户密钥对颁发一个数字证书;
具体的,本实施例中的数字证书中包括:用户信息、用户公钥等注册地应用参数;
在本实施例中,生成数字证书的过程具体为:智能密钥设备内部保存一个证书模板,然后智能密钥设备生成证书序列号,用该证书序列号和用户公钥更新证书中的序列号、用户公钥,使用智能密钥设备内预存的私钥对证书模板中的版本号和公钥等数据进行签名操作,把签名结果放到证书模板的签名项中;
颁发证书的过程包括:智能密钥设备内预置一对根密钥对,该根密钥对的公钥存在服务器端,智能密钥设备使用根密钥对的私钥对用户密钥对颁发一个数字证书;服务器端可以使用根密钥对对的公钥验证这个证书的合法性,达到双向认证的目的;
在本实施中,优选的,数字证书为X.509证书,具体格式为:
[Certificate::=SEQUENCE{
tbsCertificateTBSCertificate,//证书信息,结构见下
signatureAlgorithmAlgorithmIdentifier,//办法者签名算法标识
signatureBITSTRING//颁发者的签名
}
其中第一项TBSCertificate的结构:
TBSCertificate::=SEQUENCE{
version[0]EXPLICITVersionDEFAULTv1,//X.509版本号
serialNumberCertificateSerialNumber,//证书序列号
signatureAlgorithmIdentifier,//签名算法标示符
issuerName,//证书的颁发者名称
validityValidity,//证书有效日期
subjectName,//主题信息
subjectPublic智能密钥设备InfoSubjectPublic智能密钥设备Info,//证书持有人的公钥
extensions[3]EXPLICITExtensionsOPTIONAL//证书扩展项,可选
}
本方案中的证书签名对象就是TBSCertificate的内容;即使用智能密钥设备内预存的私钥对TBSCertificate的内容进行签名操作;
步骤212:智能密钥设备根据密钥索引保存生成的用户密钥对;
在本实施例中,用户密钥对的保存格式是预定的,具体为:4字节用户密钥对的密钥句柄+32字节注册地应用参数+96字节用户密钥对+4字节计数器(注册时为0);
其中,计数器用于表示对使用智能密钥设备对身份进行验证操作的次数,初始值为0,每成功认证一次,计数器加1;
步骤213:智能密钥设备按照第一预设格式给上位机返回注册响应数据,返回步骤204;
在本实施中,注册响应数据包括数字证书和第一签名结果,第一预设格式具体为:
步骤214:智能密钥设备根据认证请求命令中的密钥句柄长度和密钥句柄判断对应的密钥句柄是否被注册过,是则执行步骤215,否则报错,返回步骤204;
在本实施例中,步骤214具体包括:
步骤214-1:智能密钥设备判断认证请求命令中的密钥句柄长度是否与保存的密钥句柄长度相同,是则执行步骤214-2,否则报错,返回步骤204;
步骤214-2:智能密钥设备判断认证请求命令中的密钥句柄是否与保存的密钥句柄相同,是则执行步骤215,否则返回无效密钥信息,返回步骤204;
步骤215:智能密钥设备判断认证请求命令中的注册地应用参数是否与保存的注册地应用参数一致,是则执行步骤216,否则报错,返回步骤204;
具体的,本实施例中,密钥索引、密钥句柄、注册地应用参数、用户密钥对一一对应保存;
步骤216:智能密钥设备等待用户按键信息,并判断是否在预设时间内接收到用户按键信息,是则执行步骤217,否则报错,返回步骤204;
步骤217:智能密钥设备根据认证请求命令中的密钥句柄获取对应的用户密钥对,根据预设算法使用用户密钥对中的私钥,对认证请求命令的数据域进行签名得到第二签名结果;
在本实施例中,步骤213中的数据域包括:32字节的注册地应用参数、1字节的用户存在字节、4字节的计数器、32字节的挑战参数;
步骤218:智能密钥设备按照第二预设格式给上位机返回认证响应数据,返回步骤204;
在本实施例中,第二预设格式为:
用户存在字节 计数器 第二签名结果
1 4
步骤219:智能密钥设备返回预设的字符串,返回步骤204;
具体的,本实施例中的预设的字符串为U2F_V2。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (13)

1.一种智能密钥设备的工作方法,其特征在于,包括:
步骤S1:智能密钥设备上电,进行初始化;
步骤S2:当所述智能密钥设备接收到上位机发送的枚举描述符命令时,所述智能密钥设备设置描述符并将其返回给所述上位机;
步骤S3:当所述智能密钥设备接收到上位机发送的命令,判断所述命令的类型,如为注册请求命令则执行步骤S4,如为认证请求命令则执行步骤S7,如为其他命令则根据所述命令执行相应操作,返回步骤S3;
步骤S4:所述智能密钥设备判断是否接收到用户按键信息,是则执行步骤S5,否则报错,返回步骤S3;
步骤S5:所述智能密钥设备将生成的用户密钥对与对应的创建的密钥句柄进行关联,并根据预设算法对所述注册请求命令中的数据域部分进行签名,得到第一签名结果并保存;生成证书序列号,并使用预置的根密钥对的私钥对所述用户密钥对颁发一个与所述证书序列号对应的数字证书;所述注册请求命令中的数据域部分包括挑战参数和注册地应用参数;
步骤S6:所述智能密钥设备根据预定格式保存所述用户密钥对和所述密钥句柄,并根据所述数字证书和所述第一签名结果生成注册响应数据并返回给所述上位机,返回步骤S3;
步骤S7:所述智能密钥设备根据所述认证请求命令判断用户是否合法,是则执行步骤S8,否则报错,返回步骤S3;
步骤S8:所述智能密钥设备等待用户按键信息,并判断是否接收到用户按键信息,是则执行步骤S9,否则报错,返回步骤S3;
步骤S9:所述智能密钥设备根据所述认证请求命令中的密钥句柄获取对应的用户密钥对,根据预设算法使用所述用户密钥对中的私钥,对所述认证请求命令的数据域进行签名得到第二签名结果;
步骤S10:所述智能密钥设备根据所述第二签名结果生成认证响应数据并返回给上位机,返回步骤S3。
2.如权利要求1所述的方法,其特征在于,所述智能密钥设备设置描述符并将其返回给所述上位机,包括:
步骤S22-1:所述智能密钥设备设置配置描述符内容为HID设备;
步骤S22-2:所述智能密钥设备设置报告描述符;
步骤S22-3:所述智能密钥设备将所述配置描述符和所述报告描述符返回给所述上位机。
3.如权利要求1所述的方法,其特征在于,所述步骤S3中如所述智能密钥设备判断所述命令的类型为协议命令则执行步骤A1;
步骤A1:所述智能密钥设备检测所述命令中的第五个字节,如第五个字节上的数据为第一数据则将接收到的数据返回给所述上位机,返回步骤S3;如第五个字节上的数据为第二数据则将十七个有效字节的数据返回给所述上位机,返回步骤S3。
4.如权利要求1所述的方法,其特征在于,所述步骤S3中如所述智能密钥设备判断命令的类型为获取版本号命令则执行步骤B1;
步骤B1:所述智能密钥设备将预设的字符串返回给所述上位机,返回步骤S3。
5.如权利要求1所述的方法,其特征在于,所述步骤S3与步骤S4之间包括:
步骤C1:所述智能密钥设备生成用户密钥对和所述密钥句柄,根据所述用户密钥对和所述注册请求命令中的注册地应用参数得到密钥信息,查找空闲的密钥索引,如找到则执行步骤S4,如未找到则执行步骤C2;
步骤C2:所述智能密钥设备判断空间是否有大小合适的剩余空间,是则生成对应的密钥索引,执行步骤S4,否则返回空间不足信息,返回步骤S3;
所述步骤S5还包括:所述智能密钥设备将生成的用户密钥对与所述密钥索引进行关联;
所述步骤S6还包括:所述智能密钥设备根据预定格式保存所述用户密钥对、所述密钥索引和所述注册请求命令中的注册地应用参数。
6.如权利要求1所述的方法,其特征在于,所述步骤S4判断为否时还包括:所述智能密钥设备判断等待时间是否到达预设时间,是则报错,返回步骤S3,否则返回步骤S4。
7.如权利要求1所述的方法,其特征在于,所述根据预设算法对所述注册请求命令中的数据域部分进行签名,包括:
所述智能密钥设备根据所述预设算法对所述注册请求命令中的数据域部分进行哈希计算得到第一哈希值,使用所述用户密钥对中的私钥对所述第一哈希值进行签名得到所述第一签名结果。
8.如权利要求1所述的方法,其特征在于,所述步骤S7判断为是时还包括:
步骤S71:所述智能密钥设备根据所述认证请求命令中的密钥句柄和密钥句柄长度判断对应的密钥句柄是否被注册过,是则执行步骤S72,否则报错,返回步骤S3;
步骤S72:所述智能密钥设备判断所述认证请求命令中的注册地应用参数是否与保存的注册地应用参数一致,是则执行步骤S8,否则报错,返回步骤S3。
9.如权利要求8所述的方法,其特征在于,所述步骤S71具体包括:
步骤S71-1:所述智能密钥设备判断所述认证请求命令中的密钥句柄长度是否与保存的密钥句柄长度相同,是则执行步骤S71-2,否则报错,返回步骤S3;
步骤S71-2:所述智能密钥设备判断所述认证请求命令中的密钥句柄是否与保存的密钥句柄相同,是则执行步骤S72,否则报错,返回步骤S3。
10.如权利要求1所述的方法,其特征在于,所述智能密钥设备根据预定格式保存所述用户密钥对和所述密钥句柄,包括:所述智能密钥设备根据预定格式保存所述用户密钥对、所述密钥句柄和所述注册请求命令中的注册地应用参数;
所述步骤S3与步骤S4之间包括:
步骤D1:所述智能密钥设备根据所述注册地应用参数判断当前用户是否已经注册过了,是则报错,返回步骤S3,否则执行步骤D2;
步骤D2:所述智能密钥设备生成所述用户密钥对,根据所述用户密钥对和所述注册请求命令中的注册地应用参数得到密钥信息,执行步骤S4。
11.如权利要求10所述的方法,其特征在于,所述步骤D1包括:
所述智能密钥设备判断是否保存了所述注册地应用参数,是则当前用户已经注册过了,否则当前用户未注册。
12.如权利要求1所述的方法,其特征在于,
所述步骤S8判断为否时还包括:所述智能密钥设备判断等待时间是否到达预设时间,是则报错,返回步骤S3,否则返回步骤S8。
13.如权利要求1所述的方法,其特征在于,所述步骤S3中判断所述命令的类型,具体包括:所述智能密钥设备根据所述命令中数据域的第二字节判断所述命令的类型,如数据域的第二字节上的数据为第一数值则为注册请求命令,如数据域的第二字节上的数据为第二数值则为认证请求命令。
CN201510332534.9A 2015-06-16 2015-06-16 一种智能密钥设备的工作方法 Active CN105184566B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201510332534.9A CN105184566B (zh) 2015-06-16 2015-06-16 一种智能密钥设备的工作方法
PCT/CN2016/080630 WO2016202106A1 (zh) 2015-06-16 2016-04-29 一种智能密钥设备的工作方法
US15/561,779 US10263985B2 (en) 2015-06-16 2016-04-29 Work method for smart key device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510332534.9A CN105184566B (zh) 2015-06-16 2015-06-16 一种智能密钥设备的工作方法

Publications (2)

Publication Number Publication Date
CN105184566A true CN105184566A (zh) 2015-12-23
CN105184566B CN105184566B (zh) 2018-07-17

Family

ID=54906628

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510332534.9A Active CN105184566B (zh) 2015-06-16 2015-06-16 一种智能密钥设备的工作方法

Country Status (3)

Country Link
US (1) US10263985B2 (zh)
CN (1) CN105184566B (zh)
WO (1) WO2016202106A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105827655A (zh) * 2016-05-27 2016-08-03 飞天诚信科技股份有限公司 一种智能密钥设备及其工作方法
WO2016202106A1 (zh) * 2015-06-16 2016-12-22 飞天诚信科技股份有限公司 一种智能密钥设备的工作方法
CN108199844A (zh) * 2018-04-09 2018-06-22 北京无字天书科技有限公司 一种支持离线sm9算法密钥首次申请下载方法
CN109257332A (zh) * 2018-08-15 2019-01-22 飞天诚信科技股份有限公司 数字货币硬件钱包应用更新的安全通道的创建方法及装置
WO2019037422A1 (zh) * 2017-08-22 2019-02-28 深圳市文鼎创数据科技有限公司 密钥及密钥句柄的生成方法、系统及智能密钥安全设备
CN110740042A (zh) * 2019-10-21 2020-01-31 飞天诚信科技股份有限公司 一种智能密钥设备及其验证方法
CN111414638A (zh) * 2020-04-23 2020-07-14 飞天诚信科技股份有限公司 一种区分密钥生成方式的实现方法及装置
CN111917551A (zh) * 2020-06-23 2020-11-10 深圳奥联信息安全技术有限公司 一种基于无证书公钥的句柄访问保护方法和系统

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110830168B (zh) * 2019-11-11 2021-11-02 飞天诚信科技股份有限公司 一种usb通讯的实现方法及装置
CN112787996B (zh) * 2020-12-25 2022-03-15 郑州信大捷安信息技术股份有限公司 一种密码设备管理方法及系统
CN114785505B (zh) * 2022-06-22 2022-08-23 中科雨辰科技有限公司 一种获取异常设备的数据处理系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101051907A (zh) * 2007-05-14 2007-10-10 北京握奇数据系统有限公司 面向签名数据的安全认证方法及其系统
CN102521186A (zh) * 2011-11-22 2012-06-27 飞天诚信科技股份有限公司 一种USB Key及其与终端进行通信的方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070106897A1 (en) * 2005-11-07 2007-05-10 Michael Kulakowski Secure RFID authentication system
GB0615428D0 (en) * 2006-08-03 2006-09-13 Iti Scotland Ltd Workflow assurance and authentication system
CN101820346B (zh) * 2010-05-04 2012-06-27 飞天诚信科技股份有限公司 一种安全数字签名方法
US20120173873A1 (en) * 2011-01-04 2012-07-05 Ray Bell Smart grid device authenticity verification
US20120323717A1 (en) * 2011-06-16 2012-12-20 OneID, Inc. Method and system for determining authentication levels in transactions
US9621356B2 (en) * 2014-03-06 2017-04-11 Apple Inc. Revocation of root certificates
CN105184566B (zh) * 2015-06-16 2018-07-17 飞天诚信科技股份有限公司 一种智能密钥设备的工作方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101051907A (zh) * 2007-05-14 2007-10-10 北京握奇数据系统有限公司 面向签名数据的安全认证方法及其系统
CN102521186A (zh) * 2011-11-22 2012-06-27 飞天诚信科技股份有限公司 一种USB Key及其与终端进行通信的方法

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016202106A1 (zh) * 2015-06-16 2016-12-22 飞天诚信科技股份有限公司 一种智能密钥设备的工作方法
US10637654B2 (en) 2016-05-27 2020-04-28 Feitian Technologies Co., Ltd. Smart key device and working method thereof
WO2017202058A1 (zh) * 2016-05-27 2017-11-30 飞天诚信科技股份有限公司 一种智能密钥设备及其工作方法
CN105827655A (zh) * 2016-05-27 2016-08-03 飞天诚信科技股份有限公司 一种智能密钥设备及其工作方法
WO2019037422A1 (zh) * 2017-08-22 2019-02-28 深圳市文鼎创数据科技有限公司 密钥及密钥句柄的生成方法、系统及智能密钥安全设备
CN108199844A (zh) * 2018-04-09 2018-06-22 北京无字天书科技有限公司 一种支持离线sm9算法密钥首次申请下载方法
CN109257332A (zh) * 2018-08-15 2019-01-22 飞天诚信科技股份有限公司 数字货币硬件钱包应用更新的安全通道的创建方法及装置
CN110740042A (zh) * 2019-10-21 2020-01-31 飞天诚信科技股份有限公司 一种智能密钥设备及其验证方法
CN110740042B (zh) * 2019-10-21 2022-03-18 飞天诚信科技股份有限公司 一种智能密钥设备及其验证方法
CN111414638A (zh) * 2020-04-23 2020-07-14 飞天诚信科技股份有限公司 一种区分密钥生成方式的实现方法及装置
CN111414638B (zh) * 2020-04-23 2023-03-24 飞天诚信科技股份有限公司 一种区分密钥生成方式的实现方法及装置
CN111917551A (zh) * 2020-06-23 2020-11-10 深圳奥联信息安全技术有限公司 一种基于无证书公钥的句柄访问保护方法和系统
CN111917551B (zh) * 2020-06-23 2021-10-01 深圳奥联信息安全技术有限公司 一种基于无证书公钥的句柄访问保护方法和系统

Also Published As

Publication number Publication date
US20180091509A1 (en) 2018-03-29
CN105184566B (zh) 2018-07-17
WO2016202106A1 (zh) 2016-12-22
US10263985B2 (en) 2019-04-16

Similar Documents

Publication Publication Date Title
CN105184566A (zh) 一种智能密钥设备的工作方法
Khan et al. Chaotic hash-based fingerprint biometric remote user authentication scheme on mobile devices
CN102648610B (zh) 能够与多个独立的应用提供者一起使用的强认证令牌
Wang et al. Cryptanalysis and improvement on two efficient remote user authentication scheme using smart cards
Chen et al. Mobile device integration of a fingerprint biometric remote authentication scheme
CN101414909B (zh) 网络应用用户身份验证系统、方法和移动通信终端
CN102088353B (zh) 基于移动终端的双因子认证方法及系统
CN116722990B (zh) 增强加密算法的强度的系统和方法
CN104283688B (zh) 一种USBKey安全认证系统及安全认证方法
CN105516201A (zh) 一种多服务器环境下轻量级匿名认证与密钥协商方法
CN105052072A (zh) 远程认证和业务签名
CN101383707A (zh) 一种轻量级认证系统及其关键算法
CN106850228A (zh) 一种便携式智能口令管理体制的建立与操作方法
CN106130716A (zh) 基于认证信息的密钥交换系统及方法
CA2809144A1 (en) Encryption device and method
CN101420298B (zh) 协商密钥的方法和系统
CN101944216A (zh) 双因子在线交易安全认证方法及系统
Chung et al. Weaknesses and improvement of Wang et al.'s remote user password authentication scheme for resource-limited environments
CN105227520A (zh) 一种账户密码设置及用户身份认证的方法及系统
CN104125230A (zh) 一种短信认证服务系统以及认证方法
CN206962826U (zh) 基于fido u2f双因子指纹识别的身份认证系统
CN106656993A (zh) 一种动态验证码验证方法及装置
CN101178753A (zh) 身份验证的方法和装置
CN103873477A (zh) 农资物联网中基于二维码及非对称加密的访问认证方法
CN102222188A (zh) 一种信息系统用户密码的生成方法

Legal Events

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