CN204948095U - 认证装置和确保应用程序和用户之间的交互的系统 - Google Patents

认证装置和确保应用程序和用户之间的交互的系统 Download PDF

Info

Publication number
CN204948095U
CN204948095U CN201420859756.7U CN201420859756U CN204948095U CN 204948095 U CN204948095 U CN 204948095U CN 201420859756 U CN201420859756 U CN 201420859756U CN 204948095 U CN204948095 U CN 204948095U
Authority
CN
China
Prior art keywords
authenticate device
user
authenticate
bluetooth
master computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201420859756.7U
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.)
Onespan North America Inc
Original Assignee
Vasco Data Security International Inc
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 Vasco Data Security International Inc filed Critical Vasco Data Security International Inc
Application granted granted Critical
Publication of CN204948095U publication Critical patent/CN204948095U/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/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/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • G06F21/35User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
    • 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/42User authentication using separate channels for security data
    • G06F21/43User authentication using separate channels for security data wireless channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/3827Portable transceivers
    • H04B1/3833Hand-held transceivers
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • 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/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0838Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
    • 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/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • 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/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • 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/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/3242Cryptographic 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 keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/068Authentication using credential vaults, e.g. password manager applications or one time password [OTP] applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup

Abstract

本公开涉及一种认证装置和确保应用程序和用户之间的交互的系统。用于生成动态证书的便携式手持认证装置,包括:存储部件,适于安全地存储加密证书生成密钥;用户输入接口,用于接收来自认证装置的用户的输入;用户输出接口,用于将输出呈现给用户;数据处理部件,适于通过将加密证书生成密钥与动态变量以加密方式组合来生成动态证书;以及蓝牙接口,用于使用认证装置与主计算机之间的蓝牙连接将认证装置连接到主计算机;其中,认证装置适于通过与主计算机的蓝牙连接来发送所生成的动态证书。

Description

