CN104798083A - 用于验证访问请求的方法和系统 - Google Patents

用于验证访问请求的方法和系统 Download PDF

Info

Publication number
CN104798083A
CN104798083A CN201380057912.6A CN201380057912A CN104798083A CN 104798083 A CN104798083 A CN 104798083A CN 201380057912 A CN201380057912 A CN 201380057912A CN 104798083 A CN104798083 A CN 104798083A
Authority
CN
China
Prior art keywords
module
data
password
calculation element
trusted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201380057912.6A
Other languages
English (en)
Other versions
CN104798083B (zh
Inventor
鲍里斯·塔拉蒂内
马修·约翰逊
西蒙·彼得·拉斯特
安德鲁·沃伦·朗兹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Visa Europe Ltd
Original Assignee
Visa Europe Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Visa Europe Ltd filed Critical Visa Europe Ltd
Publication of CN104798083A publication Critical patent/CN104798083A/zh
Application granted granted Critical
Publication of CN104798083B publication Critical patent/CN104798083B/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/45Structures or tools for the administration of authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • G06F21/725Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits operating on a secure reference time value
    • 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/0846Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2151Time stamp

Abstract

用于在系统内验证访问数据的请求的系统和方法,系统包括:第一模块,访问第一受信任的时间指示器;第二模块,访问不受信任的时间指示器;以及计算装置,访问第二受信任的时间指示器。所述第一模块至少使用所述第一受信任的时间指示器生成密码。所述第二模块接收与访问数据的请求相关联的密码,并且至少使用不受信任的时间指示器验证所接收的密码。然后,所述第二模块促使将消息传输给所述计算装置,所述消息包括至少表示用于验证所接收的密码的不受信任的时间指示器的数据。然后,所述计算装置生成表示在不受信任的时间指示器与第二受信任的时间指示器之间的比较的数据,并且使用所生成的数据,来提供所述对数据的访问。

Description

用于验证访问请求的方法和系统
技术领域
本发明涉及用于验证访问请求的方法和系统,并且尤其地,但不完全地适合于验证用于访问数据、服务或资产的请求。
背景技术
访问机密或用户专用数据(或资产或服务)的需求越来越大。例如,提供对银行账户的访问并且允许从该账户中转账,应限于授权用户,例如,账户持有人。通常,在通过识别请求访问数据的人的凭证请求访问数据时,认证用户。数据的远程访问提出了特定的问题,这是因为请求数据、资产或服务的个人通常位于与对该请求做出响应的一方的位置不同的物理位置中。结果,为请求提供服务的一方非常难以知道做出请求的实体是否是a)其自称的一方,b)是否有权使用该请求所起源的装置,并且c)是否占有该请求所起源的装置。
通常,在个人与一方(例如,数据提供商)之间建立账户时,个人建立上述凭证,以由数据提供商用于识别和认证个人,以供将来的请求。这种凭证可以包括唯一地识别个人(例如,个人可识别信息(PII))和密钥(例如,密码)的信息,用于验证个人的身份。现在,也常见的做法是数据提供商要求个人登记自己,作为用于访问数据的装置的拥有人。在装置与装置拥有人之间登记的关联可以由数据提供商用作额外的验证因子。例如,在数据提供商代表特定的个人从特定的装置(该装置并非为个人登记的装置)中接收用于访问账户的请求的情况下,数据提供商可以确定相信为该账户登记的个人做出请求。
希望代表与该数据提供商具有账户的另一个人访问数据提供商的数据的个人可以比较容易地通过从刑事影子网上市场购买凭证来获得其用户凭证(即,PII、用户ID和密码),然后,欺骗性地访问其他人的数据。此外,能够远程地访问和控制装置,从而代表那些装置的登记拥有人请求数据。通常,不能确定在物理上占有该装置的用户是否做出了请求或者使用另一个装置来远程控制做出了请求的装置的用户是否远程做出了请求。
一次性密码(OTP)通常用于减少这些问题:认证服务器唯一地将OTP生成密钥分配给装置的登记拥有人,OTP生成密钥用于生成和验证OTP。认证服务器通常持有几百或几千OTP生成密钥,每个密钥唯一地分配给一个不同的人或者为一个不同的人登记。在由登记拥有人通过其分配的OTP生成密钥占有时,认证服务器配置OTP令牌。例如,每当登记用户请求一个新密码时,这些OTP令牌可以使用OTP生成密钥来生成一个不同的密码,或者再如,可以使用OTP生成密钥来通过固定的时间间隔生成新密码。OTP令牌可以另外使用当前世界的指示来生成OTP,以防止在稍后的时间储存和重放OTP。
为了通过装置访问用户限制的数据,用户将由OTP令牌生成的OTP以及唯一地识别装置的拥有人的凭证提供给数据提供商。通常,然后,数据提供商识别装置的拥有人并且将所接收的OTP传递给认证服务器。认证服务器查看与所识别的个人相关联的OTP生成密钥,并且使用该密钥以及(如果需要的话)当前时间来确定所接收的OTP是否与由OTP令牌生成的OTP对应,该装置的拥有人在当前时间或者至少在当前时间的预定周期内保持该OTP令牌。然后,认证服务器向数据提供商指示所接收的OTP是否有效。如果将正确的OTP发送给数据提供商,那么可以确定该装置的用户占有OTP令牌。然而,认证服务器容易妥协,从而促进到其他实体的未授权分布,并且允许(非法)访问分布的OTP生成密钥的任何人代表与该密钥相关联的个人访问数据。
发明内容
根据本发明的第一方面,提供了一种用于验证访问数据的请求的系统,所述系统访问被配置为与第一受信任的时间指示器进行通信的计算装置,所述系统包括:第一模块,访问第二受信任的时间指示器;以及第二模块,访问不受信任的时间指示器,其中,所述第一模块被设置为至少使用所述第二受信任的时间指示器生成密码;所述第二模块被设置为:接收与访问数据的请求相关联的密码,至少使用不受信任的时间指示器验证所接收的密码;并且促使将消息传输给所述计算装置,所述消息包括表示用于验证所接收的密码的不受信任的时间指示器的数据,并且所述系统被设置为促使计算装置生成表示在不受信任的时间指示器与第一受信任的时间指示器之间的比较的数据,其中,所生成的数据用于提供所述对数据的访问。
在某些情况下,第二模块可以不访问受信任的时间指示器(不与外部元件进行通信)。因此,修改不受信任的时间,可以打开系统,以受到攻击。通过使用不受信任的时间指示器来验证密码,然后,促使将消息传输给计算装置,其中,比较不受信任的时间和受信任的时间,避免攻击的可能性。而且,由于仅仅需要从第二模块中发送一条消息给计算装置或系统,所以减少了用于验证的信令量。
在一个实施方式中,所述系统被设置为促使计算装置基于所生成的数据选择性地为系统提供所述对数据的访问。在这个实施方式中,计算装置促进访问所请求的数据。
有利地,传输给计算装置的消息可以包括表示第二模块至少使用不受信任的时间指示器对所接收的密码的验证的数据。
在一个设置中,所述第一模块和所述第二模块共享唯一地分配给其的密钥,所述第一模块被设置为使用密钥来生成密码,并且所述第二模块被设置为使用密钥来验证所接收的密码。共享的密钥可以储存在第一模块的安全部件内。或者/此外,所述密钥可以储存在第二模块的安全部件内。在其他实施方式中,第一和第二模块不共享用于生成和验证密码的密钥。
在一个设置中,所述第一模块包括包含时钟的防损硬件,所述时钟被设置为提供第二受信任的时间指示器。
在一些设置中,所述第二模块可以通信地连接至具有时钟的装置,所述时钟被设置为提供不受信任的时间指示器。
有利地,在一个设置中,所述系统可以被设置为促使计算装置将包括所生成的数据的消息发送给另一个计算装置,从而为系统提供所述对数据的访问,并且所述另一个计算装置可以被设置为在接收所生成的数据时提供所述对数据的访问。
或者,在所请求的数据储存在计算装置处或者由计算装置生成的一个设置中,所述系统可以被设置为促使计算装置基于所生成的数据提供所述对数据的访问。
在一些设置中,所述第一模块可以被设置为通过第一模块的接口接收由第二模块或计算装置生成的问询码(challenge code),并且至少使用所述问询码,生成密码。
在一些设置中,所述第一模块可以被设置为生成多个密码,所述多个密码中的至少一个密码与所述多密码中的另一个密码不同,并且通过第一模块的接口将至少一个生成的密码提供给用户。
有利地,所述第二模块和所述计算装置可以共享另一个密钥,以在其间的通信中使用。
在一个设置中,所述第二模块可以被设置为储存所接收的密码,并且比较所接收的密码和任何先前储存的所接收的密码,从而验证所接收的密码。
在本发明的一个替换的实施方式中,第二模块可以被设置为从计算装置中接收所生成的数据,并且使用所接收的数据来提供所述对数据的访问。这个实施方式可以与计算装置被设置为基于所生成的数据为系统提供所述对数据的访问的实施方式形成对比,这是因为,在这个实施方式中,第二模块(而非计算装置)促进访问所请求的数据。
在一些设置中,所述第一模块和所述第二模块可以通信地断开。这具有不能通过第二模块远程地访问由第一模块生成的密码的优点。因此,为了使用户能够正确地将由第一模块生成的密码输入第二模块内,用户必须占有第一模块。在这种设置中,因此,可以确定用户是否占有第一模块。例如,这可以有利于确定第一模块的用户是否是个人用户。
在一些设置中,从计算装置中接收的所述数据包括表示不受信任的时间指示器是否在第一受信任的时间指示器的预定范围内的数据。
在一些设置中,所请求的数据可以由第二模块保持,并且所述第二模块可以被配置为使用从计算装置中接收的所述数据,来确定是否提供对所请求的数据的访问。
所述第二受信任的时间指示器可以是第一模块的时钟,并且第一受信任的时间指示器可以是与第一模块的时钟同步的时钟。
有利地,所述计算装置和所述第二模块可以预先配置有加密密钥,用于签署在其间发送的数据,并且所述第二模块可以被设置为签署传输给计算装置的所述消息,并且验证所述计算装置使用所述加密密钥签署从计算装置中接收的所述数据。
在一些设置中,所述第二模块可以被设置为储存所接收的密码,并且比较所接收的密码和任何先前储存的接收的密码,从而验证所接收的密码。
根据本发明的第二方面,提供了一种由系统使用计算装置验证访问数据的请求的方法,所述计算装置被配置为与第一受信任的时间指示器进行通信,所述方法包括:至少使用第二受信任的时间指示器在第一模块处生成密码;接收与访问数据的请求相关联的密码;至少使用不受信任的时间指示器在第二模块处验证所接收的密码;并且促使将消息传输给所述计算装置,所述消息包括表示用于验证所接收的密码的不受信任的时间指示器的数据;其中,所述系统促使计算装置生成表示在不受信任的时间指示器与第一受信任的时间指示器之间的比较的数据,其中,所生成的数据用于提供所述对数据的访问,并且其中,所述系统包括第一模块和第二模块。
通过参照附图进行的仅仅通过实例提供的本发明的优选实施方式的以下描述,本发明的进一步特征和优点显而易见。
附图说明
图1示出了根据本发明的一个实施方式的系统的方框图;
图2示意性示出了根据本发明的一个实施方式的方法;以及
图3示意性示出了根据本发明的进一步实施方式的方法。
具体实施方式
本发明的实施方式涉及确定是否能够访问所请求的数据、资产或服务。图1示出了根据本发明的一个实施方式的系统10的方框图。系统10包括第一模块20和第二模块30。第一模块20被设置为生成密码,并且第二模块30被设置为从系统10的用户中接收密码并且验证所解释的密码。由虚线15表示,在图1中所示的实施方式中,第一模块20从第二模块30中通信地断开。换言之,系统10被构造和配置为使在这两个模块20和30之间没有任何通信的方式(除了通过个人用户以外)。在一个特定的实施方式中,在物理上彼此断开的模块20和30防止在这两个模块20和30之间的通信。然而,要理解的是,这两个模块20和30可以在物理上连接(即,整合),同时通信地断开,例如,如果这连个模块不共享任何共同的电路或系统接口或者包括彼此交换信息的任何其他方式。
在一个替换的实施方式中,第一和第二模块20、30可以通信地断开。
第一模块20包括可以作为用户接口的接口21。接口21可以至少包括一个输入和/或输出。例如,装置的用户接口的输入可以是按钮、键盘、数字键盘、鼠标、触摸屏、麦克风或允许用户为装置提供输入的任何其他元件。例如,装置的用户接口的输出可以是屏幕、扬声器、盲文编码器、或者能够将信息从装置中输出给接口21的用户的任何其他元件。
第一模块20还可以包括安全部件22。如下面更详细地所述,在一些实施方式中,安全部件22可以储存分配给第一和第二模块的密钥。安全部件22还可以包括能够提供受信任的时间指示器(在后文中也称为“第二受信任的时间指示器”)的时钟23。安全部件22可以防干扰;即,安全部件22可以被配置为使第二受信任的时间指示器不能改变,因此,信任第二受信任的时间指示器。同样,防干扰表示不能读取所储存的密钥,因此,使用该密钥,无需与第一模块20合作。
第二模块30显示为装置35的一部分。装置35可以包括接口31,该接口可以是用户接口,可以包括上面根据接口21描述的任何或所有特征。此外,该装置包括能够提供时间指示的时钟。第二模块30能够与接口31和装置的时钟33进行通信,并且同样能够与用户进行通信,尤其以便接收由用户提供的密码,并且能够从时钟33中访问时间指示。
第二模块30本身可以包含安全部件32。与安全部件22一样,在一些实施方式中,安全部件32可以储存分配给第一和第二模块的密钥。在一些实施方式中,第二模块和/或安全部件32可以从装置35中去除。由于装置35的时钟33不是安全部件32的一部分,所以由时钟33提供的时间指示器不受信任,这是因为该指示器可以由用户或其他当事人(例如,远程对手)改变。
第二模块通信地连接至至少一个另一个计算装置或系统,例如,一个或两个计算装置50和60。这种计算装置可以是通过网络连接至装置35的服务器。或者,计算装置可以是(例如)通过连接装置51和61与装置35连接的其他形式的计算机,例如,台式计算机。计算装置可以是分布式系统,即,云计算系统或相似的系统。计算装置50和60可以通过连接装置52连接。如下面更详细地所述,计算装置50还包括能够提供第一受信任的时间指示器的时钟53。第二模块30可以与计算装置50成对。例如,在将加密密钥分配给第二模块30和计算装置50以用于在其间进行安全通信的配置工艺期间,第二模块30可以与计算装置50成对。
如上所述,在本实施方式中,第一和第二模块通信地断开。因此,在使用期间,第一模块20的接口21被配置为给用户提供所生成的密码,显示为方框40,并且第二模块30可进入的接口31被配置为从用户40中接收密码。
在一些实施方式中,第一模块20和第二模块30可以是单独装置,这些装置可以共同被配置为确定访问数据的请求是否可能源自在物理上占有第二模块30的用户。作为一个实例,可以共同制造和销售这两个模块20和30,并且这两个模块由特定的用户占有。在一个实例中,装置35可以是通信装置,例如,移动电话或银行读卡器。同样,第二模块可以是SIM卡或者能够插入装置35内的银行卡。在替换的实施方式中,第一和第二模块20和30可以是单个装置的元件。
第二模块30可以通过装置35的接口31在占有第二模块30的用户的控制下进行操作。然而,第二模块30还可以在具有与第二模块30的通信链路的远程实体的控制下进行操作。在本实施方式中,由于第一模块20与第二模块30通信地断开,如下面更详细地所述,所以不能通过第二模块30的接口31或者由远程通信链路控制。
装置35可以储存与特定的人相关联的机密数据。作为一个特定的实例,第二模块30可以储存用户限制的加密密钥,用于将数据解密。此外/或者,第二模块30可以提供或促进对第三方(例如)在一个或两个计算装置50和60上在外部储存的机密数据的访问。在后一种情况下,如果确定将数据提供给一个特定的人,即,在物理上占有第一和第二模块20和30的人(换言之,该数据可以是用户限制的数据),那么第三方可以仅仅允许访问数据。在第三方同意通过特定的装置访问用户限制的数据之前,第三方可以要求装置的拥有人登记在装置与拥有人之间的关联。在这种情况下,然后,第三方可以仅仅将旨在由特定的人接收的数据发送给与这个人相关联的装置。在进一步的实施方式中,如果通过第二模块30接收这样做的指导,那么第三方可以采取行动,例如,访问机密信息和/或支付数据,并且将其发送给第四方。例如,计算装置50可以将机密信息发送给计算装置60。同样,在本实例中,第二模块30可以与特定的人具有登记的关联性,因此,第二模块30可以用于确定这个特定的人(即,账户持有人)做出请求。
在第二模块30包括通信模块时,要理解的是,未授权的个人可以与第二模块30进行连接并且远程控制第二模块30,以将请求发送给第三方。如果第二模块30可以确定占有第二模块30的用户或者远离第二模块30的用户是否做出访问数据的请求,那么可以采取合适的反应行动,例如,在确定远程用户做出请求时,禁止进一步使用第二模块30。
现在,要解释的是,实施方式提供了执行这种确定的方式。第一模块20包括电路和/或软件,其被构造和配置为基于时钟23的受信任的时间指示器(即,上述第二受信任的时间指示器)生成密码。这个电路和/或软件可以至少部分包含在安全部件23内。
如上所述,在一个实施方式中,第一和第二模块20、30可以配置有共享的密钥,用于生成和验证密码。在这个实施方式中,第一模块20可以被设置为还基于共享的密钥,生成密码。在一个实施方式中,该密钥可以唯一地分配给第一和第二模块20、30。
分配给第一和第二模块20、30的密钥可以是OTP生成密钥,因此,由第一模块20生成的密钥是一次性密码(OTP)。在这个实施方式中,由第一模块20生成的后续密码与先前生成的密码不同,并且每个生成的密钥仅仅对于一个认证企图有效。在一个特定的设置中,所生成的OTP与时间相关,并且对于预定的时间段有效。在一个替换的设置中,第一模块20可以使用OTP生成密钥根据预先生成的密码和第二受信任的时间指示器生成密码。
根据由第一模块20的时钟23提供的第二受信任的时间指示器和OTP生成密钥(即,密钥),由第一模块20生成OTP。OTP可以是OTP生成密钥和当前时间的密码函数。在第一模块20和第二模块30是单个装置的复合部件的情况下,另外,可以根据与该装置唯一地相关联的装置ID,生成OTP。这种装置ID可以(例如)是CPU ID的哈希函数、该装置的GPU ID的哈希函数或其组合。在这种情况下,OTP可以是OTP生成密钥、装置ID以及第二受信任的时间指示器的密码函数。第二受信任的时间指示器的值在本文中称为“生成时间”TG,并且要理解的是,相对于第一模块20的时钟23进行测量。在这种情况下,如果用于生成时间TG的预定周期内,那么特定的生成的OTP可以仅仅用于验证访问数据的请求。在这种情况下,如果时间TRU在位于用于在第一模块20处生成密码的生成时间TG之前或之后的预定时间段内,那么可以验证所生成的OTP,在此处,由于在这两个时间指示器之间具有时间漂移,所以TRU可以位于TG之前。
要理解的是,尽管具有这个名称,可以重新使用OTP的可能性还是低,但是有限。然而,先前生成的密码在稍后的时间有效的可能性与随机密码运行的可能性有效地相同,同样,为了本文档的目的,假设在模块的使用期期间,规定的密码仅仅一次有效,因此,该密码是OTP。此外,如果OTP在有效的预定时间段内使用两次,那么拒绝OTP,这防止了重新使用密码。
第二模块30还包括电路和/或软件,其被构造和配置为基于时钟33的不受信任的时间指示器(并且如果这样配置第二模块30,那么还可选地基于共享的密钥)确定在由时钟33的不受信任的时间指示器表示的时间,从第二模块30的用户40中接收的密钥是否与第一模块20生成的密码匹配。而且,至少一部分电路和/或软件可以包含在安全部件32内。
在图1中所示的特定实施方式中,密钥唯一地分配给第一和第二模块20和30。换言之,密钥可以与仅仅与第一和第二模块20和30相关联。然而,这并非基本要求。在实施方式中,第一和第二模块20和30的安全部件22和32防损,即,用于生成储存在安全部件22和32内的密码的密钥和算法不能改变。
如上所述,使用合适的算法和时间指示,生成由第一装置20生成的密码,因此,该密码是OTP。时间指示(即,上述第二受信任的时间指示器)可以是(例如)整数,其中,正数通过预定的频率(例如,每隔30秒或每隔一分钟)增大。整数可以具有与在过去的已知时间点对应的零值,并且可以设置为在装置的使用期,使整数不翻滚,即,不达到储存整数的寄存器的最大值,从而返回零。这确保了第二受信任的时间指示器具有决不重复的唯一值,因此,使用第二受信任的指示器生成的任何密码不重复。尽管有前述规定,但是显然可以代替使用任何其他受信任的时间指示器。包含在安全部件23内的时钟可以生成第二受信任的时间指示器。
图2示意性示出了根据本发明的一个实施方式的一个示例性方法。在这种方法中,用户40做出访问数据的请求,由箭头74表示。访问数据的请求可以是(例如)访问限制的网页的请求、访问机密信息的请求或者访问数据的请求,用于能够访问服务。可以在装置35上做出请求,因此,通过第二模块30,用户可以对任一个计算装置50和60做出请求。通常,用户40希望访问的数据可以是储存在系统10的任何元件上或者由该元件生成的数据,或者可以是储存在位于系统10的外面的实体(例如,外部数据库或服务器)处或者由该实体生成的数据。第二模块30的用户35希望访问的数据可以是(例如)在位于系统10的外面的服务器上托管的限制的网页,并且在这种情况下,将数据发送给第二模块30的服务器可以允许访问网页。下面更详细地解释包含在由第二模块30发送的数据内的信息。
响应于在步骤74中访问数据的请求,在步骤76中,第二模块30提示用户40输入由第一模块20生成的密码。然后,在步骤78中,例如,通过按压第一模块的接口21的按钮,或者另外向第一模块20指示需要密码,用户可以促使第一模块20生成密码。
在步骤80中,第一模块20使用唯一地分配给第一和第二模块20和30的密钥以及由时钟33提供的第二受信任的时间指示,来生成然后在步骤82中提供给用户40的密码。例如,所生成的密码可以是一系列数字、一系列字母、字母组合、数字以及其他字符或图像,并且可以(例如)在接口21的屏幕上呈现给用户40。
或者,第一模块20可以通过固定的时间间隔生成密码(根据共享的密钥以及第二受信任的时间指示器),并且可以在第一模块20的接口21上自动呈现最近生成的密码。在这种情况下,由于第一模块20呈现密码,无需请求,所以不需要步骤78。
在任一种情况下,然后,在步骤84中,用户40可以将由第一模块20生成密码提供给第二模块30。用户将密码输入装置35的接口31内,可以这样做,通过该接口,将密码提供给第二模块30。在步骤86中,然后,第二模块30使用唯一地分配给第一和第二模块20和30的密钥以及装置35的时钟33的不受信任的时间指示器,来验证从用户40中接收的密码是否与由第一模块20生成的密码相同。
要理解的是,在由第一模块20生成的密码输入第二模块30内时,必须预先从第一模块20中检索密码。在该实施方式中,第一模块20从第二模块30中通信地断开时,用户40非常可能是占有或者至少访问第一模块20以及第二模块30的人,因此,能够从第一模块20中检索密码,并且将该密码手动提供给第二模块30。
如上所述,第一模块20和第二模块30均可以包括各个安全部件22和32,密钥储存在其内。密码可以唯一地分配给第一和第二模块20和30,并且储存在安全部件22和32内。换言之,唯一地分配给第一和第二模块20和30的密钥储存在用户(例如,用户40)以及同样地可以同意访问第一和第二模块20和30的任何其他方不能访问的部分第一和第二模块20和30内。
在这种情况下,在制造时,可以将密钥提供给第一和第二模块20和30的安全部件22和32。在一个实施方式中,安全部件22和32单独地制造到模块20和30的其他元件中,因此,位于系统10外面的任何实体不能知道在模块20和30之间的关联以及储存在安全部件22和32上的密钥。在安全部件22和32内储存密钥,防止访问模块20和30的任何用户找出密钥,从而能够解决需要输入第二模块30内的密码,以便访问所请求的数据。还防止任何用户修改生成密码的算法,因此,这可以促使第一模块20或第二模块30生成虚假反应。例如,在第二模块上的算法可以改变,以接受有效的任何输入。
本发明的一个特定优点由用于生成和验证密码的密钥唯一地分配给第一和第二模块20和30这一事实引起。更具体而言,由于在密钥与使用密钥验证密码的模块30之间具有一对一映射,并且在密钥与使用密钥生成密码的模块30之间也具有一对一映射,然后,如果密钥被盗用,那么模块20和30仅仅需要重新配置有新密钥(再次唯一地分配给模块20和30)。例如,这可以通过使用在其上储存了新密钥的新安全部件代替模块20和30的安全部件22和32来实现。或者,在模块是较低成本的物品的情况下,例如,电话SIM(第二模块30)和相关的密码生成器模块(第一模块20),可以更换这两个模块。
这可以与在背景部分中描述的已知OTP系统形成对比,其中,规定的OTP密钥唯一地与特定的用户(而非一对模块20和30)相关联。在这个已知的系统中,在OTP密钥与使用OTP密钥生成密码的装置之间可以具一对多关系。在这种情况下,如果OTP密钥被盗用,那么可以通过使用OTP密钥的任何装置,代表该用户访问数据。由于OTP密钥通常储存在多个OTP令牌上并且还尺寸在认证服务器上,所以建立新的OTP密钥可以对认证服务器造成相当沉重的负担,这是因为认证服务需要将新的OTP生成密钥重新分配给这个用户并且使一组新的OTP令牌配置有新的OTP生成密钥。
在从第二模块30接收密码的时间开始的预定时间内的时间,第二模块30使用时钟33的不受信任的时间指示器以及OTP生成密钥(即,共享的密钥)来确定该密码是否与由第一模块20生成的密码相同。第二模块30接收密码的不受信任的时间指示器的值在本文中称为“不受信任的接收时间”TRU
第二模块30用于验证所接收的密码的方法取决于第一模块20用于生成密码的方法。已经了解很多这种方法,并且具体方法被视为在本发明的范围之外。
如果在接收时间TRU的预定周期内的时间TG,第二模块30确定所接收的密码与由第一模块20/本由第一模块生成的OTP匹配,那么第二模块30验证所接收的密码。
然而,这个密码可以由第一模块20在更早的时间生成,并且给第二模块30重放。如果损害装置35,并且因此,可以拦截通过接口31输入的密码,那么可能发生这种情况。如上所述,密码是使用时间指示生成的一次性密码(OTP)。因此,在由第一模块20生成与由第二模块30接收的密码之间的时间延迟对于OTP通常足够长,以便不再有效。
然而,第二模块30仅仅访问不受信任的时间指示器。这通常是因为时间指示器由装置35的时钟33提供。同样,例如,通过远程访问装置来篡改装置35,或者通过用户偏好来简单地设置时钟33,可以相当合法地调整时钟。这表示不受信任的时间指示器可以调整为与由第一模块20生成密码的时间对应,因此,与和由对手更早拦截的密码对应的时间对应。这反过来可以促使第二模块错误地确定重放的密码有效。
第二模块30可以仅仅访问不受信任的时间,这是因为为第二模块32或其安全部件32提供安全的以及因此受信任的时间不切实际。例如,在安全部件是SIM或银行卡的情况下,可以从第二模块30中去除功率,同样,在该模块上运行的任何时钟可以耽误时间。这使第二模块30依靠如上所述不受信任的装置35的时钟33。
同样,一旦第二模块30使用不受信任的时间指示器TRU验证了所接收的密码,第二模块30就在步骤88中将消息发送给计算装置50。该消息包含表示用于验证所接收的密码的时间指示器(即,不受信任的时间戳TRU)的数据。该消息还可以包含表示由第二模块30接收的密码(使用不受信任的时间)的验证的数据。
如上所述,计算装置50访问第一受信任的时间指示器,例如,通过时钟53。这个时钟53可以与第一模块20的时钟23同步。在此处,同步表示计算装置50能够访问在第一模块20用于生成密码的时间TG的预定范围(允许在时钟之间漂移)内的时间指示器(T'G)。而且,通过共享用于签署并且从而认证在其间发送的消息的加密密钥,可以在计算装置50与第二模块30之间建立信任,下面更详细地进行讨论。
在接收包含不受信任的时间指示器的消息时,计算装置50比较在所接收的消息内指示的不受信任的时间指示器和由计算装置50的时钟53确定的第一受信任的时间指示器T'G。如果确定不受信任的时间TRU在第一受信任的时间T'G的预定范围内,并且消息表示由第二模块30接收的密码有效,那么计算装置50确定信任用户40访问第一和第二模块20和30。因此,计算装置50可以生成表示这个比较的数据,并且使用所生成的数据提供最初在步骤74中请求的数据访问。
这是因为如果第二模块30使用时间戳TRU积极地验证所接收的密码,那么用户40必须在接近TRU的信任时间TG提供由第一模块20生成的密码。然后,由此断定,如果TRU接近由计算装置50确定的信任时间T'G,那么TG必须也接近当前时间,因此,可以确定在接近由T'G表示的当前时间(即,在当前时间的预定范围内)的某个时间TG,用户40必须提供由第一模块20/本由第一模块生成的密码。因此,用户40可能目前占有或者至少访问第一模块20。由于没有将由第一模块20生成的密码自动传输给第二模块30的方式,所以占有第二模块30的个人也非常可能占有第一模块20,从而可以将由第一模块20生成的密码手动传输给第二模块30。
有利地,如果计算装置50确定不受信任的时间戳TRU不在受信任的时间T'G的预定范围内,并且因此从与第一模块20的时钟不同步的时间源中获得,那么计算装置50可以拒绝访问数据。
因此,如步骤92所示,计算装置50可以与系统的其他部件进行通信,以实现访问数据,从而使用由以上比较生成的数据。例如,计算装置50可以将消息发送给表示时间TR是否在预定的时间范围内的第二模块30。如果时间TR在预定的时间范围内,那么第二模块30可以允许访问所请求的数据。或者,如果时间TR在预定的时间范围之外,那么第二模块可以拒绝访问所请求的数据。
用户40可以请求访问由计算装置50在外面保持的数据。在这种情况下,计算装置50可以通过将所请求的数据发送给第二模块30或通过拒绝访问来做出响应。
或者,在进一步的实例中,计算装置50可以允许计算装置60访问储存在计算装置50或第二模块30中的任一个或这两个上的数据。在更进一步的实例中,成功的验证可以用于允许计算装置50和/或第二模块30在计算装置60上访问数据。
在以上实例中,第二模块30可以储存预先接收的OTP并且可以使预先接收的任何OTP无效。对于第二模块30同时由远程对手以及占有第一和第二模块20和30的用户(即,本地用户40)访问。假设远程用户试图通过复制本地用户40预先输入第二模块30内的OTP来访问数据,第二模块30拒绝复制OTP,作为复制品。在一个设置中,第二模块30可以储存有限数量的预先接收的OTP,以便能够拒绝复制品。所储存的复制品的数量可以使如果复制第二模块30不再储存的特定OTP,那么第三方100可能拒绝这个OTP,这是因为这与在当前时间的预定范围之外的时间戳相关联。
包含由第二模块30用于验证所接收的密码的不受信任的时间戳TRU的消息可以由第二模块30签署(例如,使用与第二模块30和计算装置50相关联的加密密钥),从而允许计算装置50验证消息的来源。这表示如果远程用户试图改变包含不受信任的时间的由第二模块30发送的消息,那么计算装置50认识到改变了消息,这是因为该消息不包含第二模块的正确的签署,并且拒绝访问相关联的请求的数据。同样,重放的消息(即,由重新发送给计算装置50的第二模块30预先发送的消息)包含在过去不受信任的时间指示器TRU,因此,拒绝这些消息。
而且,如果计算装置50被配置为将消息发送给第二模块30,表示所接收的时间戳是否有效,那么也可以签署该消息。这允许第二模块30识别由除了计算装置50以外的一方发送给第二模块30的消息,这些消息可能不受信任。
以上内容可以与第二模块30从第三方检索时间戳的系统形成对比。在这种系统中,远程用户可能可以观察由占有第一和第二模块20和30的用户40输入的OTP,并且还可以观察从第三方中接收的时间戳。在稍后的某个时间,这个远程用户可以为第二模块30提供所观察的时间戳和所观察的OTP。在这种情况下,第二模块30可以验证远程用户的密码。然而,在根据以上实施方式配置的系统中,第二模块30将用于验证密码的时间戳发送给计算装置50,计算装置50能够确定任何时间戳过时并且相应地拒绝访问所请求的数据。
根据以上实施方式配置的系统具有以下优点:第二模块能够在验证所提供的密码时,采用第一步骤,无需访问远程时间戳。这加快了验证的时间,这是因为总体上需要为该系统传输仅仅一条消息(步骤88),以完成验证。通过对比,将受信任的时间戳提供给第二模块30的系统需要至少两条消息、受信任的时间的请求以及响应。
图3示意性示出了用于在可以是计算装置50的银行服务提供商与第二模块30之间共享临时加密密钥的一个示例性方法,作为提供数据访问的方式。在该实例中,银行服务提供商50具有与另一个服务提供商共享的临时加密密钥,该服务提供商可以与计算装置60相关联。与服务提供商60共享的加密密钥和与第二模块30共享的加密密钥共同用于认证和/或加密/解密在第二模块30与服务提供商60之间发送的消息,下面更详细地进行讨论。
第二模块30和银行服务提供商50已经具有预先分配的加密密钥,用于加密和认证在其间发送的消息,如上所述。而且,银行服务提供商50可以储存在第二模块30与特定的银行账户持有人之间的关联。
如上所述,第二模块30没有与第一模块20的时钟同步的时钟。然而,银行服务提供商50具有与第一模块20的时钟同步的时钟(例如,这两个时钟都可以根据世界时间运行,或者银行服务提供商50能够在第一模块20上获得时间戳)。
在这个特定的实例中,用户40在步骤96中通过第二模块30和装置35从银行服务提供商50中请求临时加密密钥。在请求访问临时加密密钥时,用户40可以将信息提供给识别特定的银行账户持有人的第二模块30和/或装置35,用户40想要获得关于该信息的临时加密密钥。
在接收临时加密密钥的请求(即,数据的请求)时,第二模块30将消息(步骤98)发送给银行服务提供商50,表示用户40做出了访问临时加密密钥的请求,并且表示模块20和30可用于生成和验证密码。该消息(在步骤98中发送)通知银行服务提供商50能够确定访问临时加密密钥的请求(在步骤98中)是否源自在物理上占有第一和第二模块20和30的用户。
因此,如步骤74'所示,银行服务提供商50可以请求第二模块提供提供了正确密码的指示。在该实施方式中,该方法总体上如上所述参照步骤76到88进行,从第一模块中请求密码并且由第二模块验证该密码。
然而,此外,问询码可以用于提供进一步的安全性。在步骤74'中,问询码可以由第二模块30生成或者可以由第二模块30从银行服务提供商50中接收。在步骤76中,将问询码提供给用户40,并且在步骤78中,用户40将问询码提供给第一模块20。在步骤80中,在生成密码80时,并且随后,在步骤86中,在第二模块验证密码时,第一模块20使用问询码。
在一个额外步骤(未引用)中,可以请求用户40输入预先设置在银行服务提供商50与银行账户持有人(即,用户40)之间的凭证(例如,用户名和PIN或密码)。这具有以下优点:银行服务提供商50能够验证第二模块30的用户40是否是识别的银行账户持有人或者用户是否是一个不同的人(例如,这个人可以偷窃模块20和30)。
如上所述,在步骤86中,第二模块30基于可用于第二模块30的不受信任的时间指示,并且如果合适的话,基于可以提供的任何问询码,确定从用户40中接收的密码是否有效,随后,在步骤88中,第二模块30发送提供用于验证这个接收的OTP的不受信任的时间指示的消息。该消息可以另外包含表示发现所接收的OTP有效并且正确的问询码用于生成密码的数据。例如,通过使用在第二模块30与计算装置50之间共享的加密密钥,可以加密和/或签署该响应。该响应还包含由用户40提供的任何用户名、密码等。
另一方面,如果第二模块30未成功地验证所接收的密码,那么第二模块30可以将签署消息发送给银行服务提供商50,表示发现所接收的OTP无效。
如果在步骤88中发送的消息表示所接收的OTP有效,那么银行服务提供商50可以比较在步骤88中发送的不受信任的时间戳中表示的时间和第一受信任的时间指示器。这个步骤可以包括任何其他形式的认证,例如,如上所述,验证用户名和密码。如果银行服务提供商50确定不受信任的时间(在步骤88中提供)在预定的时间间隔内,并且如果需要的话,确定任何其他认证凭证(即,用户名和密码)有效,那么银行服务提供商50可以将(在步骤100中)锁清秋的临时加密密钥发送给第二模块30,然后,在该模块中储存。
在一个替换的实例中,银行服务提供商50并不生成和分布临时加密密钥,临时加密密钥可以由服务提供商60生成并且发送给银行服务提供商50,然后,确定是否与在临时加密密钥由银行服务提供商50生成的情况下一样,与第二模块30共享该加密密钥。或者,临时加密密钥可以由第二模块30生成,并且可以(例如)在消息88中发送给银行服务提供商50。在这个设置中,银行服务提供商50可以与服务提供商60共享临时加密密钥。
如上所述,由于由特定的银行账户持有人拥有,所以第二模块30登记有银行服务提供商50。银行服务提供商50与第二模块30和服务提供商60共享临时加密密钥。服务提供商60可以已经知道银行账户持有人是第二模块30的登记拥有人,并且在这种情况下,在与服务提供商60共享临时加密密钥时,确定与那些加密密钥相关联的银行账户持有人是服务提供商60。或者,如果服务提供商60还不知道银行账户持有人,那么在共享相关联的临时加密密钥时,银行服务提供商50可以给服务提供商60提供信息,用于识别服务并且将服务提供给这个银行账户持有人。
在本实例中,用户40可以请求(步骤102)访问进一步的服务提供商60,用于从银行账户持有人的账户中进行支付或者划拨资金。
在一些实施方式中,无需用户输入,第二模块30、计算装置50或计算装置60中的任一个也可以生成访问数据的请求,而非从用户40中在第二模块30、计算装置50或计算装置60中的任一个处接收访问数据的请求。例如,操作计算装置50的第三方可以希望确定第二模块30的用户40是否在物理上占有第二模块30,从而计算装置50将表示其的消息发送给第二模块30。在接收这个消息时,第二模块30提示第二模块30的用户40将由第一模块20生成的密码输入第二模块30内,并且该方法如上所述进行。
本发明的实施方式可以与一种系统相比较,在该系统中,第二模块30不知道由第一模块20用于生成密码的密钥,但是在认证服务器(例如,计算装置50)与第一模块20之间共享该密钥。虽然在这种实施方式,无论是受信任还是不受信任,第二模块30都不需要访问时间指示,但是该系统可以丧失在第一与第二模块之间唯一地共享密钥的安全性,这是因为然后在第一模块20与计算装置50之间共享该密钥。实际上,如果入侵计算装置50,那么可以暴露很多密钥,与以上系统相反,其中,通过入侵的第一或第二模块,可以暴露仅仅一个密钥。
如上所述,第一和第二模块20和30可以是相同装置的复合部件,并且可以在该装置内彼此通信地断开。在这些实施方式中,用户40能够从第一模块20中检索密码并且将该密码输入第二模块30内的唯一(实际上可能的)方法是用户40是否占有第一模块20。因此,由此断定,在这种情况下,用户40非常可能占有该装置,并且因此,是个人用户。因此,如果第二模块30验证从用户40中接收的密码,那么第二模块30可以确信无疑地确定访问数据的请求源自占有该装置的人(并且因此不是远程实体)。能够访问所请求的数据,可以包括允许访问在该装置上保持的限制的数据,或者在第三方(例如,计算装置50)保持所请求的数据的情况下,可以包括将数据发送给第三方,用于能够访问所请求的数据。
要理解的是,如上所述,用户40可以不是单个自然人,同样,第一用户可以给第二用户提供密码,接口31从第二用户中接收密码。
如上所述,第一模块20的接口21和装置35的接口31可以是用户接口。然而,在一些实施方式中,接口可以提供连接至合适的用户接口的输入/输出接口。可以这样做,以能够分布第一模块30或装置35,以便可以在物理上分离用户接口,通过这些用户接口,提供密码。
以上实施方式要理解为本发明的说明性实例。设想本发明的进一步实施方式。例如,第二模块30可以用于允许访问由多个第三方(例如,计算装置50和60)以及未显示的其他系统保持或提供的数据、资产或服务。要理解的是,虽然在上面描述的很多实施方式中,第一和第二模块描述为通信地连接,但是这个特征并非本发明的基本特征,并且在其他实施方式中,第一和第二模块20和30可能通信地连接。同样,虽然有利,但是第一和第二模块20和30不需要共享密钥,用于生成和验证密码。要理解的是,相对于任何一个实施方式描述的任何特征可以单独地或者与所描述的其他特征相结合地使用,并且还可以与任何其他实施方式的一个或多个特征或者任何其他实施方式的任何组合相结合地使用。而且,在不背离在所附权利要求中限定的本发明的范围的情况下,还可以使用上面未描述的等同物和修改。
以下编号条款陈述了本发明的优选实施方式:
1.一种用于验证访问数据的请求的系统,所述系统访问被配置为与第一受信任的时间指示器进行通信的计算装置,所述系统包括:
第一模块,访问第二受信任的时间指示器;以及
第二模块,访问不受信任的时间指示器,其中,
所述第一模块被设置为至少使用所述第二受信任的时间指示器生成密码;
所述第二模块被设置为:
接收与访问数据的请求相关联的密码,至少使用不受信任的时间指示器验证所接收的密码;并且
促使将消息传输给所述计算装置,所述消息包括表示用于验证所接收的密码的不受信任的时间指示器的数据;并且
所述系统被设置为促使计算装置:
生成表示在不受信任的时间指示器与第一受信任的时间指示器之间的比较的数据,并且
基于所生成的数据选择性地为系统提供所述对数据的访问。
2.根据条款1所述的系统,其中,传输给计算装置的消息包括表示第二模块至少使用不受信任的时间指示器对所接收的密码的验证的数据。
3.根据条款1或2所述的系统,其中,所述第一模块和所述第二模块共享唯一地分配给其的密钥,所述第一模块被设置为使用密钥来生成密码,并且所述第二模块被设置为使用密钥来验证所接收的密码。
4.根据条款3所述的系统,其中,所述密钥储存在第一模块的安全部件内。
5.根据条款1到4中任一项所述的系统,其中,所述密钥储存在第二模块的安全部件内。
6.根据条款1到5中任一项所述的系统,其中,所述第一模块包括包含时钟的防损硬件,所述时钟被设置为提供第二受信任的时间指示器。
7.根据条款1到6中任一项所述的系统,其中,所述第二模块通信地连接至具有时钟的装置,所述时钟被设置为提供不受信任的时间指示器。
8.根据条款1到7中任一项所述的系统,其中,所述计算装置被设置为将包括所生成的数据的消息发送给另一个计算装置,从而为系统提供所述对数据的访问,所述另一个计算装置被设置为在接收所生成的数据时提供所述对数据的访问。
9.根据条款1到7中任一项所述的系统,其中,所请求的数据储存在计算装置处或者由计算装置生成,并且所述计算装置被设置为基于所生成的数据提供所述对数据的访问。
10.根据条款1到9中任一项所述的系统,其中,所述第一模块被设置为通过第一模块的接口接收由第二模块或计算装置生成的问询码,并且至少使用所述问询码,生成密码。
11.根据条款1到10中任一项所述的系统,其中,所述第一模块被设置为生成多个密码,所述多个密码中的至少一个密码与所述多密码中的另一个密码不同,并且通过第一模块的接口将至少一个生成的密码提供给用户。
12.根据条款1到11中任一项所述的系统,其中,所述第二模块和所述计算装置共享另一个密钥,以在其间的通信中使用。
13.根据条款1到12中任一项所述的系统,其中,所述第二模块被设置为储存所接收的密码,并且比较所接收的密码和任何先前储存的所接收的密码,从而验证所接收的密码。
14.一种用于验证访问数据的请求的系统,所述系统包括:
第一模块,访问第二受信任的时间指示器;以及
第二模块,访问不受信任的时间指示器,其中,
所述第一模块被设置为至少使用所述第二受信任的时间指示器生成密码;
所述第二模块被设置为:
接收与访问数据的请求相关联的密码,
至少使用不受信任的时间指示器验证所接收的密码,并且
促使将消息传输给所述计算装置,所述消息包括表示用于验证所接收的密码的不受信任的时间指示器的数据;并且
从计算装置中接收表示在不受信任的时间指示器与进一步受信任的时间指示器之间的比较的数据,并且
使用所接收的数据来提供所述对数据的访问,
其中,所述第一模块和第二模块通信地断开。
15.根据条款14所述的系统,其中,从计算装置中接收的所述数据包括表示不受信任的时间指示器是否在第一受信任的时间指示器的预定范围内的数据。
16.根据条款14或15所述的系统,其中,所请求的数据由第二模块保持,并且所述第二模块被配置为使用从计算装置中接收的所述数据,来确定是否提供对所请求的数据的访问。
17.根据条款14到16中任一项所述的系统,其中,所述第一模块访问的所述受信任的时间指示器是第一模块的时钟,并且所述计算装置访问的进一步受信任的时间指示器是与第一模块的时钟同步的时钟。
18.根据条款14到17中任一项所述的系统,其中,所述计算装置和所述第二模块预先配置有加密密钥,用于签署在其间发送的数据,并且其中,所述第二模块被设置为签署传输给计算装置的所述消息,并且验证所述计算装置使用所述加密密钥签署从计算装置中接收的所述数据。
19.根据条款14到18中任一项所述的系统,其中,所述第二模块被设置为储存所接收的密码,并且比较所接收的密码和任何先前储存的接收的密码,从而验证所接收的密码。

Claims (40)

1.一种用于验证对数据的访问的请求的系统,所述系统访问被配置为与第一受信任的时间指示器进行通信的计算装置,所述系统包括:
第一模块,访问第二受信任的时间指示器;以及
第二模块,访问不受信任的时间指示器,其中,
所述第一模块被设置为至少使用所述第二受信任的时间指示器生成密码;
所述第二模块被设置为:
接收与对数据的访问的所述请求相关联的密码,至少使用所述不受信任的时间指示器验证所接收的密码;并且
使消息被传输给所述计算装置,所述消息包括表示用于验证所接收的密码的所述不受信任的时间指示器的数据,并且
所述系统被设置为使所述计算装置生成表示在所述不受信任的时间指示器与所述第一受信任的时间指示器之间的比较的数据,其中,所生成的数据用于提供所述对数据的访问。
2.根据权利要求1所述的系统,其中,所述系统被设置为使所述计算装置基于所生成的数据选择性地为系统提供所述对数据的访问。
3.根据权利要求1或2所述的系统,其中,传输给所述计算装置的所述消息包括表示所述第二模块至少使用所述不受信任的时间指示器对所接收的密码的验证的数据。
4.根据前述权利要求中任一项所述的系统,其中,所述第一模块和所述第二模块共享唯一地分配给其的密钥,所述第一模块被设置为使用所述密钥来生成所述密码,并且所述第二模块被设置为使用所述密钥来验证所接收的密码。
5.根据权利要求4所述的系统,其中,所述密钥储存在所述第一模块的安全部件内。
6.根据权利要求4或5所述的系统,其中,所述密钥储存在所述第二模块的安全部件内。
7.根据前述权利要求中任一项所述的系统,其中,所述第一模块包括包含时钟的防损硬件,所述时钟被设置为提供所述第二受信任的时间指示器。
8.根据前述权利要求中任一项所述的系统,其中,所述第二模块通信地连接至具有时钟的装置,所述时钟被设置为提供所述不受信任的时间指示器。
9.根据前述权利要求中任一项所述的系统,其中,所述系统被设置为使所述计算装置将包括所生成的数据的消息发送给另一个计算装置,从而为所述系统提供所述对数据的访问,所述另一个计算装置被设置为在接收所生成的数据时提供所述对数据的访问。
10.根据权利要求2到8中任一项所述的系统,其中,所请求的数据储存在所述计算装置处或者由所述计算装置生成,并且所述计算装置被设置为基于所生成的数据提供所述对数据的访问。
11.根据前述权利要求中任一项所述的系统,其中,所述第一模块被设置为通过所述第一模块的接口接收由所述第二模块或所述计算装置生成的问询码,并且至少使用所述问询码,生成所述密码。
12.根据前述权利要求中任一项所述的系统,其中,所述第一模块被设置为生成多个密码,所述多个密码中的至少一个密码与所述多个密码中的另一个密码不同,并且通过所述第一模块的接口将至少一个所生成的密码提供给用户。
13.根据前述权利要求中任一项所述的系统,其中,所述第二模块和所述计算装置共享另一个密钥,以在其间的通信中使用。
14.根据前述权利要求中任一项所述的系统,其中,所述第二模块被设置为储存所接收的密码,并且比较所接收的密码和任何先前储存的接收的密码,从而验证所接收的密码。
15.根据权利要求1所述的系统,其中,所述第一模块和所述第二模块通信地断开,并且所述第二模块被设置为从所述计算装置中接收所生成的数据,并且使用所接收的数据来提供所述对数据的访问。
16.根据权利要求15所述的系统,其中,从计算装置中接收的所述数据包括表示所述不受信任的时间指示器是否在所述第一受信任的时间指示器的预定范围内的数据。
17.根据权利要求15或16所述的系统,其中,所请求的数据由所述第二模块保持,并且所述第二模块被配置为使用从所述计算装置中接收的所述数据,来确定是否提供对所请求的数据的访问。
18.根据权利要求15到17中任一项所述的系统,其中,所述第二受信任的时间指示器是所述第一模块的时钟,并且所述第一受信任的时间指示器是与所述第一模块的时钟同步的时钟。
19.根据权利要求15到18中任一项所述的系统,其中,所述计算装置和所述第二模块预先配置有加密密钥,用于签署在其间发送的数据,并且其中,所述第二模块被设置为签署传输给所述计算装置的所述消息,并且验证所述计算装置使用所述加密密钥签署从所述计算装置中接收的所述数据。
20.根据权利要求15到19中任一项所述的系统,其中,所述第二模块被设置为储存所接收的密码,并且比较所接收的密码和任何先前储存的接收的密码,从而验证所接收的密码。
21.一种由系统使用计算装置验证对数据的访问的请求的方法,所述计算装置被配置为与第一受信任的时间指示器进行通信,所述方法包括:
至少使用第二受信任的时间指示器在第一模块处生成密码;
接收与对数据的访问的请求相关联的密码;
至少使用不受信任的时间指示器在第二模块处验证所接收的密码;并且
使消息被传输给所述计算装置,所述消息包括表示用于验证所接收的密码的所述不受信任的时间指示器的数据;
其中,
所述系统使所述计算装置生成表示在所述不受信任的时间指示器与所述第一受信任的时间指示器之间的比较的数据,其中,所生成的数据用于提供所述对数据的访问,并且
其中,所述系统包括所述第一模块和所述第二模块。
22.根据权利要求21所述的方法,其中,所述系统使所述计算装置基于所生成的数据选择性地为所述系统提供所述对数据的访问。
23.根据权利要求21或22所述的方法,其中,传输给所述计算装置的所述消息包括表示所述第二模块至少使用所述不受信任的时间指示器对所接收的密码的验证的数据。
24.根据权利要求21到23中任一项所述的方法,其中,所述第一模块和所述第二模块共享唯一地分配给其的密钥,所述密钥用于生成所述密码并且用于验证所接收的密码。
25.根据权利要求24所述的方法,其中,所述密钥储存在所述第一模块的安全部件内。
26.根据权利要求24或25所述的方法,其中,所述密钥储存在所述第二模块的安全部件内。
27.根据权利要求21到26中任一项所述的方法,所述方法包括从在所述第一模块的防损硬件内的时钟中检索所述第二受信任的时间指示器。
28.根据权利要求21到27中任一项所述的方法,所述方法包括从与所述第二模块通信地连接的时钟中接收所述不受信任的时间指示器。
29.根据权利要求21到28中任一项所述的方法,其中,所述系统使所述计算装置将包括所生成的数据的消息发送给另一个计算装置,从而为所述系统提供所述对数据的访问,所述另一个计算装置被设置为在接收所生成的数据时提供所述对数据的访问。
30.根据权利要求21到28中任一项所述的方法,其中,所请求的数据储存在所述计算装置处或者由所述计算装置生成,并且所述计算装置被设置为基于所生成的数据提供所述对数据的访问。
31.根据权利要求21到30中任一项所述的方法,所述方法包括通过第一模块的接口接收由所述第二模块或所述计算装置生成的问询码,并且至少使用所述问询码,生成所述密码。
32.根据权利要求21到31中任一项所述的方法,所述方法包括生成多个密码,所述多个密码中的至少一个密码与所述多个密码中的另一个密码不同,并且通过所述第一模块的接口将至少一个所生成的密码提供给用户。
33.根据权利要求21到32中任一项所述的方法,其中,所述第二模块和所述计算装置共享另一个密钥,以在其间的通信中使用。
34.根据权利要求21到33中任一项所述的方法,其中,所述方法包括在所述第二模块处储存所接收的密码,并且比较所接收的密码和任何先前储存的所接收的密码,从而验证所接收的密码。
35.根据权利要求1所述的方法,其中,所述第一模块和所述第二模块通信地断开,并且所述系统使所述计算装置将所生成的数据提供给所述第二模块,所述方法包括由所述第二模块使用所述接收的生成的数据来提供所述对数据的访问。
36.根据权利要求35所述的方法,其中,从所述计算装置中接收的所述数据包括表示所述不受信任的时间指示器是否在所述第一受信任的时间指示器的预定范围内的数据。
37.根据权利要求35或36所述的方法,其中,所请求的数据由所述第二模块保持,并且所述方法包括由所述第二模块使用从所述计算装置中接收的所述数据,来确定是否提供对所请求的数据的访问。
38.根据权利要求35到37中任一项所述的方法,其中,所述第二受信任的时间指示器是所述第一模块的时钟,并且所述第一受信任的时间指示器是与所述第一模块的时钟同步的时钟。
39.根据权利要求35到38中任一项所述的方法,其中,所述计算装置和所述第二模块预先配置有加密密钥,用于签署在其间发送的数据,并且其中,所述方法包括签署传输给所述计算装置的所述消息,并且验证所述计算装置使用所述加密密钥签署从所述计算装置中接收的所述数据。
40.根据权利要求35到39中任一项所述的方法,其中,所述方法包括在所述第二模块处储存所接收的密码,并且比较所接收的密码和任何先前储存的接收的密码,从而验证所接收的密码。
CN201380057912.6A 2012-09-06 2013-09-06 用于验证访问请求的方法和系统 Active CN104798083B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
GB1215951.3A GB2505678B (en) 2012-09-06 2012-09-06 Method and system for verifying an access request
GB1215951.3 2012-09-06
GB1222090.1A GB2505532B (en) 2012-09-06 2012-12-07 Method and system for verifying an access request
GB1222090.1 2012-12-07
PCT/GB2013/052347 WO2014037741A1 (en) 2012-09-06 2013-09-06 Method and system for verifying an access request

Publications (2)

Publication Number Publication Date
CN104798083A true CN104798083A (zh) 2015-07-22
CN104798083B CN104798083B (zh) 2017-06-23

Family

ID=47137069

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201380057912.6A Active CN104798083B (zh) 2012-09-06 2013-09-06 用于验证访问请求的方法和系统
CN201380057898.XA Active CN104769602B (zh) 2012-09-06 2013-09-06 用于验证访问请求的方法和系统

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201380057898.XA Active CN104769602B (zh) 2012-09-06 2013-09-06 用于验证访问请求的方法和系统

Country Status (11)

Country Link
US (4) US8806600B2 (zh)
EP (2) EP2732400B1 (zh)
KR (2) KR102177848B1 (zh)
CN (2) CN104798083B (zh)
AU (2) AU2013311424B2 (zh)
CA (2) CA2884005C (zh)
ES (1) ES2590678T3 (zh)
GB (2) GB2505678B (zh)
HK (2) HK1208278A1 (zh)
MX (2) MX362308B (zh)
WO (2) WO2014037740A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2012301897B2 (en) * 2011-08-30 2017-04-13 Ov Loop Inc. Systems and methods for authorizing a transaction with an unexpected cryptogram
US10129249B1 (en) * 2013-03-14 2018-11-13 EMC IP Holding Company LLC Randomizing state transitions for one-time authentication tokens
GB2505678B (en) 2012-09-06 2014-09-17 Visa Europe Ltd Method and system for verifying an access request
US9178708B2 (en) * 2013-12-02 2015-11-03 Guardtime Ip Holdings Limited Non-deterministic time systems and methods
US9424410B2 (en) * 2013-12-09 2016-08-23 Mastercard International Incorporated Methods and systems for leveraging transaction data to dynamically authenticate a user
US9332008B2 (en) 2014-03-28 2016-05-03 Netiq Corporation Time-based one time password (TOTP) for network authentication
US9223960B1 (en) * 2014-07-31 2015-12-29 Winbond Electronics Corporation State-machine clock tampering detection
US9984247B2 (en) * 2015-11-19 2018-05-29 International Business Machines Corporation Password theft protection for controlling access to computer software
US9948673B2 (en) * 2016-05-26 2018-04-17 Visa International Service Association Reliable timestamp credential
US10491391B1 (en) * 2016-09-23 2019-11-26 Amazon Technologies, Inc. Feedback-based data security
KR20180070278A (ko) 2016-12-16 2018-06-26 백민경 영구거푸집 및 이를 이용한 벽체구조물 시공방법
US10846417B2 (en) * 2017-03-17 2020-11-24 Oracle International Corporation Identifying permitted illegal access operations in a module system
SG10201702881VA (en) * 2017-04-07 2018-11-29 Mastercard International Inc Systems and methods for processing an access request
US11257078B2 (en) * 2018-08-20 2022-02-22 Mastercard International Incorporated Method and system for utilizing blockchain and telecom network for two factor authentication and enhancing security
US10419219B1 (en) * 2018-10-08 2019-09-17 Capital One Services, Llc System, method, and computer-accessible medium for actionable push notifications
CN110224713B (zh) * 2019-06-12 2020-09-15 读书郎教育科技有限公司 一种基于高安全性智能儿童手表的安全防护方法及系统
CN114667499A (zh) * 2019-09-11 2022-06-24 艾锐势有限责任公司 基于口令和策略的设备无关认证
WO2023077616A1 (zh) * 2021-11-02 2023-05-11 珠海艾派克微电子有限公司 一种芯片、耗材盒及数据传输方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4998279A (en) * 1984-11-30 1991-03-05 Weiss Kenneth P Method and apparatus for personal verification utilizing nonpredictable codes and biocharacteristics
US20050005114A1 (en) * 2003-07-05 2005-01-06 General Instrument Corporation Ticket-based secure time delivery in digital networks
US20050138357A1 (en) * 2003-10-03 2005-06-23 Sony Corporation Rendering rights delegation system and method
CN1838595A (zh) * 2005-03-25 2006-09-27 日本电气株式会社 使用便携式通信终端的认证系统及认证方法
CN101204067A (zh) * 2005-06-20 2008-06-18 汤姆森特许公司 安全计算两个设备之间的基于时间的长度的方法和设备
US20100107229A1 (en) * 2008-10-29 2010-04-29 Maryam Najafi Method and Apparatus for Mobile Time-Based UI for VIP
CN102185838A (zh) * 2011-04-21 2011-09-14 杭州驭强科技有限公司 基于时间因子的主动式动态密码生成和认证系统及方法

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5367572A (en) * 1984-11-30 1994-11-22 Weiss Kenneth P Method and apparatus for personal identification
US4720860A (en) * 1984-11-30 1988-01-19 Security Dynamics Technologies, Inc. Method and apparatus for positively identifying an individual
US5361062A (en) * 1992-11-25 1994-11-01 Security Dynamics Technologies, Inc. Personal security system
EP1139200A3 (en) * 2000-03-23 2002-10-16 Tradecard Inc. Access code generating system including smart card and smart card reader
US7904583B2 (en) * 2003-07-11 2011-03-08 Ge Fanuc Automation North America, Inc. Methods and systems for managing and controlling an automation control module system
KR20050096040A (ko) * 2004-03-29 2005-10-05 삼성전자주식회사 휴대형 저장장치와 디바이스간에 디지털 저작권 관리를이용한 콘텐츠 재생방법 및 장치와, 이를 위한 휴대형저장장치
WO2006040820A1 (ja) 2004-10-14 2006-04-20 Mitsubishi Denki Kabushiki Kaisha パスワード生成装置及びicカード及び認証装置
US9258124B2 (en) * 2006-04-21 2016-02-09 Symantec Corporation Time and event based one time password
KR101468282B1 (ko) * 2006-05-09 2014-12-02 인터디지탈 테크날러지 코포레이션 무선 장치에 대한 안전 시간 기능
US8266711B2 (en) * 2006-07-07 2012-09-11 Sandisk Technologies Inc. Method for controlling information supplied from memory device
US8543829B2 (en) * 2007-01-05 2013-09-24 Ebay Inc. Token device re-synchronization through a network solution
US8281375B2 (en) * 2007-01-05 2012-10-02 Ebay Inc. One time password authentication of websites
EP2034458A3 (en) * 2007-03-09 2009-09-02 ActivIdentity, Inc. One-time passwords
CN101051908B (zh) * 2007-05-21 2011-05-18 北京飞天诚信科技有限公司 动态密码认证系统及方法
US8627419B1 (en) * 2007-05-25 2014-01-07 Michael J VanDeMar Multiple image reverse turing test
US8200978B2 (en) * 2007-07-06 2012-06-12 Gong Ling LI Security device and method incorporating multiple varying password generator
US7990292B2 (en) 2008-03-11 2011-08-02 Vasco Data Security, Inc. Method for transmission of a digital message from a display to a handheld receiver
CH701050A1 (fr) * 2009-05-07 2010-11-15 Haute Ecole Specialisee Bernoise Technique Inf Procédé d'authentification.
EP2296311A1 (en) * 2009-09-10 2011-03-16 Gemalto SA Method for ciphering messages exchanged between two entities
US8701183B2 (en) * 2010-09-30 2014-04-15 Intel Corporation Hardware-based human presence detection
US20120089519A1 (en) * 2010-10-06 2012-04-12 Prasad Peddada System and method for single use transaction signatures
US10963864B2 (en) * 2011-02-07 2021-03-30 Scramcard Holdings (Hong Kong) Limited Smart card with verification means
CN102368230A (zh) * 2011-10-31 2012-03-07 北京天地融科技有限公司 移动存储器的访问控制方法、移动存储器及系统
DE102011118510A1 (de) * 2011-11-14 2013-05-16 Biso Schrattenecker Gmbh Anschlußvorrichtung für ein Vorsatzgerät einer selbstfahrenden Arbeitsmaschine
US8396452B1 (en) * 2012-05-04 2013-03-12 Google Inc. Proximity login and logoff
US9053312B2 (en) * 2012-06-19 2015-06-09 Paychief, Llc Methods and systems for providing bidirectional authentication
GB2505678B (en) 2012-09-06 2014-09-17 Visa Europe Ltd Method and system for verifying an access request
US9230084B2 (en) * 2012-10-23 2016-01-05 Verizon Patent And Licensing Inc. Method and system for enabling secure one-time password authentication
DE102012219618B4 (de) * 2012-10-26 2016-02-18 Bundesdruckerei Gmbh Verfahren zur Erzeugung eines Soft-Tokens, Computerprogrammprodukt und Dienst-Computersystem

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4998279A (en) * 1984-11-30 1991-03-05 Weiss Kenneth P Method and apparatus for personal verification utilizing nonpredictable codes and biocharacteristics
US20050005114A1 (en) * 2003-07-05 2005-01-06 General Instrument Corporation Ticket-based secure time delivery in digital networks
US20050138357A1 (en) * 2003-10-03 2005-06-23 Sony Corporation Rendering rights delegation system and method
CN1838595A (zh) * 2005-03-25 2006-09-27 日本电气株式会社 使用便携式通信终端的认证系统及认证方法
CN101204067A (zh) * 2005-06-20 2008-06-18 汤姆森特许公司 安全计算两个设备之间的基于时间的长度的方法和设备
US20100107229A1 (en) * 2008-10-29 2010-04-29 Maryam Najafi Method and Apparatus for Mobile Time-Based UI for VIP
CN102185838A (zh) * 2011-04-21 2011-09-14 杭州驭强科技有限公司 基于时间因子的主动式动态密码生成和认证系统及方法

Also Published As

Publication number Publication date
US20190213321A1 (en) 2019-07-11
CA2884002C (en) 2022-10-11
GB2505678A (en) 2014-03-12
CA2884005C (en) 2021-10-26
US20150178518A1 (en) 2015-06-25
CN104769602B (zh) 2019-06-14
GB2505678B (en) 2014-09-17
CN104769602A (zh) 2015-07-08
WO2014037741A1 (en) 2014-03-13
AU2013311424B2 (en) 2019-02-14
AU2013311425B2 (en) 2018-09-20
HK1208546A1 (zh) 2016-03-04
KR20150052260A (ko) 2015-05-13
CA2884005A1 (en) 2014-03-13
AU2013311425A1 (en) 2015-03-26
MX2015002929A (es) 2015-06-02
WO2014037740A1 (en) 2014-03-13
US10929524B2 (en) 2021-02-23
US8806600B2 (en) 2014-08-12
ES2590678T3 (es) 2016-11-23
US9830447B2 (en) 2017-11-28
EP2893484B1 (en) 2020-12-02
MX362307B (es) 2019-01-10
GB2505532B (en) 2014-08-06
EP2893484A1 (en) 2015-07-15
EP2732400B1 (en) 2016-06-15
CN104798083B (zh) 2017-06-23
MX362308B (es) 2019-01-10
EP2732400A1 (en) 2014-05-21
US10282541B2 (en) 2019-05-07
KR102177848B1 (ko) 2020-11-11
GB2505532A (en) 2014-03-05
US20140068739A1 (en) 2014-03-06
KR102202547B1 (ko) 2021-01-13
HK1208278A1 (zh) 2016-02-26
KR20150052261A (ko) 2015-05-13
GB201215951D0 (en) 2012-10-24
US20150178494A1 (en) 2015-06-25
CA2884002A1 (en) 2014-03-13
MX2015002928A (es) 2015-06-02
AU2013311424A1 (en) 2015-03-26

Similar Documents

Publication Publication Date Title
CN104798083A (zh) 用于验证访问请求的方法和系统
US10885501B2 (en) Accredited certificate issuance system based on block chain and accredited certificate issuance method based on block chain using same, and accredited certificate authentication system based on block chain and accredited certificate authentication method based on block chain using same
US7552333B2 (en) Trusted authentication digital signature (tads) system
AU2001283128A1 (en) Trusted authentication digital signature (TADS) system
WO2003050774A1 (en) A method of distributing a public key
WO2018133674A1 (zh) 一种银行支付许可认证信息的反馈验证方法
KR101856530B1 (ko) 사용자 인지 기반 암호화 프로토콜을 제공하는 암호화 시스템 및 이를 이용하는 온라인 결제 처리 방법, 보안 장치 및 거래 승인 서버
KR101616795B1 (ko) Pki 기반의 개인키 파일 관리 방법 및 그 시스템
CN109644137B (zh) 具有签名消息的基于令牌的认证的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1208546

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1208546

Country of ref document: HK