CN112567682B - 用于生成密码以进行令牌交互的令牌密钥 - Google Patents

用于生成密码以进行令牌交互的令牌密钥 Download PDF

Info

Publication number
CN112567682B
CN112567682B CN201980053376.XA CN201980053376A CN112567682B CN 112567682 B CN112567682 B CN 112567682B CN 201980053376 A CN201980053376 A CN 201980053376A CN 112567682 B CN112567682 B CN 112567682B
Authority
CN
China
Prior art keywords
token
computer
processor
password
master key
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
CN201980053376.XA
Other languages
English (en)
Other versions
CN112567682A (zh
Inventor
J·吉塔丽亚
E·洛佩茨
C·弗卢夏姆
S·***
C·阿艾拜
C·雅各布斯
P·拉文德
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 International Service Association
Original Assignee
Visa International Service Association
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 International Service Association filed Critical Visa International Service Association
Publication of CN112567682A publication Critical patent/CN112567682A/zh
Application granted granted Critical
Publication of CN112567682B publication Critical patent/CN112567682B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • 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/321Cryptographic 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 a third party or a trusted authority
    • H04L9/3213Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

描述用于管理主密钥以供令牌请求者用于生成例如TAVV的密码的技术。处理器计算机针对令牌请求者生成第一主密钥,所述第一主密钥基于(a)由所述处理器计算机管理的第二主密钥和(b)所述令牌请求者的标识符而生成。所述处理器计算机向对应于所述令牌请求者的令牌请求者计算机传输所述第一主密钥。所述处理器计算机从所述令牌请求者计算机接收对令牌的请求。响应于接收到对所述令牌的所述请求,所述处理器计算机将所述令牌传输给所述令牌请求者计算机;并且从所述令牌请求者计算机接收授权请求消息,所述授权请求消息包括所述令牌和由所述令牌请求者计算机使用所述第一主密钥和所述令牌生成的密码。

Description

用于生成密码以进行令牌交互的令牌密钥
相关申请交叉引用
本申请要求2018年8月13日提交的第62/718,332号美国临时申请的优先权,所述美国临时申请的内容以全文引用的方式并入本文中。
背景技术
密码用于确保数字信息源自受信任来源。例如,在支付交易中使用密码进行验证。无卡(CNP)交易可涉及使用唯一支付密码来确保用于交易的授权请求来源于原始令牌请求者(预认证的实体),并且所述交易是唯一的。一种支付密码是令牌认证验证值(TAVV)。
对于每个交易,一般在远离请求者的服务器装置上生成例如TAVV的交易密码。例如,要生成TAVV,则需要密码密钥。用于生成TAVV的密钥源自发行方主密钥,所述发行方主密钥仅由发行方与卡片生产或发行方处理供应商共享,并需要使用高度专业化设施和设备进行保护。在安全执行环境外部可能难以生成TAVV。在一些情况下,令牌提供商向令牌请求者提供在提交令牌交易之前获得TAVV的服务。令牌请求者周期性地访问API以请求支付密码。然而,这会给令牌请求者造成若干问题。
请求TAVV会增加交易的时间,因为TAVV一般需要从远程安全服务器检取。令牌请求者需要在维持安全的同时减小与获取TAVV相关联的时延。
本发明的实施例解决这些问题和其它问题。
发明内容
根据一些实施例,一种基于令牌请求者的密钥管理的过程可包括:由处理器计算机针对令牌请求者生成第一主密钥,所述第一主密钥基于(a)由所述处理器计算机管理的第二主密钥和(b)所述令牌请求者的标识符而生成;由所述处理器计算机向对应于所述令牌请求者的令牌请求者计算机传输所述第一主密钥;由所述处理器计算机从所述令牌请求者计算机接收对令牌的请求;响应于接收到对所述令牌的所述请求,由所述处理器计算机向所述令牌请求者计算机传输所述令牌;以及由所述处理器计算机从所述令牌请求者计算机接收授权请求消息,所述授权请求消息包括所述令牌和由所述令牌请求者计算机使用所述第一主密钥和所述令牌生成的密码。
根据其它实施例,一种处理器计算机可包括存储器、处理器、包括指令的非瞬态计算机可读介质,所述指令在由所述处理器执行时执行以下步骤:针对令牌请求者生成第一主密钥,所述第一主密钥基于(a)由所述处理器计算机管理的第二主密钥和(b)所述令牌请求者的标识符而生成;向对应于所述令牌请求者的令牌请求者计算机传输所述第一主密钥;从所述令牌请求者计算机接收对令牌的请求;响应于接收到对所述令牌的所述请求,向所述令牌请求者计算机传输所述令牌;以及从所述令牌请求者计算机接收授权请求消息,所述授权请求消息包括所述令牌和由所述令牌请求者计算机使用所述第一主密钥和所述令牌生成的密码。
根据其它实施例,一种方法可包括由令牌请求者计算机从处理网络中的处理器计算机接收第一主密钥和令牌;由所述令牌请求者计算机使用所述第一主密钥生成密码生成密钥;以及由所述令牌请求者计算机使用所述密码生成密钥和所述令牌来生成密码。
根据其它实施例,一种令牌请求者计算机可包括存储器、处理器、包括指令的非瞬态计算机可读介质,所述指令在由所述处理器执行时执行以下步骤:从处理器计算机接收第一主密钥和令牌;使用所述第一主密钥生成密码生成密钥;以及使用所述密码生成密钥和所述令牌来生成密码。
附图说明
图1示出根据一些实施例的基于令牌请求者的密钥管理的技术。
图2是示出根据一些实施例的基于令牌请求者的密钥使用的技术的示意图。
图3示出根据一些实施例的处理器计算机的框图。
图4示出根据一些实施例的令牌请求者计算机的框图。
图5示出根据本发明的实施例的使用TRMDK生成TAVV的示例操作。
图6是示出根据一些实施例的方法的流程图。
具体实施方式
总的来说,实施例提供允许令牌请求者安全地生成交易密码的技术。在一些实施例中,处理器计算机管理处理器主密钥(其示例是主派生密钥(Master Derivation Key,MDK))。处理器主密钥用于发布令牌请求者主密钥(其示例是令牌请求者主派生密钥(TRMDK)),其使得令牌请求者能够在本地执行密码操作。令牌请求者可使用令牌请求者主密钥生成额外密钥(例如,密码生成密钥,其示例是唯一派生密钥(UDK))。替代地或另外,令牌请求者可生成交易密码。可使用密码生成密钥和/或令牌请求者主密钥生成交易密码。
在一些实施例中,交易密码用于进行交易。令牌请求者可向处理器计算机请求令牌。令牌请求者可使用令牌请求者主密钥生成密码。令牌请求者可首先使用令牌请求者主密钥生成密码生成密钥,然后使用所述密码生成密钥和令牌来生成密码。令牌请求者可准备并向处理器计算机传输包括密码和令牌的授权请求消息。处理器计算机随后可验证密码以确保令牌来源于适当的令牌请求者。
在论述一些实施例的细节之前,对一些术语的描述可有助于理解各种实施例。
“服务器计算机”可包括功能强大的计算机或计算机集群。例如,服务器计算机可以是大型主机、小型计算机集群或作为一个单元运作的一组服务器。在一个示例中,服务器计算机可以是耦合到网络服务器的数据库服务器。服务器计算机可耦合到数据库,并且可包括用于服务于来自一个或多个客户端计算机的请求的任何硬件、软件、其它逻辑或前述内容的组合。服务器计算机可包括一个或多个计算设备,并且可使用多种计算结构、布置和编译中的任一种来服务来自一个或多个客户端计算机的请求。
“处理器”可指任何合适的一个或多个数据计算装置。处理器可包括一起工作以实现所要功能的一个或多个微处理器。处理器可包括CPU,所述CPU包括足以执行用于执行用户和/或***生成的请求的程序部件的至少一个高速数据处理器。所述CPU可以是微处理器,例如AMD的速龙(Athlon)、钻龙(Duron)和/或皓龙(Opteron);IBM和/或摩托罗拉(Motorola)的PowerPC;IBM和索尼(Sony)的Cell处理器;英特尔(Intel)的赛扬(Celeron)、安腾(Itanium)、奔腾(Pentium)、至强(Xeon)和/或XScale;和/或类似处理器。
“存储器”可以是可存储电子数据的任何合适的一个或多个装置。合适的存储器可包括非瞬态计算机可读介质,其存储可由处理器执行以实施所要方法的指令。存储器的示例可包括一个或多个存储器芯片、磁盘驱动器,等等。此类存储器可使用任何合适的电气、光学和/或磁性操作模式来操作。
“发行方”通常可指维护与支付卡或便携式通信装置相关联的用户账户的业务实体(例如银行),所述账户例如在安装于便携式通信装置上的移动应用程序中登记的账户。发行方还可将与账户相关联的账户参数发到便携式通信装置。发行方可与主机***相关联,所述主机***代表发行方来执行发行方的一些或全部功能。
“商家”通常可以是参与交易且可出售商品或服务或提供对商品或服务的取用的实体。
“收单方”通常可以是与特定商家或另一实体具有业务关系的业务实体(例如,商业银行)。一些实体可执行发行方和收单方功能两者。一些实施例可涵盖此类单个实体发行方-收单方。
“访问装置”可以是用于与商家计算机或支付处理网络通信并且与支付装置、用户计算机设备和/或用户移动装置交互的任何合适装置。访问装置通常可位于任何合适的位置处,例如位于商家所在位置处。访问装置可呈任何合适的形式。访问装置的一些示例包括POS装置、蜂窝电话、PDA、个人计算机(PC)、平板电脑、手持式专用读取器、机顶盒、电子收款机(ECR)、自动取款机(ATM)、虚拟收款机(VCR)、查询一体机、安全***、访问***、网站等。访问装置可使用任何合适的接触或非接触式操作模式,以发送或接收来自便携式通信装置或与便携式通信装置相关联的数据。在访问装置可包括POS终端的一些实施例中,可使用任何合适的POS终端且其可包括读取器、处理器和计算机可读介质。读取器可包括任何合适的接触式或非接触式操作模式。例如,示例性读卡器可包括与便携式通信装置交互的射频(RF)天线、光学扫描器、条形码读取器或磁条读取器。
“授权请求消息”可以是发送来请求授权交易的电子消息。可将授权请求消息发送到支付处理网络和/或支付卡的发行方。根据一些实施例的授权请求消息可符合ISO8583,这是针对交换与用户使用支付装置或支付账户进行的支付相关联的电子交易信息的***的标准。授权请求消息可包括可用于标识账户的信息。授权请求消息还可包括额外数据元素,例如,服务代码、到期日期等中的一个或多个。授权请求消息还可包括交易信息,例如与当前交易相关联的任何信息,例如交易金额、商家标识符、商家位置等,以及可用于确定是否标识和/或授权交易的任何其它信息。授权请求消息还可包括其它信息,例如,标识生成授权请求消息的访问装置的信息、关于访问装置的位置的信息等。
“授权响应消息”可以是对授权请求消息的电子消息应答。授权响应消息可由发行金融机构或支付处理网络生成。仅作为举例,授权响应消息可包括以下状态指示符中的一个或多个:批准--交易被批准;拒绝--交易未被批准;或呼叫中心--响应未决的更多信息,商家必须呼叫免费授权电话号码。授权响应消息还可包括授权代码,所述授权代码可以是***发行银行响应于电子消息中的授权请求消息(直接或者通过支付处理网络)传回给商家计算机的指示批准交易的代码。所述代码可充当授权的证明。如上所述,在一些实施例中,支付处理网络可向商家生成或转发授权响应消息。
术语“认证”和其派生词可指代可验证端点(包括但不限于应用、人、装置、过程和***)的凭证以确保端点是它们宣称的对象的过程。
术语“验证”和其派生词可指利用信息来确定基础主题在一组给定的情况下是否有效的过程。验证可包括任何信息比较以确保某些数据或信息是正确的、有效的、准确的、合法的和/或信誉良好的。
“令牌”或“支付令牌”可包括一些信息的取代标识符。例如,支付令牌可包括支付账户的标识符,所述标识符取代账户标识符,例如主账号(PAN)等主账户标识符。例如,令牌可包括可用作原始账户标识符的取代的一系列字母数字字符。例如,令牌“4900 0000 00000001”可用于代替PAN“4147 0900 0000 1234”。在一些实施例中,支付令牌可以是“保留格式的”,并且可具有与现有支付处理网络中使用的账户标识符一致的数值格式(例如,ISO8583金融交易消息格式)。在一些实施例中,令牌可用于代替PAN,以发起、授权、结算或解决支付交易。在通常提供原始凭证的其它***中,令牌还可用于表示原始凭证。在一些实施例中,可生成令牌值,使得可能无法以计算方式从令牌值得到原始PAN或其它账户标识符的恢复。此外,在一些实施例中,令牌格式可被配置成允许接收令牌的实体将其标识为令牌,并识别发行令牌的实体。
“令牌服务”可包括提供令牌(例如,支付令牌)服务的***。在一些实施例中,令牌服务***可促进请求、确定(例如,生成)和/或发行令牌,以及维护在存储库(例如,令牌库)中建立的令牌到令牌请求者ID(TrID)和/或PAN的映射。在一些实施例中,令牌服务可针对给定令牌建立令牌保障级别,以指示令牌与TRID绑定的置信度级别。令牌服务可包括令牌库或与令牌库通信,所述令牌库中存储生成的令牌。通过使令牌去令牌化以获得实际PAN,令牌服务可支持对使用令牌提交的支付交易进行的令牌处理。在一些实施例中,令牌服务可唯独包括令牌提供商计算机,或者包括令牌提供商计算机以及其它计算机,例如支付处理网络计算机。令牌化生态***的各种实体可承担令牌提供商的角色。例如,支付网络和发行方或者它们的代理方可通过根据本发明的实施例实施令牌服务而成为令牌提供商。
“令牌域”可指示可使用令牌的区域和/或环境。令牌域的示例可包括但不限于支付渠道(例如,电子商务、实体销售点等)、POS输入模式(例如,非接触式、磁条等)和商家标识符,从而唯一地标识可在何处使用所述令牌。可由令牌服务提供商建立一组参数(即,令牌域限制控制)作为令牌发行的部分,这可允许在支付交易中强制适当地使用令牌。例如,令牌域限制控制可限制以特定呈现模式——例如,非接触式或电子商务呈现模式——使用令牌。在一些实施例中,令牌域限制控制可限制在可以唯一地标识出的特定商家处使用令牌。一些示例性令牌域限制控制可能需要验证对于给定交易唯一的令牌密码的存在。在一些实施例中,令牌域可与令牌请求者相关联。
“请求者”可以是被配置成执行与令牌相关联的动作的应用程序、装置、过程或***。例如,请求者可请求注册网络令牌***、请求令牌生成、令牌激活、令牌去激活、令牌交换、其它令牌使用期限周期管理相关过程和/或任何其它令牌相关过程。请求者可通过任何合适的通信网络和/或协议(例如,使用HTTPS、简单对象访问协议(SOAP)和/或可扩展标记语言(XML)接口)与网络令牌***介接。请求者的一些非限制性示例可包括第三方钱包提供商、发行方、收单方、商家和/或支付处理网络。请求者在向网络令牌***请求生成新令牌或请求对现有令牌新的使用时可以是令牌请求者(TR)。在一些实施例中,令牌请求者可针对多个域和/或渠道请求令牌。令牌请求者可包括例如卡存档商家,代表商家操作的收单方、收单方处理器和支付网关,支付支持方(例如,原始设备制造商、移动网络运营商等),数字钱包提供商和/或卡发行方。
“令牌请求者标识符”可包括与网络令牌***关联的实体有关的任何字符、数字或其它标识符。例如,令牌请求者标识符可与在网络令牌***注册的实体相关联。在一些实施例中,可针对与同一令牌请求者相关联的令牌请求的每个域分配唯一令牌请求者标识符。例如,令牌请求者标识符可标识令牌请求者(例如,移动装置、移动钱包提供商等)与令牌域(例如,电子商务、非接触式等)的配对。令牌请求者标识符可包括任何格式或类型的信息。例如,在一个实施例中,令牌请求者标识符可包括例如十位数字或十一位数字(例如,4678012345)的数值。
“实账户标识符”可包括与支付账户相关联的原始账户标识符。例如,实账户标识符可以是由发行方针对卡账户(例如,***、借记卡等)发行的主账号(PAN)。例如,在一些实施例中,实账户标识符可包括十六位数值,例如,“4147 0900 0000 1234”。实账户标识符的前六个数字(例如,“414709”)可表示可标识与实账户标识符相关联的发行方的实际发行方标识符(BIN)。
“账户参数”可指代与账户相关的可以用来在该账户上进行交易的信息。账户参数的示例可包括可用来标识用户的账户的信息(例如,实账户标识符、替代账户标识符、令牌等)、与账户的状态相关的数据或信息、用来生成密码信息的一个或多个密钥、与一个或多个密钥相关的数据或信息等。账户参数可为半静态或动态的。动态账户参数可为具有有限寿命的账户参数,一旦过期便不再可用来进行交易,直到所述账户参数被补充、刷新或续订为止。动态账户参数可在账户的使用期限期间被频繁地补充。半静态账户参数可为具有比动态账户参数长的延长寿命的账户参数,可能不像动态账户参数那样被频繁地补充,或者在账户的使用期期间根本不补充。
“密钥”可指在密码算法中用于将输入数据变换成另一表示的一条信息。密码算法可以是将原始数据变换成替代表示的加密算法,或将加密信息变换回到原始数据的解密算法。密码算法的示例可包括高级加密标准(AES)、数据加密标准(DES)、三重数据加密标准/算法(TDES/TDEA)或其它合适的算法。密码算法中使用的密钥可具有任何合适的长度(例如,56位、128位、169位、192位、256位等)。在一些实施例中,较长的密钥长度可提供更安全的加密,这些加密不易遭受黑客攻击。
“密码”可指某些信息的加密表示。密码可由接收方例如通过利用有效密钥对基础信息进行加密并将结果与接收到的密码进行比较而用来确定密码生成器是否具有正确的密钥。密码可包括加密的字符。密码可以是任何合适的长度,并且可使用任何合适的数据变换过程形成。示例性数据变换过程包括加密,并且可使用例如DES、三元DES、AES和ECC的加密过程。与此类加密过程一起使用的密钥可以是任何适当的长度,并且可具有任何合适的特性。
“受限使用阈值”可指限制一条信息的使用的条件。当满足基础条件时,可超出或耗尽受限使用阈值。例如,受限使用阈值可包括生存时间,其指示一条信息有效的时间量,而一旦经过所述时间量,便超出或耗尽所述受限使用阈值,并且这条信息可变得无效而且不可再被使用。作为另一示例,受限使用阈值可包括一条信息可使用的次数,而一旦这条信息已经用了所述次数,便超出或耗尽受限使用阈值,并且这条信息可变得无效而且不可再被使用。
“主派生密钥”(MDK)可以是用于生成其它密钥的密钥。MDK可由账户的发行方管理。可基于每个银行标识号(BIN)管理MDK。MDK可用于卡片生产、支付处理等。在一些实施例中,MDK可由执行令牌管理功能的处理器计算机管理。此类MDK可用于令牌管理和验证。
“密码生成密钥”(例如,唯一派生密钥(UDK))可以是用于生成密码的密钥。密码生成密钥可直接从MDK生成或通过另一密钥生成。在一些实施例中,密码生成密钥是基于卡的密钥。密码生成密钥可存储在卡或装置(例如移动电话)上的芯片上。
“使用受限密钥”(LUK)可以是使用受限的密钥。LUK可特定于令牌主机卡模拟(HCE)。LUK可从密码生成密钥生成。LUK的使用受限,因为其可能局限于有限时间或有限交易次数。LUK可存储在由软件保护的装置上。
“支付密码”可以是支付过程中使用的密码。支付密码可由卡或装置利用UDK/LUK和额外信息(例如,主账号、令牌和/或来自芯片和销售点(POS)的信息)而生成。不同类型的支付密码用于不同场景。对于芯片卡交易,可使用若干支付密码,包括密码版本号(CVN)10。对于无卡(CNP)交易,可使用TAVV。对于电子商务,可从支付处理器(例如,Visa令牌服务(VTS))获得令牌。
术语“公/私钥对”可包括由实体生成的一对关联密码密钥。公钥可用于公用功能,例如加密要发送到实体的消息,或用于对应该由实体作出的数字签名进行验证。另一方面,私钥可用于私用功能,例如解密接收到的消息或应用数字签名。公钥通常会由称为颁证机构(CA)的主体进行授权,颁证机构将公钥存储在数据库中并将其分配给请求它的任何其它实体。私钥通常会被保持在安全存储介质中,且通常只有所述实体知道。然而,本文中描述的密码***可具有用于恢复丢失的密钥并避免数据丢失的密钥恢复机制。公钥和私钥可呈任何适当的格式,包括基于RSA或椭圆曲线密码术(ECC)的格式。
“数字签名”可指基于公/私钥对应用算法的结果,这种算法允许签名方表明和/或验证方验证文档的真实性和/或完整性。签名方借助于私钥起作用,验证方借助于公钥起作用。这个过程证明发送方的真实性、已签名文档的完整性和所称的不可否认性原则,所述原则不允许否认已经签名的内容。证书或包括签名方的数字签名的其它数据被称为是由签名方“签名的”。在一些实施例中,可根据RSA公钥密码术执行数字签名。
“证书”可包括使用数字签名将数据(例如,令牌)与身份所关联的数据绑定的电子文档或数据文件。证书可包括一个或多个数据字段,例如身份的合法名称、证书的序列号、证书的起始有效期和终止有效期、证书相关许可等。证书可包含指示证书有效的第一个日期的“起始有效”日期,以及指示证书有效的最后日期的“终止有效”日期。证书还可包含受证书保护的数据散列,包括所述数据字段。所述散列可包括证书内所包含的数据,和/或证书中未包含的数据。因此,散列可用于使证书能够保护大于证书大小的数据集(例如,证书中的数据字段散列以及证书中未包含的额外数据)。在一些实施例中,每个证书由证书颁发机构签名。在一些实施例中,证书可以是任何合适的格式,例如Europay、Mastercard和Visa(EMV)标准ISO 9796和ITU-T标准X.509中限定的格式。
“证书颁发机构”(CA)可包括可操作地耦合以向实体发布证书的一个或多个服务器计算机。CA可使用CA证书证明其身份,CA证书包括CA的公钥。可用另一个CA的私钥或者可用同一个CA的私钥对CA证书进行签名。后者被称为自签名证书。CA还通常维护由CA发布的所有证书的数据库。
现在将描述一些实施例的细节。
图1示出根据一些实施例的基于令牌请求者的密钥管理的密钥方案。MDK 102是用于生成额外密钥的密钥。MDK 102被分配给受信任方(例如,处理器计算机101)。在一些实施例中,MDK存储在安全元件(例如,处理器计算机101上的硬件安全模块(HSM))中。MDK 102用于生成特定于令牌请求者的密钥,所述特定于令牌请求者的密钥继而用于生成额外密钥和/或密码。
在一些实施例中,处理器计算机101是管理令牌和密钥的计算机。处理器计算机101可与支付处理器相关联。处理器计算机101可包括或以通信方式耦合到用于(例如,密钥的)安全管理和存储的HSM。处理器计算机101可促进一个或多个传送计算机(例如,在图2中示出的传送计算机208)与一个或多个授权计算机(例如,在图2中示出的授权计算机212)之间的消息通信和信息跟踪。处理器计算机101还可包括存储、生成和分发密钥的功能。处理器计算机101还可包括提供、分发和验证令牌的功能。在下文相对于图2和3进一步详细描述示例处理器计算机的功能和部件。
在一些实施例中,令牌请求者A 106A和令牌请求者B 106B是以受保护方式使用令牌的实体。令牌请求者(例如,令牌请求者A 106A和令牌请求者B 106B)可请求支付令牌。在一些情况下,令牌请求者为终端用户请求令牌。令牌请求者的一些示例包括数字钱包提供商、支付支持方、商家和物联网(IoT)制造商。替代地或另外,令牌请求者可以是直接请求令牌的消费者。令牌请求者106A和106B可与相应令牌请求者计算机相关联。示例令牌请求者计算机的功能和部件在下文相对于图2和4进一步描述。
令牌请求者计算机(例如,与令牌请求者A 106A或令牌请求者B 106B相关联的计算机)可向处理器计算机101请求令牌。此类请求可包括令牌请求者计算机的唯一标识符(“令牌请求者标识符”)。令牌请求者标识符可例如是标识令牌请求者的一串数字和/或字母。
在一些实施例中,处理器计算机101生成一个或多个令牌请求者主派生密钥(TRMDK)(例如TRMDK-1 104A和TRMDK-2 104B,如图1中所示)。这些TRMDK可使用处理器MDK102生成。还可基于令牌请求者标识符等与相应令牌请求者相关联的信息来生成TRMDK。例如,处理器计算机101可利用处理器MDK 102加密对应于令牌请求者A 106A的令牌请求者标识符,以生成用于令牌请求者A 112的唯一值TRMDK-1 104A。作为另一示例,基于MDK以及表征支付服务提供商的信息,例如收单方ID或商家ID,处理器计算机101可生成用于特定支付服务提供商(例如,商家或收单方)的TRMDK。
在一些实施例中,处理器计算机101将TRMDK-1 104A传输给对应令牌请求者:令牌请求者A 106A。处理器计算机可将TRMDK安全地分发给令牌请求者A 106A。类似地,处理器计算机101可基于对应于令牌请求者B 106B的令牌请求者标识符而生成并传输TRMDK-2104B给令牌请求者B 106B。
图2是根据一些实施例的示出基于令牌请求者的密钥管理的技术的示意图。图2的***包括令牌请求者计算机202、访问装置206、传送计算机208、处理器计算机204、令牌库210和授权计算机212。
图2中的网络计算机可通过例如互联网的分布式网络或通过一系列直接连接、两者的混合或实体之间的任何其它合适的通信方法来通信。此外,在一些实施例中,可存在多个令牌请求者计算机、访问装置、传送计算机、处理器计算机、授权计算机和/或令牌库。
在步骤S1,令牌请求者计算机202可向处理器计算机204请求令牌。此类请求可包括令牌请求者标识符。令牌请求还可包括例如主账号(PAN)的主账户标识符或与账户或其它有价物相关联的其它标识符。
在一些实施例中,处理器计算机204包括或以通信方式耦合到令牌库210。令牌库210是其中安全地存储发放的令牌和对应的PAN的安全服务器。令牌库可由处理器计算机204管理以确保仅根据令牌访问策略准予令牌。令牌库220可包括令牌映射数据库,所述令牌映射数据库维护建立的令牌到真实凭证的映射。令牌库还可维护与令牌相关联的补充数据。令牌库因其中存储和管理的数据映射的敏感性质而可以受到强大的基础物理和逻辑安全性的保护。
根据各种实施例,令牌库220可以是处理器计算机204的一部分。令牌库220可由同一实体提供(和/或管理),或可以是与处理器计算机204相同的环境的一部分。在其它实施例中,令牌库220可以是处理器计算机204或处理器计算机204的个别元件(例如,令牌预配模块312、验证模块316和/或处理模块318,如下文相对于图3所描述)外部的存储装置,并且可由所述处理器计算机或其个别元件访问。
在步骤S2,处理器计算机204响应于接收到的请求而从令牌库210检取令牌。处理器计算机204可例如在令牌库中定位接收到的主账户标识符,并且标识映射到所述主账户标识符的令牌。替代地或另外,处理器计算机可在确定令牌库中没有对应于接收到的主账号的令牌可用后预配新令牌。
在步骤S3,处理器计算机204将令牌传输给令牌请求者计算机202。令牌请求者计算机202从处理器计算机204接收令牌。
在步骤S4,令牌请求者计算机202生成密码。所述密码可例如是TAVV。令牌请求者计算机202可使用如上文相对于图1所描述可能已从处理器计算机204接收的TRMDK来生成TAVV。在下文相对于图5和6进一步详细描述由令牌请求者生成密码的操作。
在步骤S5,令牌请求者计算机202可向访问装置206提供令牌和密码以用于进行交易。令牌请求者计算机202可准备包括所述令牌和所述密码的授权请求消息。还可准备所述授权请求消息以包括特定于交易的信息,例如交易金额、时间戳和/或其类似者。令牌请求者计算机202可将授权请求消息传输给访问装置206。
在一些实施例中,访问装置206是例如POS装置、个人计算机等装置。访问装置206包括与令牌请求者和/或处理器计算机通信的功能。
在步骤S6,访问装置206将授权请求消息传输给传送计算机208。访问装置206可例如通过网络将授权请求消息传输给传送计算机。传送计算机208将授权请求消息(包括令牌、TAVV和其它数据,例如交易金额)转发给处理器计算机204。
在一些实施例中,传送计算机208可管理一个或多个账户。传送计算机208可路由请求,例如授权请求消息、授权响应消息、结算请求或截留请求。作为结算的一部分,传送计算机可借记或贷记账户。传送计算机208可对应于收单方,并且能够转发消息。传送计算机208还可与处理器计算机204通信。这些通信可通过互联网或通过另一合适网络以电子方式进行。这些通信主要呈授权请求、授权响应、结算请求或其它结算消息的形式,但可取决于传送计算机或授权计算机212的需要而呈其它形式。一般来说,传送计算机208可与处理器计算机204通信,以用于将通信路由到其既定接收方,例如,特定授权计算机212。
在步骤S7,处理器计算机204接收并处理授权请求消息。授权请求消息可包括令牌、密码(例如,TAVV)和其它数据,例如交易金额。处理器计算机204可基于用于生成密码的密钥来验证所述密码。处理器计算机204可标识或再生与令牌请求者相关联的TRMDK(例如,基于授权请求消息中接收的令牌请求者标识符)。处理器计算机204可将算法应用于TRMDK以复制用于生成所述密码的密码生成密钥。处理器计算机204和令牌请求者计算机202可关于应将哪种(哪些)算法用于密码操作(例如,TDES、ADS等)而进行协调。处理器计算机204可使用处理器计算机存储的和/或在授权请求消息中接收的信息(例如,令牌请求者标识符)来生成密码生成密钥。
在复制密码生成密钥后,处理器计算机204可使用所述密码生成密钥来验证密码。处理器计算机204可通过使用密码生成密钥解密所述密码并验证解密的密码的内容来验证所述密码(例如,如果所述密码基于令牌和时间戳而生成,则处理器计算机204可确保所述密码中的令牌和时间戳匹配在授权请求消息中接收的令牌和时间戳)。替代地或另外,处理器计算机204可通过使用密码生成密钥生成密码(例如,通过将预定算法应用于预定数据集,例如令牌和时间戳)来验证所述密码。如果生成的密码匹配接收到的密码,则处理器计算机204可验证接收到的密码。如果生成的密码不匹配接收到的密码,则处理器计算机204可避免验证所述密码。处理器计算机204可针对与令牌对应的账户的发行方(例如,与授权计算机212相关联的实体)验证密码。
处理器计算机204可生成密码验证结果(例如,授权计算机212可理解的代码,指示密码是否有效)。基于令牌,处理器计算机204标识对应的主账户标识符。处理器计算机204修改授权请求消息以包括主账户标识符。处理器计算机204可生成包括主账户标识符、密码验证结果和/或密码的修改的授权请求消息。
处理器计算机204可分析授权请求消息,以确定授权计算机212与授权请求消息相关联。对应的授权计算机的此类标识可通过分析账号中对应于银行标识号(BIN)的一部分来执行,所述BIN可用于访问使对应的授权计算机存储成与所述BIN相关联的数据库。
在步骤S9,处理器计算机204将修改的授权请求消息以及主账户标识符和密码验证结果传输给授权计算机212。
在一些实施例中,授权计算机212可基于接收到的修改的授权请求消息中包括的信息来批准或拒绝授权请求。
在一些实施例中,授权计算机212包括接收和分析授权请求消息的功能,以例如标识对应于所述请求中提供的账户信息的已存储记录。接着可创建授权响应消息。此类授权响应消息可包含授权请求消息是否被授权的指示,以及关于请求的授权状态的信息或其它信息。
在一些实施例中,授权计算机/发行方不必验证密码(例如,TAVV),因为处理器已验证所述密码并在授权请求消息中包括验证信息。基于所述验证信息和其它信息,授权计算机决定批准或拒绝交易。
在一些实施例中,基于批准或拒绝授权请求的决定,授权计算机212可准备授权响应消息,所述授权响应消息指示交易应被批准还是被拒绝。授权计算机212可在授权响应消息中包括授权结果(例如,授权请求是被批准还是被拒绝的指示符)。在步骤S10,授权计算机212将授权响应消息传输给处理器计算机204。处理器计算机204接收授权响应消息。
在步骤S11,处理器计算机204可基于在授权响应消息中接收的主账户标识符来从令牌库210检取令牌。处理器计算机204修改授权响应消息以包括令牌作为主账户标识符的替代。
在步骤S12,处理器计算机向访问装置传输授权响应消息,这可通过传送计算机进行。传送计算机208可将授权响应消息转发给访问装置206。
随后,访问装置可接收授权响应消息,并且交易可基于其中的结果而继续或终止。在当天结束时或在任何其它合适的时间段,如所属领域中已知,可在传送计算机208、处理器计算机204和授权计算机212之间执行清算和结算过程。
图3示出根据一些实施例的处理器计算机301的框图。处理器计算机301可包括网络接口302、处理器304、存储器306和计算机可读介质308。
处理器304可实施为一个或多个集成电路(例如,一个或多个单核或多核微处理器和/或微控制器)。处理器304可用于控制处理器计算机301的操作。处理器304可响应于存储在存储器306中的程序代码或计算机可读代码而执行多种程序。处理器304可包括维护多个同时执行的程序或进程的功能。
网络接口302可被配置成连接到一个或多个通信网络以允许处理器计算机301与例如资源提供商计算机、传送计算机、路由管理接口等其它实体通信。例如,与传送计算机的通信可以是直接的、间接的和/或通过应用程序编程接口(API)进行。
可使用任何数目的非易失性存储器(例如,快闪存储器)和易失性存储器(例如,DRAM、SRAM)的任何组合、或任何其它非瞬态存储介质或介质的组合来实施存储器306。在一些实施例中,存储器306还可包括安全元件(例如,HSM),所述安全元件可存储加密密钥、账户标识符和/或令牌和密码。
计算机可读介质308可包括用于存储和/或传输的一个或多个非瞬态介质。作为示例,合适的介质包括随机存取存储器(RAM)、只读存储器(ROM)、例如硬盘驱动器或软盘的磁性介质或例如光盘(CD)或DVD(数字通用光盘)的光学介质、快闪存储器等。计算机可读介质308可以是此类存储或传输装置的任何组合。
计算机可读介质308可包括存储为一系列指令或命令的软件代码。计算机可读介质308包括可由处理器304执行以实施本文中所描述的方法的代码。计算机可读介质308可包括通信模块310、令牌预配模块312、密钥管理模块314、验证模块316和处理模块318。这些模块中的每一个可包括被配置成结合处理器304执行以下描述的功能的代码。
通信模块310可包括使处理器304生成消息、转发消息、重新格式化消息和/或以其它方式与其它实体通信的代码。
令牌预配模块312可包括使处理器304生成和/或提供令牌的代码。令牌预配模块312可被配置成响应于来自令牌请求者的对令牌的请求而生成令牌。在一个实施例中,令牌预配模块312可接收令牌请求,所述令牌请求包括令牌请求者标识符、主账户标识符、到期日期、验证值(例如,卡验证值2(CVV2))和/或其类似者。令牌请求中包括的额外信息可包括例如消费者名称、消费者地址和邮编、请求的令牌类型(例如,支付静态、支付动态、非支付等)、卡验证状态(例如,地址验证服务(AVS)/卡验证值(CVV)校验状态)、移动站国际用户目录号码(MSISDN)、通用唯一标识符(UUID)、国际移动设备身份(IMEI)、操作***(OS)类型/版本和任何其它合适的信息。
在一些实施例中,令牌预配模块312可利用令牌号和例如令牌到期日期等其它信息生成令牌响应。在一个实施例中,令牌预配模块312可验证令牌请求者标识符,确定PAN类型并根据相应令牌BIN范围生成令牌。与处理器计算机301相关联的令牌库可维护PAN、令牌请求者和/或令牌之间的相关性。在一个实施例中,令牌预配模块312可在生成新令牌之前确定令牌库中是否已经存在对应于PAN的令牌。在一些实施例中,如果无法提供令牌,则令牌响应可包括对应的原因代码。令牌预配模块312还可向令牌请求者提供接口以提交批量令牌请求文件(例如,以使得多个主账户标识符可同时被令牌化)。
在一些实施例中,可通过API调用即时生成令牌。例如,当接收到对主账户标识符进行令牌化的请求时,令牌预配模块312可确定令牌范围以分配令牌。例如,令牌范围可基于是发行方在预配令牌(例如,发行方分配的令牌范围)还是处理器计算机301在代表发行方预配令牌(例如,处理器计算机分配的令牌范围)来分配。举例来说,如果处理器计算机301分配的令牌范围包括“442400000-442400250”,则“4424000000005382”可被分配为令牌值。令牌库可存储令牌范围与主账户标识符的关系,并且可记载令牌添加记录。在一些实施例中,令牌预配模块312可在分配令牌之前考虑与主账户标识符范围相关联的令牌范围列表。
在一个实施例中,令牌预配模块312可访问表示可用令牌范围以及不与主账户标识符范围相关联的令牌范围的令牌范围表。令牌预配模块312可访问包括主账户标识符的最小和最大账户范围以及相关联令牌范围的另一表。令牌范围可包括预配的令牌范围。
在一些实施例中,令牌可以算法方式导出。例如,在一些实施例中,使用例如DES、三元DES和AES的加密算法的加密过程可用于加密真实主账户标识符以创建令牌。在其它实施例中,令牌可能无法以算法方式导出。例如,令牌可使用伪随机算法来生成,使得令牌与真实的主账户标识符无关,并且令牌与主账户标识符的关联仅可通过使用查找表提供。
密钥管理模块314可包括使处理器304生成并分发密钥给令牌请求者的代码。密钥管理模块314可包括用于基于处理器MDK和/或对应令牌请求者的标识符来生成令牌请求者密钥的逻辑。密钥管理模块314可包括用于安全地存储一个或多个处理器MDK的逻辑。密钥管理模块314可管理对适当的相应令牌请求者的TRMDK分发。密钥管理模块314还可包括使处理器304执行密钥交换和轮作过程的代码。
验证模块316可包括使处理器304验证密码或令牌的代码。验证密码或令牌可包括以下一项或多项:验证存储的记录、验证数字签名和或处理接收到的验证数据。
在一些实施例中,验证模块316可包括使处理器304通过解密消息中包括的密码来确认授权请求消息的真实性的逻辑。验证模块316可使用TRMDK和其它数据来复制密码生成密钥,并使用所述密码生成密钥来解密所述密码。在基于解密的密码执行验证(例如通过将解密的密码的内容与接收的与密码相关联的信息进行比较)后,验证模块316可重新加密所述密码。替代地或另外,验证模块316可使用密码生成密钥来生成新密码(例如,基于用于生成原始密码的数据),并比较这两个密码以验证匹配性。验证模块316可包括用于执行加密和/或解密的加密模型,例如特定于发行方的密钥或商家-收单方加密模型。所述验证模块可包括密钥和算法(例如,DES、TDES、AES),所述密钥和算法可结合处理器304用以生成特定于交易的密码并解密此类密码。验证模块可将通过解密所述密码获得的信息与授权请求消息中接收的令牌和/或其它数据进行比较。
验证模块316可被配置成执行消费者验证和认证过程,并且基于所述验证和认证过程的结果来验证令牌。例如,验证模块316可通过配置的认证方案来执行消费者认证和验证。在一个实施例中,认证方案可包括基于存储在与支付处理网络相关联的数据库中的客户信息来验证支付账号、密码和到期日期。在一个实施例中,认证方案可包括由授权计算机(例如,图2的授权计算机212)通过消费者在线银行***凭证来直接验证消费者。
处理模块318可包括使处理器304处理授权请求和响应的代码。处理授权请求和响应可包括标识合适的授权计算机或传送计算机,以向其转发此类消息。处理模块318还可对此类消息去令牌化或重新令牌化。例如,处理模块318可标识映射到令牌库中存储的令牌的主账号。
处理模块318可包括处理器304可执行的代码,以处理包括令牌的授权请求消息。在一些实施例中,处理模块318可使用与交易相关联的各种数据来批准或拒绝所述交易,所述各种数据例如与令牌相关联的密码、令牌域、令牌号、令牌时间戳、令牌到期日期、令牌保障级别、针对用于进行所述交易的账户丢失、失窃或被破解的判定,或任何其它合适的数据。可从交易的授权请求消息的内容、令牌注册表数据库或任何其它合适的来源确定上述数据。
在一个实施例中,处理模块318结合处理器304运作可为令牌交换提供支持。例如,处理模块318可修改授权请求消息以用主账户标识符替换令牌,并将修改的授权请求消息发送到授权计算机212。处理模块318还可恢复从授权计算机212接收的授权响应消息中的令牌,之后将其转发给传送计算机208。在一些实施例中,在可传输给参与收单方的授权日志数据库中可包含授权记录。授权日志数据库中所包含的数据可呈多种文件格式。
在一些实施例中,处理模块318还可包括用于认证操作的代码。处理模块318可包括可执行到处理器304以应用一个或多个认证方法来认证令牌交易的代码。在一个实施例中,处理模块318可包括用于使用现有认证方案(例如,将个人信息输入小键盘)认证QRTM代码令牌交易的代码。
图4示出根据一些实施例的令牌请求者计算机401的框图。令牌请求者计算机401可包括网络接口402、处理器404、存储器406和计算机可读介质408。
处理器404、网络接口402和存储器406可基本上分别类似于上文相对于图3描述的处理器304、网络接口302和存储器306。
计算机可读介质408可包括用于存储和/或传输的一个或多个非瞬态介质。作为示例,合适的介质包括随机存取存储器(RAM)、只读存储器(ROM)、例如硬盘驱动器或软盘的磁性介质或例如光盘(CD)或DVD(数字通用光盘)的光学介质、快闪存储器等。计算机可读介质408可以是此类存储或传输装置的任何组合。
计算机可读介质408可包括存储为一系列指令或命令的软件代码。计算机可读介质408包括可由处理器404执行以实施本文中所描述的方法的代码。计算机可读介质408可包括通信模块410、密钥管理模块412、加密模块414和访问管理模块416。这些模块中的每一个可包括被配置成结合处理器404执行以下描述的功能的代码。
通信模块410可包括使处理器404生成消息、转发消息、重新格式化消息和/或以其它方式与其它实体通信的代码。
密钥管理模块412可管理密钥的存储和生成。密钥管理模块412可存储可结合加密算法使用的加密密钥。任何对应的密钥对中的其它密钥可由密钥管理模块314存储在处理器计算机301中。在一些实施例中,令牌请求者计算机401和处理器计算机301可存储密码密钥对中的相应密码密钥。密钥管理模块412可包括使处理器304生成并分发密钥给令牌请求者的代码。密钥管理模块412可包括用于基于令牌请求者主密钥生成密码生成密钥的逻辑。
在本发明的实施例中,加密模块414可包括用于对数据进行加密的任何合适的加密算法。合适的数据加密算法可包括DES、TDES、AES等。加密模块414可利用对称或不对称加密技术来加密和/或验证数据。加密模块414可将由密钥管理模块412管理的加密密钥用于加密数据。加密模块414可生成密码(例如,交易密码或TAVV)。
访问管理模块416可包括使处理器404管理对资源的访问的代码。访问模块可例如包括用于生成包括令牌、密码、交易详情和/或其类似者的授权请求消息的代码。替代地或另外,访问管理模块416可包括用于(例如,从消费者操作的用户装置)接收授权请求消息的代码,并且标识合适的访问装置(例如,206)以向其传输授权请求消息。访问管理模块416还可包括用于分析接收到的授权响应消息的代码。
图5示出由令牌请求者使用唯一令牌请求者主密钥(TRMDK)生成密码(例如,TAVV)的示例操作500的概观。所述TRMDK对于令牌请求者是唯一的。
在502,令牌请求者计算机可从处理器计算机接收TRMDK。处理器计算机可使用预先建立的密钥管理过程将TRMDK传输给令牌请求者计算机。令牌请求者计算机可存储TRMDK。
在504,令牌请求者计算机可将算法(例如,TDES 504)应用于TRMDK和输入数据503。输入数据503可包括例如令牌请求者标识符、令牌、时间戳和/或其类似者的数据。输出可以是密码生成密钥(例如,唯一派生密钥或UDK 506)。令牌请求者可使用TDES加密来生成UDK。或者,令牌请求者可利用AES或DES等其它密码算法来生成UDK。
在508,令牌请求者计算机可将算法(例如,TDES 508)应用于密码生成密钥(例如,UDK 506)和输入数据509。输入数据509可包括例如令牌请求者标识符、令牌、主账号、到期日期、位置、时间戳和/或其类似者的数据。输出可以是密码(例如,TAVV 510)。令牌请求者计算机可使用TDES来生成TAVV。或者,令牌请求者可利用ADS或DES等其它密码算法来生成TAVV。
图6是示出根据一些实施例的方法600的流程图。方法600可由图2和3所示的处理器计算机执行。
在602,处理器计算机针对令牌请求者生成第一主密钥(例如,TRMDK)。处理器计算机基于第二主密钥和令牌请求者的标识符来生成所述第一主密钥。第二主密钥可以是由处理器计算机安全地管理的处理器MDK。
处理器计算机可使用派生函数(derivation function)来生成第一主密钥。处理器计算机可用第二主密钥(例如,处理器MDK)加密令牌请求者标识符等值,以生成令牌请求者的唯一主密钥。
在604,处理器计算机将第一主密钥传输给令牌请求者。处理器计算机可通过网络将第一主密钥传输给令牌请求者。处理器计算机可存取措施以确保第一主密钥被安全地传输。
在606,处理器计算机接收令牌请求。可在来自令牌请求者计算机的消息中接收到所述令牌请求。令牌请求可包括例如主账户标识符、令牌请求者标识符、时间戳和/或其类似者的信息。
处理器计算机可基于接收到的信息而检取或生成令牌。例如,处理器计算机可基于主账户标识符和令牌请求者标识符来生成令牌。替代地或另外,处理器计算机可从令牌库检取令牌。
在608,处理器计算机将令牌传输给令牌请求者计算机。处理器计算机可通过网络将令牌安全地传输给令牌请求者计算机。
随后,令牌请求者计算机接收令牌。令牌请求者计算机使用第一主密钥和令牌来生成密码。在一些实施例中,令牌请求者计算机在生成密码之前生成密码生成密钥(UDK)。令牌请求者计算机可将第一主密钥用于使用预定算法对某个值进行加密。例如,令牌请求者计算机可将TDES用于使用第一主密钥对令牌请求者标识符进行加密。替代地或另外,可使用AES和DES等算法。
在一些实施例中,令牌请求者计算机使用UDK生成密码。令牌请求者计算机可将密码生成密钥用于使用预定算法对某个值进行加密。例如,令牌请求者计算机可将TDES用于使用密码生成密钥对令牌进行加密。替代地或另外,可使用例如AES和DES的算法。还可基于对于令牌请求者是唯一的信息来生成密码,所述信息例如时间戳、共享秘密、位置数据和/或其类似者。
在一些实施例中,令牌请求者计算机准备授权请求消息。所述授权请求消息可包括令牌和密码。所述授权请求消息还可包括交易信息,例如交易金额、商家标识符和/或其类似者。
在610,处理器计算机从令牌请求者计算机接收授权请求消息。所述授权请求消息包括令牌和密码。
在612,处理器计算机验证密码。处理器计算机可对密码进行解密。处理器计算机可标识密码中的信息(例如,令牌请求者标识符、交易数据等),并将所述信息与对应的期望值进行比较。例如,处理器计算机可确定授权请求中的交易金额是否匹配密码中的交易金额。处理器计算机还可将令牌与授权请求消息中的其它信息(例如,其中使用所述令牌的域或呈现模式)进行比较以施行域限制。
在一些实施例中,如果密码和/或令牌得到验证,则处理器计算机对授权请求消息进行去令牌化并继续交易,如上文相对于图1所描述。如果密码和/或令牌未被验证,则处理器计算机可终止交易。或者,处理器计算机可继续向授权计算机发送修改的授权请求消息,指示令牌未被验证。
各种方法可用于生成TAVV等密码并且时延减小。可能有若干选项,包括不共享密钥、共享如上文所描述的TRMDK、共享使用受限密钥、共享不对称密钥和完善的前向安全性(perfect forward secrecy)。
作为第一示例,不与令牌请求者共享密钥。可通过预获取令牌、后获取令牌和/或使用多线程处理来减小时延。这可减小约700毫秒(ms)到约150ms的TAVV时延。
替代地或另外,可通过减小令牌请求者与生成密钥的服务器之间的物理距离来减小时延。处理器计算机可在位于令牌请求者的数据中心中的HSM服务器中执行密码生成。处理器可管理HSM服务器,但使HSM服务器位于令牌请求者的数据中心中以减少时延。
作为另一选项,处理器计算机可基于每个令牌请求者共享新的TRMDK(例如上文相对于图5和6所描述)。可从单个MDK生成TRMDK。令牌请求者可从TRMDK导出每个令牌UDK,并从TRMDK生成每个交易TAVV。处理器计算机随后可验证TAVV并将结果传给发行方。
作为TRMDK技术的变型,处理器计算机还可基于每个令牌请求者来生成和管理单独的MDK。例如,处理器计算机存储多个MDK,包括主MDK、用于零售商1的MDK(通过主MDK生成)以及用于零售商2的MDK(通过主MDK生成)。处理器计算机使用用于零售商1的MDK生成零售商1TRMDK。处理器计算机将零售商1TRMDK发送给零售商1。处理器计算机使用用于零售商2的MDK生成零售商2TRMDK。处理器计算机将零售商2TRMDK发送给零售商1。
作为TRMDK技术的另一变型,TRMDK可能在使用上受限,并被称为令牌请求者受限使用密钥(TRLUK)。可从单个MDK生成TRLUK。处理器计算机可基于每个令牌请求者生成TRLUK,并将TRLUK分发给相应令牌请求者。TRLUK是受限使用密钥,将在一段时间或特定的交易次数后过期。因此,令牌请求者将需要定期请求新的TRLUK。
作为另一示例,***可使用不对称密钥来生成TAVV。每个令牌请求者可被分配相应的私/公钥对,并保守私钥秘密。可基于不对称私/公钥对来限定和开发新的密码架构。可使用存储在令牌请求者处的私钥来生成TAVV。处理器计算机可验证TAVV,而这一方法还允许有可能进行发行方验证。处理器计算机可使用对应的公钥来验证TAVV/密码。替代地或另外,处理器计算机可配置证书颁发机构以证明分发给不同合作伙伴的各种公钥。可给予令牌请求者证书。在任一情况下,令牌请求者能够在无需访问应用程序编程接口(API)的情况下使用私钥来生成TAVV。
使用不对称密钥会产生(例如,在字节上)远大于标准TAVV的TAVV。因此,相比于传统上用于传输使用对称密钥生成的TAVV的数据字段,可使用不同的数据字段传输使用不对称密钥生成的TAVV。例如,可在字段34中传输用于授权消息的TAVV。
作为又一示例,***使用完善的前向安全性。完善的前向安全性是一种使用仅既定接收方可读取的公钥/私钥来保护数据的方法。密钥派生函数用于生成短期密钥。用密钥加密数据。然后利用接收方的已知公钥来加密所述密钥。加密的数据和随机加密密钥可通过公钥共享、包装。只有接收方可使用其私钥检取加密密钥,然后用随机密钥解密数据。
实施例可提供数个优势。例如,与获得TAVV相关联的时延可减小约700ms到约100ms。在一些现有***中,令牌请求者必须来回发送多个请求消息到发行方或令牌服务提供商,以便获得TAVV,然后继续使用令牌授权交易。利用本文中所描述的技术,令牌请求者可生成用于交易的TAVV而不存在与向另一实体请求TAVV相关联的显著时延。这减少了整个***中所需的处理量和网络传输量,因为本文中所描述的技术避免了需要令牌请求者从远程服务器获得TAVV。
实施例可提供数个额外优势。处理器计算机在安全元件中维持对MDK的控制,从而保护敏感的MDK。处理器计算机还维持对TRMDK到适当实体的分配的控制。因此,安全得以保证,从而防止密钥的欺诈性使用。此外,通过代表发行方管理密钥和验证密码,处理器计算机减少了发行方所需的处理和消息接发量。
以上描述是说明性的而不是限制性的。在本领域技术人员阅读了本公开之后,本发明的许多变体对于他们会变得显而易见。因此,本发明的范围不应该参考上面的描述来确定,而是应该参考待决的权利要求及其完整范围或等同物来确定。
在不脱离本发明的范围的情况下,任何实施例的一个或多个特征可以与任何其它实施例的一个或多个特征组合。
除非明确指示有相反的意思,否则“一个”、“一”或“所述”的叙述旨在表示“一个或多个”。
上文提及的所有专利、专利申请、公开案和描述都出于所有目的以全文引用的方式并入。并非承认它们是现有技术。

Claims (22)

1.一种用于密钥管理的方法,所述方法包括:
由处理器计算机针对令牌请求者生成第一主密钥,所述第一主密钥作为密码功能的输出而生成,所述密码功能处理由所述处理器计算机管理的第二主密钥和所述令牌请求者的标识符;
由所述处理器计算机向对应于所述令牌请求者的令牌请求者计算机传输所述第一主密钥;
由所述处理器计算机从所述令牌请求者计算机接收对令牌的请求;
响应于接收到对所述令牌的所述请求,由所述处理器计算机向所述令牌请求者计算机传输所述令牌;
由所述处理器计算机从所述令牌请求者计算机接收授权请求消息,所述授权请求消息包括所述令牌和由所述令牌请求者计算机使用所述第一主密钥和所述令牌生成的密码;
由所述处理器计算机验证所述密码;
由所述处理器计算机标识对应于所述令牌的主账户标识符;
由所述处理器计算机生成修改的授权请求消息,所述修改的授权请求消息包括对所述密码的验证的指示和所述主账户标识符;以及
由所述处理器计算机向授权计算机传输所述修改的授权请求消息。
2.根据权利要求1所述的方法,其中所述令牌请求者计算机使用所述第一主密钥生成密码生成密钥,并且所述密码是使用所述密码生成密钥和所述令牌而生成的。
3.根据权利要求1所述的方法,还包括由所述处理器计算机从所述授权计算机接收授权响应消息,所述授权响应消息包括由所述授权计算机基于所述修改的授权请求消息生成的授权结果。
4.根据权利要求1所述的方法,其中所述令牌域受限。
5.根据权利要求1所述的方法,其中所述第二主密钥存储在所述处理器计算机中的硬件安全模块(HSM)中。
6.根据权利要求1所述的方法,其中所述第一主密钥使用受限。
7.一种处理器计算机,包括:
存储器;
处理器;
包括指令的非瞬态计算机可读介质,所述指令在由所述处理器执行时执行以下步骤:
针对令牌请求者生成第一主密钥,所述第一主密钥作为密码功能的输出而生成,所述密码功能处理由所述处理器计算机管理的第二主密钥和所述令牌请求者的标识符;
向对应于所述令牌请求者的令牌请求者计算机传输所述第一主密钥;
从所述令牌请求者计算机接收对令牌的请求;
响应于接收到对所述令牌的所述请求,向所述令牌请求者计算机传输所述令牌;
从所述令牌请求者计算机接收授权请求消息,所述授权请求消息包括所述令牌和由所述令牌请求者计算机使用所述第一主密钥和所述令牌生成的密码;
由所述处理器计算机验证所述密码;
由所述处理器计算机标识对应于所述令牌的主账户标识符;
由所述处理器计算机生成修改的授权请求消息,所述修改的授权请求消息包括对所述密码的验证的指示和所述主账户标识符;以及
由所述处理器计算机向授权计算机传输所述修改的授权请求消息。
8.根据权利要求7所述的处理器计算机,其中由所述令牌请求者生成所述密码包括使用所述第一主密钥生成密码生成密钥,并且所述密码是使用所述密码生成密钥和所述令牌而生成的。
9.根据权利要求7所述的处理器计算机,所述步骤还包括从所述授权计算机接收授权响应消息,所述授权响应消息包括由所述授权计算机基于所述修改的授权请求消息生成的授权结果。
10.根据权利要求7所述的处理器计算机,还包括存储所述第二主密钥的硬件安全模块(HSM)。
11.根据权利要求7所述的处理器计算机,其中所述令牌域受限。
12.根据权利要求7所述的处理器计算机,其中所述第一主密钥使用受限。
13.一种用于密钥管理的方法,所述方法包括:
由令牌请求者计算机从处理网络中的处理器计算机接收第一主密钥和令牌,所述第一主密钥已经作为密码功能的输出而生成,所述密码功能处理由所述处理器计算机管理的第二主密钥和所述令牌请求者的标识符;
由所述令牌请求者计算机使用所述第一主密钥生成密码生成密钥;
由所述令牌请求者计算机使用所述密码生成密钥和所述令牌来生成密码;
由所述令牌请求者计算机生成包括所述令牌和所述密码的授权请求消息;以及
由所述令牌请求者计算机向所述处理器计算机传输所述授权请求消息,由此使所述处理器计算机验证所述密码,标识对应于所述令牌的主账户标识符,并且生成修改的授权请求消息,所述修改的授权请求消息包括对所述密码的验证的指示和所述主账户标识符。
14.根据权利要求13所述的方法,还包括:
在接收到所述第一主密钥之后,由所述令牌请求者计算机向所述处理器计算机传输对所述令牌的请求,其中所述令牌响应于传输对所述令牌的所述请求而被接收。
15.根据权利要求13所述的方法,其中所述第一主密钥由所述处理器计算机使用第二主密钥生成。
16.根据权利要求13所述的方法,其中所述令牌域受限。
17.根据权利要求13所述的方法,其中所述第一主密钥使用受限。
18.一种令牌请求者计算机,包括:
存储器;
处理器;
包括指令的非瞬态计算机可读介质,所述指令在由所述处理器执行时执行以下步骤:
从处理器计算机接收第一主密钥和令牌,所述第一主密钥已经作为密码功能的输出而生成,所述密码功能处理由所述处理器计算机管理的第二主密钥和所述令牌请求者的标识符;
使用所述第一主密钥生成密码生成密钥;
使用所述密码生成密钥和所述令牌来生成密码;
生成包括所述令牌和所述密码的授权请求消息;以及
向所述处理器计算机传输所述授权请求消息,由此使所述处理器计算机验证所述密码,标识对应于所述令牌的主账户标识符,并且生成修改的授权请求消息,所述修改的授权请求消息包括对所述密码的验证的指示和所述主账户标识符。
19.根据权利要求18所述的令牌请求者计算机,所述步骤还包括:
在接收到所述第一主密钥之后,由所述令牌请求者计算机向所述处理器计算机传输对所述令牌的请求,其中所述令牌响应于传输对所述令牌的所述请求而被接收。
20.根据权利要求18所述的令牌请求者计算机,其中所述第一主密钥由所述处理器计算机使用第二主密钥生成。
21.根据权利要求18所述的令牌请求者计算机,其中所述令牌域受限。
22.根据权利要求18所述的令牌请求者计算机,其中所述密码生成密钥使用受限。
CN201980053376.XA 2018-08-13 2019-08-13 用于生成密码以进行令牌交互的令牌密钥 Active CN112567682B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862718332P 2018-08-13 2018-08-13
US62/718,332 2018-08-13
PCT/US2019/046307 WO2020036931A1 (en) 2018-08-13 2019-08-13 Token keys to generate cryptograms for token interactions

Publications (2)

Publication Number Publication Date
CN112567682A CN112567682A (zh) 2021-03-26
CN112567682B true CN112567682B (zh) 2024-05-28

Family

ID=69525775

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980053376.XA Active CN112567682B (zh) 2018-08-13 2019-08-13 用于生成密码以进行令牌交互的令牌密钥

Country Status (5)

Country Link
US (1) US11777733B2 (zh)
EP (1) EP3837804A4 (zh)
CN (1) CN112567682B (zh)
SG (1) SG11202101351VA (zh)
WO (1) WO2020036931A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11206131B1 (en) * 2019-05-17 2021-12-21 Wells Fargo Bank, N.A. Post quantum unique key per token system
US20220029831A1 (en) * 2020-03-05 2022-01-27 Lg Electronics Inc. Device to device authentication method using blockchain
US11687930B2 (en) * 2021-01-28 2023-06-27 Capital One Services, Llc Systems and methods for authentication of access tokens

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103269266A (zh) * 2013-04-27 2013-08-28 北京宏基恒信科技有限责任公司 动态口令的安全认证方法和***
CN103312515A (zh) * 2013-06-21 2013-09-18 百度在线网络技术(北京)有限公司 授权令牌的生成方法、生成装置、认证方法和认证***
CN104395917A (zh) * 2012-05-21 2015-03-04 金主汉 用于将移动通信终端用作支付终端的应用程序、应用服务提供商***及方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7930554B2 (en) * 2007-05-31 2011-04-19 Vasco Data Security,Inc. Remote authentication and transaction signatures
US9792593B2 (en) * 2011-11-23 2017-10-17 The Toronto-Dominion Bank System and method for processing an online transaction request
KR102293822B1 (ko) * 2013-12-19 2021-08-26 비자 인터네셔널 서비스 어소시에이션 클라우드-기반 트랜잭션 방법 및 시스템
US9922322B2 (en) * 2013-12-19 2018-03-20 Visa International Service Association Cloud-based transactions with magnetic secure transmission
US20220019995A1 (en) * 2014-02-18 2022-01-20 Visa International Service Association Limited-use keys and cryptograms
CA2884611C (en) * 2014-03-12 2024-04-16 Scott Lawson Hambleton System and method for authorizing a debit transaction without user authentication
AU2015264124B2 (en) 2014-05-21 2019-05-09 Visa International Service Association Offline authentication
US11257074B2 (en) * 2014-09-29 2022-02-22 Visa International Service Association Transaction risk based token
US10015147B2 (en) * 2014-10-22 2018-07-03 Visa International Service Association Token enrollment system and method
US9525549B2 (en) * 2014-12-29 2016-12-20 Vasco Data Security, Inc. Method and apparatus for securing a mobile application
US10187363B2 (en) 2014-12-31 2019-01-22 Visa International Service Association Hybrid integration of software development kit with secure execution environment
US10282726B2 (en) * 2016-03-03 2019-05-07 Visa International Service Association Systems and methods for domain restriction with remote authentication
US20180288031A1 (en) * 2017-03-31 2018-10-04 Ca, Inc. Collection point anchored multi-property identity based application specific token origination
CN112075051A (zh) * 2018-03-02 2020-12-11 日东电工株式会社 用于保护计算机之间的数据通信的***和方法
US10771245B2 (en) * 2018-04-20 2020-09-08 Mastercard International Incorporated Systems and methods for use in computer network security

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104395917A (zh) * 2012-05-21 2015-03-04 金主汉 用于将移动通信终端用作支付终端的应用程序、应用服务提供商***及方法
CN103269266A (zh) * 2013-04-27 2013-08-28 北京宏基恒信科技有限责任公司 动态口令的安全认证方法和***
CN103312515A (zh) * 2013-06-21 2013-09-18 百度在线网络技术(北京)有限公司 授权令牌的生成方法、生成装置、认证方法和认证***

Also Published As

Publication number Publication date
WO2020036931A1 (en) 2020-02-20
EP3837804A1 (en) 2021-06-23
US11777733B2 (en) 2023-10-03
EP3837804A4 (en) 2021-09-15
CN112567682A (zh) 2021-03-26
SG11202101351VA (en) 2021-03-30
US20210176062A1 (en) 2021-06-10

Similar Documents

Publication Publication Date Title
US10785287B2 (en) Secure binding of software application to a communication device
US11240219B2 (en) Hybrid integration of software development kit with secure execution environment
US11863545B2 (en) Secure token distribution
US11876905B2 (en) System and method for generating trust tokens
KR102552606B1 (ko) 보안 요소를 이용한 보안 원격 지불 거래 처리
US11824998B2 (en) System and method for software module binding
CN112567682B (zh) 用于生成密码以进行令牌交互的令牌密钥

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
GR01 Patent grant