认证装置和确保应用程序和用户之间的交互的系统
技术领域
本实用新型涉及确保(secure)对计算机和应用程序的远程访问以及通过计算机网络进行的远程事务。更具体而言,本实用新型涉及用于使用认证装置与主计算机之间的蓝牙连接针对远程应用程序服务器对用户进行认证的方法和设备。
背景技术
随着对计算机系统和应用程序的远程访问越来越流行,通过公共网络如因特网远程访问的事务的数目和种类显著增加。这种流行强调了对安全性的需要;特别是:如何确保正在远程访问应用程序的人是他们所声称的人,如何确保正在远程进行的事务是由合法的个体发起的,以及如何确保在应用程序服务器处接收事务数据之前该事务数据不被更改。
过去,应用程序提供者曾依赖静态密码来提供针对远程应用程序的安全性。近年来,显而易见,静态密码是不够的,并且需要更先进的安全性技术。
对众所周知的静态密码认证方法的替代方案应该优选地是节省成本的、可靠的以及对用户便利的。
实用新型内容
本实用新型的一个方面提供一种用于生成动态证书的具有蓝牙接口的认证装置。
在一些实施方式中,认证装置(100)可以是便携式手持设备。在一些实施方式中,认证装置可以包括:存储部件(130),适于安全地存储加密证书生成密钥;用户输入接口(120),用于接收来自认证装置的用户的输入;用户输出接口(110),用于将输出呈现给用户;数据处理部件(140),适于通过以加密方式将所述加密证书生成密钥与动态变量进行组合来生成所述动态证书;以及蓝牙接口(150),用于使用认证装置与主计算机之间的蓝牙连接将认证装置连接到所述主计算机;其中,所述认证装置适于通过与所述主计算机的蓝牙连接来发送所述生成的动态证书。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还包括:时钟(160),用于提供时间值;其中,认证装置还适于根据所述时钟提供的所述时间值而确定所述动态变量的值。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于:在所述存储部件中存储第二变量;根据所述存储的第二变量来确定所述动态变量的值;以及当第二变量的值已被用于生成所述动态证书时,在存储部件中更新并且存储第二变量的值。在一些实施方式中,所述第二变量可以包括计数器,并且更新所述第二变量可以包括下述中的至少之一:单调地增加(或者递增)所述计数器的值,或单调地减小(或者递减)所述计数器的值。例如,在一些实施方式中,动态变量可以是如下的计数器:认证装置可以将该计数器存储在认证装置的存储器中,并且每当认证装置的数据处理部件生成动态证书时,该计数器可以递增(或者递减)一。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于:通过所述蓝牙连接来接收针对所述动态证书的请求,以响应于所述请求而生成所述动态证书(例如,由数据处理部件)并且通过所述蓝牙连接返回所述生成的动态证书。在一些实施方式中,认证装置还可以适于例如在接收到所述请求之后,在生成或者返回所述动态证书之前借助于所述用户输入接口捕获来自所述用户的用于生成或者返回动态证书的批准。在一些实施方式中,由所述认证装置生成和返回所述动态证书可以取决于所述用户批准。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于通过所述蓝牙连接来接收口令并且在所述生成所述动态证书时使用所述接收的口令。在一些实施方式中,该口令可以被包括在认证装置通过所述蓝牙连接接收的用于生成和返回动态证书的请求中。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于:通过所述蓝牙连接来接收事务相关数据,通过所述用户输出接口将所述接收的事务相关数据呈现给用户,由所述用户输入接口捕获所述用户对所述事务相关数据的批准,以及在所述生成所述动态证书时使用所述接收的事务相关数据。在一些实施方式中,由所述认证装置生成并且返回所述动态证书可以取决于对所述事务相关数据的所述用户批准。在一些实施方式中,事务相关数据可以包括表示用户已请求应用程序执行的事务的事务数据。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于存储装置识别数据元素,并且适于使所述主计算机通过所述蓝牙连接能够获得所述装置识别数据元素。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于存储用户名并且适于使所述主计算机通过所述蓝牙连接能够获得所述用户名。在一些实施方式中,认证装置还可以适于通过所述蓝牙连接来接收所述用户名,并且适于存储所述用户名以用于后续通过所述蓝牙连接取回。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于:使所述主计算机通过所述蓝牙连接能够获得应用程序状态。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于通过所述蓝牙连接向所述主计算机发送待由所述主计算机执行的一个或更多个命令。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于对PIN和/或密码进行校验。在一些实施方式中,认证装置还可以适于通过所述用户输入接口捕获提供给认证装置的所述PIN和/或密码。在一些实施方式中,认证装置还可以适于通过所述蓝牙连接来接收所述PIN和/或密码。在一些实施方式中,认证装置还可以适于仅在对所述PIN和/或密码的所述校验成功时才生成所述动态证书。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于:存储生物特征基准数据,并且校验所述用户的生物特征测量结果。在一些实施方式中,认证装置还可以包括生物特征传感器,并且还可以适于利用所述生物特征传感器来捕获所述生物特征测量结果。在一些实施方式中,认证装置还可以适于通过所述蓝牙连接来接收所述生物特征测量结果。在一些实施方式中,认证装置还可以适于仅在对所述生物特征测量结果的所述校验成功时才生成所述动态证书。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,其中,所述用户输入接口包括单个按钮,以及其中,所述认证装置还适于通过所述用户按压所述按钮来捕获所述用户的批准。在其他实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,其中,用户输入接口包括两个按钮,其中,所述认证装置还适于通过所述用户按压所述两个按钮中的第一按钮来捕获所述用户的批准,并且通过所述用户按压所述两个按钮中的第二按钮来捕获所述用户的拒绝或者取消。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,认证装置还适于通过所述蓝牙连接来接收或者发送应用程序消息,应用程序消息由安全消息传递技术所保障,该安全消息传递技术用于保护所述应用程序消息的完整性、机密性或者真实性,由此,认证装置还适于支持所述安全消息传递技术,并且适于进行在所述安全消息传递技术中使用的加密安全消息传递操作,由此,所述安全消息传递技术独立于任何蓝牙安全消息传递机制。在一些实施方式中,认证装置还可以适于存储安全消息传递秘密,并且适于使用所述安全消息传递秘密来确定加密安全消息传递密钥的值并且在所述加密安全消息传递操作中使用所述加密安全消息传递密钥。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,其中,所述以加密方式将所述加密证书生成密钥与所述动态变量进行组合包括执行通过所述加密证书生成密钥来参数化的对称加密算法。在一些实施方式中,所述对称加密算法可以包括对称编密码或者解密码算法。在一些实施方式中,所述对称加密算法可以包括密钥哈希(keyedhashing)算法。
在一些实施方式中,认证装置可以是先前实施方式的认证装置中的任何认证装置,其中,所述蓝牙接口支持低功耗蓝牙(BluetoothLowEnergy)。
本实用新型的另一方面提供一种用于保障应用程序和用户之间的交互的系统。该应用程序可以包括服务器部分和客户端部分。
在一些实施方式中,系统可以包括:应用程序服务器(210),安装有应用程序的服务器部分;主计算机(230),运行作为所述应用程序的客户端部分的客户端应用程序,并且允许用户(290)通过计算机网络(250)远程地访问应用程序,所述主计算机包括用于接收来自用户的输入的用户输入接口和用于向用户提供输出的用户输出接口;认证装置(240),用于生成动态证书,该认证装置包括:存储部件(130),适于安全地存储加密证书生成密钥,数据处理部件(140),用于通过以加密方式将所述加密证书生成密钥与动态变量进行组合来生成所述动态证书,以及蓝牙接口(150),用于使用认证装置与所述主计算机之间的蓝牙连接将认证装置连接到所述主计算机;以及校验服务器(220),用于校验所述动态证书的有效性;由此,所述主计算机适于建立与所述认证装置的蓝牙连接;所述认证装置适于生成所述动态证书并且经由蓝牙连接将所述动态证书返回到所述主计算机;主计算机上的所述客户端应用程序还适于经由所述蓝牙连接来接收所述动态证书,并且适于将所述生成的动态证书转发到所述校验服务器以用于校验;以及所述校验服务器适于校验生成的动态证书,并且适于向所述应用程序服务器发送动态证书是否被校验为有效的信号。
在一些实施方式中,系统可以是先前实施方式的系统中的任何系统,其中,所述认证装置和所述校验服务器共享所述加密证书生成密钥,以及其中,所述动态证书的所述生成和所述校验是通过使用秘密认证密钥的对称加密算法来进行的,该秘密认证密钥在所述认证装置和所述校验服务器之间共享。
在一些实施方式中,系统可以是先前实施方式的系统中的任何系统,其中,一方面的所述认证装置与另一方面的所述校验服务器或者应用程序服务器共享一个或更多个安全消息传递密钥;所述应用程序服务器或者所述校验服务器适于生成应用程序消息,并且适于使用所述共享的一个或更多个安全消息传递密钥利用安全消息传递技术来保障所述应用程序消息;所述客户端应用程序适于接收所述受保障的应用程序消息,并且适于通过所述蓝牙连接将所述受保障的应用程序消息转发到所述认证装置;以及所述认证装置适于通过所述蓝牙连接来接收所述受保障的应用程序消息,并且适于使用所述共享的一个或更多个安全消息传递密钥来支持所述安全消息传递密钥并且作用于所述受保障的应用程序消息。
在一些实施方式中,系统可以是先前实施方式的系统中的任何系统,其中,所述认证装置适于:通过所述蓝牙连接来接收包含对于认证装置生成并且返回所述动态证书的请求的应用程序消息,以及响应于接收到所述应用程序消息,生成所述动态证书并且通过所述蓝牙连接返回所述动态证书。在一些实施方式中,所述应用程序消息可以包括口令,并且所述动态变量可以基于所述口令。在一些实施方式中,所述口令可以包含由所述应用程序服务器或者所述校验服务器生成的不可预测的值。在一些实施方式中,所述应用程序消息包含由所述用户提交给所述应用程序的事务数据,并且所述动态变量可以基于所述事务数据。
在一些实施方式中,系统可以是先前实施方式的系统中的任何系统,其中,所述认证装置还适于维持随时间变化的应用程序状态,并且适于通过所述蓝牙连接将与其当前状态相关的信息传递给所述主计算机;以及其中,所述客户端应用程序还适于通过所述蓝牙连接接收来自所述认证装置的所述状态信息,并且适于向所述用户提供关于如何处理所述认证装置的指导或指令,由此,所述指导或指令与所述接收的状态信息相关。
在一些实施方式中,系统可以是先前实施方式的系统中的任何系统,其中,所述认证装置还适于生成要由所述主计算机执行的命令,并且适于通过所述蓝牙连接将所述命令发送给所述主计算机;以及其中,所述客户端应用程序还适于通过所述蓝牙连接从所述认证装置接收所述命令并且执行所述命令。在一些实施方式中,由所述主计算机执行所述命令可以包括所述主计算机经由所述用户输出接口或者所述用户输入接口与所述用户进行交互。在一些实施方式中,由主计算机执行命令可以包括:主计算机请求用户提供某些数据或者某些输入,主计算机获得来自用户的数据或者输入(例如通过主计算机的用户接口),以及主计算机通过所述蓝牙连接将所获得的数据或输入传递给认证装置。
在一些实施方式中,系统可以是先前实施方式的系统中的任何系统,其中,所述客户端应用程序还适于由所述主计算机的所述用户输入接口获得来自所述用户的PIN和/或密码值,并且适于通过所述蓝牙连接将所述获得的PIN和/或密码值发送给所述认证装置;以及其中,所述认证装置还适于通过所述蓝牙连接接收所述PIN和/或密码值,并且适于对所述接收的PIN和/或密码值进行校验。
在一些实施方式中,系统可以是先前实施方式的系统中的任何系统,其中,所述主计算机还包括适于捕获来自所述用户的生物特征测量结果的生物特征测量部件;其中,所述客户端应用程序还适于由所述主计算机的所述生物特征测量部件获得来自所述用户的生物特征测量结果,并且适于通过所述蓝牙连接将所述获得的生物特征测量结果发送到所述认证装置;以及其中,所述认证装置还适于通过所述蓝牙连接来接收生物特征测量结果,并且适于校验所述接收的生物特征测量结果。
在一些实施方式中,系统可以是先前实施方式的系统中的任何系统,其中,所述客户端应用程序还适于在所述认证装置通过所述蓝牙连接而连接到所述主计算机时,获得所述认证装置到所述主计算机的距离的指示;以及其中,所述应用程序适于在决定是否授权、维持或撤销关于所述用户的一个或多个访问权限时考虑所述距离指示。
在本实用新型的又一方面中,提供一种用于保障基于计算机的应用程序与用户之间的交互的方法,由此,用户操作或者携带用于生成动态证书的认证装置,由此,认证装置可以包括用于与蓝牙主机装置通信的蓝牙接口。在一些实施方式中,认证装置可以是先前描述的认证装置中的任何认证装置。在一些实施方式中,该方法可以与先前描述的系统中的任何系统一起使用。
在一些实施方式中,该方法可以包括下述步骤:在本地主计算机上运行作为应用程序的客户端部分的客户端应用程序,以允许用户通过使用本地主计算机的用户输入接口和用户输出接口与应用程序交互;在本地主计算机处建立与认证装置的蓝牙连接;通过所述蓝牙连接从认证装置接收动态证书,动态证书是由所述认证装置通过以加密方式将动态变量与存储在所述认证装置中的第一加密认证密钥进行组合而生成的;以及使用通过第二加密认证密钥而参数化的加密算法来校验所述动态证书。
在一些实施方式中,方法可以是先前实施方式的方法中的任何方法,该方法还包括下述步骤:通过应用基于对称加密算法的安全消息传递技术来保障所述应用程序,该对称加密算法通过与所述认证装置共享的至少一个对称安全消息传递密钥来参数化;以及在主计算机处通过所述蓝牙连接将所述应用程序消息发送到认证装置。
在一些实施方式中,方法可以是先前实施方式的方法中的任何方法,该方法还包括下述步骤:生成包括对于认证装置生成并且返回所述动态证书的请求的应用程序消息,以及在主计算机处通过所述蓝牙连接将所述应用程序消息发送到认证装置,由此,认证装置可以响应于认证装置通过所述蓝牙连接接收到所述应用程序消息,生成所述动态证书并且通过所述蓝牙连接将所述动态证书返回到主计算机。在一些实施方式中,该方法还可以包括下述步骤:生成口令,以及将所述口令包括在所述应用程序消息中,由此,所述动态变量是基于所述口令的。在一些实施方式中,该方法还可以包括下述步骤:从所述用户接收用于进行事务的请求;将表示事务的事务数据包括在所述应用程序消息中;以及如果对动态证书的所述校验是成功的,则执行所述事务请求;由此,所述动态变量可以基于包括在所述应用程序消息中的所述事务数据。
在一些实施方式中,方法可以是先前实施方式的方法中的任何方法,该方法还包括下述步骤:在所述本地主计算机处通过所述蓝牙连接从所述认证装置接收关于认证装置的应用程序状态的信息;在本地主计算机处通过所述用户输出接口向用户提供与对所述认证装置的操作有关的指导或指令;由此,所述指导或指令可以与所述接收的关于认证装置的应用程序状态的信息相关。
在一些实施方式中,方法可以是先前实施方式的方法中的任何方法,该方法还包括下述步骤:在所述本地主计算机处通过所述蓝牙连接从所述认证装置接收待执行的命令,以及在所述本地主计算机处执行所述命令。
在一些实施方式中,方法可以是先前实施方式的方法中的任何方法,该方法还包括下述步骤:在所述本地主计算机处通过所述用户输入接口获得来自所述用户的PIN和/或密码值,以及通过所述蓝牙连接将所述获得的PIN和/或密码值发送给所述认证装置以用于由所述认证装置对所述PIN和/或密码值进行校验。
在一些实施方式中,方法可以是先前实施方式的方法中的任何方法,该方法还包括下述步骤:在所述本地主计算机处由生物特征传感器获得来自所述用户的生物特征测量结果,以及通过所述蓝牙连接将所述获得的生物特征测量结果发送给所述认证装置以用于由所述认证装置对所述生物特征测量结果进行校验。
在一些实施方式中,方法可以是先前实施方式的方法中的任何方法,该方法还包括下述步骤:在本地主计算机处获得指示本地主计算机与认证装置之间的实际距离的距离指示值,以及使用所述距离指示值确定是否授权、维持或撤销关于用户的一个或更多个访问权限。
在一些实施方式中,方法可以是先前实施方式的方法中的任何方法,该方法还包括至少下述步骤:在本地主计算机上运行作为应用程序的客户端部分的客户端应用程序,以允许用户通过使用本地主计算机的用户输入接口和用户输出接口与应用程序交互;在本地主计算机处建立与认证装置的蓝牙连接;在本地主计算机处获得指示本地主计算机与认证装置之间的实际距离的距离指示值;以及使用所述距离指示值确定是否授权、维持或撤销关于用户的一个或更多个访问权限。在一些实施方式中,该方法还可以包括下述步骤:将所述距离指示值与预定义的阈值进行比较,以及如果所述比较指示认证装置与主计算机之间的距离比与所述阈值关联的距离更远,则撤销关于用户的所述一个或更多个访问权限中的至少一些。在一些实施方式中,该方法还可以包括下述步骤:将所述距离指示值与预定义的阈值进行比较,以及如果所述比较指示认证装置与主计算机之间的距离比与所述阈值关联的距离更近,则授权关于用户的所述一个或更多个访问权限中的至少一些。
在一些实施方式中,认证装置可以是自主电池供电的装置。在一些实施方式中,电池可以是可再充电的。在一些实施方式中,电池可以是可更换的。在一些实施方式中,认证装置可以是小型便携式手持装置。
在一些实施方式中,认证装置可以具有自己的用户输出接口,该用户输出接口例如可以包括显示器。在一些实施方式中,认证装置可以具有自己的用户输入接口,该用户输入接口例如可以包括小键盘。在某些情况下,小键盘可以被缩小为单个按钮,在其他情况下,小键盘可以包括两个按钮,在另外的情况下,小键盘可以是全键盘。
在一些实施方式中,用户输入接口和用户输出接口可以是不可拆卸的并且不是可供用户使用的,而是被认证装置完全控制,并且不受主计算机上的恶意软件的干扰所影响。因此,在这种实施方式中,与例如其中总存在如下可能性的PC相比,可以认为认证装置具有值得信任的用户接口:其中,恶意软件如病毒或者木马(Trojan)向用户呈现虚假消息,或者捕获用户在小键盘上输入的任何内容,或者在存储器中读取与安全性应用程序相关的敏感数据,或者在数据被签名之前更改该数据。
在一些实施方式中,认证装置的固件是不可更改的。在一些实施方式中,认证装置可以具有防篡改设置。在一些实施方式中,认证装置可以是专用于提供认证和/或者事务签名功能的专用安全硬件装置。在一些实施方式中,认证装置的主要目的是生成动态证书,该动态证书在某些情况下可以被称作“一次性密码”(OTP)或者动态密码。
在一些实施方式中,认证装置可以适于通过以加密方式将秘密与动态变量的值进行组合来生成这些动态证书。
在一些实施方式中,该秘密可以是安全地存储在认证装置中的加密密钥。在一些实施方式中,认证装置可以使用该秘密对使用动态变量作为输入的加密算法进行参数化。在一些实施方式中,秘密可以包括认证装置与校验服务器或者认证服务器之间共享的秘密值。在一些实施方式中,秘密可以包括对称密钥。在一些实施方式中,秘密可以包括公钥-私钥对中的私钥。在一些实施方式中,每个特定认证装置的秘密可以具有自己的个体值或者唯一值。
在一些实施方式中,动态变量可以从下述值得到或者基于下述值:提供给装置的时间值、计数器值或者服务器口令或者上述值的组合。在一些实施方式中,认证装置还可以使用已经提供给该装置的数据(诸如事务数据)作为动态值,或者装置可以使用这些数据结合上述动态值中的任何动态值来生成动态证书。在动态变量基于事务数据的情况下,得到的动态证书可以意在指示用户对数据的批准,并且动态证书可以被称作电子签名或者消息认证码(MAC)。例如,在一些实施方式中,认证装置可以以加密方式将加密秘密与时间值和事务数据进行组合以生成包括关于事务数据的电子签名的动态证书。
在一些实施方式中,认证装置以加密方式将秘密与动态变量进行组合可以包括认证装置执行对称加密算法。在一些实施方式中,该对称加密算法可以将动态变量作为输入并且可以通过安全地存储在装置中的秘密来参数化。在一些实施方式中,对称加密算法可以包括关于与动态值有关的数据的对称加密或者解密算法(如,例如DES、3DES或者AES)并且使用秘密作为对称加密或者解密密钥。在某些情况下,认证装置以加密方式将秘密与动态值进行组合可以包括执行以秘密为密钥的加密哈希函数(如,例如SHA-1)以及使用关于动态值的数据作为哈希函数的输入数据。在一些实施方式中,认证装置用来生成动态证书的秘密可以与代表应用程序对动态证书进行校验的校验服务器或者应用程序共享,由此,应用程序或者校验服务器可以使用共享的秘密对由认证装置生成的动态证书进行校验。
在一些实施方式中,秘密本身可以是动态变量。例如,在一些实施方式中,当秘密被用于生成动态证书时,秘密的值可以被新值替代,该新值与旧值相关(秘密的新值可以例如被计算作为旧值的单向哈希值)。由于在这种实施方式中,秘密的值可以根据秘密的初始值和秘密值被改变的次数来确定,因此这种实施方式在数学上等同于使用静态秘密并且结合包括计数器值的动态变量。
在一些实施方式中,认证装置可以用来生成动态证书的动态变量可以基于由认证装置外部的某些实体提供给认证装置的外部变量的值(如口令或者事务数据)。在一些实施方式中,认证装置可以用来生成动态证书的动态变量可以基于由认证装置本身提供的内部变量的值,如,例如包括在认证装置中的时钟的时间值,或者存储在认证装置中并且由认证装置更新的计数器的值。在一些实施方式中,动态变量可以基于外部变量和内部变量二者。
在一些实施方式中,认证装置可以能够与插入的智能卡通信,由此,动态证书的生成部分地由认证装置本身进行并且部分地由插入的智能卡进行。
在一些实施方式中,认证装置可以适于通过用户利用认证装置的用户输入接口向认证装置提供数据而接收其可用于生成动态证书的数据(如服务器口令或者事务数据)。例如,在一些实施方式中,用户可以在认证装置的小键盘上手动输入数据。当需要以这种方式由用户向认证装置提供的数据量超过数十个字符时,用户可能感到此处理太麻烦。
在一些实施方式中,认证装置可以适于通过人类输出接口将生成的动态证书呈现给用户,以使得用户可以将所呈现的动态证书提供或者转发给需要校验该动态证书的系统。例如,在一些实施方式中,认证装置可以适于将生成的OTP或者MAC显示在认证装置的显示器上,以使得用户可以将所显示的OTP或者MAC复制到他或她自己的PC(或者其他互联网访问装置)中,该PC(或者其他互联网访问装置)可以将该OTP或者MAC发送到应用程序或者认证服务器,该应用程序或者认证服务器然后可以校验OTP或者MAC的有效性。然而,这也需要来自用户的可能会感到不方便的某些动作。
在一些实施方式中,认证装置可以包括蓝牙接口。在一些实施方式中,认证装置的蓝牙接口可以用于将认证装置连接到支持蓝牙的主计算机。主计算机可以是用户用来与应用程序(可以是可远程访问的应用程序)交互(例如通过公共电信网络,如互联网)的访问装置。在一些实施方式中,认证装置可以适于使用认证装置的蓝牙接口与主计算机交换数据。
在一些实施方式中,认证装置可以适于通过认证装置的蓝牙接口来接收数据。在一些实施方式中,认证装置可以适于通过该认证装置的蓝牙接口来接收可以用来生成动态证书的数据。例如,在一些实施方式中,认证装置可以通过认证装置的蓝牙接口从主计算机接收服务器口令和/或事务数据,并且认证装置可以使用该口令和/或事务数据来生成动态证书。在一些实施方式中,认证装置可以适于通过认证装置的蓝牙接口向主计算机返回生成的动态证书。在一些实施方式中,蓝牙接口可以支持低功耗蓝牙(BLE)。
在一些实施方式中,认证装置可以被用于如下保障用户与应用程序的交互。
在一些实施方式中,用户可以使用主计算机作为访问装置来与基于计算机的应用程序进行交互。在一些实施方式中,主计算机可以例如包括PC(个人计算机)、平板电脑或者智能手机。在一些实施方式中,主计算机可以运行操作系统,如例如Windows8、安卓(Android)或者iOS。
在与应用程序交互期间,应用程序可以要求用户提供动态证书。例如,在一些实施方式中,用户在登录过程中可能必须向应用程序提供有效的动态证书以供应用程序校验,并且仅在该校验成功时,应用程序才可以授权用户访问。例如,在一些实施方式中,用户可以向应用程序提交事务(例如用户可以向互联网金融应用程序提交转账事务),此时应用程序可以要求用户提供包括关于事务数据的电子签名的动态证书。
在一些实施方式中,动态证书可以由用户的认证装置生成。在一些实施方式中,应用程序与认证装置之间的数据交换可以通过认证装置的蓝牙接口来进行。在一些实施方式中,认证系统(可以是应用程序的一部分或者可以由应用程序使用)可以包括主计算机上的客户端认证应用程序,该客户端认证应用程序用于例如使用认证装置的蓝牙接口与认证装置进行交互。
在一些实施方式中,应用程序可以是基于计算机的。在一些实施方式中,应用程序可以包括客户端应用程序,客户端应用程序包括在计算机上运行的用户可以与其交互的应用程序软件部件。客户端应用程序可以适于通过客户端应用程序在其上运行的计算机的用户输入接口(如鼠标和/或键盘和/或触摸屏)和/或用户输出接口(如扬声器和/或显示器)来与用户进行交互。在一些实施方式中,应用程序可以包括一个或更多个基于服务器的部件。在一些实施方式中,应用程序可以包括服务器部分,服务器部分包括在服务器计算机上运行的软件,服务器计算机可以连接至运行客户端应用程序的计算机并且可以与运行客户端应用程序的计算机进行交互。服务器计算机和运行客户端应用程序的计算机可以通过计算机网络如例如因特网彼此连接。至少在一些实施方式中,在本说明书中被描述为由主计算机执行的动作可以由主计算机根据在主计算机上运行的客户端应用程序的控制和推动(impulse)来执行。
在一些实施方式中,认证装置可以与应用程序的基于服务器的部件交换消息。在一些实施方式中,可以使用安全消息传递技术来保护在应用程序的基于服务器的部件与认证装置之间交换的消息。在一些实施方式中,可以使用安全消息传递技术来保护在应用程序的基于服务器的部件与认证装置之间交换的至少一些消息的数据中的至少一些数据的完整性。在一些实施方式中,可以使用安全消息传递技术来保护在应用程序的基于服务器的部件与认证装置之间交换的至少一些消息的数据中的至少一些数据的机密性。在一些实施方式中,可以使用安全消息传递技术来保护实体的真实性,该实体发送在应用程序的基于服务器的部件与认证装置之间交换的至少一些消息。
在一些实施方式中,在应用程序的基于服务器的部件与认证装置之间交换的至少一些消息的数据中的至少一些数据可以被加密例如以保护或保证消息中的数据的机密性、完整性或真实性。在一些实施方式中,可以使用可以通过对称密钥来参数化的对称加密算法如例如AES(高级加密标准)来进行这种加密,该对称密钥可以在认证装置与基于服务器的应用程序部件之间共享。
在一些实施方式中,在应用程序的基于服务器的部件与认证装置之间交换的至少一些消息可以包括关于被包括在这种消息中的数据中的至少一些数据的MAC(消息认证码),以例如保护或保证消息中的数据的完整性或真实性。在一些实施方式中,可以使用对称加密算法如对称加密或解密算法例如AES(高级加密标准)或者一些密钥哈希算法如HMAC来生成或校验这样的MAC,这些算法可以用对称密钥来参数化,该对称密钥可以在认证装置与基于服务器的应用程序部件之间共享。
在一些实施方式中,多个认证装置中的每个单独的认证装置可以存储不同组的一个或更多个安全消息传递秘密,认证装置可以使用这些安全消息传递秘密来确定一个或更多个安全消息传递密钥的值,该认证装置可以使用这一个或更多个安全消息传递密钥来参数化上述安全消息传递技术的加密算法。在一些实施方式中,服务器可以存储一个或更多个秘密,这一个或更多个秘密允许服务器针对给定的认证装置来确定要与该认证装置一起使用的安全消息传递秘密。在一些实施方式中,服务器可以存储一个或更多个安全消息传递主密钥,服务器可以与例如针对每个单独的认证装置具有唯一值的数据元素(例如,认证装置的序列号)一起来使用这一个或更多个安全消息传递主密钥,以得到针对该认证装置的安全消息传递密钥的值。在一些实施方式中,服务器可以在针对每个认证装置的数据库中存储该认证装置中存储的与认证装置的装置识别数据元素(例如,序列号)相关联的安全消息传递秘密。
在一些实施方式中,在认证装置处于激活状态时蓝牙接口总是处于激活状态。在一些实施方式中,用户可以(例如通过按压按钮)开启认证装置,并且当认证装置开启时,还可以使能其蓝牙接口。在一些实施方式中,用户可能必须例如通过按压按钮来明确地指示认证装置使能蓝牙接口。
在一些实施方式中,当认证装置的蓝牙接口被激活时,认证装置的蓝牙接口可以(例如,通过发送消息)通告/宣布认证装置的存在。在一些实施方式中,认证装置可以被配置成仅在有限时间段期间(例如小于5分钟的时间段)通过蓝牙接口来通告认证装置的存在。在一些实施方式中,认证装置支持蓝牙有限可发现模式(BluetoothLimitedDiscoverablemode)。在一些实施方式中,认证装置支持蓝牙一般发现模式(BluetoothGeneralDiscoverymode)。在一些实施方式中,认证装置可以在有限时间段期间保持在某种发现模式并且之后例如关闭认证装置自身。
在一些实施方式中,当主计算机的部件(例如客户端认证应用程序)通知存在有具有激活的蓝牙的认证装置时,可以发起与认证装置的蓝牙连接。
在一些实施方式中,认证装置适于支持与主计算机的蓝牙配对机制。在一些实施方式中,认证装置适于支持低功耗蓝牙配对机制。在一些实施方式中,认证装置适于支持用万能钥匙登陆(PasskeyEntry)配对方法与低功耗蓝牙客户端进行配对。在一些实施方式中,认证装置可以适于接收蓝牙配对请求,并且在接收到配对请求时,认证装置可以生成配对码并且将所生成的配对码显示给用户,用户可以将所显示的配对码提供给主计算机(例如提供给客户端认证应用程序)。在一些实施方式中,认证装置可以被配置成使得配对码中的数字或字符的数量不同于由认证装置生成的动态证书中的数字或字符的数量。
一旦在主计算机与认证装置之间建立了蓝牙连接,主计算机上的部件(例如客户端认证应用程序)就可以使用蓝牙连接针对动态证书将请求发送至认证装置。在一些实施方式中,认证装置可以适于通过认证装置的蓝牙接口来接收用于生成动态证书的这种请求。在一些实施方式中,在接收到用于生成动态证书的请求时,认证装置可以请求用户确认继续生成所请求的动态证书(例如通过按压按钮)。
在一些实施方式中,认证装置可以不需要任何其他外部数据用于生成动态证书,并且现在可以继续生成动态证书。例如,认证装置可以使用秘密和动态变量来生成动态证书,该动态变量可以基于由认证装置中的时钟生成的时间值或者可以基于计数器值,认证装置可以将该计数器值存储在认证装置的存储器中并且在每次生成动态证书时认证装置使得该计数器值递增。
在一些实施方式中,认证装置可以使用基于应用程序生成的口令的动态变量来生成动态证书。在一些实施方式中,口令可以由应用程序的服务器部分生成并且可以被传递至客户端应用程序,客户端应用程序可以通过蓝牙连接将口令转发至认证装置。在一些实施方式中,客户端应用程序可以生成口令,可以通过蓝牙连接将口令发送至认证装置并且可以将口令传递至应用程序的服务器部分(例如与认证装置对口令的响应一起)。在一些实施方式中,认证装置可以通过蓝牙连接来接收该口令。在一些实施方式中,认证装置可以作为用于生成动态证书的请求的一部分来接收口令。在其他实施方式中,认证装置可以作为另一消息的一部分来接收口令。
在一些实施方式中,认证装置可以使用基于事务数据的动态变量来生成动态证书。在一些实施方式中,认证装置可以通过蓝牙连接来接收这些事务数据。在一些实施方式中,认证装置可以作为用于生成动态证书的请求的一部分来接收这些事务数据。在其他实施方式中,认证装置可以作为另一消息的一部分(或者作为多个其他消息的一部分)来接收这些事务数据。在一些实施方式中,认证装置可以将所接收的事务数据呈现给用户,并且可以在生成动态证书之前请求用户在认证装置上批准这些数据。在一些实施方式中,可以将事务数据划分成多个部分(例如数据字段),并且每个部分可以单独地呈现给用户并且用户可以单独地批准每个部分。在一些实施方式中,认证装置可以具有用户输入接口,该用户输入接口适于捕获用户对事务数据的批准。在一些实施方式中,认证装置可以具有按钮,用户可以按压该按钮以批准事务数据。在一些实施方式中,如果用户批准了事务数据的所有部分,则认证装置可以通过以加密方式将秘密与基于这些经批准的事务数据的动态变量进行组合来生成动态证书。在一些实施方式中,动态变量也可以基于例如时间值,该时间值可以由被包括在认证装置中的时钟来提供。在一些实施方式中,可以不将全部事务数据呈现给用户并且在认证装置上用户可以不批准全部事务数据,并且动态变量可以基于已经被呈现给用户并且已经由用户在认证装置上批准的事务数据以及还没有被呈现给用户并且还没有由用户在认证装置上批准的数据。
在一些实施方式中,认证装置也可以响应于另一事件而不是通过与主计算机的蓝牙连接接收到该主计算机的消息来生成动态证书。例如,在一些实施方式中,认证装置可以响应于由认证装置捕获的用户动作来生成动态证书,该用户动作例如为用户按压认证装置的用户输入接口的按钮。在一些实施方式中,认证装置可以使用其用户输出接口来将所生成的动态证书呈现给用户。在一些实施方式中,认证装置可以使用主计算机与认证装置之间的蓝牙连接来将所生成的动态证书推送给主计算机。
在一些实施方式中,在认证装置可以响应于接收到蓝牙消息或响应于另一事件已经生成了动态证书时,认证装置可以使用蓝牙连接来将所生成的动态证书发送至主计算机。在一些实施方式中,认证装置可以在将所生成的动态证书发送至主计算机之前将所生成的动态证书显示给用户。在一些实施方式中,认证装置可以请求用户确认将所生成的动态证书发送至主计算机。在一些实施方式中,用户可以通过按压认证装置的按钮来确认将所生成的动态证书发送至主计算机。
在一些实施方式中,认证装置的用户输入接口具有用于由人类用户致动的一个单个按钮。在一些实施方式中,用户可以按压该单个按钮以例如开启认证装置以及/或者激活蓝牙接口以及/或者批准事务数据以及/或者确认应该生成动态证书以及/或者确认应该将动态证书发送至主计算机。在一些实施方式中,为了使得用户能够取消操作或者不批准要呈现给用户的数据或者关闭装置,认证装置可以设置超时时间段,如果用户在超时时间段届满之前还没有按压单个按钮,则认证装置可以将此解释为取消、不批准或关闭。
在一些实施方式中,认证装置的用户输入接口可以正好具有用于由人致动的两个按钮。在一些实施方式中,用户可以使用用户输入接口的第一按钮来开启认证装置以及/或者激活蓝牙接口以及/或者批准事务数据以及/或者确认应该生成动态证书以及/或者确认应该将动态证书发送至主计算机,并且第二按钮可以用于关闭认证装置以及/或者去激活蓝牙接口以及/或者拒绝事务数据以及/或者拒绝应该生成动态证书以及/或者拒绝应该将动态证书发送至主计算机。
在一些实施方式中,认证装置可以适于还通过蓝牙连接将装置识别数据元素提供给主计算机。每个特定的认证装置可以具有针对该装置识别数据元素的不同的唯一值,使得该装置识别数据元素的值可以用于识别例如生成动态证书的特定的认证装置。在一些实施方式中,认证装置可以响应于主计算机的特定请求来返回其装置识别数据元素。在一些实施方式中,认证装置可以(在同一消息或另一消息中)连同所生成的动态证书一起返回其装置识别数据元素。在一些实施方式中,可以在连接建立期间例如作为友好蓝牙名称或设备名称或蓝牙地址(的一部分)将装置识别数据元素提供给主计算机。在一些实施方式中,认证装置可以作为蓝牙通告消息的一部分而提供装置识别数据元素。在一些实施方式中,这可以如下地由主计算机来使用。如果主计算机检测到存在有多个正在通告其存在的认证装置,则主计算机可以使用通告消息中的装置识别数据元素来选择主计算机想要与其建立蓝牙连接的认证装置。例如,主计算机可以选择具有与之前已经与该主计算机一起使用的认证装置的装置识别数据元素对应的装置识别数据元素的认证装置。在之前已经有多个认证装置与该主计算机一起使用的情况下,主计算机可以例如选择最近使用的认证装置或者替选地选择在过去最常使用的认证装置。
在一些实施方式中,主计算机上的客户端应用程序可以使用认证装置从用户获得用户标识符如用户名,并且可以使用该用户标识符来确定与该用户相关联的一个或更多个认证装置的列表。例如,客户端应用程序可以将用户标识符发送至应用程序的服务器部分,并且可以进而从服务器部分接收一个或更多个认证装置标识符的列表。然后,客户端应用程序可以校验正在通告其存在的多个认证装置中的哪个认证装置在该列表中,并且选择在该列表中的认证装置。
在一些实施方式中,当主计算机上的部件(例如客户端认证应用程序)从认证装置接收到认证装置的装置识别数据元素时,主计算机可以将所接收的装置识别数据元素转发至应用程序服务器。在一些实施方式中,特定用户的认证装置的装置识别数据元素值可以在服务器侧与该特定用户相关联。例如,在服务器的数据库中,每个用户的用户id和/或用户名可以与分配给该用户的认证装置的装置识别数据元素值相关联。在一些实施方式中,在接收到特定认证装置的装置识别数据元素值时,服务器可以查找相关联的用户id和/或用户名。在一些实施方式中,这可以避免用户在例如登陆时需要主动地提供用户名以进行识别的需要。
在一些实施方式中,认证装置可以支持主计算机的白名单(例如,以主计算机的蓝牙地址的列表的形式)。在一些实施方式中,这样的白名单可以包含被允许与认证装置建立蓝牙连接的主计算机。如果主计算机试图与认证装置建立蓝牙连接,则认证装置可以校验主计算机是否被包括在白名单中,并且如果主计算机确实包括在该白名单中,则认证装置可以接受连接尝试。在一些实施方式中,认证装置可以拒绝不在认证装置的白名单中的主计算机的连接尝试。在一些实施方式中,认证装置可以支持用于将主计算机添加至认证装置的白名单或者从认证装置的白名单中移除主计算机的机制。在一些实施方式中,认证装置可以支持可以由应用程序发出的命令,该命令用于将主计算机添加至认证装置的白名单或者从认证装置的白名单中移除主计算机。在一些实施方式中,这样的命令可以通过如本描述中的其他地方更详细地说明的安全消息传递机制来保障,例如以确保命令的真实性和/或完整性。在一些实施方式中,当主计算机尝试与认证装置建立蓝牙连接并且主计算机不在认证装置的白名单中时,认证装置可以请求用户确认是否接受连接以及/或者是否将主计算机包括在白名单中。
在一些实施方式中,认证装置可以制造有可接受的主计算机的初始内置白名单。在一些实施方式中,这种内置的初始白名单可以包括下述主计算机:该主计算机在稍后的阶段可以用于将个性化和配置数据加载至认证装置中。在一些实施方式中,在稍后的阶段如个性化和/或配置阶段期间,可以移除初始白名单、用另一白名单来替代初始白名单以及/或者更新初始白名单。
在一些实施方式中,除了由认证装置生成的动态证书之外,还可以请求用户将额外静态密码提供给应用程序。这提供了双因素认证:你知道的东西(静态密码)和你拥有的东西(与用户关联的特定认证装置,由将正确动态证书提供给应用程序的用户能力来表明对该特定认证装置的拥有)。
在一些实施方式中,认证装置可以具有用户输入接口,该用户输入接口适于捕获由用户提供的PIN和/或密码值。在一些实施方式中,认证装置可以适于通过蓝牙连接从主计算机接收PIN(个人识别号码)和/或密码值。在一些实施方式中,在主计算机上运行的客户端应用程序可以请求用户在主计算机的用户输入接口上输入PIN和/或密码值,并且可以通过在主计算机与认证装置之间已经建立的蓝牙连接来将该PIN和/或密码值转发至认证装置。在一些实施方式中,认证装置可以适于校验通过蓝牙连接接收的PIN和/或密码值或者经由认证装置的用户输入装置从用户接收的PIN和/或密码值。在一些实施方式中,认证装置可以适于存储PIN和/或密码基准值,并且可以通过将所接收的值与所存储的基准值进行比较来校验所接收的PIN和/或密码值。在一些实施方式中,成功的PIN和/或密码校验可以是认证装置生成动态证书的条件。也就是说,在一些实施方式中,认证装置可以仅在PIN和/或密码首先被提供给认证装置并且已经被认证装置成功地校验的情况下才生成动态证书。
在一些实施方式中,认证装置可以具有用于捕获用户的一些生物特征的测量结果的生物特征传感器。例如,在一些实施方式中,认证装置可以具有指纹传感器。在一些实施方式中,认证装置可以适于通过与主计算机的蓝牙连接来接收主计算机已获得的用户的一些生物特征的测量结果。在一些实施方式中,认证装置可以存储针对用户的生物特征基准数据。在一些实施方式中,认证装置可以适于将(认证装置使用认证装置的生物特征传感器捕获的或者认证装置从主计算机接收的)用户的生物特征的测量结果与在认证装置中存储的生物特征基准数据进行比较。在一些实施方式中,成功地进行这种比较可以是认证装置生成动态证书的条件。也就是说,在一些实施方式中,认证装置可以仅在已经首先将用户的生物特征的测量结果提供给认证装置并且认证装置已经成功地将用户的生物特征的测量结果与存储在装置中的生物特征基准数据进行比较的情况下才生成动态证书。
在一些实施方式中,当主计算机上的部件(例如客户端认证应用程序)从认证装置接收到认证装置生成的动态证书时,主计算机可以将所接收的动态证书转发至应用程序服务器或某个动态证书校验服务器。在接收到所转发的动态证书时,校验服务器的应用程序服务器可以校验所接收的动态证书。在成功地校验了动态证书时,应用程序服务器可以进行适当的动作,如登录用户或者使用户能够访问特定资源或特定信息或者接受用户提交的事务。
在一些实施方式中,蓝牙连接也可以用于将个性化数据提供给认证装置,该个性化数据例如为关于与认证装置相关联的用户的数据(例如用户名)或者额外秘密数据如加密密钥。
在一些实施方式中,认证装置可以适于存储与认证装置相关联的用户的一个或更多个用户名。在一些实施方式中,通过蓝牙连接与认证装置连接的主计算机上的客户端应用程序可以使用蓝牙连接来读取存储在认证装置中的用户名中的一个用户名。在一些实施方式中,客户端应用程序还可以使用蓝牙连接将用户名写入认证装置中。
在一些实施方式中,应用程序可以如下地使用用于存储用户名的认证装置的能力。在用户尝试登录到应用程序时,应用程序可以要求用户名和用户证书。用户用于访问应用程序的主计算机上的客户端应用程序可以与用户的认证装置建立蓝牙连接。这可以涉及客户端应用程序指示或请求用户开启认证装置。替选地,用户可以开启认证装置,此时认证装置可以使用其蓝牙接口向主计算机通告其存在,并且可以在主计算机与认证装置之间建立蓝牙连接,并且客户端应用程序可以将该认证装置识别为认证装置并且自动地假设用户将要进行登录。然后,客户端应用程序可以使用蓝牙连接来校验认证装置是否存储有用户名,并且如果认证装置确实存储了用户名,则获得该用户名。如果客户端应用程序不能从认证装置获得用户名,则可以请求或指示用户手动地通过主计算机的用户输入接口来提供合适的用户名。客户端应用程序也可以使用蓝牙连接来从认证装置获得用户证书如一次性密码或对指令的响应。客户端应用程序可以将用户名和用户证书转发至应用程序用于校验。如果校验成功,则客户端应用程序可以使用蓝牙连接将成功使用的用户名存储在认证装置中。
在一些实施方式中,认证装置可以适于生成命令并且通过蓝牙连接将这些命令传递至所连接的主计算机,于是可以由主计算机上的客户端应用程序执行这些命令。例如,在一些实施方式中,认证装置可以使用蓝牙连接来将包含要被呈现给用户的消息的命令发送至主计算机,并且客户端应用程序可以接收这种命令并且在主计算机的用户输出接口上将包含在命令中的消息呈现给用户。在一些实施方式中,包含在命令中的消息可以是字符串的形式(例如ASCII字符串或Unicode字符串)。在一些实施方式中,消息可以以消息指针或索引的形式包含在命令中,客户端应用程序可以使用该消息指针或索引来确定实际的消息以呈现给用户。
在一些实施方式中,认证装置可以使用蓝牙连接来将命令发送至主计算机,该命令请求将PIN或密码返回给认证装置。主计算机上的客户端应用程序可以接收该消息,并且响应于此可以使用主计算机的用户输出接口来提示用户提供PIN和/或密码,并且客户端应用程序可以使用主计算机的用户输入接口捕获用户提供的PIN和/或密码,并且使用蓝牙连接来发送所捕获的PIN和/或密码。在一些实施方式中,认证装置可以使用蓝牙连接来将命令发送至主计算机,该命令请求将用户的生物特征测量结果返回给认证装置。主计算机上的客户端应用程序可以接收该消息,并且响应于此可以使用主计算机的用户输出接口来提示用户提供生物特征,并且客户端应用程序可以例如使用主计算机的生物特征传感器(如指纹传感器)来测量用户呈现的生物特征,并且使用蓝牙连接将该生物特征测量结果发送至认证装置。
在一些实施方式中,应用程序也可以仅考虑蓝牙使能认证装置的存在来认证用户。例如,在一些实施方式中,可以仅基于由认证装置的主计算机进行的蓝牙检测来认证用户。在一些实施方式中,一旦检测到用户的认证装置的存在,应用程序就可以授权用户进行一些动作,并且一旦接收到认证装置生成的动态证书并且成功校验了该证书,应用程序就可以授权用户进行其他(附加)动作。
在一些实施方式中,应用程序可以监测认证装置的持续存在。在一些实施方式中,当授权或撤销关于用户的授权时,应用程序可以考虑用户的认证装置的存在或不存在。例如,在一些实施方式中,在用户成功被认证之后,当应用程序检测到认证装置不再存在于主计算机处时,可以撤回用户可能响应于该成功认证而接收的授权(例如,用于进行特定动作或用于访问特定资源)。在一些实施方式中,只要维持有蓝牙连接,应用程序就可以认为装置存在。在一些实施方式中,只要认证装置保持在主计算机的一定距离内,应用程序就可以认为认证装置存在(如下更详细地说明的那样,由此认证装置的蓝牙信号的强度可以用作距离的代理(proxy))。在一些实施方式中,当蓝牙连接被断开时,应用程序可以认为装置不存在。在一些实施方式中,当认证装置不再处于主计算机的特定最小距离内时,应用程序可以认为认证装置不存在(如下更详细地说明的那样,由此认证装置的蓝牙信号的强度可以用作距离的代理)。
在一些实施方式中,应用程序可以考虑认证装置距主计算机的距离。例如,在一些实施方式中,如果用户的认证装置距主计算机的距离小于特定距离,则应用程序可以仅接受用户或用户的请求。在一些实施方式中,当应用程序感测到认证装置与主计算机之间的距离超过了特定阈值时,应用程序可以关闭用户使用认证装置已建立的会话。在一些实施方式中,应用程序可以使用由认证装置发射的蓝牙信号的强度作为针对认证装置与主计算机之间的距离的代理。在一些实施方式中,例如当时,决定接受连接尝试或者当决定接受或拒绝传入的应用程序消息或命令时,认证装置可以考虑从主计算机接收的信号的强度。在一些实施方式中,蓝牙连接的RSSI(接收信号强度指示)可以用作为对信号强度的量度。
在一些实施方式中,应用程序可以自动地与在主计算机附近的认证装置建立蓝牙连接。在一些实施方式中,当认证装置的蓝牙信号强度好于特定最小水平时,应用程序可以与认证装置建立蓝牙连接。在一些实施方式中,蓝牙或低功耗蓝牙配对被自动地用于所建立的蓝牙连接。在一些实施方式中,不同的各个认证装置可以具有不同的配对密钥。在一些实施方式中,应用程序可以使用认证装置的装置识别数据元素(例如蓝牙地址)来检索要被用于特定认证装置的配对密钥。在一些实施方式中,应用程序可以从认证装置的装置识别数据元素得到认证装置的配对密钥和对于多个认证装置来说相同的某个主密钥。在一些实施方式中,用户可以将配对密钥提供给应用程序(例如,认证装置的第一使用情形),并且应用程序可以(例如,在数据库中)存储由用户提供的配对密钥与认证装置的装置识别数据元素之间的关系。在一些实施方式中,在建立了蓝牙连接之后,应用程序可以(例如,使用装置识别数据元素或者使用由认证装置通过蓝牙连接提供的用户标识符)自动地识别认证装置的用户。在一些实施方式中,应用程序可以认证用户。在一些实施方式中(例如,如果配对与针对每个不同的认证装置的唯一配对密钥一起来使用),当使用配对成功地建立的蓝牙连接时,可以隐含认为用户成功地被认证了。在一些实施方式中,应用程序可以请求认证装置(通过蓝牙连接)生成并返回稍后可以被应用程序校验的动态证书。在一些实施方式中,用户可以被要求在认证处理期间采取一些动作。例如,在一些实施方式中,用户必须(例如,通过按压认证装置上的特定按钮)将他或她的批准指示给认证装置。在一些实施方式中,可以要求用户在认证处理期间提供稍后可以被应用程序校验的静态PIN或密码。在一些实施方式中,应用程序可以在成功认证了用户时给用户授予一些权限(例如授权访问某些资源或者接受用户应用程序请求例如用于进行特定动作或事务的请求)。然后应用程序可以监测认证装置是否仍然存在。在一些实施方式中,当应用程序注意到认证装置不再存在时,应用程序可以撤销一个或更多个授予的权限。在一些实施方式中,如果此后应用程序检测到认证装置再次出现(在同一主计算机或另一主计算机上),则应用程序可以重新授予一个或更多个被撤销的权限。在一些实施方式中,如果应用程序检测到认证装置再次存在,则应用程序可以重新认证用户。在一些实施方式中,可以使用比用于早期认证的认证方法更简单的认证方法来重新认证用户。例如,在一些实施方式中,更简单的认证方式可以不要求明确的用户操作,例如指示对供给静态PIN或密码的批准,而原始认证方法或标准认证方法可能需要这样的明确的用户操作。在一些实施方式中,应用程序可以基于在重新认证的时刻与一些参考事件(例如先前的认证或当应用程序通告认证装置不再存在时)之间经过的时间来决定使用哪种类型的重新认证(以及/或者重新认证是否发生)。
例如,在一些实施方式中,在应用程序检测到在主计算机中存在有用户的认证装置时,可以给用户授予在一些主计算机中的特定权限,并且当应用程序检测到用户的认证装置不再存在时可以撤销这些权限。这种机制可以例如用于在医院的计算机处的医务人员安全访问病人的医疗文件,或者用于根据用户的认证装置存在于门处来解锁或重新锁定门来安全地物理访问物理位置。
附图说明
根据以下如附图中示出的本实用新型的实施方式的更具体的描述,本实用新型的前述和其他特征和优点将是明显的。
图1示意性地示出了根据本实用新型的一方面的示例装置。
图2示意性地示出了根据本实用新型的一方面的系统的示例。
图3A和图3B示意性地示出了根据本实用新型的一方面的方法的示例。
具体实施方式
下面讨论本实用新型的一些实施方式。虽然讨论了特定的实施方式,但是应理解该讨论仅出于说明的目的。相关领域的技术人员将认识到可以在不脱离本实用新型的精神和范围的情况下使用其他的部件和配置。
图1示意性地示出了根据本实用新型的方面的本实用新型的示例性装置。
在一些实施方式中,装置包括用于生成动态证书的认证装置(100),认证装置(100)可以包括适于安全地存储加密秘密的存储部件(130);用于从认证装置的用户接收输入的用户输入接口(120);用于将输出呈现给用户的用户输出接口(110);适于通过将加密密钥与动态变量加密地结合来生成动态证书的数据处理部件(140);以及用于将认证装置连接至主计算机的蓝牙接口(150);其中,认证装置适于将生成的动态证书发送给主计算机。在一些实施方式中,认证装置还可以包括时钟(160)。在一些实施方式中,认证装置还可以包括生物特征传感器(170)。
在一些实施方式中,用户输出接口(110)可以包括显示器例如液晶显示器(LCD)。在一些实施方式中,用户输出接口可以包括扬声器。在一些实施方式中,用户输出接口可以包括语音合成部件。在一些实施方式中,用户输出接口(110)可以适于将数据(例如针对某用户批准的事务数据)呈现给用户。在一些实施方式中,用户输出接口可以适于将生成的动态证书呈现给用户。在一些实施方式中,可以通过认证装置将生成的动态证书作为数字串或字符串呈现给用户。在一些实施方式中,数字串可以包括数字串。在一些实施方式中,字符串可以包括字母数字的字符串。在一些实施方式中用户输出接口可以包括受限于将单行字符显示给用户的显示器。在一些实施方式中,用户输出接口可以包括受限于将两行字符显示给用户的显示器。具有受限于将仅单行或两行字符显示给用户的显示器的认证装置可以具有很小型的规格。
在一些实施方式中,用户输入接口(120)可以包括键盘。在一些实施方式中,用户输入接口可以包括单个按钮。在一些实施方式中,用户输入接口可以确切地包括两个按钮:一个按钮可以例如用来指示用户批准,而另一按钮可以由用户使用来拒绝数据或取消操作。在一些实施方式中,用户可以通过同时按压两个按钮或者在按压一个按钮后快速地按压另一按钮(例如,两次按压之间的时间间隔少于2秒)来启动装置。在一些实施方式中,用户输入接口可以适于捕获用户的批准。在一些实施方式中,用户输入接口可以适于捕获用户的拒绝。在一些实施方式中,用户输入接口可以适于捕获由用户提供给认证装置的PIN值或密码值。
在一些实施方式中,存储部件(130)可以例如包括ROM、EEPROM、闪存或RAM存储器。在一些实施方式中,存储部件可以适于安全地存储加密秘密和/或加密密钥,认证装置可以例如在生成动态证书时使用加密秘密和/或加密密钥,或者可以在接收或生成由安全消息传递所保护的应用程序消息时使用加密秘密和/或加密密钥来支持安全消息传递技术。在一些实施方式中,存储部件可以适于存储PIN和/或密码基准数据。在一些实施方式中,存储部件可以适于存储生物特征基准数据。在一些实施方式中,存储部件可以适于存储动态变量,该动态变量的值可以由认证装置例如每当该认证装置使用所存储的动态变量来生成动态证书时被更新。
在一些实施方式中,数据处理部件(140)可以例如包括一个或更多个微处理器、控制器(例如,用于处理输入和输出接口)、FPGA(现场可编程门阵列)和/或ASIC(专用集成电路)。在一些实施方式中,数据处理部件可以适于进行加密算法。在一些实施方式中,数据处理部件可以适于生成动态证书。在一些实施方式中,数据处理部件可以适于通过将秘密(该秘密例如可以存储在存储部件(130)中)与动态变量加密地结合来生成动态证书。在一些实施方式中,动态变量可以基于内部变量的值,例如由认证装置的时钟提供的时间值,或者例如可以存储在存储部件(130)中的计数器相关值。在一些实施方式中,动态变量可以基于可以例如通过蓝牙连接提供给认证装置的外部生成值,例如口令或事务数据。在一些实施方式中,数据处理部件可以适于例如通过将PIN和/或密码值与可以存储在存储部件(130)中的PIN和/或密码基准值进行比较来校验该PIN和/或密码值。在一些实施方式中,数据处理部件可以适于例如通过将用户的生物特征测量结果与可以存储在存储部件(130)中的生物特征基准数据进行比较来校验用户的生物特征测量结果。
在一些实施方式中,蓝牙接口(150)可以为低功耗蓝牙或蓝牙LE类型。在一些实施方式中,蓝牙接口可以符合蓝牙核心规范版本4.0,其通过引用合并在本文中。在一些实施方式中,蓝牙接口可以支持外围(从属)角色操作。在一些实施方式中,认证装置可以工作为蓝牙通用访问配置(GAP)外围,并且可以为蓝牙LE从属服务器和/或通用属性配置(GATT)服务器。
在一些实施方式中,蓝牙接口支持蓝牙配对。在一些实施方式中,认证装置可以支持与多个主计算机配对,并且可以存储用于多个主计算机的配对信息。在一些实施方式中,认证装置可以支持与至多单个主计算机配对,并且可以存储用于仅单个主计算机的配对信息。在一些实施方式中,如果认证装置已被配对,则认证装置可以仅在现有配对首次被明确地移除的情况下才允许新的配对。在一些实施方式中,认证装置可以适于使得用户能够指示现有配对必须被移除。
在一些实施方式中,当认证装置的蓝牙接口处在广告状态时,其仅发送可连接非定向广告事件(connectableundirectedadvertisingevent)。在一些实施方式中,认证装置的蓝牙接口支持受限的可发现查找模式(Discoverablediscoverymode)。在一些实施方式中,认证装置适于在特定用户启动事件例如用户按压按钮时启动受限的可发现查找模式。在一些实施方式中,认证装置保持可发现不多于60秒。
在一些实施方式中,认证装置支持很多GATT服务。在一些实施方式中,认证装置支持可以为GATT服务的一个或更多个服务,例如与主计算机交换认证消息。在一些实施方式中,认证装置支持可以为GATT服务的一个或更多个服务,例如告知主计算机认证装置的状态,并且更特别地告知主计算机在认证装置上的认证应用程序的状态。在一些实施方式中,认证装置可以专用于从连接到认证装置的主计算机接收某些数据(例如,待由认证装置在生成动态证书时使用的口令数据或事务数据)的某些服务特征。在一些实施方式中,认证装置可以专用于将某些数据(例如,由认证装置生成的动态证书,或状态信息)发送给连接到认证装置的主计算机的某些服务特征。
例如,在一些实施方式中,认证装置可以支持用于在一方为认证装置与另一方为主计算机或应用程序服务器之间(通过主计算机)交换认证应用程序消息的认证应用程序消息传递GATT服务。该应用程序消息传递GATT服务可以包括用于将认证应用程序消息从主计算机传送给认证装置的一个特征和用于将认证应用程序消息从认证装置传送给主计算机的另一特征。
认证装置还可以支持另一应用程序状态消息GATT服务,该应用程序状态消息GATT服务包括用于将关于应用程序状态的更新从认证装置发送给主计算机的至少一个特征。
在一些实施方式中,应用程序可以通过定期轮询认证装置例如通过定期读取一个或更多个特征来从认证装置接收某些数据或信息。
在一些实施方式中,认证装置可以使用蓝牙GATT通知机构来将某些数据发送给连接到认证装置的主计算机。在一些实施方式中,认证装置可以使用蓝牙GATT指示机构将某些数据发送给连接到认证装置的主计算机。在认证装置使用指示机构将某些数据发送给主计算机的实施方式中,认证装置进而可以获得如下确认,即主计算机确实接收到认证装置打算发送给该主计算机的数据,进而可以使得认证装置能够确信主计算机与认证装置保持同步。例如,在一些实施方式中,认证装置可以适于仅在主计算机确认其接收到最新的应用程序状态信息时改变应用程序状态。在一些实施方式中,认证装置可以(例如,使用相同的特征)相继发送在多个包中的一些认证应用程序消息,并且可以适于仅在主计算机确认其接收到前一个包之后才发送下一个包。
在一些实施方式中,认证装置可以适于通过蓝牙接口接收可以由应用程序生成的传入应用程序消息。在一些实施方式中,认证装置可以适于生成传出应用程序消息,认证装置可以将该传出应用程序消息通过蓝牙接口传达给应用程序。在一些实施方式中,这些传入和/或传出应用程序信息中的至少一些可以由安全消息传递技术确保,并且认证装置可以适于支持这些安全消息传递技术。认证装置的数据处理部件可以适于执行用于确保这些应用程序消息的加密算法。例如,数据处理部件可以适于对在应用程序消息中传输的数据进行加密和/或解密,和/或可以适于生成或校验可以被包括进应用程序消息以保证这些消息的完整性和/或真实性的MAC。
在一些实施方式中,认证装置还可以包括用于提供时间值的时钟(160),该时间值可以被认证装置使用以确定动态变量的值。
在一些实施方式中,认证装置还可以包括生物特征传感器(170)。在一些实施方式中,生物特征传感器可以例如包括指纹传感器。在一些实施方式中,指纹传感器可以例如包括触击传感器。
在一些实施方式中,认证装置可以是袖珍型、便携式且手持的装置。在一些实施方式中,认证装置可以具有小于7cm的长度、小于3cm的宽度,以及小于1cm的厚度。在一些实施方式中,认证装置可以具有小于20克的总质量(包含电池)。在一些实施方式中,认证装置可以具有小于10cm的长度、小于6cm的宽度,以及小于1.5cm的厚度,并且认证装置可以具有小于100克的总重量(包括电池)。
图2示意性地示出了根据本实用新型的一方面的系统的示例。
在一些实施方式中,用于确保应用程序与用户之间的交互的系统例如图2所示的系统(200)可以包括:用于托管应用程序的服务器部分的一个或多个应用程序服务器(210);用于使得用户(290)能够通过公共电信网络(250)远程地访问应用程序的主计算机(230);用于生成动态证书的认证装置(240),例如在前述段落中描述的认证装置中的任何认证装置;以及用于校验动态证书的有效性的校验服务器(220);由此主计算机可以适于建立与认证装置的蓝牙连接,并且可以适于运行应用程序的客户端部分,认证装置可以适于生成动态证书,并且可以适于将动态证书返回给主计算机,主计算机还可以适于将生成的动态证书转发给用于校验的校验服务器;校验服务器可以适于校验所生成的动态证书,并且适于向应用程序服务器发出动态证书是否被校验为有效的信号。
在一些实施方式中,应用程序服务器和校验服务器可以是相同的服务器。在一些实施方式中,应用程序服务器和校验服务器可以包括一个或更多个服务器计算机。在一些实施方式中,电信网络可以包括因特网和/或无线电信网。在一些实施方式中,主计算机可以具有用于与用户本地交互的用户接口。例如,在一些实施方式中,主计算机可以具有用于接收用户输入的用户输入接口,如键盘、鼠标,或触摸屏。在一些实施方式中,主计算机可以具有用于将可以包括视觉信号或听觉信号的输出呈现给用户的用户输出接口,如显示器或扬声器。在一些实施方式中,主计算机可以包括PC(个人计算机)、平板计算机,或智能电话。
在一些实施方式中,应用程序(如因特网银行应用程序)可以包括在远程应用程序服务器上运行的服务器部分和在用户的本地主计算机上运行并且用户通过例如因特网进行交互以访问应用程序的服务器部分的客户端部分。在一些实施方式中,应用程序可以包括基于万维网的应用程序,并且应用程序服务器可以包括万维网服务器。在一些实施方式中,应用程序服务器可以由用户在用户的主计算机上使用万维网浏览器来访问。在一些实施方式中,应用程序的客户端部分可以包括在用户的主计算机上的万维网浏览器中运行的的小应用程序(如JAVA小应用程序)或脚本。在一些实施方式中,万维网浏览器可以使用认证客户端插件或认证客户端扩展来与认证装置进行交互,该认证装置经由蓝牙连接至主计算机。在一些实施方式中,用户可以用智能电话来访问应用程序的服务器部分。然后,智能电话可以用作为主计算机(230),并且运行在智能电话上的客户端应用程序可以包括智能电话上的应用程序(如因特网银行应用程序),由此该应用程序可以通过智能电话的用户接口与用户交互、通过例如因特网与应用程序服务器交互,以及通过智能电话与认证装置之间的蓝牙连接与认证装置交互。在一些实施方式中,在主计算机上运行的应用程序的客户端部分可以适于将如何与认证装置进行交互的指导提供给用户。在一些实施方式中,应用程序的客户端部分提供给用户的关于如何与认证装置进行交互的指导可以引用认证装置的实际的应用程序状态。在一些实施方式中,应用程序的客户端部分适于保持对认证装置的实际应用程序状态的跟踪。在一些实施方式中,认证装置可以适于将可以反映认证装置的实际应用程序状态的应用程序状态信息发送给主计算机,并且在主计算机上运行的应用程序的客户端部分可以适于接收该应用程序状态信息并且适于使用该与认证装置的应用程序状态有关的信息来向用户给出关于怎样与认证装置进行交互的适当指导或指令。
例如,在一些实施方式中,虽然主计算机尚未检测到认证装置的存在,但是在主计算机上的客户端应用程序可以指示用户启动认证装置。当主计算机已经建立起与用户的认证装置的蓝牙连接时,主计算机可以将消息发送给认证装置,以请求动态证书例如一次性密码。在一些实施方式中,认证装置可以在接收到这样的请求信息时进入如下状态:该认证装置等待用户批准所请求的动态证书的生成,并且认证装置可以将该状态指示给主计算机。然后,主计算机可以请求用户向认证装置指示(例如,通过按压认证装置的用户输入接口的特定按钮):用户确实批准生成所请求的动态证书。如果用户拒绝该请求(例如,通过按压指示拒绝的特定按钮),或者如果超时发生,则认证装置可以进入相应的状态并且将该状态传达给主计算机,据此主计算机可以采取适当的动作。
在一些实施方式中,应用程序可以请求认证装置对许多数据字段进行签名。例如,在一些实施方式中,在主计算机上的客户端应用程序可以使用蓝牙连接来将应用程序请求发送或转发给认证装置以对许多数据字段进行签名。在一些实施方式中,客户端应用程序可以从应用程序的服务器部分接收该请求,并且可以使用蓝牙连接将该请求转发给认证装置。在一些实施方式中,认证装置可以将待签名的数据字段(使用认证装置的用户输出接口)逐个呈现给用户以使用户在认证装置上进行审查或者批准(由此,认证装置可以使用认证装置的用户输入接口来捕获用户的批准)。在一些实施方式中,每当认证装置将数据字段呈现给用户来进行批准时,该认证装置可以进入如下状态:在该状态下认证装置等待用户对在认证装置上的数据字段的批准,并且可以告知主计算机其处在等待用户批准数据字段的状态。然后,主计算机上的客户端应用程序可以请求用户在认证装置上对由该认证装置呈现的数据字段进行审查,并且在该数据字段看起来正确的情况下在认证装置上批准该数据字段。当用户批准数据字段后,认证装置可以移动至下一状态:在该状态下认证装置呈现下一数据字段并且等待对该下一数据字段的批准,并且认证装置可以告知主计算机其已移动至该下一状态。主计算机上的客户端应用程序可以使用新状态信息来推断用户已批准认证装置上的先前数据字段并且认证装置在等待对下一数据字段的批准,在主计算机上的客户端应用程序现在可以请求用户对认证装置上的下一数据字段进行审查和批准。如果用户拒绝数据字段或者认证装置在等待用户对数据字段的批准时超时,则认证装置可以移动至相应的状态并且告知主计算机该状态。如果该状态向主计算机指示用户拒绝该数据,则应用程序可以取消该数据对应的事务。如果该状态向主计算机指示认证装置在等待用户的批准时超时,则主计算机上的客户端应用程序可以询问用户是否应当取消事务,或者是否应当重启签名处理。
图3A和图3B示意性地示出了根据本实用新型的一方面的方法(300)的示例。
在一些实施方式中,如在上面段落中的任何段落描述的认证系统和/或认证装置可以在确保用户与基于计算机的应用程序进行交互的方法中使用。在一些实施方式中,用户可以使用本地主计算机上的客户端应用程序来与应用程序进行交互,由此本地主计算机可以通过计算机网络例如因特网连接至运行应用程序的服务器部分的远程应用程序服务器。
在一些实施方式中,客户端应用程序可以扫描(305)(可能的)合适的蓝牙使能认证装置的存在。如果客户端应用程序不能够检测到(可能的)合适的激活的蓝牙使能认证装置的存在,则客户端应用程序可以请求或提示(306)用户(例如,通过在主计算机的用户输出接口上显示适当的消息)来启动蓝牙使能认证装置或激活认证装置的蓝牙接口。
如果客户端应用程序检测到存在多个(可能的)合适的蓝牙使能认证装置,则客户端应用程序可以选择(307)认证装置中的一个认证装置。例如,在一些实施方式中,客户端应用程序可以从所检测的认证装置中的每个中来检索装置识别数据元素,并且使用该装置识别数据元素来选择认证装置进行交互。例如,客户端应用程序可以将所检测的认证装置的装置识别数据元素的检索值与过去可能已与该主计算机一起使用的一个或更多个认证装置的装置识别数据元素进行比较。在一些实施方式中,客户端应用程序可以将所检测的认证装置的列表呈现给用户,并且提示用户选择一个认证装置。
如果客户端应用程序检测到单个蓝牙使能认证装置,或者选择了所检测的多个蓝牙使能认证装置中的一个,则客户端应用程序可以建立与所检测的或选择的认证装置的蓝牙连接(310)。
在一些实施方式中,客户端应用程序可以从认证装置中检索(315)装置识别数据元素如序列号,并且将该装置识别数据元素转发给应用程序的服务器部件。作为响应,客户端应用程序可以从应用程序的服务器部件接收用户名。在一些实施方式中,客户端应用程序可以使用蓝牙连接来从认证装置中检索(317)用户名。客户端应用程序可以在与应用程序的服务器部件和/或用户的进一步交互中例如在登录尝试期间使用所获得的用户名。在一些实施方式中,应用程序的服务器部件可以使用所接收的装置识别数据元素来确定与认证装置关联的一个或更多个秘密值或加密密钥(例如用于确保将消息发送给认证装置的安全消息传递密钥集合或者用于校验由认证装置生成的动态证书的一个或更多个秘密)的值。
在一些实施方式中,客户端应用程序可以使用蓝牙连接来请求(320)所连接的认证装置生成并返回动态证书。在一些实施方式中,客户端应用程序可以具有生成的请求。在一些实施方式中,该请求可以由应用程序的服务器部分生成,并且客户端应用程序可以从应用程序的服务器部分接收请求并且可以将请求转发给认证装置。在一些实施方式中,客户端应用程序可以通过蓝牙连接将口令发送(321)给认证装置以由认证装置在生成动态证书时使用。在一些实施方式中,客户端应用程序可以从应用程序的服务器部件接收口令。在一些实施方式中,客户端应用程序可以与用户进行交互以使得用户能够限定待由该应用程序进行的事务,并且客户端应用程序可以将与该事务有关的待由认证装置签名的数据通过蓝牙连接提交(322)给认证装置。在一些实施方式中,客户端应用程序可以在可以由应用程序的服务器部分生成的应用程序消息中将事务数据传达给认证装置。
在一些实施方式中,认证装置可以捕获(325)用户批准,以生成动态证书和/或将动态证书返回给运行客户端应用程序的主计算机。在一些实施方式中,认证装置可以将数据呈现(326)给用户,并且可以捕获(327)对呈现的数据的批准(或拒绝),其中呈现的数据和批准的数据可以由认证装置在生成动态证书时使用。
在一些实施方式中,认证装置可以捕获(330)由用户提供给认证装置的PIN和/或密码值,或者认证装置可以通过蓝牙连接从客户端应用程序接收(331)用户提供给客户端应用程序的PIN和/或密码值。在一些实施方式中,如在本说明书的其他地方更详细地说明的那样认证装置可以校验(332)所捕获的或接收的PIN和/或密码。
在一些实施方式中,认证装置可以捕获(335)由认证装置上的生物特征传感器获取的用户的生物特征测量结果,或者认证装置可以通过蓝牙连接从客户端应用程序接收(336)由主计算机获取的用户的生物特征测量结果。在一些实施方式中,如在本说明书的其他地方更详细地说明的那样认证装置可以校验(337)所捕获的或接收的生物特征测量结果。
在一些实施方式中,认证装置的用户输出接口可能具有十分有限的能力以致认证装置可能不能够使用该用户输出接口向用户清楚地提供以下指导:关于认证装置上的认证应用程序处在什么状态和用户可以做什么以及用户的动作会有什么效果。在一些实施方式中,客户端应用程序可以例如通过提供关于用户能够和/或应当做哪些动作(例如,按压各种按钮,等待超时等)以获得特定效果(例如,事务数据的批准或拒绝)来辅助(340)用户与认证装置进行交互。在一些实施方式中,认证装置(341)可以告知客户端应用程序该客户端应用程序所处的应用程序状态。在一些实施方式中,客户端应用程序可以保持对认证装置所处的应用程序状态进行跟踪(342),并且可以使用该知识来微调给用户的关于如何与认证装置进行交互的指导,以使得认证装置提供的指导与该认证装置所处的实际应用程序状态有关,如在本说明书的其他地方更详细地说明的那样。
在一些实施方式中,认证装置可以使用蓝牙连接来将命令发送(345)给与其连接的主计算机,并且主计算机上的客户端应用程序可以接收并且执行(346)这些命令,如在本说明书的其他地方更详细地说明的那样。在一些实施方式中,这些命令的执行要求主计算机上的客户端应用程序例如通过将输出经由例如主计算机的用户输出接口而提供给用户和/或经由例如主计算机的用户输入接口从用户获得输入来与用户进行交互(347)。
在一些实施方式中,认证装置可以生成(350)动态证书,如在本说明书的其他地方更详细地说明的那样。在一些实施方式中,认证装置可以仅在满足某些条件(例如PIN或密码或生物特征测量结果被成功地校验或者用户指示明确批准生成动态证书)的情况下生成动态证书。
在一些实施方式中,在动态证书被生成之后,认证装置可以将生成的动态证书通过蓝牙连接发送(351)给主计算机。
在一些实施方式中,客户端应用程序可以通过蓝牙连接从所连接的认证装置接收(352)所生成的动态证书,并且可以将所接收的动态证书转发(353)给应用程序的服务器部分。
在一些实施方式中,应用程序的服务器部分可以从客户端应用程序接收(354)动态证书,并且可以校验所接收的动态证书的正确性。在一些实施方式中,应用程序的服务器部分可以通过应用加密证书校验算法来校验(360)所接收的动态证书的正确性,该加密证书校验算法可以通过与认证装置关联的加密秘密来参数化。在一些实施方式中,应用程序的服务器部分可以在校验所接收的动态证书时使用对称加密算法,该对称加密算法利用秘密加密密钥来参数化,该秘密加密密钥在认证装置与应用程序的校验服务器部分之间共享。在一些实施方式中,应用程序的服务器部分可以使用认证装置的装置识别数据元素(如序列号)来获得可以在校验动态证书时使用的秘密。例如,在一些实施方式中,应用程序的服务器部分可以针对每个独立的认证装置将与该认证装置有关的一个或更多个秘密存储在数据库中,并且可以例如在数据库查询中使用装置识别数据元素从数据库检索这些秘密。在一些实施方式中,应用程序的几个部分可以通过从假定已生成动态证书的认证装置的装置识别数据元素和主秘密中获取在校验动态证书时使用的秘密的值来确定该值。
在一些实施方式中,应用程序的几个部分可以在确定是否要执行某些动作(例如,用户登录、或授权用户访问应用程序资源如某些信息,或执行用户请求的事务,由此与该事务有关的数据可以由动态证书签名)时使用(370)对所接收的动态证书的校验的结果。例如,在一些实施方式中,应用程序的几个部分可以在动态证书校验成功的情况下确定执行动作。在一些实施方式中,应用程序的几个部分可以在动态证书校验不成功的情况下确定不执行动作。在一些实施方式中,几个部分还可以考虑其他要素以确定是否执行动作,例如客户端应用程序可能已经从用户接收到的以及应用程序的几个部分可能已经从客户端应用程序接收到的静态PIN或密码的校验的结果。
已描述了多个实施方式。然而,应理解可以进行各种修改。例如,可以对一个或更多个实施方式的元件进行组合、删除、修改或补充,以形成其他的实施方式。因此,其他实施方式在所述权利要求的范围内。此外,虽然,可能仅公开了关于本实用新型的几个实施方式中的一个的特定特征,但是根据任何给定应用程序或特定应用程序的需要或在对该任何给定应用程序或特定应用程序有利的情况下,这样的特征可与其它实施方式中的一个或更多个其他特征结合。虽然以上描述了本实用新型的各种实施方式,但是应理解,这些实施方式仅作为示例呈现,而不是限制。特别地,当然,不可能为了描述所要求保护的主题,而描述部件或方法的每一种可构想到的组合,但是本领域普通技术人员会认识到,许多其他的组合和置换是可能的。特别地,相对于已描述的方法,可以省略呈现的方法中的一些步骤,可以添加其他步骤,并且各个步骤被执行的顺序可以不同于这些步骤被描述的顺序。因此,本实用新型的广度和范围不应该被以上所描述的示例性实施方式中的任何示例性实施方式所限制,而是应该仅根据所附权利要求及其等效内容来限定。
相关申请的交叉引用
本申请要求于2013年12月30日提交的序列号为61/921,743、标题为“AnAuthenticationApparatuswithaBluetoothInterface”的美国临时专利申请的优先权,该申请的全部公开内容通过引用合并入本文中。

