CN109074437A - 具有改进的安全性的用于用户鉴权的方法和系统 - Google Patents
具有改进的安全性的用于用户鉴权的方法和系统 Download PDFInfo
- Publication number
- CN109074437A CN109074437A CN201780025080.8A CN201780025080A CN109074437A CN 109074437 A CN109074437 A CN 109074437A CN 201780025080 A CN201780025080 A CN 201780025080A CN 109074437 A CN109074437 A CN 109074437A
- Authority
- CN
- China
- Prior art keywords
- user
- authentication
- session
- authorization data
- specific
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/34—User authentication involving the use of external additional devices, e.g. dongles or smart cards
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0861—Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3228—One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3231—Biological data, e.g. fingerprint, voice or retina
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3271—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3297—Cryptographic 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 time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/63—Location-dependent; Proximity-dependent
- H04W12/64—Location-dependent; Proximity-dependent using geofenced areas
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/69—Identity-dependent
- H04W12/71—Hardware identity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/69—Identity-dependent
- H04W12/72—Subscriber identity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/69—Identity-dependent
- H04W12/73—Access point logical identity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2103—Challenge-response
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/082—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biodiversity & Conservation Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Bioethics (AREA)
- Telephonic Communication Services (AREA)
- Collating Specific Patterns (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Burglar Alarm Systems (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
一种分布式处理系统中的用户鉴权方法,该方法以在第一处理单元(108)处接收发起鉴权会话的请求(1004)为开始,其中,该请求包括需要鉴权的用户的唯一标识符。第一处理单元获取在鉴权会话期间有效的至少一项鉴权数据(412,1712)。鉴权数据被发送(1006)至与用户操作的终端设备相关联的第二处理单元(106)。第二处理单元使用基于一个或更多个会话特定鉴权因素(404,1704)的变换算法来对鉴权数据进行变换,以生成作为鉴权会话以及用户的特征的经变换的鉴权数据。经变换的鉴权数据被发送(1008)至第三处理单元(108),第三处理单元(108)验证经变换的鉴权数据是否与用户并且与一个或更多个会话特定鉴权因素的预定值对应。第三处理单元基于该验证生成鉴权会话的鉴权结果(1010)。
Description
技术领域
本发明总体上涉及鉴权系统和方法,并且更具体地涉及具有改进的安全性和灵活性的多因素鉴权系统。
背景技术
对个人身份的可靠且安全的鉴权是许多在线系统的基本要素。通常,要求在线系统或服务的授权用户提供至少用户标识符例如用户名或用户代码,以及附加的“秘密”代码例如密码或个人识别号码(PIN)。PIN或密码是知识因素的示例,以此要求用户证明对于该秘密即密码、短语或PIN的知晓以进行鉴权。
知识因素容易受到攻击,例如被窃听。最基本的窃听形式可能涉及在输入密码或PIN时观察用户。观察可以直接进行,或者可以涉及使用隐藏的摄像装置。技术上更复杂的窃听技术包括所谓的“中间人”攻击,在该种攻击中,在终端设备和/或中间网络节点中安装有以传输过程中可以访问未加密密码的系统组件为目标的恶意软件。用户也可能被欺骗从而透露出知识因素,例如,通过网络钓鱼攻击。
具有增强的安全性的鉴权方法包括双因素鉴权,其中,要求用户提供一个或更多个附加因素作为身份证明。例如,除知识因素外,最常用的是所有物因素(“用户拥有的事物”)。所有物因素的示例包括信用卡等,其必须与PIN一起出现以获得对交易系统的访问。其他形式的所有物因素包括:断开连接的令牌,该令牌显示周期性更新的随机数以供用户输入;以及可唯一识别的个人物品,例如蜂窝移动电话或智能电话。所有物因素显著提高了安全性,但尽管如此仍然容易被盗窃和复制(例如卡片速读)。
在本发明人共同转让的美国专利第8,869,255号和美国专利第9,519,764号中公开了提供有防止窃听的附加保护的对知识因素的安全性的改进,这两项专利的全部内容通过引用并入本文中。这样的系统可以通过使用诸如所有物因素的附加因素来进一步增强。然而,仍有进一步改进鉴权系统和方法的空间。例如,可能期望基于除用户身份之外的因素来控制或限制对安全系统的访问。例如,可能期望确保用户只能使用授权设备访问安全系统,和/或确保只有在用户处于安全位置时才能获得访问。同时,可能期望确保用户凭证和其他因素不会由于窃听(例如,中间人攻击)而被获取。优选地,以对最终用户透明的方式提供这样的附加安全性,使得不会给合法的已授权的用户带来额外的不便或障碍。
因此,本发明的一个目的是解决上述对于增强的鉴权系统和方法的需求。
发明内容
在一个方面中,本发明提供了一种用户鉴权方法,该方法包括由分布式处理系统执行下述步骤:
在第一处理单元处接收发起鉴权会话的请求,该请求包括需要鉴权的用户的唯一标识符;
第一处理单元获取在鉴权会话期间有效的至少一项鉴权数据;
将鉴权数据发送至第二处理单元,该第二处理单元与由用户操作的终端设备关联;
第二处理单元使用基于一个或更多个会话特定鉴权因素的变换算法对鉴权数据进行变换以生成作为鉴权会话以及用户的特征的经变换的鉴权数据;
将经变换的鉴权数据发送至第三处理单元;
第三处理单元验证经变换的鉴权数据是否与用户并且与上述一个或更多个会话特定鉴权因素的预定值对应;以及
第三处理单元基于该验证来生成鉴权会话的鉴权结果。
有利地,在对鉴权数据的转换中使用会话特定鉴权因素使得与鉴权会话的当前上下文相关联的信息能够被并入用户验证中。例如,第二处理单元可以包括在由用户操作的便携式个人设备的处理器上执行的指令代码,例如运行适合的软件的专用数字访问设备,或者简便地说是具有提供体现本发明的方面所需的指令代码的安装的应用(即“app”)的智能电话或其他个人设备。因此,当前上下文信息可以包括与下述各因素对应的值:诸如设备的地理位置、对于设备可见的无线网络的服务集标识符(SSID)和/或与设备相关联的唯一标识符。更一般地,可以将在设备上执行的软件代码能够访问的任何特定于上下文的信息用作会话特定鉴权因素。
在一些实施方式中,秘密关键字(例如,密码或口令)与用户关联,该秘密关键字包括选自预定符号集的有序的符号序列,并且其中:
至少一项鉴权数据包括安全矩阵,该安全矩阵包括符号集内的每个符号与下述代码值之间的映射,所述代码值特定于所述鉴权会话并且选自不同于该符号集的代码集;
由第一处理单元使用基于一个或更多个会话特定鉴权因素的预定值的变换算法对安全矩阵进行变换,以生成包括符号集和经变换的代码值的经变换的安全矩阵;
第二处理单元的变换算法包括:被配置成恢复安全矩阵的代码值的逆变换算法;以及用户输入步骤,该用户输入步骤用于接收选自安全矩阵的并且由用户输入的代码值序列,所述代码值与秘密关键字对应;以及
验证步骤包括:通过将在所述用户输入步骤中接收到的所述代码值序列与对应于秘密关键字的预期代码值序列以及秘密关键字到安全矩阵中的代码值的映射进行比较来校验代码值序列。
在这样的实施方式中,会话特定鉴权因素被应用于在共同转让的美国专利第8,869,255号和第9,519,764号中公开的类型的基于关键字的用户鉴权方法中对符号与代码值之间的映射进行“编码”。因此,第二处理单元(例如,由用户操作的便携式个人设备)必须确定并应用相同的会话特定鉴权因素的基于上下文的值,以正确地“解码”该映射。例如,如果应用基于位置的鉴权因素,则第一处理单元将使用该因素的预定值(例如,用户可被成功鉴权的位置的GPS坐标)来对该映射进行编码。便携式设备(即,第二处理单元)将例如通过使用内置GPS接收器硬件来确定其自身的位置,并且应用得到的坐标对该映射进行解码。该设备并不知道用于对该映射进行编码的GPS坐标的值,而是只有其自身的位置与那些坐标相匹配时才会获得正确的已解码的映射。因此,用户将只能在出现在授权位置处时才能成功鉴权。
在替选实施方式中,鉴权数据包括会话特定一次性代码字,该会话特定一次性代码字由第一处理单元使用通过一个或更多个会话特定鉴权因素的预定值而参数化的变换算法进行加密;
第二处理单元的变换算法包括:被配置成对会话特定一次性代码字进行解密的逆变换算法;以及密码签名步骤,其中,应用用户的私有密码密钥以生成包括会话特定一次性代码字的签名副本的经变换的鉴权数据;
验证步骤包括密码验证,其中,应用用户的公共密码密钥以确认已由与用户操作的终端设备相关联的第二处理单元生成了会话特定一次性代码字的签名副本。
这样的实施方式的具体优点在于,可以独立于要用户提供秘密关键字(例如,密码或口令)以便访问安全系统的任何要求来应用会话特定鉴权因素。在示例性场景中,用户可能希望访问在线服务(例如,由雇主提供的远程桌面服务),但是其被限制为不能在除了经核准的位置(例如,家庭办公室)之外这样做。在用户尝试登录服务时,第二处理单元(例如,鉴权服务器)例如可以生成会话特定一次性代码字(即,nonce),例如256位或512位的随机数。然后,第二处理单元可以使用对称加密算法对该nonce加密,在该加密算法中,密钥从会话特定鉴权因素的预定值例如用户的家庭办公室的GPS坐标得到。在接收到得到的鉴权数据时,用户的便携式设备(即,第二处理单元)将确定其自己的位置并应用所得到的坐标以生成用于对称加密算法的密钥以对该nonce解密。该设备并不知道用于生成原始加密密钥的GPS坐标的值,而是只有在其自身的位置与这些坐标匹配时才会成功解密该nonce。通过使用存储的私有密钥对得到的解密后的nonce签名,该设备使得能够随后验证出其能够成功地解密nonce。因此,该用户将仅能够在与其便携式设备一起出现在授权位置时成功地进行鉴权。
在另一方面,本发明提供了一种鉴权系统,包括:
处理器;
与处理器可操作地相关联的网络接口;以及
能够由处理器访问的至少一个计算机可读存储装置,
其中,存储装置包括能够由处理器执行的指令代码,并且该指令代码被配置成使处理器实现下述方法,所述方法包括下述步骤:
经由网络接口接收发起鉴权会话的请求,该请求包括需要鉴权的用户的唯一标识符;
获取在鉴权会话期间有效的至少一项鉴权数据;
经由网络接口将鉴权数据发送至与由用户操作的终端设备相关联的处理单元;以及
经由网络接口接收由与用户操作的终端设备相关联的处理单元生成的经变换的鉴权数据,其中,经变换的鉴权数据是该鉴权会话以及该用户的特征,
其中,经变换的鉴权数据被配置成使得能够验证该经变换的鉴权数据是否与用户并且与一个或更多个会话特定鉴权因素的预定值对应,
由此,能够基于该验证针对该鉴权会话生成鉴权结果。
在一些实施方式中,能够由处理器执行的指令代码被配置成使处理器通过下述步骤实现获取至少一项鉴权数据的步骤:
生成会话特定一次性代码字;
从至少一个计算机可读存储装置检索一个或更多个会话特定鉴权因素的预定值;以及
使用通过一个或更多个会话特定鉴权因素的预定值而参数化的变换算法对一次性代码字进行加密。
经变换的鉴权数据可以被配置成使得能够通过确认经变换的鉴权数据与已使用用户的私有密码密钥以加密方式签名的会话特定一次性代码字对应来进行验证。
在又一方面,本发明提供了一种便携式个人鉴权设备,包括:
处理器;
与处理器可操作地相关联的网络接口;以及
能够由处理器访问的至少一个计算机可读存储装置,
其中,该存储装置包括能够由处理器执行的指令代码,并且该指令代码被配置成使处理器在鉴权设备的用户的鉴权会话中实现下述方法,该方法包括下述步骤:
经由网络接口从鉴权系统接收在鉴权会话期间有效的鉴权数据;
使用基于一个或更多个会话特定鉴权因素的变换算法对鉴权数据进行变换,以生成作为该鉴权会话以及用户的特征的经变换的鉴权数据;
经由网络接口向鉴权系统发送经变换的鉴权数据,
其中,经变换的鉴权数据被配置成使得能够验证该经变换的鉴权数据与用户并且与一个或更多个会话特定鉴权因素的预定值对应,
由此,能够基于该验证针对该鉴权会话生成鉴权结果。
在本发明的实施方式中,鉴权数据包括加密的会话特定一次性代码字,并且能够由处理器执行的指令代码被配置成使该处理器通过下述方式实现对鉴权数据进行变换的步骤:
确定基于便携式个人鉴权设备的当前上下文的一个或更多个会话特定鉴权因素的值;
应用通过所确定的一个或更多个会话特定鉴权因素的值而参数化的算法,以解密鉴权数据并恢复会话特定一次性代码字;以及
应用在便携式个人鉴权设备的安全存储装置中保存的用户的私有密码密钥,以生成会话特定一次性代码字的签名副本以将该签名副本发送至鉴权系统。
在另一方面,本发明提供了一种有形的计算机可读介质,该计算机可读介质包括存储的程序指令,该程序指令在由鉴权系统的处理器执行时使得该鉴权系统实现下述方法,该方法包括下述步骤:
经由鉴权系统的网络接口接收发起鉴权会话的请求,该请求包括需要鉴权的用户的唯一标识符;
获取在鉴权会话期间有效的至少一项鉴权数据;
经由网络接口将鉴权数据发送至与用户操作的终端设备相关联的处理单元;以及
经由网络接口接收由与用户操作的终端设备相关联的处理单元生成的经变换的鉴权数据,其中,该经变换的鉴权数据是鉴权会话以及用户的特征,
其中,经变换的鉴权数据被配置成使得能够验证经变换的鉴权数据是否与用户并且与一个或更多个会话特定鉴权因素的预定值对应,
由此,能够基于该验证针对鉴权会话生成鉴权结果。
在又一方面,本发明提供了一种有形的计算机可读介质,该计算机可读介质包括存储的程序指令,该程序指令在由便携式个人识别设备的处理器执行时使得该设备实现下述方法,该方法包括下述步骤:
经由设备的网络接口从鉴权系统接收在鉴权会话期间有效的鉴权数据;
使用基于一个或更多个会话特定鉴权因素的变换算法对鉴权数据进行变换,以生成作为该鉴权会话以及用户的特征的经变换的鉴权数据;
经由网络接口向鉴权系统发送经变换的鉴权数据,
其中,经变换的鉴权数据被配置成使得能够验证该经变换的鉴权数据是否与用户并且与一个或更多个会话特定鉴权因素的预定值对应,
由此,能够基于该验证针对鉴权会话生成鉴权结果。
根据以下对各种实施方式的描述,本发明的实施方式的其他方面、优点和特征对于相关领域的技术人员而言将是明显的。然而,应当理解,本发明不限于所描述的实施方式,提供这些实施方式是为了说明在前述陈述和所附权利要求书中限定的本发明的原理并且帮助技术人员将这些原理转化为实际效果。
附图说明
现在将参照附图描述本发明的实施方式,在附图中,相同的附图标记指示相同的特征,并且其中:
图1是示出体现本发明的示例性系统的示意图;
图2是根据本发明的第一实施方式的在鉴权服务器处执行的用户鉴权方法的流程图;
图3是根据第一实施方式的在终端设备处执行的用户鉴权方法的流程图;
图4是根据第一实施方式的会话特定变换处理的流程图;
图5是根据第一实施方式的构造会话特定质询消息的处理的流程图;
图6是示出根据第一实施方式的用于生成会话特定变换/加密密钥的示例性方法的流程图;
图7是示出根据第一实施方式的示例性的会话特定逆变换处理的流程图;
图8是体现本发明的第一质询消息格式的示意性图;
图9示出了体现图8的消息格式的示例性XML代码;
图10示出了根据第一实施方式的终端设备、安全系统以及鉴权服务器之间的通信的时间线;
图11是根据第一实施方式的端点用户鉴权接口的示意性图示;
图12示出了示例性用户记录;
图13示出了示例性安全系统记录;
图14是示出可替选的体现本发明的用户鉴权系统和方法的示意图;
图15是示出根据本发明的另一实施方式的在鉴权服务器处执行的用户鉴权方法的流程图;
图16是示出根据另一实施方式的在便携式设备处执行的用户鉴权方法的流程图;
图17是示出根据另一实施方式的会话特定加密处理的流程图;
图18是示出根据另一实施方式的构造会话特定质询消息的处理的流程图;
图19是示出在图15和图16的方法中用于生成会话特定加密/解密密钥的示例性方法的流程图。
图20是示出由鉴权服务器响应于接收到由便携式设备生成的响应消息而执行的示例性鉴权处理的流程图;
图21示出了根据另一实施方式的质询消息格式的示意性图;
图22示出了体现图21的消息格式的示例性XML代码;以及
图23示出了根据另一实施方式的终端设备、安全系统以及鉴权服务器之间的通信的时间线。
具体实施方式
图1是示出体现本发明的系统100的框图。在安全系统104、一个或更多个用户终端设备106以及鉴权服务器108之间采用诸如因特网的公共通信网络102来进行消息传递。一般而言,用户终端设备106可以是具有经由因特网102(例如使用网络浏览软件和/或其他连接的应用)进行通信的能力的任何合适的计算装置、通信装置和/或处理装置。终端设备106还可以包括其他类型的终端装置,例如自动提款机(例如,ATM)、销售点(POS)终端、自动售货机等。此外,虽然示例性系统100包括用于在所有处理设备和系统之间进行通信的单一共享的不安全的网络102,但是本发明的实施方式可以包括其他类型的通信和/或交易网络,例如金融交易网络、专用网络、虚拟专用网络(VPN)、蜂窝电话网络、或者这些和/或其他形式的通信系统的混合物。
在本说明书中,除非上下文另有要求,否则诸如“处理器”、“计算机”等术语应被理解为指代包括硬件和软件的组合的设备、装置和系统的一系列可能的实现方式。这包括单处理器和多处理器设备和装置,包括便携式设备、台式计算机和各种类型的服务器系统,包括可以共处或分布的协作的硬件平台和软件平台。硬件可以包括传统的个人计算机架构或其他通用硬件平台。软件可以包括结合有各种应用和服务程序的商业上可用的操作系统软件。可替选地,计算或处理平台可以包括定制硬件和/或软件架构。为了增强可扩展性,计算与处理系统可以包括云计算平台,使得能够响应于服务需求来动态地分配物理硬件资源。虽然所有这些变型都落入本发明的范围内,但是为了便于说明和理解,本文中描述的示例性实施方式将基于单处理器通用计算平台、通常可用的操作系统平台和/或广泛可用的消费产品,例如台式电脑、笔记本或膝上型电脑、智能电话、平板计算机等。
具体地,在本说明书(包括权利要求书)中使用术语“处理单元”来指代被配置成执行具体限定的任务(例如生成并发送鉴权数据、接收并处理鉴权数据、或者接收并校验鉴权数据)的任何合适的硬件和软件的组合。这样的处理单元可以包括在单个处理设备上的单个位置处执行的可执行代码模块,或者可以包括在多个位置处和/或在多个处理设备上执行的协作的可执行代码模块。例如,在本发明的一些实施方式中,鉴权处理可以由在鉴权服务器108上执行的代码完全执行,而在其他实施方式中,对应的处理可以由在安全系统104和鉴权服务器108上执行的代码模块协作地执行。例如,本发明的实施方式可以采用安装在安全系统104或另一第三方系统上的应用程序编程接口(API)代码模块,其被配置成与在鉴权服务器108上执行的代码模块协同操作,以便为安全系统104提供鉴权服务。
可以按照软件工程领域的技术人员所熟悉的那样,使用任何合适的编程语言、开发环境、或者语言和开发环境的组合来开发体现本发明的特征的软件组件。例如,可以使用C编程语言、Java编程语言、C++编程语言、Go编程语言和/或适合于实现基于网络或web的服务的一系列语言(例如,JavaScript、HTML、PHP、ASP、JSP、Ruby、Python等)来开发合适的软件。这些示例并非旨在进行限制,并且应当理解,可以根据系统要求采用便捷的语言或开发系统。
在示例性系统100中,终端设备106各自包括处理器110。处理器110与通信接口112、一个或更多个用户输入/输出(I/O)接口114以及本地存储器装置116(其可以包括易失性存储装置和非易失性存储装置的组合)接合或者以其他方式与通信接口112、一个或更多个用户输入/输出(I/O)接口114以及本地存储器装置116可操作地相关联。非易失性存储装置可以包括固态非易失性存储器,例如只读存储器(ROM)、闪速存储器等。易失性存储装置可以包括随机存取存储器(RAM)。存储装置116包含与终端设备106的操作有关的程序指令和瞬态数据。在一些实施方式中,终端设备106可以包括附加的外围接口,例如,针对高容量非易失性存储装置(例如,硬盘驱动器、光盘驱动器)的接口等(图1中未示出)。
终端设备存储装置116可以包含与设备106的正常操作有关的程序和数据内容。这可以包括(例如与Windows、Android、iOS或MacOS操作系统相关联的)操作系统程序和数据,以及通常与本发明无关的其他可执行应用软件。存储装置116还包括程序指令118,该程序指令118在由处理器110执行时命令终端设备106执行与本发明的实施方式有关的操作,例如,如以下参照图3、图6、图7、图11和图14所描述的。
仍如图1所示,鉴权服务器108包括处理器120。处理器120与非易失性存储器/存储装置122接合或者以其他方式与非易失性存储器/存储装置122可操作地相关联,非易失性存储器/存储装置122可以是硬盘驱动器,并且/或者可以包括固态非易失性存储器,例如ROM、闪存等。处理器120还与易失性存储装置124例如RAM接合,易失性存储装置包含与鉴权服务器108的操作有关的程序指令和瞬态数据。
在传统配置中,存储装置122维护与鉴权服务器108的正常操作有关的已知的程序和数据内容。例如,存储装置122可以包含操作系统程序和数据,以及鉴权服务器108的预期功能所需的其他可执行应用软件。存储装置122还包含程序指令,当处理器120执行该指令时,命令鉴权服务器108执行与本发明的实施方式有关的操作,例如,如以下参照图2、图4、图5和图6更详细地描述的。在操作中,在存储装置122上保存的指令和数据被传输至易失性存储器124以供按需执行。
处理器120还以传统方式与通信接口126可操作地关联。通信接口126有助于访问数据通信网络102。
在使用中,易失性存储装置124包含具有从存储装置122传输的程序指令并且被配置成执行体现本发明的特征的处理和其他操作的对应主体128。
安全系统104可以是在允许代表末端用户访问和/或执行交易之前要求对那些末端用户鉴权的任何计算或处理系统。可以采用由本发明的实施方式提供的服务的安全系统包括但不限于银行系统(例如,在线银行门户)、电子商务支付门户、安全计算平台(例如,政府或雇主系统)和要求安全的用户鉴权的其他系统。
系统100所示的虚线表示体现本发明的终端设备106、安全系统104以及鉴权服务器108之间的通信。在下文中并且具体地参照图10和图22提供了这些通信的细节。出于此目的,现在参照图1提供简要概述。
要求访问安全系统104的末端用户可以使用终端设备106或者替选机制来发起访问请求1002。安全系统104使用由鉴权服务器108提供的服务以确定是否向末端用户提供所请求的访问。因此,安全系统104向鉴权服务器108发送授权请求1004。
鉴权服务器108生成质询消息1006并将该质询消息1006发送至终端设备106。该质询消息可以从鉴权服务器108向终端设备106直接发送,或者可以例如经由安全系统104间接地发送。路由质询消息1006的方式对于本发明的实施方式的总体操作而言并不重要。
响应于质询消息来提示用户进行输入,并且向鉴权服务器108发回对应的响应1008。鉴权服务器108校验该响应,并向安全系统104返回授权结果1010。根据授权结果,安全系统104可以经由终端设备106发送访问响应1012以对末端用户准予或拒绝访问。可替选地,在一些实施方式中,可以如以下参照图22所描述的通过另一机制准予所请求的访问。
图2是从鉴权服务器108的角度示出根据本发明的第一实施方式的用户鉴权方法的进一步的细节的流程图200。在步骤202处,鉴权服务器108从安全系统104接收授权请求,该请求包括末端用户的识别信息,例如用户名或其他用户ID。
在步骤204处,鉴权服务器108生成安全矩阵,该安全矩阵是预定符号集的成员与不同的代码集的成员之间的“一次性”映射。通常,该符号集包括来自用于鉴权目的的集合的多个符号,末端用户能够根据这些符号构造出关键字或短语(例如密码)或者其他符号序列。例如,符号集可以包括(大写和/或小写的)字母表、数字和/或选定的标点符号和其他特殊字符。
通常,代码集是不同的多个代码值。优选地,代码集的成员数小于符号集的成员数。例如,代码集可以是0至9的十进制数字的集合,其优点在于,所有这些代码值可以由用户仅使用PIN键盘或数字小键盘输入。
因此,通常,在步骤204处生成的安全矩阵所表示的映射不是“一对一”的,并且每个代码值可以映射到符号集中的多个符号。因此,通过例如经由随机或伪随机处理创建一次性映射,对于在终端设备106与鉴权服务器108之间传递的或者检查末端用户的动作的通信消息的窃听者或观察者而言,其不可能在任何单个观察中唯一地确定用于用户鉴权的关键词或短语。此外,由于针对每个鉴权实例生成新的安全矩阵,因此简单地重新输入已授权用户先前输入的代码将不会继续造成成功鉴权。
上述使用一次性安全矩阵的鉴权方法也用于本发明人共同转让的美国专利第8,869,255号和第9,519,764号所公开的系统中,这两项专利的全部内容通过引用并入本文中。
在步骤206处,鉴权服务器108基于一个或更多个会话特定因素来对安全矩阵中的代码值进行变换。在下文中参照图4提供了对该步骤的进一步讨论。
在对代码值进行变换之后,鉴权服务器108构造包括经变换的安全矩阵的质询消息以及其他相关信息并将其发送至终端设备106。在下文中参照图5对该步骤进行更详细地讨论。
在步骤210处,鉴权服务器108从终端设备106接收质询响应消息。该质询响应消息与末端用户提供的输入对应。如果终端设备106成功地逆转了在步骤206处由鉴权服务器108执行的变换,并且用户随后输入了正确的代码值序列,则鉴权服务器108将能够基于鉴权服务器处理器120可访问的数据库中保存的用户关键字的副本来再现相同的代码序列。在数据库中维护的用户记录的其他细节将在下文中参照图12进行讨论。
因此,在步骤212处,鉴权服务器108根据对应的本地生成的代码序列来校验所接收的代码序列。由此,生成鉴权结果214。在所接收的代码序列与本地生成的代码序列之间匹配的情况下,生成肯定的鉴权结果并将该肯定的鉴权结果发送至安全系统104。否则,生成否定鉴权结果并将该否定的鉴权结果发送至安全系统104。基于该鉴权结果,安全系统104能够经由终端设备106对末端用户准予或拒绝访问。
现在转向图3,示出了在体现本发明的终端设备处执行的用户鉴权方法的流程图300。方法300由终端设备106执行,以在步骤208处接收由鉴权服务器108生成的质询消息并对其作出响应。
具体地,在步骤302处,终端设备106从鉴权服务器108接收包括经变换的安全矩阵的质询消息。在步骤304处,终端设备106应用在步骤206处由鉴权服务器108采用的相同的会话特定因素,以便向经变换的代码值应用逆变换。在执行该逆变换之后,终端设备106已经根据在步骤204处生成的原始安全矩阵重新生成了符号集的符号与代码集的代码值之间的原始映射。
在步骤306处,例如通过终端设备106的I/O设备114的显示器将该原始安全矩阵呈现给用户。通常伴随着适当的提示,用户能够通过下述方式对所显示的安全矩阵作出响应,通过输入与映射对应且与用户的个人关键字(密码、口令或选自符号集的其他符号序列)对应的代码值序列。在步骤308处,终端设备106接收用户输入,然后生成包含所输入的代码序列的消息并将其发送回鉴权服务器108。如以上参照图2所讨论的,该消息在步骤210处被接收。
图4示出了说明根据本发明的实施方式的会话特定变换处理(例如,如在步骤206处由鉴权服务器108执行的变换处理)的流程图400。处理400的输入是在步骤204处生成的安全矩阵402。具体地,在步骤406处,识别并选择或检索一个或更多个会话特定因素404。会话特定因素通常取决于安全系统104的要求。因此,可以从与安全系统104相关联的数据库记录中检索会话特定因素。会话特定因素还可以取决于当前会话的其他特征,例如,特定用户、终端设备的位置、时间/日期和/或会话的任何其他可识别的属性。
因此,根据当前已描述的本发明的实施方式,从与本会话的预定义属性匹配的记录中检索406一个或更多个会话特定因素。具体地,检索或确定会话特定因素的对应值以用于变换方法400。可以在本发明的实施方式中采用的因素类型和值的示例包括但不限于:
●当前用户,由用户ID表示;
●终端设备位置,由确定到指定精度的GPS坐标表示;
●预定的特定于设备或特定于用户的密钥,例如数字证书,或在用户或设备注册过程期间生成的随机值,该密钥已被预先约定并被存储在终端设备106和鉴权服务器108二者处;
●与终端设备106相关联的一个或更多个唯一标识值,例如网络接口(MAC)地址、Wi-Fi站ID、互联网协议版本6(IPv6)地址、移动电话号码、SIM标识符或其他硬件设备(如CPU)序列号;
●根据由终端设备106和鉴权服务器108共享的算法而生成的变化值,例如基于在用户或设备注册过程期间生成的种子的伪随机序列;
●对于终端设备106可见的无线网络的一个或更多个服务集标识符(SSID)和/或多个可见SSID;
●终端设备106当前所连接的无线网络的SSID;
●终端设备106所连接的移动蜂窝载波的识别信息;
●时间和/或日期;
●在鉴权的时间/地点处由终端设备106可访问的本地信标或网络附接设备提供的数据;
●生物识别数据,例如来自终端设备106的指纹读取器和/或从由终端设备106的摄像装置捕获的图像获得的面部识别/分类数据;
在步骤408处,将在步骤404处检索或确定的因素值进行组合以形成会话特定转换/加密密钥。可以使用任何合适的算法来组合这些因素。例如,组合因素可以包括级联的一个或更多个会话特定因素的值、根据一个或更多个会话特定因素的值生成的散列、或者产生基于所有输入的会话特定因素值的输出的任何其他合适的函数。
可以以任何合适的方式进一步采用该组合结果以便变换安全矩阵402中的代码值。例如,可以将组合值用作应用于代码值的对称加密算法中的加密密钥。例如,简单的对称变换/加密算法是通过代码值与密钥值之间的按位异或(XOR)运算来计算出经变换的代码序列。更复杂的对称密码包括DES、3DES、AES-256、AES-512和Blowfish。用于这样的密码的合适的密钥可以通过使用合适的散列函数(例如但不限于SHA-256或SHA-512)从组合的会话特定因素值导出。优选地,采用对称算法,使得终端设备106能够在根据组合的会话特定因素值生成同一变换/加密密钥之后对变换进行逆转。然而,窃听者在不知道由鉴权服务器108和终端设备106共享但从未经由网络102发送的会话特定因素的值的情况下,将不能执行逆变换。
因此,在步骤410处,将包括组合的(以及可选的经散列的)会话特定因素值的密钥应用于安全矩阵402的代码值,得到变换后的安全矩阵412以供在发送步骤208处使用。
图5是示出构造用于在发送步骤208中发送的会话特定质询消息的处理的流程图500。处理500的输入是经变换的安全矩阵412。在步骤502处,基于安全矩阵412中包括的符号集生成了消息的符号集部分。类似地,在步骤504处,基于经变换的安全矩阵412内的经变换的代码值生成了消息的经变换代码集部分。
根据当前描述的实施方式,在步骤506处生成了有效代码部分。消息的有效代码部分的目的是向终端设备106传送完整的有效代码值集合,例如十进制数字0至9。以下参照图7更详细地描述终端设备106可以采用该信息的方式。
在步骤508处,生成消息的因素选择部分以向终端设备106通知将被用于逆转对代码值的变换的会话特定因素类型。注意,会话特定因素的值不在通过处理500构造的消息中,而是包括在鉴权服务器108与终端设备106之间共享的“秘密”信息。
在步骤510处,将各个消息部分进行组合以便构造完整的质询消息,然后在步骤512处发送该消息。
现在转向图6,其示出的流程图600示出了用于基于一个或更多个会话特定因素生成会话特定转换/加密密钥的示例性方法。方法600可以在鉴权服务器108中的变换处理400的步骤408处使用,并且然后可以类似地由终端设备106使用以生成用于执行对应的逆变换的密钥。
在步骤602处,初始化用于包含生成的密钥的存储装置。这可能涉及清除对应的存储器块,或者将某存储器块初始化为鉴权服务器108和终端设备106二者都已知的某个其他值。在一些情况下,初始化值本身可以是会话特定的,例如,基于唯一的会话ID或者基于鉴权服务器108和终端设备106的网络地址。
在示例性处理600中,使用迭代算法以对多个会话特定因素值进行组合。因此,在判定步骤604处,执行检查以确定是否仍存在其他待被组合的因素值。如果存在,则在步骤606处选择下一因素,并且在步骤608处检索或确定对应的因素值。在步骤610处,例如通过级联或其他算法方法将新的因素值组合进变换密钥中。然后,控制返回至判定步骤604以确定是否存在待被确定且待被组合的更多的因素值。
一旦已合并了所有因素值,则执行可选的完成步骤612。例如,完成步骤可以包括计算级联的因素值的散列值以产生已知长度的密钥,该密钥将被用作应用于安全矩阵402中的代码值的变换处理或加密处理的一部分。
图7是示出根据本发明的实施方式的可以在终端设备106处执行的会话特定逆变换处理的流程图700。在步骤702处,在逆变换中将根据与授权服务器108所采用的同一处理600获得的变换密钥应用于经变换的代码值以生成候选代码值。注意,这些被标识为“候选代码值”是因为由鉴权服务器108应用的会话特定因素值与由终端设备106应用的会话特定因素值之间的任何不匹配(例如,在尝试欺诈性鉴权的情况下)将导致生成不正确和/或无效的代码值。
具体地,在逆变换处理中应用不正确的变换密钥会得到作为无效代码值的一个或更多个候选代码值。例如,如果代码值被限制为十进制数字0至9,则无效的逆变换可能导致生成其他字符或符号。在步骤704处,对任何这样的无效代码值执行检查。在步骤506处生成的质询消息的无效代码部分可以由终端设备106使用以识别这样的无效代码值。如果存在无效值,则在步骤706处用从质询消息的有效代码部分选择的有效代码来替代这些无效值。该选择可以是随机的,或者通过任何其他合适的方法来执行。作为该替代步骤的结果,将始终向用户呈现看似有效的安全矩阵,并且因此用户将不会意识到已经检测到并阻止了欺诈性鉴权尝试的可能性。
图8示出了根据本发明的第一实施方式的质询消息格式的示意性图800。示例性质询消息800包括多个字段,这些字段与以上参照图5所述构造的各个消息部分对应。具体地,消息格式800包括符号集802、变换代码集804、有效代码集806和会话特定因素列表808。会话特定因素列表808包括标识会话特定因素的一个或更多个子字段,例如808a、808b,其用于生成例如以上参照图6所述的变换/加密密钥。
图9示出了根据格式800的体现质询消息的示例性XML代码900。在所示的示例中,符号集902包括字母表中大写的26个字母。变换代码集904是向对应的26个代码值集应用变换处理400的结果。在示例性XML消息900中,变换代码集904包括26个8位值,每个值被表示为两个十六进制数字。
XML代码900还包括有效代码值集906,在该示例中,有效代码值集906由十进制数字0至9组成。
XML元素908封装有会话特定因素910、912、914的列表。在该示例中,标识了三个因素,其中“ID”表示当前用户的标识符,“GPS:4”将由终端设备的GPS坐标组成的因素限定为四位小数的精度,“PSK”表示由终端设备106和鉴权服务器108二者均已知的预共享密钥组成的因素。
在由XML代码900表示的示例中,如果符合下述情况,则经变换的代码集904将被转换回正确的原始代码集:
●在终端设备上正在使用正确的用户ID;
●由具有四位小数精度的GPS坐标表示的终端设备的位置与鉴权服务器108已知的授权位置相匹配;以及
●终端设备采用的预共享密钥与鉴权服务器采用的密钥相匹配,例如,终端设备上安装的软件来自合法、可信且经授权的源。
现在转向图10,其示出了体现本发明的终端设备106、安全系统104以及鉴权服务器108之间的通信的时间线1000。从终端设备106向安全服务器104发送访问请求1002,并且从安全系统104向鉴权服务器108发送对应的授权请求1004,该授权请求可以包括由终端设备用户提供的用户ID或其他识别信息。此时,可以假定鉴权服务器108能够识别请求访问的具体安全系统104和经由终端设备106请求访问的用户这二者。
然后,从鉴权服务器108向终端设备106发送会话特定质询消息1006。该会话特定质询消息1006具有通用的消息格式800,并且具体可以包括XML代码例如图9所示的代码900。
然后,终端设备106对变换进行逆转以恢复原始的代码值序列,并且向终端设备的用户显示包括成对的关键字符号和代码值的安全矩阵。用户输入与用户关键字对应的代码值,并且从终端设备106向鉴权服务器108发送对应的会话特定质询响应1008。
然后,鉴权服务器108执行对用户输入的代码序列的校验,并且生成授权结果消息1010并将该授权结果消息1010发送至安全系统104。授权结果消息1010将指示用户是否成功鉴权。然后,发送对应的访问响应消息1012,该访问响应消息1012指示终端设备106是被准予还是被拒绝访问安全系统104。
时间线1000可以更广泛地解释为是三个处理单元之间的通信的表示,该表示与用于实现每个单元的位置、硬件和软件的特定组合无关。第一处理单元对应于鉴权服务器108,该鉴权服务器接收包括需要鉴权的用户的唯一标识符的请求、生成会话特定鉴权数据(即,质询)并将该鉴权数据发送至与终端设备106对应的第二处理单元。第二处理单元生成作为鉴权会话和用户的特征的经变换的鉴权数据,并将其发送至第三处理单元以进行验证。在由时间线1000表示的实施方式中,第三处理单元是可执行代码模块,该模块在与第一处理单元相同的鉴权服务器硬件平台108上执行,但是通常该功能可以全部或部分地常驻于其他地方,例如与在安全系统104上或在另一可信平台上执行的API代码模块一起。
图11是体现本发明的终端用户鉴权界面1100的示意性图示。示例性界面1100包括提示1102,例如,文本“请使用PIN键盘输入与你的密码对应的数字”。在提示1102下方显示有安全矩阵1104。安全矩阵1104包括成对的符号值和对应代码值。在示例1100中,存在30个符号值,其包括字母表中的26个字母和4个特殊字符,它们与包括十进制数字0至9的代码值配对。
因此,用户可以通过PIN键盘或数字小键盘1106输入与用户密码的符号值对应的代码值。小键盘1106可以是物理设备,或者可以在触摸屏显示器上生成。可以采用替选形式的用户输入,例如语音识别或者其他数据输入方法。
如前文所述,鉴权服务器108还例如在非易失性存储装置122内或者在处理器120可访问的其他持久存储装置内维护有一个或更多个数据库。由鉴权服务器108维护的一个或更多个数据库包括:包括用户记录的数据库以及包括安全系统记录的数据库。用户记录与可以被允许访问一个或更多个安全系统(例如,104)的用户对应。安全系统记录与鉴权服务器108为其提供鉴权服务的一个或更多个安全系统(例如,104)对应。
图12示意性地示出了可以由鉴权服务器108在数据库中进行维护的示例性用户记录1200的内容。该示例性用户记录1200包括用户标识符字段1202以及包含用户的关键字/密码的字段1204。为了附加的安全性,关键字/密码字段1204可以被加密,直到鉴权服务器108需要用户的关键字来对用户所尝试的对安全系统104的访问进行鉴权。用户记录1200可以包含一个或更多个用户信息字段1206。附加的用户信息字段1206可以包括个人信息,例如用户的真实姓名、联系方式等,并且/或者可以包含其他系统特定信息,例如授权到期日期或者在本发明的特定实现方式中可能需要的任何其他信息。还示出了用于存储用户的一个或更多个公共加密密钥的字段1208。虽然在本实施方式中不需要这些公共密钥,但是下文中针对本发明的其他实施方式并且参照图15至图22更详细地描述了用户公共密钥的应用。
图13示意性地示出了安全系统记录1300。安全系统记录1300可以包括与特定安全系统104对应的系统标识符1302,并且还可以包括鉴权信息1304。鉴权信息1304可以包括例如密码、公共密钥或鉴权服务器108可以使用的其他信息,以便识别和验证来自安全系统例如104的请求。
每个安全系统记录1300还包含一个或更多个因素列表1306。因素列表1306可以包括选择标准1308。例如,特定的因素列表可以用于特定的终端设备或位置、特定用户或者一天的特定时间处。因此,通过将当前的鉴权请求和/或上下文的参数与选择标准1308进行匹配,鉴权服务器108可以针对对应的安全系统104选择适当的因素列表。
每个因素列表1306包括一个或更多个因素条目,例如,1310a、1310b。每个因素条目包括因素类型(例如,如图9中所例示的“ID”、“GPS:4”、“PSK”)。在需要的情况下,因素条目还可以包括与因素类型对应的因素值。因素值可以包括例如允许的用户ID、经授权的终端位置或者预共享密钥的(可选地为了附加的安全性而进行加密的)值。
维护安全系统记录1300的鉴权服务器108可以被配置成用于各种不同的用例。
在一个示例性用例中,安全系统104可以提供对仅在特定安全建筑物内可用的关键记录的访问。这可以通过使用具有与该建筑物位置对应的值的位置因素来实现。如果终端设备106的位置与对应的因素值不匹配,则鉴权将失败并且访问将被拒绝。可以设置替选的因素列表以供与物理上位于该建筑物内的固定终端相关联地使用。例如,可以针对每个这样的固定终端设置因素列表,该因素列表具有与终端的物理参数对应的一个或更多个因素类型,例如MAC地址和/或其他唯一硬件组件标识符。因此,即使固定终端通常不具有独立确定其位置的能力,也可以成功地对来自这样的终端的访问安全系统104的尝试进行鉴权。
在另一示例性用例中,安全系统104可以是只允许从经授权的、提供业务的终端设备进行访问的安全计算平台,例如办公室服务器。例如,可以允许雇员基于膝上型计算机的MAC地址和/或其他唯一硬件识别号从公司的膝上型计算机访问服务器104。通过对多个基于硬件的因素进行组合,即使恶意用户试图例如通过更改未经授权的设备上的网络接口的MAC地址来欺骗系统,鉴权服务器108也可以基于终端设备106的唯一硬件签名来控制对安全系统104的访问。
转向图14,其示出的示意图1400示出了体现本发明的替选的用户鉴权系统和方法。在实施方式1400中,终端设备1402与用户设备1404不同。用户设备1404可以是例如便携式设备,例如智能电话或平板电脑。固定的终端设备1402包括显示器1406。当用户请求进行访问时,终端设备1402将会话特定质询消息1006转换为机器可读代码,例如QR码。
用户使用在便携式设备1404上安装的应用来扫描该机器可读代码,由该应用对该代码进行解码。然后,该应用实现对经变换的代码值的逆变换,并且向用户显示得到的安全矩阵。用户将与其关键字对应的代码值序列输入至便携式设备1404中。得到的包括该用户输入的代码的会话特定响应1008被发送至鉴权服务器108。用户设备1404上的应用可以配置有鉴权服务器的识别信息,或者可以根据从终端设备显示器1406获取的代码来获得相关的识别信息。在鉴权成功的情况下,然后通过终端设备1402向用户提供对安全系统104的访问。
因此,实施方式1400具有通过用户的个人设备1404提供“独立而公平的(arm’slength)”鉴权的优点,其中,用户将鉴权信息仅输入至他们自己的设备1404中而从不输入至终端设备1402中。这种安排能够增强取决于下述因素的多因素鉴权:用户拥有的事物(他们的便携式设备1404)、用户知道的事物(他们的关键字)以及可以在与用户正在尝试访问的安全系统104对应的因素列表中限定的任何其他因素。
现在将参照图15至图22,通过本发明的另一示例性实施方式来描述基于作为用户的“所有物因素”的便携式数字设备对多因素鉴权的进一步增强。该另一实施方式的总体系统配置保持如图1所示的100,然而终端设备106现在是便携式个人设备,例如运行合适的软件的专用数字访问设备,或者简便地说是例如,具有提供体现本发明所需功能的所需指令代码的安装的应用(即,“app”)的智能电话或其他个人设备。此外,虽然设备106可以由用户进行操作以请求访问安全系统,但是可以独立于该设备来生成访问请求。例如,用户可以通过仅输入诸如用户名的唯一标识符来从在台式计算机上运行的网络浏览器请求访问在线系统,从而触发远程安全系统104以生成对远程鉴权服务器108的鉴权请求。如以下参照图22更详细地描述的,然后,与便携式设备106的通信执行鉴权方法以使得安全系统104能够生成鉴权结果或者能够向安全系统104生成鉴权结果。
图15是从鉴权服务器108的角度示出根据本发明的另一实施方式的用户鉴权方法的其他细节的流程图1500。在步骤1502处,鉴权服务器108从安全系统104接收授权请求,该请求包括末端用户的识别信息,例如用户名或其他用户ID。在步骤1504处,鉴权服务器108生成会话特定的一次性代码字,在本领域中通常称为“nonce”,其可以是例如适当长度例如256位或512位的随机数。
在步骤1506处,鉴权服务器108基于一个或更多个会话特定因素生成加密密钥。下文参照图17提供了对该步骤的进一步讨论。加密密钥用于例如使用诸如DES、3DES、AES-256、AES-512或Blowfish的对称密码对在步骤1506处的nonce进行加密。然后,向便携式设备106发送包括经加密的nonce和其他相关信息的质询消息,如以下参照图18更详细地讨论的。随后,在步骤152处,鉴权服务器108从便携式设备106接收质询响应消息,该消息包括原始的、已解密的nonce的数字签名副本。在终端设备106已经成功复制了由鉴权服务器108在步骤1506处执行的密钥生成并且已经应用了用户的私有密钥进行签名的情况下,鉴权证服务器108在步骤1514处将能够使用用户的公共密钥1208来校验nonce并验证签名。由此,生成鉴权结果1516。
现在转向图16,其示出了在便携式设备106例如执行包括体现本发明的代码的应用的智能电话处执行的用户鉴权方法的流程图1600。具体地,在步骤1602处,设备106从鉴权服务器108接收包括加密的nonce的质询消息。在步骤1604处,设备106应用由鉴权服务器108在步骤1506处采用的相同的会话特定因素以便复制用于对nonce加密的对称加密/解密密钥。在步骤1606处,使用该密钥对nonce解密。然后,在步骤1608处使用被安全地保存在便携式设备内的用户私有密钥对已解密的nonce进行签名。例如,在便携式设备是智能电话的情况下,可以使用由Android密钥库系统、iOS钥匙链服务或其他操作系统和硬件平台下支持的等效功能提供的特征来安全地执行签名步骤。然后,在步骤1610处将得到的已解密且已签名的nonce发送至鉴权服务器108。
图17示出了说明会话特定的加密处理(例如,根据本发明的实施方式的在步骤1506与步骤1508处由鉴权服务器108执行的处理)的流程图1700。处理1700的输入是在步骤1704处生成的nonce 1702。具体地,在步骤1706处,以与先前参照图14和图13描述的第一实施方式类似的方式识别并选择或检索一个或更多个会话特定因素1704。在步骤1708处,将在步骤1706处检索或确定的因素值进行组合以形成会话特定加密密钥,在步骤1710处使用该会话特定加密密钥以生成加密nonce 1712。
图18是示出构造用于在步骤1510中进行发送的会话特定质询消息的处理的流程图1800。处理1800的输入是加密nonce 1712。在步骤1802处,生成消息的因素选择部分以向便携式设备106通知将被用于生成解密密钥的会话特定因素类型。如在上述第一实施方式中那样,会话特定因素的“正确”值不在通过处理1800在步骤1804处构造的消息中,而是包括在鉴权服务器108与便携式设备106之间共享的“秘密”信息。在步骤1806处,发送完整的质询消息。
现在转向图19,其示出的流程图1900示出了用于基于一个或更多个会话特定因素来生成会话特定加密/解密密钥的示例性方法。方法1900可以在鉴权服务器108中的变换处理1500的步骤1506处使用,并且然后可以类似地在响应生成处理1600的步骤1604处由便携式设备106使用。在步骤1902处,初始化用于容置生成的密钥的存储装置。在示例性处理1900中,使用了迭代算法,即,步骤1904至1910,用于以与处理600中的步骤604至610类似的方式对多个会话特定因素值进行组合。一旦已合并了所有因素值,则执行完成步骤1912,该步骤通常可以包括计算组合的因素值的散列值以产生已知长度的密钥,该密钥将被用作应用于nonce 1702的加密/解密处理的一部分。
图20是示出由鉴权服务器108响应于接收到2002包括由便携式设备106生成的已解密且已签名的nonce的消息而执行的鉴权的处理的流程图2000。首先,在步骤2004处,将已解密的nonce与原始生成的nonce 1702进行比较。如果在判定步骤2006处发现已解密的nonce与原始生成的nonce匹配,则鉴权服务器108通过应用在用户记录1200中存储的用户的公共密钥1208来继续验证签名是否有效。如果在判定步骤2010发现签名匹配,则确认鉴权成功2012。如果在判定步骤2006处存在已解密的nonce不匹配,或者在判定步骤2010处存在数字签名不匹配,则鉴权失败2014。
图21示出了根据本发明的本实施方式的质询消息格式的示意性图2100。示例性质询消息2100包括与如上参照图18所述构造的各个消息部分对应的字段。具体地,消息格式2100包括加密的nonce 2102以及会话特定因素列表2104,该列表又包括标识会话特定因素的一个或更多个子字段,例如2104a、2104b,以上这些用于生成加密/解密密钥。
在图22中示出了等效的示例性XML格式的消息内容2200。在所示的示例中,加密的nonce 2202包括512位的值,该值被表示为64个8位的十六进制数。还存在会话特定因素的列表2204,其格式与先前已经参照图9描述的格式相同。
现在转向图23,其示出了根据本发明的本实施方式的便携式设备106、安全系统104以及鉴权服务器108之间的通信的时间线2300。安全服务器104接收访问请求2302,并且从安全系统104向鉴权服务器108发送对应的授权请求1004,该授权请求可以包括用户ID或其他识别信息请求者。然后,从鉴权服务器108向便携式设备106发送会话特定质询消息1006。在该实施方式中,该会话特定质询消息具有通用的消息格式2100,并且具体可以包括XML代码诸如图22所示的代码2200。然后,终端设备106应用会话特定因素(FL)来生成解密密钥以对加密的nonce(N)解密、对得到的值进行签名并向鉴权服务器108发送对应的会话特定质询响应1008。然后,鉴权服务器108如先前参照图20所述执行对经签名的nonce的校验,并且生成授权结果消息1010并将该授权结果消息1010发送至安全系统104。安全系统104使用该结果来确定是否对正在请求的用户准予访问2312。
应当理解,虽然本文中已经描述了本发明的特定实施方式和变型,但是对于相关领域的技术人员而言,其他的修改和更改将是明显的。具体地,这些实施方式是通过说明本发明的原理的方式提供的,并且目的是提供一些用于使这些原理生效的具体方法和布置。总的来说,本发明的实施方式依赖于提供如下的技术布置,可以凭借该技术布置在两个远程位置独立地生成验证码并且还可以例如在鉴权服务器位置处和终端设备位置处独立地生成对应的变换/加密密钥。变换/加密密钥取决于一个或更多个会话特定因素,使得可以基于广泛的标准来阻止在无权限的情况下访问安全系统的尝试。这样的标准包括但不限于终端设备位置、终端设备硬件签名、一天中的时间等。
因此,所描述的实施方式应被理解为是出于教示本发明的一般特征和原理的目的而作为示例提供的,而不应被理解为限制本发明的范围,本发明的范围是如所附权利要求书中所限定的。
Claims (15)
1.一种用户鉴权方法,所述方法包括由分布式处理系统执行下述步骤:
在第一处理单元处接收发起鉴权会话的请求,所述请求包括需要鉴权的用户的唯一标识符;
所述第一处理单元获取在所述鉴权会话期间有效的至少一项鉴权数据;
将所述鉴权数据发送至第二处理单元,所述第二处理单元与由所述用户操作的终端设备关联;
所述第二处理单元使用基于一个或更多个会话特定鉴权因素的变换算法对所述鉴权数据进行变换,以生成作为所述鉴权会话以及所述用户的特征的经变换的鉴权数据;
将所述经变换的鉴权数据发送至第三处理单元;
所述第三处理单元验证所述经变换的鉴权数据是否与所述用户并且与所述一个或更多个会话特定鉴权因素的预定值对应;以及
所述第三处理单元基于所述验证来生成所述鉴权会话的鉴权结果。
2.根据权利要求1所述的方法,其中,秘密关键字与所述用户关联,所述秘密关键字包括选自预定符号集的有序的符号序列,并且其中:
所述至少一项鉴权数据包括安全矩阵,所述安全矩阵包括所述符号集内的每个符号与代码值之间的映射,所述代码值特定于所述鉴权会话并且选自不同于所述符号集的代码集;
由所述第一处理单元使用基于所述一个或更多个会话特定鉴权因素的所述预定值的变换算法对所述安全矩阵进行变换,以生成包括所述符号集和经变换的代码值的经变换的安全矩阵;
所述第二处理单元的所述变换算法包括:被配置成恢复所述安全矩阵的所述代码值的逆变换算法;以及用户输入步骤,用于接收选自所述安全矩阵的并且由所述用户输入的代码值序列,所述代码值与所述秘密关键字对应;以及
所述验证步骤包括:通过将在所述用户输入步骤中接收到的所述代码值序列与对应于所述秘密关键字的预期代码值序列以及所述秘密关键字到所述安全矩阵中的代码值的映射进行比较来校验所述代码值序列。
3.根据权利要求1所述的方法,其中:
所述鉴权数据包括会话特定一次性代码字,所述会话特定一次性代码字由所述第一处理单元使用通过所述一个或更多个会话特定鉴权因素的预定值而参数化的变换算法进行加密;
所述第二处理单元的所述变换算法包括:被配置成对所述会话特定一次性代码字进行解密的逆变换算法;以及密码签名步骤,其中,应用所述用户的私有密码密钥,以生成包括所述会话特定一次性代码字的签名副本的所述经变换的鉴权数据;
所述验证步骤包括密码验证,其中,应用所述用户的公共密码密钥,以确认已由与所述用户操作的所述终端设备相关联的所述第二处理单元生成了所述会话特定一次性代码字的所述签名副本。
4.根据权利要求1所述的方法,其中,所述一个或更多个会话特定鉴权因素包括下述中的至少一个:
由所述用户操作的所述终端设备的地理位置;
对于由所述用户操作的所述终端设备可见的无线网络的一个或更多个服务集标识符(SSID);
所述终端设备所连接的无线网络的SSID;
所述终端设备所连接的移动蜂窝载波的识别信息;
与由所述用户操作的所述终端设备相关联的唯一标识符;
所述用户的唯一标识符;
预定的特定于设备或者特定于用户的密钥值;
根据预定算法生成的变化值;
时间和/或日期;
由能够被所述终端设备访问的本地信标或网络附接设备提供的数据;以及
所述用户的生物识别数据。
5.根据权利要求1所述的方法,其中:
所述第一处理单元包括在服务提供方计算机系统的处理器和/或鉴权服务器系统的处理器上执行的指令代码;并且
所述第二处理单元包括在由所述用户操作的所述终端设备的处理器上执行的指令代码。
6.根据权利要求5所述的方法,其中,由所述用户操作的所述终端设备是由所述用户携带的便携式设备。
7.根据权利要求1所述的方法,其中,所述第三处理单元包括在服务提供方计算机系统的处理器和/或鉴权服务器系统的处理器上执行的指令代码。
8.一种鉴权系统,包括:
处理器;
与所述处理器可操作地相关联的网络接口;以及
能够由所述处理器访问的至少一个计算机可读存储装置,
其中,所述存储装置包括能够由所述处理器执行的指令代码,并且所述指令代码被配置成使所述处理器实现下述方法,所述方法包括下述步骤:
经由所述网络接口接收发起鉴权会话的请求,所述请求包括需要鉴权的用户的唯一标识符;
获取在所述鉴权会话期间有效的至少一项鉴权数据;
经由所述网络接口将所述鉴权数据发送至与由所述用户操作的终端设备相关联的处理单元;以及
经由所述网络接口接收由与所述用户操作的所述终端设备相关联的所述处理单元生成的经变换的鉴权数据,其中,所述经变换的鉴权数据是所述鉴权会话以及所述用户的特征,
其中,所述经变换的鉴权数据被配置成使得能够验证所述经变换的鉴权数据是否与所述用户并且与所述一个或更多个会话特定鉴权因素的预定值对应,
由此,能够基于所述验证针对所述鉴权会话生成鉴权结果。
9.根据权利要求8所述的系统,其中,能够由所述处理器执行的所述指令代码被配置成使所述处理器通过下述步骤实现获取所述至少一项鉴权数据的所述步骤:
生成会话特定一次性代码字;
从所述至少一个计算机可读存储装置检索所述一个或更多个会话特定鉴权因素的所述预定值;以及
使用通过所述一个或更多个会话特定鉴权因素的所述预定值而参数化的变换算法对所述一次性代码字进行加密。
10.根据权利要求9所述的系统,其中,所述经变换的鉴权数据被配置成使得能够通过确认所述经变换的鉴权数据与已使用所述用户的私有密码密钥以加密方式签名的所述会话特定一次性代码字对应来进行验证。
11.一种便携式个人鉴权设备,包括:
处理器;
与所述处理器可操作地相关联的网络接口;以及
能够由所述处理器访问的至少一个计算机可读存储装置,
其中,所述存储装置包括能够由所述处理器执行的指令代码,并且所述指令代码被配置成使所述处理器在所述鉴权设备的用户的鉴权会话中实现下述方法,所述方法包括下述步骤:
经由所述网络接口从鉴权系统接收在所述鉴权会话期间有效的鉴权数据;
使用基于一个或更多个会话特定鉴权因素的变换算法对所述鉴权数据进行变换,以生成作为所述鉴权会话以及所述用户的特征的经变换的鉴权数据;
经由所述网络接口向所述鉴权系统发送所述经变换的鉴权数据,
其中,所述经变换的鉴权数据被配置成使得能够验证所述经变换的鉴权数据是否与所述用户并且与所述一个或更多个会话特定鉴权因素的预定值对应,
由此,能够基于所述验证针对所述鉴权会话生成鉴权结果。
12.根据权利要求11所述的个人便携式鉴权设备,其中,所述鉴权数据包括加密的会话特定一次性代码字,并且能够由所述处理器执行的所述指令代码被配置成使所述处理器通过下述方式实现对所述鉴权数据进行变换的步骤:
确定基于所述便携式个人鉴权设备的当前上下文的所述一个或更多个会话特定鉴权因素的值;
应用通过所确定的一个或更多个会话特定鉴权因素的值而参数化的算法,以解密所述鉴权数据并恢复所述会话特定一次性代码字;以及
应用在所述便携式个人鉴权设备的安全存储装置中保存的所述用户的私有密码密钥,以生成所述会话特定一次性代码字的签名副本以将所述签名副本发送至所述鉴权系统。
13.根据权利要求12所述的个人便携式鉴权设备,其中,所述一个或更多个会话特定鉴权因素包括下述中的至少之一:
由所述用户操作的所述终端设备的地理位置;
对于由所述用户操作的所述终端设备可见的无线网络的一个或更多个服务集标识符(SSID);
所述终端设备所连接的无线网络的SSID;
所述终端设备所连接的移动蜂窝载波的识别信息;
与由所述用户操作的所述终端设备相关联的唯一标识符;
所述用户的唯一标识符;
预定的特定于设备或特定于用户的密钥值;
根据预定算法生成的变化值;
时间和/或日期;
由能够被所述终端设备访问的本地信标或网络附接设备提供的数据;以及
所述用户的生物识别数据。
14.一种有形的计算机可读介质,所述计算机可读介质包括存储的程序指令,所述程序指令在由鉴权系统的处理器执行时使得所述鉴权系统实现下述方法,所述方法包括下述步骤:
经由所述鉴权系统的网络接口接收发起鉴权会话的请求,所述请求包括需要鉴权的用户的唯一标识符;
获取在所述鉴权会话期间有效的至少一项鉴权数据;
经由所述网络接口将所述鉴权数据发送至与所述用户操作的终端设备相关联的处理单元;以及
经由所述网络接口接收由与所述用户操作的所述终端设备相关联的所述处理单元生成的经变换的鉴权数据,其中,所述经变换的鉴权数据是所述鉴权会话以及所述用户的特征,
其中,所述经变换的鉴权数据被配置成使得能够验证所述经变换的鉴权数据是否与所述用户并且与所述一个或更多个会话特定鉴权因素的预定值对应,
由此,能够基于所述验证针对所述鉴权会话生成鉴权结果。
15.一种有形的计算机可读介质,所述计算机可读介质包括有存储的程序指令,所述程序指令当由便携式个人识别设备的处理器执行时使得所述设备实现下述方法,所述方法包括下述步骤:
经由所述设备的网络接口从鉴权系统接收在鉴权会话期间有效的鉴权数据;
使用基于一个或更多个会话特定鉴权因素的变换算法对所述鉴权数据进行变换,以生成作为所述鉴权会话以及所述用户的特征的经变换的鉴权数据;
经由所述网络接口向所述鉴权系统发送所述经变换的鉴权数据,
其中,所述经变换的鉴权数据被配置成使得能够验证所述经变换的鉴权数据是否与所述用户并且与所述一个或更多个会话特定鉴权因素的预定值对应,
由此,能够基于所述验证针对所述鉴权会话生成鉴权结果。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2016901019 | 2016-03-18 | ||
AU2016901019A AU2016901019A0 (en) | 2016-03-18 | Method and system for user authentication with improved security | |
PCT/AU2017/050240 WO2017156590A1 (en) | 2016-03-18 | 2017-03-17 | Method and system for user authentication with improved security |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109074437A true CN109074437A (zh) | 2018-12-21 |
Family
ID=59850010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780025080.8A Pending CN109074437A (zh) | 2016-03-18 | 2017-03-17 | 具有改进的安全性的用于用户鉴权的方法和系统 |
Country Status (16)
Country | Link |
---|---|
US (2) | US11017067B2 (zh) |
EP (1) | EP3430554A4 (zh) |
JP (1) | JP2019512961A (zh) |
KR (1) | KR20180117715A (zh) |
CN (1) | CN109074437A (zh) |
AU (1) | AU2017233545A1 (zh) |
BR (1) | BR112018068884A2 (zh) |
CA (1) | CA3017533A1 (zh) |
EA (1) | EA201892109A1 (zh) |
HK (1) | HK1258980A1 (zh) |
IL (1) | IL261810B2 (zh) |
MA (1) | MA45323A (zh) |
PH (1) | PH12018501983A1 (zh) |
SG (1) | SG11201807995TA (zh) |
WO (1) | WO2017156590A1 (zh) |
ZA (1) | ZA201806243B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112579566A (zh) * | 2020-12-14 | 2021-03-30 | 浪潮云信息技术股份公司 | 分布式id的生成方法及装置 |
CN113014386A (zh) * | 2021-03-30 | 2021-06-22 | 宋煜 | 基于多方协同计算的密码系统 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2565282B (en) * | 2017-08-02 | 2021-12-22 | Vnc Automotive Ltd | Remote control of a computing device |
US10834170B2 (en) * | 2018-03-19 | 2020-11-10 | Citrix Systems, Inc. | Cloud authenticated offline file sharing |
US10693648B2 (en) * | 2018-03-26 | 2020-06-23 | Ca, Inc. | System and method for dynamic grid authentication |
US10999081B2 (en) * | 2018-04-12 | 2021-05-04 | Microsoft Technology Licensing, Llc | Dynamic certificate management for a distributed authentication system |
CN108833117B (zh) * | 2018-07-25 | 2020-11-10 | 海南新软软件有限公司 | 一种私钥存储和读取方法、装置及硬件设备 |
US11134084B1 (en) * | 2018-08-22 | 2021-09-28 | Hid Global Corporation | Diversified authentication and access control |
US11336430B2 (en) * | 2018-09-07 | 2022-05-17 | Sap Se | Blockchain-incorporating distributed authentication system |
EP3804379A1 (en) * | 2018-11-09 | 2021-04-14 | Carrier Corporation | Geographically secure access to container controller |
CN114513330A (zh) * | 2019-04-24 | 2022-05-17 | 华为技术有限公司 | 一种参数发送方法及装置 |
KR102259764B1 (ko) * | 2019-09-06 | 2021-06-02 | 주식회사 엘핀 | 멀티팩터 인증 수행 장치 및 그 동작 방법 |
JP2022549671A (ja) * | 2019-09-25 | 2022-11-28 | コモンウェルス サイエンティフィック アンド インダストリアル リサーチ オーガナイゼーション | ブラウザアプリケーション用の暗号化サービス |
US11146954B2 (en) | 2019-10-08 | 2021-10-12 | The Toronto-Dominion Bank | System and method for establishing a trusted session |
US11722312B2 (en) * | 2020-03-09 | 2023-08-08 | Sony Group Corporation | Privacy-preserving signature |
CN112615834B (zh) * | 2020-12-08 | 2023-04-07 | 北京北信源软件股份有限公司 | 一种安全认证方法及系统 |
US11539689B2 (en) * | 2021-01-19 | 2022-12-27 | Visa International Service Association | System, method, and apparatus for authenticating a user device |
GB2622177A (en) * | 2021-08-10 | 2024-03-06 | Keyless Tech Srl | Authentication processing services for generating high-entropy cryptographic keys |
US20240005312A1 (en) * | 2022-07-01 | 2024-01-04 | Bank Of America Corporation | Multi-Factor User Authentication Using Blockchain Tokens |
WO2024108281A1 (pt) * | 2022-11-25 | 2024-05-30 | Clovis Golfetto | Sistema e método para autenticação única de usuário |
KR20240132642A (ko) * | 2023-02-27 | 2024-09-04 | 삼성전자주식회사 | 생체 정보를 암호화하는 전자 장치 및 그 동작 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150040204A1 (en) * | 2010-11-30 | 2015-02-05 | Forticom Group Ltd | Method and system for abstracted and randomized one-time use passwords for transactional authentication |
CN104517094A (zh) * | 2013-09-30 | 2015-04-15 | 阿里巴巴集团控股有限公司 | 一种身份验证方法和身份验证装置 |
US9398050B2 (en) * | 2013-02-01 | 2016-07-19 | Vidder, Inc. | Dynamically configured connection to a trust broker |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3053527B2 (ja) * | 1993-07-30 | 2000-06-19 | インターナショナル・ビジネス・マシーンズ・コーポレイション | パスワードを有効化する方法及び装置、パスワードを生成し且つ予備的に有効化する方法及び装置、認証コードを使用して資源のアクセスを制御する方法及び装置 |
US9768963B2 (en) * | 2005-12-09 | 2017-09-19 | Citicorp Credit Services, Inc. (Usa) | Methods and systems for secure user authentication |
US9258296B2 (en) * | 2010-07-29 | 2016-02-09 | Nirmal Juthani | System and method for generating a strong multi factor personalized server key from a simple user password |
EP2885904B1 (en) * | 2012-08-03 | 2018-04-25 | Vasco Data Security International GmbH | User-convenient authentication method and apparatus using a mobile authentication application |
US9949115B2 (en) * | 2014-06-10 | 2018-04-17 | Qualcomm Incorporated | Common modulus RSA key pairs for signature generation and encryption/decryption |
-
0
- MA MA045323A patent/MA45323A/fr unknown
-
2017
- 2017-03-17 CN CN201780025080.8A patent/CN109074437A/zh active Pending
- 2017-03-17 WO PCT/AU2017/050240 patent/WO2017156590A1/en active Application Filing
- 2017-03-17 US US16/085,768 patent/US11017067B2/en active Active
- 2017-03-17 SG SG11201807995TA patent/SG11201807995TA/en unknown
- 2017-03-17 CA CA3017533A patent/CA3017533A1/en not_active Abandoned
- 2017-03-17 EP EP17765582.6A patent/EP3430554A4/en not_active Withdrawn
- 2017-03-17 KR KR1020187030011A patent/KR20180117715A/ko unknown
- 2017-03-17 EA EA201892109A patent/EA201892109A1/ru unknown
- 2017-03-17 AU AU2017233545A patent/AU2017233545A1/en not_active Abandoned
- 2017-03-17 BR BR112018068884A patent/BR112018068884A2/pt not_active Application Discontinuation
- 2017-03-17 JP JP2018549219A patent/JP2019512961A/ja active Pending
-
2018
- 2018-09-14 PH PH12018501983A patent/PH12018501983A1/en unknown
- 2018-09-16 IL IL261810A patent/IL261810B2/en unknown
- 2018-09-17 ZA ZA2018/06243A patent/ZA201806243B/en unknown
-
2019
- 2019-01-28 HK HK19101464.4A patent/HK1258980A1/zh unknown
-
2021
- 2021-04-27 US US17/241,986 patent/US20210264010A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150040204A1 (en) * | 2010-11-30 | 2015-02-05 | Forticom Group Ltd | Method and system for abstracted and randomized one-time use passwords for transactional authentication |
US9398050B2 (en) * | 2013-02-01 | 2016-07-19 | Vidder, Inc. | Dynamically configured connection to a trust broker |
CN104517094A (zh) * | 2013-09-30 | 2015-04-15 | 阿里巴巴集团控股有限公司 | 一种身份验证方法和身份验证装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112579566A (zh) * | 2020-12-14 | 2021-03-30 | 浪潮云信息技术股份公司 | 分布式id的生成方法及装置 |
CN113014386A (zh) * | 2021-03-30 | 2021-06-22 | 宋煜 | 基于多方协同计算的密码系统 |
Also Published As
Publication number | Publication date |
---|---|
BR112018068884A2 (pt) | 2019-01-22 |
EA201892109A1 (ru) | 2019-02-28 |
ZA201806243B (en) | 2019-07-31 |
IL261810A (en) | 2018-10-31 |
EP3430554A4 (en) | 2019-09-04 |
IL261810B2 (en) | 2023-06-01 |
MA45323A (fr) | 2019-01-23 |
KR20180117715A (ko) | 2018-10-29 |
US11017067B2 (en) | 2021-05-25 |
US20190034612A1 (en) | 2019-01-31 |
US20210264010A1 (en) | 2021-08-26 |
AU2017233545A1 (en) | 2018-10-04 |
HK1258980A1 (zh) | 2019-11-22 |
CA3017533A1 (en) | 2017-09-21 |
JP2019512961A (ja) | 2019-05-16 |
WO2017156590A1 (en) | 2017-09-21 |
EP3430554A1 (en) | 2019-01-23 |
PH12018501983A1 (en) | 2019-07-01 |
SG11201807995TA (en) | 2018-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109074437A (zh) | 具有改进的安全性的用于用户鉴权的方法和系统 | |
CN110692214B (zh) | 用于使用区块链的所有权验证的方法和系统 | |
JP6818679B2 (ja) | セキュアホストカードエミュレーションクレデンシャル | |
US20190251561A1 (en) | Verifying an association between a communication device and a user | |
CN108684041A (zh) | 登录认证的系统和方法 | |
US20130219481A1 (en) | Cyberspace Trusted Identity (CTI) Module | |
US20150310427A1 (en) | Method, apparatus, and system for generating transaction-signing one-time password | |
KR100548638B1 (ko) | 스마트카드를 이용한 원 타임 패스워드 생성 및 인증방법그리고 이를 위한 스마트카드 | |
WO2019226115A1 (en) | Method and apparatus for user authentication | |
JP2009510644A (ja) | 安全な認証のための方法及び構成 | |
EP3662430B1 (en) | System and method for authenticating a transaction | |
US20090220075A1 (en) | Multifactor authentication system and methodology | |
US20240005312A1 (en) | Multi-Factor User Authentication Using Blockchain Tokens | |
US20230196376A1 (en) | Multi-Factor User Authentication | |
CA2904646A1 (en) | Secure authentication using dynamic passcode | |
US12093945B2 (en) | Multi-factor user authentication | |
US11343078B2 (en) | System and method for secure input at a remote service | |
US20230196375A1 (en) | Multi-Factor User Authentication | |
KR101804845B1 (ko) | 무선단말기에서의 otp인증방법 | |
KR20170010691A (ko) | 비밀스런 인증데이터 관리가 필요 없는 인증시스템 및 방법 | |
KR20240033487A (ko) | 실명 인증을 통한 가상화폐의 지갑주소 통합인증 시스템 및 지갑주소 통합인증 방법 | |
GB2498326A (en) | Secure identity authentication method | |
KR20150065556A (ko) | 다중 경로를 이용한 피싱 방지 방법 및 장치 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20181221 |