CN107395589A - 指纹信息获取方法及终端 - Google Patents

指纹信息获取方法及终端 Download PDF

Info

Publication number
CN107395589A
CN107395589A CN201710588016.2A CN201710588016A CN107395589A CN 107395589 A CN107395589 A CN 107395589A CN 201710588016 A CN201710588016 A CN 201710588016A CN 107395589 A CN107395589 A CN 107395589A
Authority
CN
China
Prior art keywords
signature
key
client
encrypted
bag
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.)
Withdrawn
Application number
CN201710588016.2A
Other languages
English (en)
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.)
Shenzhen Jinli Communication Equipment Co Ltd
Original Assignee
Shenzhen Jinli Communication Equipment 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 Shenzhen Jinli Communication Equipment Co Ltd filed Critical Shenzhen Jinli Communication Equipment Co Ltd
Priority to CN201710588016.2A priority Critical patent/CN107395589A/zh
Publication of CN107395589A publication Critical patent/CN107395589A/zh
Withdrawn legal-status Critical Current

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/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • 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
    • H04L9/3249Cryptographic 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 using RSA or related signature schemes, e.g. Rabin scheme
    • 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/3271Cryptographic 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 challenge-response
    • H04L9/3273Cryptographic 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 challenge-response for mutual authentication

Abstract

本发明实施例公开了一种指纹信息获取方法及终端,其中方法包括:客户端对请求包进行签名和加密,得到传输请求包;该客户端将该传输请求包发送给指纹器件;该指纹器件对该传输请求包进行验签和解密;该指纹器件获取与该传输请求包相对应的响应包;该指纹器件对该响应包进行签名和加密,得到传输响应包;该指纹器件将该传输响应包发送给该客户端;该客户端对该传输响应包进行验签和解密;该客户端获取该传输响应包中携带的指纹信息。本发明实施例可以实现客户端和指纹器件的双向安全认证,保证指纹信息获取的安全性。

Description