Claims (42)

1.一种用于生成动态证书的便携式手持认证装置(100),包括:
存储部件(130),适于安全地存储加密证书生成密钥;
用户输入接口(120),用于接收来自所述认证装置的用户的输入;
用户输出接口(110),用于将输出呈现给所述用户;
数据处理部件(140),适于通过将所述加密证书生成密钥与动态变量以加密方式组合来生成所述动态证书;以及
蓝牙接口(150),用于使用所述认证装置与主计算机之间的蓝牙连接将所述认证装置连接到所述主计算机;
其中,所述认证装置适于通过与所述主计算机的蓝牙连接来发送所生成的动态证书。
2.根据权利要求1所述的认证装置(100),还包括:
时钟(160),用于提供时间值;
其中,所述认证装置还适于根据由所述时钟提供的所述时间值而确定所述动态变量的值。
3.根据权利要求1所述的认证装置,还适于:
在所述存储部件中存储第二变量;
根据所存储的第二变量而确定所述动态变量的值;以及
当所述第二变量的值已被用于生成所述动态证书时,更新并且在所述存储部件中存储所述第二变量的值。
4.根据权利要求3所述的认证装置,其中,所述的第二变量包括计数器,并且其中,更新所述第二变量包括下述中的至少之一:单调地增加所述计数器的值,或单调地减小所述计数器的值。
5.根据权利要求1所述的认证装置,还适于:通过所述蓝牙连接来接收针对所述动态证书的请求,响应于所述请求使用所述数据处理部件来生成所述动态证书,并且通过所述蓝牙连接来返回所生成的动态证书。
6.根据权利要求5所述的认证装置,还适于通过所述用户输入接口捕获下述中的至少之一:在生成所述动态证书之前的来自所述用户的用于生成所述动态证书的批准,或者在返回所述动态证书之前的来自所述用户的用于返回所述动态证书的批准。
7.根据权利要求5所述的认证装置,还适于通过所述蓝牙连接来接收口令,并且使用所接收的口令通过所述数据处理部件来生成所述动态证书。
8.根据权利要求5所述的认证装置,还适于:通过所述蓝牙连接来接收事务相关数据,通过所述用户输出接口将所接收的事务相关数据呈现给所述用户,通过所述用户输入接口来捕获所述用户对所述事务相关数据的批准,以及由所述数据处理部件使用所接收的事务相关数据来生成所述动态证书。
9.根据权利要求1所述的认证装置,还适于在所述存储部件中存储装置识别数据元素,并且适于使所述主计算机能够通过所述蓝牙连接来获得所述装置识别数据元素。
10.根据权利要求1所述的认证装置,还适于在所述存储部件中存储用户名,并且适于使所述主计算机能够通过所述蓝牙连接来获得所述用户名。
11.根据权利要求10所述的认证装置,还适于通过所述蓝牙连接来接收所述用户名,并且适于在所述存储部件中存储所述用户名以用于后续通过所述蓝牙连接进行检索。
12.根据权利要求1所述的认证装置,还适于使所述主计算机能够通过所述蓝牙连接来获得应用程序状态。
13.根据权利要求1所述的认证装置,还适于通过所述蓝牙连接给所述主计算机发送待由所述主计算机执行的一个或更多个命令。
14.根据权利要求1所述的认证装置,还适于对PIN或密码中的至少之一进行校验。
15.根据权利要求14所述的认证装置,还适于捕获经由所述用户输入接口提供给所述认证装置的所述PIN或所述密码中的至少之一。
16.根据权利要求14所述的认证装置,还适于通过所述蓝牙连接来接收所述PIN或所述密码中的至少之一。
17.根据权利要求14所述的认证装置,还适于仅在对所述PIN或所述密码中的至少之一的校验成功时生成所述动态证书。
18.根据权利要求1所述的认证装置,还适于在所述存储部件中存储生物特征基准数据,并且适于校验对所述用户的生物特征测量结果。
19.根据权利要求18所述的认证装置,还包括生物特征传感器,并且还适于使用所述生物特征传感器捕获所述生物特征测量结果。
20.根据权利要求18所述的认证装置,还适于通过所述蓝牙连接接收所述生物特征测量结果。
21.根据权利要求18所述的认证装置,还适于仅在对所述生物特征测量结果的校验成功时由所述数据处理部件生成所述动态证书。
22.根据权利要求1所述的认证装置,其中,所述用户输入接口包括单个按钮,并且其中,所述认证装置还适于通过所述用户按压所述单个按钮来捕获所述用户的批准。
23.根据权利要求1所述的认证装置,还适于下述中至少之一:通过所述蓝牙连接来接收或发送应用程序消息,所述应用程序消息由用于保护所述应用程序消息的完整性、机密性或真实性中的至少之一的安全消息传递技术来确保,由此所述认证装置还适于支持所述安全消息传递技术,并且适于执行在所述安全消息传递技术中使用的加密安全消息传递操作,由此所述安全消息传递技术独立于任何蓝牙安全消息传递机制。
24.根据权利要求23所述的认证装置,还适于在所述存储部件中存储安全消息传递秘密,并且适于使用所述安全消息传递秘密来确定加密安全消息传递密钥的值,并且适于在所述加密安全消息传递操作中使用所述加密安全消息传递密钥。
25.根据权利要求1所述的认证装置,其中,将所述加密证书生成密钥与所述动态变量以加密方式组合包括执行利用所述加密证书生成密钥来参数化的对称加密算法。
26.根据权利要求25所述的认证装置,其中,所述对称加密算法包括对称编密码算法或对称解密码算法中的至少之一。
27.根据权利要求25所述的认证装置,其中,所述对称加密算法包括密钥哈希算法。
28.根据权利要求1所述的认证装置,其中,所述用户输入接口包括两个按钮,其中,所述认证装置还适于通过所述用户按压所述两个按钮中的第一按钮来捕获所述用户的批准,并且适于通过所述用户按压所述两个按钮中的第二按钮来捕获所述用户的拒绝或取消中的至少之一。
29.根据权利要求1所述的认证装置,其中,所述蓝牙接口支持低功耗蓝牙。
30.一种用于确保应用程序和用户之间的交互的系统,所述应用程序包括服务器部分和客户端部分,所述系统包括:
应用程序服务器(210),安装有所述应用程序的服务器部分;
主计算机(230),运行作为所述应用程序的所述客户端部分的客户端应用程序,并且使所述用户(290)能够通过计算机网络(250)远程地访问所述应用程序的服务器部分,所述主计算机包括用于接收来自所述用户的输入的用户输入接口和用于给所述用户提供输出的用户输出接口;
认证装置(240),用于生成动态证书,所述认证装置包括:
存储部件(130),适于安全地存储加密证书生成密钥;
数据处理部件(140),适于通过将所述加密证书生成密钥与动态变量以加密方式组合来生成所述动态证书;以及
蓝牙接口(150),用于使用所述认证装置与所述主计算机之间的蓝牙连接将所述认证装置连接到所述主计算机;以及
校验服务器(220),用于校验所述动态证书的有效性;
由此
所述主计算机适于建立与所述认证装置的蓝牙连接;
所述认证装置适于经由所述蓝牙连接将所述动态证书返回到所述主计算机;
所述主计算机上的客户端应用程序还适于经由所述蓝牙连接来接收所述动态证书,并且适于将所生成的动态证书转发到所述校验服务器用于校验;
所述校验服务器适于校验所生成的动态证书,并且适于给所述应用程序服务器发送是否已将所述动态证书校验为有效的信号。
31.根据权利要求30所述的系统,其中
所述认证装置和所述校验服务器共享所述加密证书生成密钥;
对所述动态证书的所述生成和所述校验是通过使用秘密认证密钥的对称加密算法来完成,所述秘密认证密钥在所述认证装置和所述校验服务器之间共享。
32.根据权利要求30所述的系统,其中
所述校验服务器或所述应用程序服务器中的至少之一与所述认证装置共享一个或更多个安全消息传递密钥;
所述校验服务器或所述应用程序服务器中的至少之一适于生成应用程序消息,并且适于使用所共享的一个或更多个安全消息传递密钥,通过安全消息传递技术来确保所述应用程序消息;
所述客户端应用程序适于接收所确保的应用程序消息,并且适于通过所述蓝牙连接将所确保的应用程序消息转发到所述认证装置;以及
所述认证装置适于通过所述蓝牙连接来接收所确保的应用程序消息,并且适于使用所共享的一个或更多个安全消息传递密钥来支持所述安全消息传递密钥并且作用于所确保的应用程序消息。
33.根据权利要求30所述的系统,其中,所述认证装置适于:
通过所述蓝牙连接接收包含请求的应用程序消息,所述请求用于所述认证装置生成并且返回所述动态证书;以及
响应于接收到所述应用程序消息,生成所述动态证书并且通过所述蓝牙连接返回所述动态证书。
34.根据权利要求33所述的系统,其中,所述应用程序消息包括口令,并且所述动态变量基于所述口令。
35.根据权利要求34所述的系统,其中,所述口令包含由所述应用程序服务器或所述校验服务器中的至少之一生成的不可预测的值。
36.根据权利要求33所述的系统,其中,所述应用程序消息包含由所述用户提交给所述应用程序的事务数据,并且其中,所述动态变量是基于所述事务数据。
37.根据权利要求30所述的系统,其中
所述认证装置还适于维护随时间变化的应用程序状态,并且适于通过所述蓝牙连接将与所述认证装置的当前应用程序状态相关的信息发送给所述主计算机;以及
所述客户端应用程序还适于通过所述蓝牙连接来接收来自所述认证装置的所述当前应用程序状态信息,并且适于给所述用户提供关于如何处理所述认证装置的指导或指令中的至少之一,由此,所述指导或指令中的至少之一取决于所接收的当前应用程序状态信息。
38.根据权利要求30所述的系统,其中
所述客户端应用程序还适于由所述主计算机的所述用户输入接口从所述用户获得PIN值或密码值中的至少之一,并且适于通过所述蓝牙连接将所获得的PIN值或所获得的密码值中的至少之一发送给所述认证装置;以及
所述认证装置还适于通过所述蓝牙连接接收所述PIN值或所述密码值中的至少之一,并且适于对所接收的PIN值或所接收的密码值中的至少之一进行校验。
39.根据权利要求30所述的系统,其中
所述主计算机还包括生物特征测量部件,适于捕获来自所述用户的生物特征测量结果;
所述客户端应用程序还适于由所述主计算机的所述生物特征测量部件获得来自所述用户的生物特征测量结果,并且适于通过所述蓝牙连接将所获得的生物特征测量结果发送到所述认证装置;以及
所述认证装置还适于通过所述蓝牙连接来接收所述生物特征测量结果,并且适于校验所接收的生物特征测量结果。
40.根据权利要求30所述的系统,其中
所述认证装置还适于生成待由所述主计算机执行的命令,并且适于通过所述蓝牙连接将所述命令发送给所述主计算机;以及
所述客户端应用程序还适于通过所述蓝牙连接从所述认证装置接收所述命令,并且适于执行所述命令。
41.根据权利要求40所述的系统,其中,由所述主计算机执行所述命令包括所述主计算机使用所述用户输出接口或所述用户输入接口中的至少之一来与所述用户交互。
42.根据权利要求30所述的系统,其中
所述客户端应用程序还适于在所述认证装置通过所述蓝牙连接而连接到所述主计算机时获得所述认证装置与所述主计算机之间的距离指示,以及
其中,所述应用程序适于在决定是否授权、维持或撤销给所述用户的一个或多个访问权限时考虑所述距离指示。
CN201420859756.7U 2013-12-30 2014-12-30 认证装置和确保应用程序和用户之间的交互的系统 Active CN204948095U (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361921743P 2013-12-30 2013-12-30
US61/921,743 2013-12-30
PCT/US2014/070485 WO2015102880A1 (en) 2013-12-30 2014-12-16 An authentication apparatus with a bluetooth interface
USPCT/US2014/070485 2014-12-16

Publications (1)

Publication Number Publication Date
CN204948095U true CN204948095U (zh) 2016-01-06

Family

ID=52345546

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201410843026.2A Pending CN104811308A (zh) 2013-12-30 2014-12-30 具有蓝牙接口的认证设备
CN201420859756.7U Active CN204948095U (zh) 2013-12-30 2014-12-30 认证装置和确保应用程序和用户之间的交互的系统

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201410843026.2A Pending CN104811308A (zh) 2013-12-30 2014-12-30 具有蓝牙接口的认证设备

Country Status (7)

Country Link
US (2) US9614815B2 (zh)
EP (1) EP3090373B1 (zh)
JP (2) JP2017507549A (zh)
KR (1) KR102144528B1 (zh)
CN (2) CN104811308A (zh)
ES (1) ES2812541T3 (zh)
WO (1) WO2015102880A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111435914A (zh) * 2019-01-11 2020-07-21 维萨国际服务协会 用离线装置进行认证

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140207686A1 (en) * 2013-01-21 2014-07-24 Humetrix.Com, Inc. Secure real-time health record exchange
US10235512B2 (en) * 2014-06-24 2019-03-19 Paypal, Inc. Systems and methods for authentication via bluetooth device
CN205721792U (zh) * 2014-09-30 2016-11-23 苹果公司 电子设备
JP6488865B2 (ja) * 2014-12-04 2019-03-27 セイコーエプソン株式会社 印刷装置、印刷装置の制御方法、及び、記憶媒体
WO2016088310A1 (ja) 2014-12-04 2016-06-09 セイコーエプソン株式会社 印刷装置、印刷装置の制御方法、及び、記憶媒体
US9621948B2 (en) 2015-01-29 2017-04-11 Universal Electronics Inc. System and method for prioritizing and filtering CEC commands
US20160314294A1 (en) * 2015-04-24 2016-10-27 Hand Held Products, Inc. Secure unattended network authentication
US10015987B2 (en) * 2015-07-24 2018-07-10 Rai Strategic Holdings Inc. Trigger-based wireless broadcasting for aerosol delivery devices
JP6896632B2 (ja) * 2015-08-25 2021-06-30 ソニーグループ株式会社 通信装置、通信方法、及び、通信システム
US10261568B2 (en) 2015-09-16 2019-04-16 Microsoft Technology Licensing, Llc Enhancing user experience relative to peripheral devices
US9912668B2 (en) * 2015-09-16 2018-03-06 Microsoft Technology Licensing, Llc Enhancing user experience relative to peripheral devices
EP3380976B1 (en) * 2015-09-21 2020-11-18 OneSpan International GmbH A multi-user strong authentication token
CN108141364B (zh) * 2015-10-16 2021-09-17 诺基亚技术有限公司 用于消息认证的方法和装置
CN109075965B (zh) * 2015-12-30 2022-02-15 万思伴国际有限公司 使用口令码验证的前向安全密码技术的方法、系统和装置
JP6733238B2 (ja) * 2016-03-18 2020-07-29 富士ゼロックス株式会社 認証装置及び認証プログラム
US10009340B2 (en) * 2016-03-25 2018-06-26 Fortinet, Inc. Secure, automatic second factor user authentication using push services
US10530768B2 (en) * 2016-04-19 2020-01-07 Microsoft Technology Licensing, Llc Two-factor authentication
SE540967C2 (en) * 2016-04-29 2019-02-05 Stoneridge Electronics Ab An arrangement and a method for managing pin codes in a vehicle unit
WO2018004303A1 (ko) * 2016-07-01 2018-01-04 엘지전자(주) 블루투스 기술을 사용하는 장치의 인증 방법 및 장치
US10334434B2 (en) * 2016-09-08 2019-06-25 Vmware, Inc. Phone factor authentication
US11095449B2 (en) * 2016-12-16 2021-08-17 Visa International Service Association System and method for securely processing an electronic identity
KR101943855B1 (ko) * 2017-01-06 2019-01-31 (주)비콘테크놀로지 BLE 기반의 애드버타이징(advertising)을 이용한 보안 시스템 및 방법
US10691788B2 (en) * 2017-02-03 2020-06-23 Ademco Inc. Systems and methods for provisioning a camera with a dynamic QR code and a BLE connection
EP3586532B1 (en) * 2017-02-22 2020-10-28 Telefonaktiebolaget LM Ericsson (publ) Authentication of a client
US11184765B2 (en) * 2017-07-21 2021-11-23 Thales Dis France Sa Method for authenticating a user and corresponding user device, server and system
CA3082120A1 (en) 2017-11-24 2019-05-31 Elsi Inc. Devices, systems, and methods for securely storing and managing sensitive information
CN109005541B (zh) * 2018-07-20 2019-12-06 北京海泰方圆科技股份有限公司 蓝牙连接方法、装置和系统
EP3874679A4 (en) * 2018-11-01 2022-08-03 3M Innovative Properties Company DEVICE, USER OR SERVER REGISTRATION AND VERIFICATION
US11032716B2 (en) 2018-11-30 2021-06-08 Blackberry Limited Secure communication for machine to machine connections
EP3892023A4 (en) * 2018-12-06 2022-08-31 Entrust, Inc. SINGLE SIGN-ON USING SMART CREDENTIAL
US11394712B2 (en) * 2019-01-18 2022-07-19 Anchor Labs, Inc. Secure account access
US10733283B1 (en) * 2019-12-23 2020-08-04 Capital One Services, Llc Secure password generation and management using NFC and contactless smart cards
EP3923223A1 (en) * 2020-06-10 2021-12-15 Mastercard International Incorporated Iot devices
US20220400108A1 (en) * 2021-06-09 2022-12-15 Capital One Services, Llc Tokenizing authentication information
US20230089689A1 (en) * 2021-09-20 2023-03-23 Apple Inc. User interfaces for digital identification

Family Cites Families (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996007256A1 (fr) * 1994-08-30 1996-03-07 Kokusai Denshin Denwa Co., Ltd. Systeme de certification
US6772331B1 (en) * 1999-05-21 2004-08-03 International Business Machines Corporation Method and apparatus for exclusively pairing wireless devices
US7032240B1 (en) * 1999-12-07 2006-04-18 Pace Anti-Piracy, Inc. Portable authorization device for authorizing use of protected information and associated method
US20010045451A1 (en) * 2000-02-28 2001-11-29 Tan Warren Yung-Hang Method and system for token-based authentication
US7379919B2 (en) * 2000-04-11 2008-05-27 Mastercard International Incorporated Method and system for conducting secure payments over a computer network
JP3544918B2 (ja) * 2000-04-28 2004-07-21 株式会社東芝 無線通信装置及びユーザ認証方法
JP2001352324A (ja) 2000-06-07 2001-12-21 Nec Corp ワンタイムパスワード生成装置、認証方法およびワンタイムパスワード生成プログラムを記録した記録媒体
DE20012538U1 (de) * 2000-07-19 2000-10-12 Dosch & Amand Gmbh & Co Kg Internet-Endgerät mit Identifikationsmodul
JP4839516B2 (ja) * 2001-02-27 2011-12-21 ソニー株式会社 認証システム及び認証方法
JP2002259344A (ja) * 2001-02-28 2002-09-13 Mitsubishi Electric Corp ワンタイムパスワード認証システム及び携帯電話及びユーザ認証サーバ
US8554607B2 (en) * 2001-03-13 2013-10-08 Science Applications International Corporation Method and system for securing network-based electronic voting
US8028083B2 (en) * 2001-04-30 2011-09-27 Activcard Ireland, Limited Method and system for remote activation and management of personal security devices
US7194761B1 (en) * 2002-01-22 2007-03-20 Cisco Technology, Inc. Methods and apparatus providing automatic client authentication
JP3988510B2 (ja) * 2002-04-11 2007-10-10 株式会社デンソー 情報端末
JP4433472B2 (ja) * 2002-08-08 2010-03-17 ナンヤン テクノロジカル ユニヴァーシティ 分散型認証処理
EP1552484B1 (en) * 2002-10-17 2013-03-13 Vodafone Group PLC Facilitating and authenticating transactions
US7895443B2 (en) * 2002-11-05 2011-02-22 Safenet, Inc. Secure authentication using hardware token and computer fingerprint
JP4068512B2 (ja) * 2003-06-10 2008-03-26 株式会社東芝 通信装置、携帯端末装置、通信システム、通信制御プログラム及び通信制御方法
JP2005117430A (ja) * 2003-10-08 2005-04-28 Nec Saitama Ltd 携帯端末紛失時の不正使用防止方法及び携帯端末
GB2408129A (en) * 2003-11-14 2005-05-18 Isolve Ltd User authentication via short range communication from a portable device (eg a mobile phone)
JP2005173197A (ja) * 2003-12-11 2005-06-30 Buffalo Inc 暗号復号処理システム及び暗号復号処理装置
US20050223233A1 (en) * 2004-04-01 2005-10-06 Fujitsu Limited Authentication method and system
JP4817814B2 (ja) * 2004-11-19 2011-11-16 富士通株式会社 アプリケーション状態情報転送システム
US7636323B2 (en) * 2005-06-14 2009-12-22 Broadcom Corporation Method and system for handling connection setup in a network
US20070022196A1 (en) * 2005-06-29 2007-01-25 Subodh Agrawal Single token multifactor authentication system and method
CA2617938A1 (en) * 2005-08-03 2007-02-15 Intercomputer Corporation System and method for user identification and authentication
EP1802155A1 (en) * 2005-12-21 2007-06-27 Cronto Limited System and method for dynamic multifactor authentication
US7480637B2 (en) * 2005-12-23 2009-01-20 Biometric Associates, Lp Internet transaction authentication apparatus, method, and system for improving security of internet transactions
US8112787B2 (en) * 2005-12-31 2012-02-07 Broadcom Corporation System and method for securing a credential via user and server verification
US7464865B2 (en) * 2006-04-28 2008-12-16 Research In Motion Limited System and method for managing multiple smart card sessions
JP4868947B2 (ja) * 2006-06-05 2012-02-01 株式会社日立製作所 生体認証装置と生体認証システム及びicカード並びに生体認証方法
JP4584192B2 (ja) * 2006-06-15 2010-11-17 Necビッグローブ株式会社 認証システム、認証サーバ、端末、認証方法、プログラム
US20080216172A1 (en) * 2006-07-13 2008-09-04 Victor Forman Systems, methods, and apparatus for secure transactions in trusted systems
JP4936819B2 (ja) 2006-08-08 2012-05-23 ソフトバンクモバイル株式会社 携帯端末、パスコード生成プログラムおよびパスコード生成方法
US8667285B2 (en) * 2007-05-31 2014-03-04 Vasco Data Security, Inc. Remote authentication and transaction signatures
JP4790678B2 (ja) * 2007-09-05 2011-10-12 パナソニック株式会社 携帯端末装置及び認証エリア拡張システム
JP2009064310A (ja) * 2007-09-07 2009-03-26 Yamatake Corp データ通信方法およびクライアントサーバシステム
US8220034B2 (en) * 2007-12-17 2012-07-10 International Business Machines Corporation User authentication based on authentication credentials and location information
US8214888B2 (en) * 2008-01-30 2012-07-03 Vasco Data Security, Inc. Two-factor USB authentication token
JP5078675B2 (ja) * 2008-03-03 2012-11-21 三菱電機株式会社 会員認証システム及び携帯端末装置
US8302167B2 (en) * 2008-03-11 2012-10-30 Vasco Data Security, Inc. Strong authentication token generating one-time passwords and signatures upon server credential verification
US7996571B2 (en) * 2008-03-25 2011-08-09 Nokia Corporation Wireless coordination of apparatus interaction
US9286742B2 (en) * 2008-03-31 2016-03-15 Plantronics, Inc. User authentication system and method
JP4883219B2 (ja) * 2008-04-24 2012-02-22 富士通株式会社 ノード装置及びプログラム
US20100138914A1 (en) * 2008-12-01 2010-06-03 Research In Motion Limited System and method of providing biometric quick launch
US20100222000A1 (en) * 2009-02-27 2010-09-02 Research In Motion Limited Methods And Apparatus For Use In Selectively Retrieving And Displaying User Interface Information Of A Wireless Peripheral Device
JP2010204809A (ja) 2009-03-02 2010-09-16 Toppan Printing Co Ltd Usb型トークン
US8347096B2 (en) * 2009-07-10 2013-01-01 Vasco Data Security, Inc. Authentication token with incremental key establishment capacity
US9021601B2 (en) * 2009-10-23 2015-04-28 Vasco Data Security, Inc. Strong authentication token usable with a plurality of independent application providers
US8826030B2 (en) * 2010-03-22 2014-09-02 Daon Holdings Limited Methods and systems for authenticating users
WO2012023050A2 (en) * 2010-08-20 2012-02-23 Overtis Group Limited Secure cloud computing system and method
JP2012073902A (ja) * 2010-09-29 2012-04-12 Dainippon Printing Co Ltd 個人認証システム、個人認証方法、プログラム及び記憶媒体
CN102457824B (zh) * 2010-10-26 2015-05-27 中国移动通信集团公司 一种事件处理方法和装置
GB2485594B (en) * 2010-11-22 2012-10-24 Alan Wilkinson Shim-mask stencil
US8620379B2 (en) * 2010-12-06 2013-12-31 Broadcom Corporation Windows portable devices interface for Bluetooth low energy devices
DE212012000065U1 (de) * 2011-02-25 2013-09-27 Vasco Data Security International Gmbh Ein Token für eine starke Authentisierung mit akustischer Dateneingabe
WO2012164721A1 (ja) * 2011-06-02 2012-12-06 三菱電機株式会社 鍵情報生成装置及び鍵情報生成方法
JP2013031151A (ja) 2011-06-20 2013-02-07 Renesas Electronics Corp 暗号通信システムおよび暗号通信方法
US20130041790A1 (en) * 2011-08-12 2013-02-14 Sivakumar Murugesan Method and system for transferring an application state
US8453223B2 (en) * 2011-09-23 2013-05-28 Jerome Svigals Method, device and system for secure transactions
EP2575084A1 (en) * 2011-09-30 2013-04-03 Nxp B.V. Security token and authentication system
WO2013100905A1 (en) * 2011-12-27 2013-07-04 Intel Corporation Method and system for distributed off-line logon using one-time passwords
US8819798B2 (en) * 2011-12-29 2014-08-26 Ebay Inc. System and method for transferring states between electronic devices
JP5926441B2 (ja) * 2012-04-01 2016-05-25 オーセンティファイ・インクAuthentify Inc. マルチパーティシステムにおける安全な認証
US8819445B2 (en) * 2012-04-09 2014-08-26 Mcafee, Inc. Wireless token authentication
PL2885904T3 (pl) * 2012-08-03 2018-09-28 Vasco Data Security International Gmbh Dogodny dla użytkownika sposób uwierzytelniania i urządzenie stosujące mobilną aplikację uwierzytelniania
US8787902B2 (en) * 2012-10-31 2014-07-22 Irevo, Inc. Method for mobile-key service
US20140149742A1 (en) * 2012-11-28 2014-05-29 Arnold Yau Method and system of providing authentication of user access to a computer resource via a mobile device using multiple separate security factors
US8595810B1 (en) * 2013-01-13 2013-11-26 Mourad Ben Ayed Method for automatically updating application access security
US9154483B1 (en) * 2013-02-21 2015-10-06 Amazon Technologies, Inc. Secure device configuration
CN103312508A (zh) * 2013-05-15 2013-09-18 飞天诚信科技股份有限公司 一种动态令牌的工作方法
US20150033306A1 (en) * 2013-07-25 2015-01-29 International Business Machines Corporation Apparatus and method for system user authentication
US9936448B2 (en) * 2013-11-06 2018-04-03 Lg Electronics Inc. Method for transmitting and receiving data in wireless communication system and apparatus for performing the same
US9113329B2 (en) * 2013-11-18 2015-08-18 Tyfone, Inc. Mobile device learning mode for secure identification
US9319401B2 (en) * 2014-01-27 2016-04-19 Bank Of America Corporation System and method for cross-channel authentication
US9462469B2 (en) * 2014-04-21 2016-10-04 Arm Limited Systems and methods for short range wireless data transfer
US9631933B1 (en) * 2014-05-23 2017-04-25 Google Inc. Specifying unavailable locations for autonomous vehicles
US10055567B2 (en) * 2014-05-30 2018-08-21 Apple Inc. Proximity unlock and lock operations for electronic devices
KR20160000534A (ko) * 2014-06-24 2016-01-05 (주)휴맥스 홈 네트워크 자동 연결형 영상 스트리밍 서비스 시스템 및 방법
WO2016035769A1 (ja) * 2014-09-01 2016-03-10 パスロジ株式会社 ユーザ認証方法及びこれを実現するためのシステム
US10541986B2 (en) * 2014-12-31 2020-01-21 Onespan North America Inc. Method and apparatus for securing an application using a measurement of a location dependent physical property of the environment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111435914A (zh) * 2019-01-11 2020-07-21 维萨国际服务协会 用离线装置进行认证

Also Published As

Publication number Publication date
EP3090373A1 (en) 2016-11-09
US11026085B2 (en) 2021-06-01
WO2015102880A1 (en) 2015-07-09
KR102144528B1 (ko) 2020-08-14
KR20160129839A (ko) 2016-11-09
US20170171755A1 (en) 2017-06-15
CN104811308A (zh) 2015-07-29
JP6703151B2 (ja) 2020-06-03
US20150188891A1 (en) 2015-07-02
US9614815B2 (en) 2017-04-04
JP2019083560A (ja) 2019-05-30
ES2812541T3 (es) 2021-03-17
EP3090373B1 (en) 2020-05-27
JP2017507549A (ja) 2017-03-16

Similar Documents

Publication Publication Date Title
CN204948095U (zh) 认证装置和确保应用程序和用户之间的交互的系统
US11647385B1 (en) Security system for handheld wireless devices using time-variable encryption keys
TWI667585B (zh) 一種基於生物特徵的安全認證方法及裝置
CN109951489B (zh) 一种数字身份认证方法、设备、装置、系统及存储介质
CN108809659B (zh) 动态口令的生成、验证方法及系统、动态口令系统
US20180268415A1 (en) Biometric information personal identity authenticating system and method using financial card information stored in mobile communication terminal
TWI435272B (zh) 基於行動智慧卡之鑑認
JP5303407B2 (ja) 生体認証システム、携帯端末、半導体素子、および情報処理サーバ
KR101575687B1 (ko) 생체인식 본인인증 방법
CN101944216A (zh) 双因子在线交易安全认证方法及系统
US9977886B2 (en) Methods, apparatus and computer programs for entity authentication
CN104835038A (zh) 一种联网支付装置及方法
KR101769861B1 (ko) 패스워드 노출 없는 hsm 스마트 카드를 이용한 사용자 바이오 인증 방법 및 시스템
KR20120084631A (ko) 고유식별자 기반 인증시스템 및 방법
JP5919497B2 (ja) ユーザ認証システム
TWI696963B (zh) 票證發行與入場驗證系統與方法及使用於票證發行與入場驗證系統之用戶終端裝置
KR20110005612A (ko) 생체 인식을 이용한 오티피 운영 방법 및 시스템과 이를 위한 오티피 장치 및 기록매체
JP4964048B2 (ja) 非接触icと携帯情報端末を使用した認証システム及び認証方法
KR101592897B1 (ko) Nfc 보안 디지털 시스템, 상기 보안 디지털 시스템과 페어를 이루는 페어 시스템, 및 그 제공방법
KR20110005611A (ko) 사용자 매체를 이용한 오티피 운영 방법 및 시스템과 이를 위한 오티피 장치 및 기록매체
KR102210898B1 (ko) 일회용 인증코드의 거래 연동 방법
JP2008152612A (ja) 認証システム及び認証方法
KR20170111942A (ko) 고유정보연동 오티피(otp) 방식의 전자 인증 방법 및 전자 인증 시스템
KR20140050909A (ko) 이동통신기기를 이용한 로그인 인증 시스템 및 방법
KR20160047439A (ko) 매체 소유 인증을 이용한 오티피 운영 방법

Legal Events

Date Code Title Description
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: Zurich

Patentee after: VASCO DATA SECURTY, Inc.

Address before: Swiss Glatt Brygge

Patentee before: VASCO DATA SECURITY, Inc.

CP03 Change of name, title or address