指纹信息获取方法及终端
技术领域
本发明涉及指纹识别技术领域,尤其涉及一种指纹信息获取方法及终端。
背景技术
相比于传统的身份识别方法,生物特征识别技术具有稳定、便捷、不易被仿造等优点,成为了安全认证的首选方式,近年来在国际上已经得到广泛的研究和应用。在众多的用于身份识别的生物识别技术(如指纹识别、人脸识别、虹膜识别等)中,指纹识别技术是目前应用最广泛、价格最低廉的技术之一。但是,存储在指纹传感器等指纹器件中的指纹信息容易被恶意地获取,导致个人的指纹信息泄露,这严重威胁着个人的隐私安全。
发明内容
本发明实施例提供一种指纹信息获取方法,可以实现客户端和指纹器件的双向安全认证,保证指纹信息获取的安全性。
第一方面,本发明实施例提供了一种指纹信息获取方法,该方法包括:
客户端对请求包进行签名和加密,得到传输请求包,该客户端运行在可信执行环境下,该请求包用于该客户端向指纹器件请求获取指纹信息;
该客户端将经过签名和加密的传输请求包发送给该指纹器件;
当接收到来自该指纹器件的传输响应包时,该客户端对该传输响应包进行验签和解密,该传输响应包是经过该指纹器件签名和加密,响应于该传输请求包的数据包;
若验签成功且解密成功,则该客户端获取该传输响应包中携带的指纹信息;
其中,该指纹器件和该客户端进行签名时所采用的密钥不同,该指纹器件和该客户端进行加密时所采用的密钥不同。
第二方面,本发明实施例提供了另一种指纹信息获取方法,该方法包括:
当接收到来自客户端的传输请求包时,指纹器件对该传输请求包进行验签和解密,该传输请求包是经过该客户端签名和加密,用于该客户端向该指纹器件请求获取指纹信息的数据包;
若验签成功且解密成功,则该指纹器件获取与该传输请求包相对应的响应包,该响应包用于该指纹器件向该客户端发送指纹信息;
该指纹器件对该响应包进行签名和加密,得到传输响应包;
该指纹器件将经过签名和加密的传输响应包发送给该客户端。
第三方面,本发明实施例提供了一种终端,该终端包括:
第一请求处理单元,用于客户端对请求包进行签名和加密,得到传输请求包,该客户端运行在可信执行环境下,该请求包用于该客户端向指纹器件请求获取指纹信息;
第一发送单元,用于该客户端将经过签名和加密的传输请求包发送给该指纹器件;
第一响应处理单元,用于当接收到来自该指纹器件的传输响应包时,该客户端对该传输响应包进行验签和解密,该传输响应包是经过该指纹器件签名和加密,响应于该传输请求包的数据包;
第一获取单元,用于当该第一响应处理单元验签成功且解密成功时,该客户端获取该传输响应包中携带的指纹信息。
第四方面,本发明实施例提供了一种指纹器件,该指纹器件包括:
第二请求处理单元,用于当接收到来自客户端的传输请求包时,对该传输请求包进行验签和解密,该传输请求包是经过该客户端签名和加密,用于该客户端向该指纹器件请求获取指纹信息的数据包;
第二获取单元,用于当该第二请求处理单元验签成功且解密成功时,获取与该传输请求包相对应的响应包,该响应包用于该指纹器件向该客户端发送指纹信息;
第二响应处理单元,用于对该响应包进行签名和加密,得到传输响应包;
第二发送单元,用于将经过签名和加密的传输响应包发送给该客户端。
第五方面,本发明实施例提供了另一种终端,该终端包括存储器、处理器以及存储在该存储器并在该处理器上运行的计算机程序,该处理器执行该计算机程序时实现:
客户端对请求包进行签名和加密,得到传输请求包,该客户端运行在可信执行环境下,该请求包用于该客户端向指纹器件请求获取指纹信息;
该客户端将经过签名和加密的传输请求包发送给该指纹器件;
当接收到来自该指纹器件的传输响应包时,该客户端对该传输响应包进行验签和解密,该传输响应包是经过该指纹器件签名和加密,响应于该传输请求包的数据包;
若验签成功且解密成功,则该客户端获取该传输响应包中携带的指纹信息;
其中,该指纹器件和该客户端进行签名时所采用的密钥不同,该指纹器件和该客户端进行加密时所采用的密钥不同。
第六方面,本发明实施例提供了另一种指纹器件,该指纹器件包括存储器、处理器以及存储在该存储器并在该处理器上运行的计算机程序,该处理器执行该计算机程序时实现:
当接收到来自客户端的传输请求包时,指纹器件对该传输请求包进行验签和解密,该传输请求包是经过该客户端签名和加密,用于该客户端向该指纹器件请求获取指纹信息的数据包;
若验签成功且解密成功,则该指纹器件获取与该传输请求包相对应的响应包,该响应包用于该指纹器件向该客户端发送指纹信息;
该指纹器件对该响应包进行签名和加密,得到传输响应包;
该指纹器件将经过签名和加密的传输响应包发送给该客户端。
第七方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现:
客户端对请求包进行签名和加密,得到传输请求包,该客户端运行在可信执行环境下,该请求包用于该客户端向指纹器件请求获取指纹信息;
该客户端将经过签名和加密的传输请求包发送给该指纹器件;
当接收到来自该指纹器件的传输响应包时,该客户端对该传输响应包进行验签和解密,该传输响应包是经过该指纹器件签名和加密,响应于该传输请求包的数据包;
若验签成功且解密成功,则该客户端获取该传输响应包中携带的指纹信息;
其中,该指纹器件和该客户端进行签名时所采用的密钥不同,该指纹器件和该客户端进行加密时所采用的密钥不同。
第八方面,本发明实施例提供了另一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现:
当接收到来自客户端的传输请求包时,指纹器件对该传输请求包进行验签和解密,该传输请求包是经过该客户端签名和加密,用于该客户端向该指纹器件请求获取指纹信息的数据包;
若验签成功且解密成功,则该指纹器件获取与该传输请求包相对应的响应包,该响应包用于该指纹器件向该客户端发送指纹信息;
该指纹器件对该响应包进行签名和加密,得到传输响应包;
该指纹器件将经过签名和加密的传输响应包发送给该客户端。
本发明实施例在可信执行环境和指纹器件之间建立了双向安全认证机制,保证指纹器件仅能被正确的可信执行环境访问者控制,即只有正确的可信执行环境访问者才能访问指纹器件获取的指纹信息,确保了指纹信息获取的安全性。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种指纹信息获取方法的示意流程图;
图2是本发明实施例提供的一种客户端对请求包进行签名和加密的方法的示意流程图;
图3是本发明实施例提供的一种指纹器件对传输请求包进行验签和解密的方法的示意流程图;
图4是本发明实施例提供的一种指纹器件对响应包进行签名和加密的方法的示意流程图;
图5是本发明实施例提供的一种客户端对传输响应包进行验签和解密的方法的示意流程图;
图6是本发明实施例提供的一种终端的示意性框图;
图7是本发明实施例提供的一种指纹器件的示意性框图;
图8是本发明实施例提供的另一种终端的示意性框图;
图9是本发明实施例提供的另一种指纹器件的示意性框图;
图10是本发明实施例提供的又一种终端的示意性框图;
图11是本发明实施例提供的又一种指纹器件的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“若”可以依据上下文被解释为“当...时”或“一旦”。类似地,短语“若确定”或“若接收到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦接收到[所描述条件或事件]”或“响应于接收到[所描述条件或事件]”。
具体实现中,本发明实施例中描述的终端包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机、可穿戴设备或其它能够引入富执行环境(Rich Execution Environment,REE)和可信执行环境(Trusted Execution Environment,TEE),并能安装指纹传感器等指纹器件的终端设备。还应当理解的是,在某些实施例中,所述设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
在接下来的讨论中,描述了包括显示器和触摸敏感表面的终端。然而,应当理解的是,终端可以包括诸如物理键盘、鼠标和/或控制杆的一个或多个其它物理用户接口设备。
终端支持各种应用程序,例如以下中的一个或多个:绘图应用程序、演示应用程序、文字处理应用程序、网站创建应用程序、盘刻录应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息收发应用程序、锻炼支持应用程序、照片管理应用程序、数码相机应用程序、数字摄影机应用程序、web浏览应用程序、数字音乐播放器应用程序和/或数字视频播放器应用程序。
可以在终端上执行的各种应用程序可以使用诸如触摸敏感表面的至少一个公共物理用户接口设备。可以在应用程序之间和/或相应应用程序内调整和/或改变触摸敏感表面的一个或多个功能以及终端上显示的相应信息。这样,终端的公共物理架构(例如,触摸敏感表面)可以支持具有对用户而言直观且透明的用户界面的各种应用程序。
指纹识别技术是目前应用最广泛、价格最低廉的生物识别技术之一,其应用领域包括企业考勤、门禁系统、终端解锁、移动支付等等。在现有技术中,指纹在TEE下进行控制,指纹信息的获取和对比都在TEE下进行,但指纹传感器不判断获取方是否合法。这使得终端中存储的指纹信息容易被恶意地获取,导致个人的指纹信息泄露,这严重威胁着个人的隐私安全。
为了解决上述问题,本发明实施例提供了一种指纹信息获取方法。应理解,指纹器件获取的指纹信息只能通过TEE来访问和控制,REE无法访问。其中,指纹器件可以为指纹传感器或指纹芯片。REE,即普通的执行环境,是指开放性较高的一个执行环境,也即终端在REE下执行操作时的安全性较低。TEE是指相对REE来说开放性较低,也即终端在TEE下执行操作时的安全性较高。TEE可以分为两个部分:第一部分是REE端应用程度界面(Application Program Interface,API),包括TEE功能API和TEE客户端API,主要供一般用户端应用软件接入TEE环境用;第二部分是TEE端的可信应用程序、可信操作系统与硬件外围设备(包括可信用户界面、安全元件、存储空间等)。
为了确保安全,具备TEE的终端在开机或重启时,首先启动TEE,再启动REE。具体地,可信应用程序建立必须开放给用户端应用程序(如金融机构开发的交易应用程序)的可信应用程序界面,REE用户端应用程序可透过TEE客户端API或TEE功能API与可信应用程序互通,以存取TEE特定信息与交换信息。例如,进行交易时,经由可信用户界面输入卡片密码,传递给TEE端安全元件产生交易授权资料,再回传给REE端用户端应用程序进行交易验证。
在本发明实施例的指纹信息获取方法中,终端中的安全芯片生成4对密钥对:包括第一签名私钥A与第一签名公钥A'的第一签名密钥对A/A'、包括第二签名私钥C与第二签名公钥C'的第二签名密钥对C/C'、包括第一加密私钥B与第一加密公钥B'的第一加密密钥对B/B'、以及包括第二加密私钥D与第二加密公钥D'的第二加密密钥对D/D'。其中,第一签名私钥A和第二签名私钥C用于签名,第一签名公钥A'和第二签名公钥C'用于验签;第一加密公钥B'和第二加密公钥D'用于加密,第一加密私钥B和第二加密私钥D用于解密。
安全芯片将生成的第一签名密钥对A/A'和第二加密密钥对D/D'分配给TEE,以及将生成的第二签名密钥对C/C'和第一加密密钥对B/B'分配给指纹器件。具体地,第一签名密钥对A/A'和第二加密密钥对D/D'在工厂模式下被保存到终端的回环保护分区(ReplayProtect Memory Block,RPMB)内;第二签名密钥对C/C'和第一加密密钥对B/B'在工厂模式下被保存到指纹器件的存储空间内。其中,终端的RPMB采用了授权加密的机制保护数据,用户在需要存储重要数据的时候可以使用该分区。另外,RPMB的接口只对TEE开放,在其他的执行环境(如REE)下则无法访问操作RPMB中的数据。
在各自分配到2对密钥对之后,TEE和指纹器件均将2对密钥对中的公钥给对方加密保存。具体地,TEE将第一签名公钥A'和第二加密公钥D'给指纹器件加密保存,指纹器件将第二签名公钥C'和第一加密公钥B'给TEE加密保存。从而,终端的RPMB内存储有第一签名私钥A、第一加密公钥B'、第二签名公钥C'和第二加密私钥D,指纹器件的存储空间内存储有第一签名公钥A'、第一加密私钥B、第二签名私钥C和第二加密公钥D'。
当TEE端的可信应用程序访问指纹器件时,首先采用TEE的第一签名私钥A签名,并采用指纹器件的第一加密公钥B'对自身的访问请求信息加密,然后将经过签名和加密的访问请求信息发送给指纹器件。
当指纹器件接收到来自TEE端的可信应用程序的访问请求信息时,首先采用TEE的第一签名公钥A'验签,验签成功后,再采用自身的第一加密私钥B解密该访问请求信息,如果解密成功,则指纹器件可以获取到针对该访问请求信息的正确响应信息。
然后,指纹器件采用自身的第二签名私钥C签名,并采用TEE的第二加密公钥D'对获取到的响应信息加密,再将经过签名和加密的响应信息发送给TEE端的可信应用程序。
当TEE端的可信应用程序接收到来自指纹器件的响应信息时,首先采用指纹器件的第二签名公钥C'验签,验签成功后,再采用TEE的第二加密私钥D解密该响应信息,如果解密成功,则TEE端的可信应用程序可以访问指纹器件。
具体地,当上述访问请求信息是用于TEE端的可信应用程序请求获取指纹信息时,上述响应信息可以携带指纹信息。从而,当TEE端的可信应用程序成功解密接收到的响应消息时,可以获取到该响应信息中携带的指纹信息。
采用本发明实施例,可以实现TEE端的可信应用程序和指纹器件的双向安全认证,保证指纹信息获取的安全性。下面将结合附图1至11对本发明实施例提供的指纹信息获取方法及终端分别进行详细的介绍。
参见图1,是本发明实施例提供的一种指纹信息获取方法的示意流程图。如图1所示的指纹信息获取方法可包括:
S11、客户端对请求包进行签名和加密,得到传输请求包。
其中,该客户端是安装在终端中,运行在TEE下的应用程序。也就是说,该客户端即上述TEE端的可信应用程序。
其中,该请求包是用于客户端请求访问指纹器件的数据包,即上述TEE端的可信应用程序访问指纹器件时的访问请求信息。具体地,该请求包可以用于客户端向指纹器件请求获取指纹信息。
作为一种可选的实施方式,客户端对请求包进行签名和加密的具体步骤可以如图2所示,图2是本发明实施例提供的一种客户端对请求包进行签名和加密的方法的示意流程图,包括步骤S111和S112。
S111、客户端根据请求包和第一签名私钥生成第一签名。
具体地,该客户端根据请求包和第一签名私钥生成第一签名可以包括:根据请求包的属性及其属性值,该客户端生成第一签名字符串;结合第一签名字符串与第一签名私钥,该客户端生成第二签名字符串;采用第一加密算法,该客户端对该第二签名字符串加密,得到第一签名。其中,第一加密算法可以是安全散列算法(Secure Hash Algorithm,SHA)SHA-1。
S112、该客户端采用第一加密公钥对该请求包的包体加密,得到第一已加密包体。
应理解,请求包是用于客户端请求访问指纹器件的数据包,数据包可以包括包头和包体。其中,数据包的包头可以记录该数据包的类型、长度等参数,数据包的包体可以是请求内容、响应内容等有用信息。
具体地,该客户端采用第一加密公钥对该请求包的包体加密,得到第一已加密包体可以包括:该客户端采用第二加密算法对请求包的包头中的第一参数值加密,得到第一加密参数值;该客户端采用第二加密算法和第一加密公钥对请求包的包头中的第二参数值加密,得到第二加密参数值;该客户端将该第一加密参数值和第二加密参数值作为加密参数,采用第三加密算法对请求包的包体加密,得到第一已加密包体。
其中,该第一参数值和第二参数值分别可以是单个参数的参数值,也可以是多个参数的参数值。该第二加密算法可以是消息摘要(Message Digest,MD)算法MD5,该第三加密算法可以是高级加密标准(Advanced Encryption Standard,AES)算法。
S12、该客户端将该传输请求包发送给指纹器件。
具体地,该客户端将该传输请求包发送给指纹器件可以包括:该客户端将上述第一签名封装到该请求包的包头中;该客户端将包括该第一签名和上述第一已加密包体的传输请求包发送给该指纹器件。
可选地,该指纹器件可以是指纹传感器或指纹芯片。具体地,该指纹器件可以安装在终端中。进一步具体地,该指纹器件和客户端可以安装在同一终端。
S13、该指纹器件对该传输请求包进行验签和解密。
作为一种可选的实施方式,该指纹器件对该传输请求包进行验签和解密的具体步骤可以如图3所示,图3是本发明实施例提供的一种指纹器件对传输请求包进行验签和解密的方法的示意流程图,包括步骤S131~S133。
S131、该指纹器件根据该传输请求包和第一签名公钥生成签名。
具体地,该指纹器件根据该传输请求包和第一签名公钥生成签名可以包括:根据该传输请求包的属性及其属性值,该指纹器件生成第一验签字符串;结合该第一验签字符串与第一签名公钥,该指纹器件生成第二验签字符串;采用第一加密算法,该指纹器件对该第二验签字符串加密,生成签名。
S132、该指纹器件将生成的签名与该传输请求包中的第一签名进行匹配比较。
S133、该指纹器件采用第一加密私钥对该传输请求包中的第一已加密包体解密。
若步骤S131生成的签名与该指纹器件接收到的传输请求包的包头中的第一签名相匹配,则表明验签成功。验签成功后,该指纹器件采用第一加密私钥对该传输请求包中的第一已加密包体解密。
具体地,该指纹器件采用第一加密私钥对该传输请求包中的第一已加密包体解密可以包括:该指纹器件采用第二加密算法对该传输请求包的包头中的第一参数值加密,得到第一解密参数值;该指纹器件采用第二加密算法和第一加密私钥对该传输请求包的包头中的第二参数值加密,得到第二解密参数值;该指纹器件将该第一解密参数值和第二解密参数值作为解密参数,采用第三加密算法对该传输请求包的包体,即第一已加密包体解密。如果解密成功,该指纹器件可以得到第一已解密包体。从而,实现了该指纹器件对该客户端的认证。
S14、该指纹器件获取与该传输请求包相对应的响应包。
当验签成功且解密成功时,该指纹器件获取与该传输请求包相对应的响应包。可选地,可以在指纹器件中预置请求包与响应包之间的映射关系。当该指纹器件成功解密该传输请求包后,可以通过查找该映射关系,获取与解密后的请求包相对应的响应包。其中,该响应包即上述响应信息,可以用于该指纹器件通知该客户端:该指纹器件对该客户端的认证通过,还可以用于该指纹器件响应该传输请求包,向该客户端传输指纹信息。
S15、该指纹器件对该响应包进行签名和加密,得到传输响应包。
作为一种可选的实施方式,该指纹器件对该响应包进行签名和加密的具体步骤可以如图4所示,图4是本发明实施例提供的一种指纹器件对响应包进行签名和加密的方法的示意流程图,包括步骤S151和S152。
S151、该指纹器件根据该响应包和第二签名私钥生成第二签名。
具体地,该指纹器件根据该响应包和第二签名私钥生成第二签名可以包括:根据该响应包的属性及其属性值,该指纹器件生成第一签名字符串;结合第一签名字符串与第二签名私钥,该指纹器件生成第二签名字符串;采用第一加密算法,该指纹器件对该第二签名字符串加密,得到第二签名。
S152、该指纹器件采用第二加密公钥对该响应包的包体加密,得到第二已加密包体。
具体地,该指纹器件采用第二加密公钥对该响应包的包体加密,得到第二已加密包体可以包括:该指纹器件采用第二加密算法对该响应包的包头中的第一参数值加密,得到第一加密参数值;该客户端采用第二加密算法和第二加密公钥对该响应包的包头中的第二参数值加密,得到第二加密参数值;该指纹器件将该第一加密参数值和第二加密参数值作为加密参数,采用第三加密算法对该响应包的包体加密,得到第二已加密包体。
S16、该指纹器件将该传输响应包发送给该客户端。
具体地,该指纹器件将该传输响应包发送给该客户端可以包括:该指纹器件将上述第二签名封装到该响应包的包头中;该指纹器件将包括该第二签名和上述第二已加密包体的传输响应包发送给该客户端。
S17、该客户端对该传输响应包进行验签和解密。
作为一种可选的实施方式,该客户端对该传输响应包进行验签和解密的具体步骤可以如图5所示,图5是本发明实施例提供的一种客户端对传输响应包进行验签和解密的方法的示意流程图,包括步骤S171~S173。
S171、该客户端根据该传输响应包和第二签名公钥生成签名。
具体地,该客户端根据该传输响应包和第二签名公钥生成签名可以包括:根据该传输响应包的属性及其属性值,该客户端生成第一验签字符串;结合该第一验签字符串与第二签名公钥,该客户端生成第二验签字符串;采用第一加密算法,该客户端对该第二验签字符串加密,生成签名。
S172、该客户端将生成的签名与该传输响应包中的第二签名进行匹配比较。
S173、该客户端采用第二加密私钥对该传输响应包中的第二已加密包体解密。
若步骤S171生成的签名与该客户端接收到的传输响应包的包头中的第二签名相匹配,则表明验签成功。验签成功后,该客户端采用第二加密私钥对该传输响应包中的第二已加密包体解密。
具体地,该客户端采用第二加密私钥对该传输响应包中的第二已加密包体解密可以包括:该客户端采用第二加密算法对该传输响应包的包头中的第一参数值加密,得到第一解密参数值;该客户端采用第二加密算法和第二加密私钥对该传输响应包的包头中的第二参数值加密,得到第二解密参数值;该客户端将该第一解密参数值和第二解密参数值作为解密参数,采用第三加密算法对该传输响应包的包体,即第二已加密包体解密。如果解密成功,该客户端可以得到第二已解密包体。从而,实现了该客户端对该指纹器件的认证。
S18、该客户端获取该传输响应包中携带的指纹信息。
可选地,该传输响应包中可以携带指纹信息。从而,在解密成功后,该客户端可以获取该传输响应包中携带的指纹信息。具体地,该客户端可以获取上述第二已解密包体中的指纹信息。
需要说明的是,上述第一签名私钥、第一加密公钥、第二签名公钥和第二加密私钥预置在终端的RPMB内,运行在TEE下的客户端可以调用RPMB内存储的密钥。上述第一签名公钥、第二加密私钥、第二签名私钥和第二加密公钥预置在指纹器件的存储空间内。
作为一种可选的实施方式,上述客户端和指纹器件安装在同一终端中,该终端中还具有安全芯片。其中,安全芯片生成4对密钥对:包括第一签名私钥A与第一签名公钥A'的第一签名密钥对A/A'、包括第二签名私钥C与第二签名公钥C'的第二签名密钥对C/C'、包括第一加密私钥B与第一加密公钥B'的第一加密密钥对B/B'、以及包括第二加密私钥D与第二加密公钥D'的第二加密密钥对D/D'。其中,第一签名私钥A和第二签名私钥C用于签名,第一签名公钥A'和第二签名公钥C'用于验签;第一加密公钥B'和第二加密公钥D'用于加密,第一加密私钥B和第二加密私钥D用于解密。
安全芯片将生成的第一签名密钥对A/A'和第二加密密钥对D/D'分配给TEE,以及将生成的第二签名密钥对C/C'和第一加密密钥对B/B'分配给指纹器件。具体地,第一签名密钥对A/A'和第二加密密钥对D/D'在工厂模式下被保存到终端的回环保护分区(ReplayProtect Memory Block,RPMB)内;第二签名密钥对C/C'和第一加密密钥对B/B'在工厂模式下被保存到指纹器件的存储空间内。
在各自分配到2对密钥对之后,TEE和指纹器件均将2对密钥对中的公钥给对方加密保存。具体地,TEE将第一签名公钥A'和第二加密公钥D'给指纹器件加密保存,指纹器件将第二签名公钥C'和第一加密公钥B'给TEE加密保存。从而,对TEE而言,只有具有第一签名公钥A'和第二加密公钥D'的指纹器件才是合法的指纹器件;对指纹器件而言,只有具有第二签名公钥C'和第一加密公钥B'的TEE才是合法的访问者。
从而,在客户端采用预置在终端的RPMB内的签名私钥和加密公钥对请求包分别进行签名和加密后,如果该客户端将经过签名和加密的请求包发送给指纹器件,该指纹器件采用预置在该指纹器件的存储空间内的第一签名公钥A'可以对接收到的请求包成功验签,且采用预置在该指纹器件的存储空间内的第一加密私钥B可以对接收到的请求包成功解密,表明该客户端具有与该第一签名公钥A'成对的第一签名私钥A,以及与该第一加密私钥B成对的第一加密公钥B',即该客户端是合法的TEE访问者,实现了指纹器件对客户端的认证。
类似地,在指纹器件采用预置在该指纹器件的存储空间内的签名私钥和加密公钥对响应包分别进行签名和加密后,如果该指纹器件将经过签名和加密的响应包发送给客户端,该客户端采用预置在终端的RPMB内的第二签名公钥C'可以对接收到的响应包成功验签,且采用预置在终端的RPMB内的第二加密私钥D可以对接收到的响应包成功解密,表明该指纹器件具有与该第二签名公钥C'成对的第二签名私钥C,以及与该第二加密私钥D成对的第二加密公钥D',即该指纹器件是合法的指纹器件,实现了客户端对指纹器件的认证。
在本发明实施例中,在客户端和指纹器件之间建立了双向安全认证机制,保证指纹器件仅能被认证成功的客户端控制,即只有认证成功的客户端才能访问指纹器件并获取指纹信息,确保了指纹信息获取的安全性。
参见图6,是本发明实施例提供的一种终端的示意性框图。如图6所示的终端可以包括:第一请求处理单元11、第一发送单元12、第一响应处理单元13和第一获取单元14。其中,
第一请求处理单元11,用于客户端对请求包进行签名和加密,得到传输请求包。其中,该客户端运行在TEE下,该请求包用于该客户端向指纹器件请求获取指纹信息。
第一发送单元12,用于该客户端将经过签名和加密的传输请求包发送给该指纹器件。
第一响应处理单元13,用于当接收到来自该指纹器件的传输响应包时,该客户端对该传输响应包进行验签和解密。其中,该传输响应包是经过该指纹器件签名和加密,响应于该传输请求包的数据包。
和第一获取单元14,用于当第一响应处理单元13验签成功且解密成功时,该客户端获取该传输响应包中携带的指纹信息。
在本发明实施例中,在客户端和指纹器件之间建立了双向安全认证机制,保证指纹器件仅能被认证成功的客户端控制,即只有认证成功的客户端才能访问指纹器件并获取指纹信息,确保了指纹信息获取的安全性
参见图7,是本发明实施例提供的另一种终端的示意性框图。具体地,本发明实施例的终端可以包括上述图6对应本实施例中的终端的第一请求处理单元11、第一发送单元12、第一响应处理单元13和第一获取单元14。可选地,在本发明实施例中,第一请求处理单元11可以具体包括:
第一签名单元111,用于客户端根据请求包和第一签名私钥生成第一签名;其中,该第一签名私钥与第一签名公钥组成第一签名密钥对,该第一签名密钥对中的私钥用于签名,公钥用于验签;
第一加密单元112,用于客户端采用第一加密公钥对请求包的包体加密,得到第一已加密包体;其中,该第一加密公钥与第一加密私钥组成第一加密密钥对,该第一加密密钥对中的公钥用于加密,私钥用于解密。
进一步地,在本发明实施例中,第一发送单元12,具体用于该客户端将包括该第一签名和第一已加密包体的传输请求包发送给该指纹器件。
可选地,在本发明实施例中,第一响应处理单元13可以具体包括:
第一生成单元131,用于该客户端根据该传输响应包和第二签名公钥生成签名;其中,该第二签名公钥和第二签名私钥组成第二签名密钥对,该第二签名密钥对中的私钥用于签名,公钥用于验签;
第一验签单元132,用于该客户端将第一生成单元131生成的签名与该传输响应包中的第二签名进行匹配比较,当第一生成单元131生成的签名与该第一签名相匹配时,确定验签成功;
第一解密单元133,用于当第一验签单元132验签成功时,该客户端采用第二加密私钥对该传输响应包中的第二已加密包体解密,得到第一已解密包体;其中,该第二加密私钥与第二加密公钥组成第二加密密钥对,该第二加密密钥对中的公钥用于加密,私钥用于解密。
进一步地,在本发明实施例中,第一获取单元14,具体用于该客户端获取该第一已解密包体中的指纹信息。
可选地,本发明实施例的终端还可以包括第一预置单元15,用于在该终端的RPMB内预置该第一签名私钥、第一加密公钥、第二签名公钥和第二加密私钥。其中,回环保护分区的接口对可信执行环境开放。
需要说明的是,本发明实施例提供的终端的具体工作流程请参考本发明实施例提供的方法流程部分,在此不再赘述。
在本发明实施例中,在客户端和指纹器件之间建立了双向安全认证机制,保证指纹器件仅能被认证成功的客户端控制,即只有认证成功的客户端才能访问指纹器件并获取指纹信息,确保了指纹信息获取的安全性。
参见图8,是本发明实施例提供的一种指纹器件的示意性框图。具体地,该指纹器件可以安装在终端中。如图8所示的指纹器件可以包括第二请求处理单元21、第二获取单元22、第二响应处理单元23和第二发送单元24。其中,
第二请求处理单元21,用于当接收到来自客户端的传输请求包时,对该传输请求包进行验签和解密。其中,该传输请求包是经过该客户端签名和加密,用于该客户端向该指纹器件请求获取指纹信息的数据包。
第二获取单元22,用于当第二请求处理单元21验签成功且解密成功时,获取与该传输请求包相对应的响应包。其中,该响应包用于该指纹器件向该客户端发送指纹信息。
第二响应处理单元23,用于对该响应包进行签名和加密,得到传输响应包。
第二发送单元24,用于将经过签名和加密的传输响应包发送给该客户端。
需要说明的是,本发明另一实施例提供的终端的具体工作流程请参考本发明另一实施例提供的方法流程部分,在此不再赘述。
在本发明实施例中,在客户端和指纹器件之间建立了双向安全认证机制,保证指纹器件仅能被认证成功的客户端控制,即只有认证成功的客户端才能访问指纹器件并获取指纹信息,确保了指纹信息获取的安全性。
参见图9,是本发明实施例提供的另一种指纹器件的示意性框图。具体地,本发明实施例的指纹器件可以包括上述图8对应本实施例中的指纹器件的第二请求处理单元21、第二获取单元22、第二响应处理单元23、和第二发送单元24。可选地,在本发明实施例中,第二请求处理单元21可以具体包括:
第二生成单元211,用于根据该传输请求包和第一签名公钥生成签名;其中,该第一签名公钥与第一签名私钥组成第一签名密钥对,该第一签名密钥对中的私钥用于签名,公钥用于验签;
第二验签单元212,用于将第二生成单元211生成的签名与该传输请求包中的第一签名进行匹配比较,当第二生成单元211生成的签名与该第一签名相匹配时,确定验签成功;
第二解密单元213,用于当第二验签单元212验签成功时,采用第一加密私钥对该传输请求包中的第一已加密包体解密,得到第二已解密包体;其中,该第一加密私钥与第一加密公钥组成第一加密密钥对,该第一加密密钥对中的公钥用于加密,私钥用于解密。
可选地,在本发明实施例中,第二响应处理单元23可以具体包括:
第二签名单元231,用于根据该响应包和第二签名私钥生成第二签名;其中,该第二签名私钥与第二签名公钥组成第二签名密钥对,该第二签名密钥对中的私钥用于签名,公钥用于验签;
第二加密单元232,用于采用第二加密公钥对该响应包的包体进行加密,得到第二已加密包体;其中,该第二加密公钥与第二加密私钥组成第二加密密钥对,该第二加密密钥对中的公钥用于加密,私钥用于解密。
进一步地,在本发明实施例中,第二发送单元24,具体用于将包括该第二签名和第二已加密包体的传输响应包发送给该客户端。
可选地,本发明实施例的指纹器件还可以包括第二预置单元25,用于在该指纹器件的存储空间内预置该第一签名公钥、第一加密私钥,第二签名私钥和第二加密公钥。
需要说明的是,本发明实施例提供的指纹器件的具体工作流程请参考本发明实施例提供的方法流程部分,在此不再赘述。
在本发明实施例中,在客户端和指纹器件之间建立了双向安全认证机制,保证指纹器件仅能被认证成功的客户端控制,即只有认证成功的客户端才能访问指纹器件并获取指纹信息,确保了指纹信息获取的安全性
参见图10,是本发明实施例提供的又一种终端的示意性框图。如图10所示的终端可以包括:一个或多个处理器31、一个或多个输入设备32、一个或多个输出设备33和存储器34。上述处理器31、输入设备32、输出设备33和存储器34通过总线35连接。存储器34用于存储计算机程序,处理器31用于执行存储器34存储的计算机程序。
具体地,处理器31调用存储在存储器34中的计算机程序,用于客户端对请求包进行签名和加密,得到传输请求包,该客户端运行在可信执行环境下,该请求包用于该客户端向指纹器件请求获取指纹信息;该客户端将经过签名和加密的传输请求包发送给该指纹器件;当接收到来自该指纹器件的传输响应包时,该客户端对该传输响应包进行验签和解密,该传输响应包是经过该指纹器件签名和加密,响应于该传输请求包的数据包;若验签成功且解密成功,则该客户端获取该传输响应包中携带的指纹信息;其中,该指纹器件和该客户端进行签名时所采用的密钥不同,该指纹器件和该客户端进行加密时所采用的密钥不同。
可选地,处理器31调用存储在存储器34中的计算机程序执行客户端对请求包进行签名和加密,具体用于客户端根据请求包和第一签名私钥生成第一签名,该第一签名私钥与第一签名公钥组成第一签名密钥对,该第一签名密钥对中的私钥用于签名,公钥用于验签;客户端采用第一加密公钥对请求包的包体加密,得到第一已加密包体,该第一加密公钥与第一加密私钥组成第一加密密钥对,该第一加密密钥对中的公钥用于加密,私钥用于解密。
进一步可选地,处理器31调用存储在存储器34中的计算机程序执行该客户端将经过签名和加密的传输请求包发送给该指纹器件,具体用于该客户端将包括该第一签名和第一已加密包体的传输请求包发送给该指纹器件。
可选地,处理器31调用存储在存储器34中的计算机程序执行该客户端对该传输响应包进行验签和解密,具体用于该客户端根据该传输响应包和第二签名公钥生成签名,该第二签名公钥和第二签名私钥组成第二签名密钥对,该第二签名密钥对中的私钥用于签名,公钥用于验签;该客户端将生成的签名与该传输响应包中的第二签名进行匹配比较,当生成的签名与该第二签名相匹配时,该客户端确定验签成功;当验签成功时,该客户端采用第二加密私钥对该传输响应包中的第二已加密包体解密,该第二加密私钥与第二加密公钥组成第二加密密钥对,该第二加密密钥对中的公钥用于加密,私钥用于解密;当解密成功时,该客户端得到第一已解密包体。
进一步可选地,处理器31调用存储在存储器34中的计算机程序执行该客户端获取该传输响应包中携带的指纹信息,具体用于该客户端获取该第一已解密包体中的指纹信息。
可选地,处理器31调用存储在存储器34中的计算机程序,还用于在终端的RPMB内预置该第一签名私钥、第一加密公钥、第二签名公钥和第二加密私钥,该RPMB的接口对TEE开放。
应当理解,在本发明实施例中,所称处理器31可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备32可以包括触控板、指纹传感器(用于采集用户的指纹信息)、麦克风等,输出设备33可以包括显示器(液晶显示屏(Liquid Crystal Display,LCD)等)、扬声器等。
该存储器34可以包括只读存储器(Read-Only Memory,ROM)和随机存取存储器(Random Access Memory,RAM),并向处理器31提供计算机程序和数据。存储器34的一部分还可以包括非易失性随机存取存储器。例如,存储器34还可以存储设备类型的信息。
具体实现中,本发明实施例中所描述的处理器31、输入设备32、输出设备33可执行本申请图1所描述的指纹获取方法中客户端所执行的部分,也可执行本申请图6或图7所描述的终端的实现方式,在此不再赘述。
在本发明施例中,处理器31调用存储在存储器34中的程序指令,在客户端和指纹器件之间建立了双向安全认证机制,保证指纹器件仅能被认证成功的客户端控制,即只有认证成功的客户端才能访问指纹器件并获取指纹信息,确保了指纹信息获取的安全性。
在本发明实施例中提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本申请图1所描述的指纹获取方法中客户端所执行的部分。
所述计算机可读存储介质可以是前述任一实施例所述的终端的内部存储单元,例如终端的硬盘或内存。所述计算机可读存储介质也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述终端的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
参见图11,是本发明实施例提供的又一种指纹器件的示意性框图。具体地,该指纹器件可以安装在终端中。如图11所示的指纹器件可以包括:一个或多个处理器41、一个或多个输入设备42、一个或多个输出设备43和存储器44。上述处理器41、输入设备42、输出设备43和存储器44通过总线45连接。存储器44用于存储计算机程序,处理器41用于执行存储器44存储的计算机程序。
具体地,处理器41调用存储在存储器44中的计算机程序,用于当接收到来自客户端的传输请求包时,对该传输请求包进行验签和解密,该传输请求包是经过该客户端签名和加密,用于该客户端向该指纹器件请求获取指纹信息的数据包;当验签成功且解密成功时,获取与该传输请求包相对应的响应包,该响应包用于该指纹器件向该客户端发送指纹信息;对该响应包进行签名和加密,得到传输响应包;将经过签名和加密的传输响应包发送给该客户端。
可选地,处理器41调用存储在存储器44中的计算机程序执行对该传输请求包进行验签和解密,具体用于根据该传输请求包和第一签名公钥生成签名,该第一签名公钥与第一签名私钥组成第一签名密钥对,该第一签名密钥对中的私钥用于签名,公钥用于验签;将生成的签名与该传输请求包中的第一签名进行匹配比较,当生成的签名与该第一签名相匹配时,确定验签成功;当验签成功时,采用第一加密私钥对该传输请求包中的第一已加密包体解密,该第一加密私钥与第一加密公钥组成第一加密密钥对,该第一加密密钥对中的公钥用于加密,私钥用于解密;当解密成功时,得到第二已解密包体。
可选地,处理器41调用存储在存储器44中的计算机程序执行对该响应包进行签名和加密,具体用于根据该响应包和第二签名私钥生成第二签名,该第二签名私钥与第二签名公钥组成第二签名密钥对,该第二签名密钥对中的私钥用于签名,公钥用于验签;采用第二加密公钥对该响应包的包体进行加密,得到第二已加密包体,该第二加密公钥与第二加密私钥组成第二加密密钥对,该第二加密密钥对中的公钥用于加密,私钥用于解密。
进一步可选地,处理器41调用存储在存储器44中的计算机程序执行将经过签名和加密的传输响应包发送给该客户端,具体包括:将包括该第二签名和第二已加密包体的传输响应包发送给该客户端。
可选地,处理器41调用存储在存储器44中的计算机程序,还用于在该指纹器件的存储空间内预置该第一签名公钥、第一加密私钥、第二签名私钥和第二加密公钥。
应当理解,在本发明实施例中,所称处理器41可以是CPU,该处理器还可以是其他通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器44可以包括ROM和随机存取存储器RAM,并向处理器41提供计算机程序和数据。存储器44的一部分还可以包括非易失性随机存取存储器。例如,存储器44还可以存储设备类型的信息。
具体实现中,本发明实施例中所描述的处理器41、输入设备42、输出设备43可执行本申请图1所描述的指纹获取方法中指纹器件所执行的部分,也可执行本申请图8或图9所描述的指纹器件的实现方式,在此不再赘述。
在本发明施例中,处理器41调用存储在存储器44中的程序指令,在客户端和指纹器件之间建立了双向安全认证机制,保证指纹器件仅能被认证成功的客户端控制,即只有认证成功的客户端才能访问指纹器件并获取指纹信息,确保了指纹信息获取的安全性。
在本发明实施例中提供另一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本申请图1所描述的指纹获取方法中指纹器件所执行的部分。
所述计算机可读存储介质可以是前述任一实施例所述的指纹器件的内部存储单元,例如指纹器件的内存。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的终端和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的终端和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干计算机程序用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (20)

1.一种指纹信息获取方法,其特征在于,包括:
客户端对请求包进行签名和加密,得到传输请求包,所述客户端运行在可信执行环境下,所述请求包用于所述客户端向指纹器件请求获取指纹信息;
所述客户端将经过签名和加密的传输请求包发送给所述指纹器件;
当接收到来自所述指纹器件的传输响应包时,所述客户端对所述传输响应包进行验签和解密,所述传输响应包是经过所述指纹器件签名和加密,响应于所述传输请求包的数据包;
若验签成功且解密成功,则所述客户端获取所述传输响应包中携带的指纹信息;
其中,所述指纹器件和所述客户端进行签名时所采用的密钥不同,所述指纹器件和所述客户端进行加密时所采用的密钥不同。
2.根据权利要求1所述的方法,其特征在于,所述客户端对请求包进行签名和加密,具体包括:
客户端根据请求包和第一签名私钥生成第一签名,所述第一签名私钥与第一签名公钥组成第一签名密钥对,所述第一签名密钥对中的私钥用于签名,公钥用于验签;
客户端采用第一加密公钥对请求包的包体加密,得到第一已加密包体,所述第一加密公钥与第一加密私钥组成第一加密密钥对,所述第一加密密钥对中的公钥用于加密,私钥用于解密;
所述客户端将经过签名和加密的传输请求包发送给所述指纹器件,具体包括:
所述客户端将包括所述第一签名和第一已加密包体的传输请求包发送给所述指纹器件。
3.根据权利要求2所述的方法,其特征在于,所述客户端对所述传输响应包进行验签和解密,具体包括:
所述客户端根据所述传输响应包和第二签名公钥生成签名,所述第二签名公钥和第二签名私钥组成第二签名密钥对,所述第二签名密钥对中的私钥用于签名,公钥用于验签;
所述客户端将生成的签名与所述传输响应包中的第二签名进行匹配比较,若生成的签名与所述第二签名相匹配,则确定验签成功;
当验签成功时,所述客户端采用第二加密私钥对所述传输响应包中的第二已加密包体解密,所述第二加密私钥与第二加密公钥组成第二加密密钥对,所述第二加密密钥对中的公钥用于加密,私钥用于解密;
若解密成功,则所述客户端得到第一已解密包体;
所述客户端获取所述传输响应包中携带的指纹信息,具体包括:
所述客户端获取所述第一已解密包体中的指纹信息。
4.根据权利要求3所述的方法,其特征在于,还包括:
在终端的回环保护分区内预置所述第一签名私钥、第一加密公钥、第二签名公钥和第二加密私钥,所述回环保护分区的接口对可信执行环境开放。
5.一种指纹信息获取方法,其特征在于,包括:
当接收到来自客户端的传输请求包时,指纹器件对所述传输请求包进行验签和解密,所述传输请求包是经过所述客户端签名和加密,用于所述客户端向所述指纹器件请求获取指纹信息的数据包;
若验签成功且解密成功,则所述指纹器件获取与所述传输请求包相对应的响应包,所述响应包用于所述指纹器件向所述客户端发送指纹信息;
所述指纹器件对所述响应包进行签名和加密,得到传输响应包;
所述指纹器件将经过签名和加密的传输响应包发送给所述客户端。
6.根据权利要求5所述的方法,其特征在于,所述指纹器件对所述传输请求包进行验签和解密,具体包括:
指纹器件根据所述传输请求包和第一签名公钥生成签名,所述第一签名公钥与第一签名私钥组成第一签名密钥对,所述第一签名密钥对中的私钥用于签名,公钥用于验签;
所述指纹器件将生成的签名与所述传输请求包中的第一签名进行匹配比较,若生成的签名与所述第一签名相匹配,则确定验签成功;
当验签成功时,所述指纹器件采用第一加密私钥对所述传输请求包中的第一已加密包体解密,所述第一加密私钥与第一加密公钥组成第一加密密钥对,所述第一加密密钥对中的公钥用于加密,私钥用于解密;
若解密成功,则所述指纹器件得到第二已解密包体。
7.根据权利要求6所述的方法,其特征在于,所述指纹器件对所述响应包进行签名和加密,具体包括:
所述指纹器件根据所述响应包和第二签名私钥生成第二签名,所述第二签名私钥与第二签名公钥组成第二签名密钥对,所述第二签名密钥对中的私钥用于签名,公钥用于验签;
所述指纹器件采用第二加密公钥对所述响应包的包体进行加密,得到第二已加密包体,所述第二加密公钥与第二加密私钥组成第二加密密钥对,所述第二加密密钥对中的公钥用于加密,私钥用于解密;
所述指纹器件将经过签名和加密的传输响应包发送给所述客户端,具体包括:
所述指纹器件将包括所述第二签名和第二已加密包体的传输响应包发送给所述客户端。
8.根据权利要求7所述的方法,其特征在于,包括:
在所述指纹器件的存储空间内预置所述第一签名公钥、第一加密私钥、第二签名私钥和第二加密公钥。
9.一种终端,其特征在于,包括:
第一请求处理单元,用于客户端对请求包进行签名和加密,得到传输请求包,所述客户端运行在可信执行环境下,所述请求包用于所述客户端向指纹器件请求获取指纹信息;
第一发送单元,用于所述客户端将经过签名和加密的传输请求包发送给所述指纹器件;
第一响应处理单元,用于当接收到来自所述指纹器件的传输响应包时,所述客户端对所述传输响应包进行验签和解密,所述传输响应包是经过所述指纹器件签名和加密,响应于所述传输请求包的数据包;
第一获取单元,用于当所述第一响应处理单元验签成功且解密成功时,所述客户端获取所述传输响应包中携带的指纹信息。
10.根据权利要求9所述的终端,其特征在于,所述第一请求处理单元包括:
第一签名单元,用于客户端根据请求包和第一签名私钥生成第一签名,所述第一签名私钥与第一签名公钥组成第一签名密钥对,所述第一签名密钥对中的私钥用于签名,公钥用于验签;
第一加密单元,用于客户端采用第一加密公钥对请求包的包体加密,得到第一已加密包体,所述第一加密公钥与第一加密私钥组成第一加密密钥对,所述第一加密密钥对中的公钥用于加密,私钥用于解密;
所述第一发送单元,具体用于所述客户端将包括所述第一签名和第一已加密包体的传输请求包发送给所述指纹器件。
11.根据权利要求10所述的终端,其特征在于,所述第一响应处理单元包括:
第一生成单元,用于所述客户端根据所述传输响应包和第二签名公钥生成签名,所述第二签名公钥和第二签名私钥组成第二签名密钥对,所述第二签名密钥对中的私钥用于签名,公钥用于验签;
第一验签单元,用于所述客户端将生成的签名与所述传输响应包中的第二签名进行匹配比较,当生成的签名与所述第一签名相匹配时,确定验签成功;
第一解密单元,用于当验签成功时,所述客户端采用第二加密私钥对所述传输响应包中的第二已加密包体解密,得到第一已解密包体,所述第二加密私钥与第二加密公钥组成第二加密密钥对,所述第二加密密钥对中的公钥用于加密,私钥用于解密;
所述第一获取单元,具体用于所述客户端获取所述第一已解密包体中的指纹信息。
12.根据权利要求11所述的终端,其特征在于,还包括:
第一预置单元,用于在所述终端的回环保护分区内预置所述第一签名私钥、第一加密公钥、第二签名公钥和第二加密私钥,所述回环保护分区的接口对可信执行环境开放。
13.一种指纹器件,其特征在于,包括:
第二请求处理单元,用于当接收到来自客户端的传输请求包时,对所述传输请求包进行验签和解密,所述传输请求包是经过所述客户端签名和加密,用于所述客户端向所述指纹器件请求获取指纹信息的数据包;
第二获取单元,用于当所述第二请求处理单元验签成功且解密成功时,获取与所述传输请求包相对应的响应包,所述响应包用于所述指纹器件向所述客户端发送指纹信息;
第二响应处理单元,用于对所述响应包进行签名和加密,得到传输响应包;
第二发送单元,用于将经过签名和加密的传输响应包发送给所述客户端。
14.根据权利要求13所述的指纹器件,其特征在于,所述第二请求处理单元包括:
第二生成单元,用于根据所述传输请求包和第一签名公钥生成签名,所述第一签名公钥与第一签名私钥组成第一签名密钥对,所述第一签名密钥对中的私钥用于签名,公钥用于验签;
第二验签单元,用于将生成的签名与所述传输请求包中的第一签名进行匹配比较,当生成的签名与所述第一签名相匹配时,确定验签成功;
第二解密单元,用于当验签成功时,采用第一加密私钥对所述传输请求包中的第一已加密包体解密,得到第二已解密包体,所述第一加密私钥与第一加密公钥组成第一加密密钥对,所述第一加密密钥对中的公钥用于加密,私钥用于解密。
15.根据权利要求14所述的指纹器件,其特征在于,所述第二响应处理单元包括:
第二签名单元,用于根据所述响应包和第二签名私钥生成第二签名,所述第二签名私钥与第二签名公钥组成第二签名密钥对,所述第二签名密钥对中的私钥用于签名,公钥用于验签;
第二加密单元,用于采用第二加密公钥对所述响应包的包体进行加密,得到第二已加密包体,所述第二加密公钥与第二加密私钥组成第二加密密钥对,所述第二加密密钥对中的公钥用于加密,私钥用于解密;
所述第二发送单元,具体用于将包括所述第二签名和第二已加密包体的传输响应包发送给所述客户端。
16.根据权利要求15所述的指纹器件,其特征在于,还包括:
第二预置单元,在所述指纹器件的存储空间内预置所述第一签名公钥、第一加密私钥,第二签名私钥和第二加密公钥。
17.一种终端,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至4任一项所述方法。
18.一种指纹器件,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求5至8任一项所述方法。
19.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述方法。
20.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求5至8任一项所述方法。
CN201710588016.2A 2017-07-18 2017-07-18 指纹信息获取方法及终端 Withdrawn CN107395589A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710588016.2A CN107395589A (zh) 2017-07-18 2017-07-18 指纹信息获取方法及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710588016.2A CN107395589A (zh) 2017-07-18 2017-07-18 指纹信息获取方法及终端

Publications (1)

Publication Number Publication Date
CN107395589A true CN107395589A (zh) 2017-11-24

Family

ID=60339408

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710588016.2A Withdrawn CN107395589A (zh) 2017-07-18 2017-07-18 指纹信息获取方法及终端

Country Status (1)

Country Link
CN (1) CN107395589A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108566389A (zh) * 2018-03-28 2018-09-21 中国工商银行股份有限公司 一种跨应用的指纹身份认证方法及装置
CN109960903A (zh) * 2017-12-26 2019-07-02 中移(杭州)信息技术有限公司 一种应用加固的方法、装置、电子设备及存储介质
CN111046427A (zh) * 2019-12-13 2020-04-21 北京启迪区块链科技发展有限公司 基于区块链的数据访问控制方法、装置、设备和介质
CN111177676A (zh) * 2018-11-12 2020-05-19 群光电子股份有限公司 验证系统、验证方法以及非暂态计算机可读取记录介质
CN114255533A (zh) * 2022-01-28 2022-03-29 无锡融卡科技有限公司 智能锁系统及其实现方法
CN114666044A (zh) * 2022-03-21 2022-06-24 海智讯通(上海)智能科技有限公司 一种基于客户端机器指纹信息的id对齐方法、装置及存储介质
CN114666044B (zh) * 2022-03-21 2024-04-26 海智讯通(上海)智能科技有限公司 一种基于客户端机器指纹信息的id对齐方法、装置及存储介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109960903A (zh) * 2017-12-26 2019-07-02 中移(杭州)信息技术有限公司 一种应用加固的方法、装置、电子设备及存储介质
CN108566389A (zh) * 2018-03-28 2018-09-21 中国工商银行股份有限公司 一种跨应用的指纹身份认证方法及装置
CN108566389B (zh) * 2018-03-28 2021-02-23 中国工商银行股份有限公司 一种跨应用的指纹身份认证方法及装置
CN111177676A (zh) * 2018-11-12 2020-05-19 群光电子股份有限公司 验证系统、验证方法以及非暂态计算机可读取记录介质
CN111046427A (zh) * 2019-12-13 2020-04-21 北京启迪区块链科技发展有限公司 基于区块链的数据访问控制方法、装置、设备和介质
CN114255533A (zh) * 2022-01-28 2022-03-29 无锡融卡科技有限公司 智能锁系统及其实现方法
CN114255533B (zh) * 2022-01-28 2024-04-16 无锡融卡科技有限公司 智能锁系统及其实现方法
CN114666044A (zh) * 2022-03-21 2022-06-24 海智讯通(上海)智能科技有限公司 一种基于客户端机器指纹信息的id对齐方法、装置及存储介质
CN114666044B (zh) * 2022-03-21 2024-04-26 海智讯通(上海)智能科技有限公司 一种基于客户端机器指纹信息的id对齐方法、装置及存储介质

Similar Documents

Publication Publication Date Title
US10491379B2 (en) System, device, and method of secure entry and handling of passwords
US10796009B2 (en) Security engine for a secure operating environment
CN107395589A (zh) 指纹信息获取方法及终端
CN105408912B (zh) 处理认证和资源许可
CN107038369A (zh) 一种资源访问控制的方法及终端
CN105960774A (zh) 近场通信认证机制
CN113014444B (zh) 一种物联网设备生产测试系统及安全保护方法
CN104115440B (zh) 防止电子码本加密中的图案识别
KR20200116009A (ko) 신원 정보에 기초한 암호화 키 관리
US11693944B2 (en) Visual image authentication
WO2020199028A1 (zh) 一种安全芯片、安全处理方法及相关设备
US11023620B2 (en) Cryptography chip with identity verification
CN110264193A (zh) 结合用户类型与交易类型的收据存储方法和节点
US20200154270A1 (en) Secure trusted service manager provider
CN107465730A (zh) 一种业务请求方法及终端
CN106100851A (zh) 密码管理系统、智能腕表及其密码管理方法
CN106685945A (zh) 业务请求处理方法、业务办理号码的验证方法及其终端
Avdić Use of biometrics in mobile banking security: case study of Croatian banks
CN113127844A (zh) 一种变量访问方法、装置、系统、设备和介质
TW201243602A (en) Electronic file delivering system, portable communication apparatus with decryption functionality, and related computer program product
JPWO2011058629A1 (ja) 情報管理システム
CN117751551A (zh) 用于安全互联网通信的系统和方法
Schürmann et al. Openkeychain: an architecture for cryptography with smart cards and nfc rings on android
Ortiz-Yepes Enhancing Authentication in eBanking with NFC-enabled mobile phones
Kohli et al. Certainty factor based analysis for measuring users satisfaction with search engine

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
WW01 Invention patent application withdrawn after publication

Application publication date: 20171124

WW01 Invention patent application withdrawn after publication