CN114270780A - 网关不可知令牌化 - Google Patents

网关不可知令牌化 Download PDF

Info

Publication number
CN114270780A
CN114270780A CN202080059538.3A CN202080059538A CN114270780A CN 114270780 A CN114270780 A CN 114270780A CN 202080059538 A CN202080059538 A CN 202080059538A CN 114270780 A CN114270780 A CN 114270780A
Authority
CN
China
Prior art keywords
computer
gateway
token
ciphertext
edge
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
Application number
CN202080059538.3A
Other languages
English (en)
Inventor
S·盖达姆
P·穆克赫吉
G·沃森
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 CN114270780A publication Critical patent/CN114270780A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0464Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload using hop-by-hop encryption, i.e. wherein an intermediate entity decrypts the information and re-encrypts it before forwarding it
    • 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/0822Key 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) using key encryption key
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • G06Q20/145Payments according to the detected use or quantity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/385Payment protocols; Details thereof using an alias or single-use codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • 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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, 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/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0471Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding

Abstract

公开了用于网关不可知令牌化的方法和系统。网关不可知令牌化使得资源提供商能够经由任何适当的网关计算机快速、安全并且高效地路由令牌以进行授权。作为与用户的交互的一部分,资源提供商可以将令牌发送给边缘计算机。然后,所述边缘计算机可以将所述令牌转发到网关计算机。所述网关计算机可以标识包括与所述令牌相关联的两个密文的数据项。所述边缘计算机和网关计算机可以共同对所述两个密文进行解密以获得凭证。然后,所述网关计算机可以将所述凭证转发到授权实体计算机。然后,所述授权实体计算机可以确定是否对所述交互授权。

Description

网关不可知令牌化
相关申请交叉引用
本申请是2019年8月30日提交的第62/894,057号美国临时申请的PCT申请并且要求所述美国临时申请的申请日的权益,所述美国临时申请以全文引用的方式并入本文中。
背景技术
资源交换系统的常规模型可以包括用户、资源提供商和授权实体。用户可以是在资源提供商(例如,政府或企业)与用户之间的交互期间需要资源提供商所提供的资源的个人或其它实体。授权实体可以是决定是否对交互授权,从而实现将资源转移给用户的实体。作为示例,授权实体可以是政府机构或维护用户账户的银行。在一些情况下,资源交换系统可以是计算机化的,即,用户、资源提供商和授权实体不直接交互,这些实体可以分别经由用户装置、资源提供商计算机和授权实体计算机通过计算机网络进行通信。
在资源交换交互期间,用户可以使用凭证对自己进行认证。凭证向其它实体(特别是授权实体计算机)指示用户是他们声称的用户。用户可以向资源提供商提供凭证,所述资源提供商又可以将凭证转发到授权实体。授权实体计算机可以评估凭证(例如,验证其真实性)并对交互授权。在交互被授权后,资源提供商可以将资源提供给用户。
这些资源交换系统,无论是计算机化还是其它形式,都容易遭受凭证欺诈(例如,身份欺诈)。如果欺诈者获取用户的凭证,则欺诈者可能冒充用户从资源提供商获取资源。作为示例,欺诈者可能使用与有声望的科学家相关联的凭证从政府机构获取受管控的化学物质。作为另一示例,欺诈者可能使用与消费者相关联的凭证,以用消费者的钱从商家资源购买商品。
现代计算机化资源交换系统由于其规模和复杂性而更加复杂。每秒可能有大量的用户装置、资源提供商计算机和授权实体计算机参与大量的资源交换交互。现代计算机化资源交换系统可以另外包括网关计算机,其为用于在资源提供商计算机、授权实体计算机或计算机化资源交换系统中的其它计算机之间路由消息的计算机。资源提供商计算机可以将凭证路由到较少数量的网关计算机,而不是标识凭证并将其路由到大量授权实体计算机。然后,网关计算机可以标识与所述特定凭证相关联的授权实体计算机,并将凭证路由到所述授权实体计算机。因此,网关计算机减轻了资源提供商计算机的路由负担。
计算机化资源交换系统的规模和复杂性使得很容易遭受欺诈,尤其是在凭证交换方面。凭证可以从用户装置传递到资源提供商计算机、网关计算机、通过任何数量的网络计算机并且最终到达授权实体计算机。在此过程中的每个阶段,执行中间人攻击(或任何其它可行攻击)的欺诈者可能拦截凭证并存储所述凭证以供以后的欺诈使用。
为了缓解这种情况,一些计算机化资源交换系统使用令牌。令牌可以包括凭证的替代。在交互期间,用户可以向资源提供商计算机提供令牌,而不是提供凭证(例如,个人账号(PAN)、社会保障号(SSN)等)。令牌可以被转发到令牌服务器计算机,所述令牌服务器计算机随后可以对令牌进行去令牌化,检取令牌所替代的凭证。然后,可以将凭证发送给授权实体计算机,所述授权实体计算机然后可以对交互授权。像传统凭证一样,令牌可能被欺诈者盗窃和滥用。然而,更换令牌通常比更换令牌对应的凭证更容易。
虽然令牌系统确实减轻了与计算机化资源交换相关联的一些风险,但它们带来了与路由、延迟和集成开销相关的额外问题。如上所述,在使用基于令牌的计算机化资源交换系统的情况下,在每次交互期间,网关计算机必须与令牌服务器计算机通信以对凭证进行去令牌化。这会增加凭证到达授权实体计算机以供授权实体计算机对交互授权所花费的时间量。同样,资源提供商计算机通常限于经由单个网关计算机处理交互。如果单个网关计算机离线,则资源提供商计算机无法处理交互,且资源提供商无法将资源提供给用户。实施例单独地以及共同地解决了这些和其它问题。
发明内容
公开了用于执行网关不可知令牌化的方法和系统。网关不可知令牌化可以指在资源交换交互(例如,商家与客户之间的销售)期间,资源提供商计算机可以将令牌或凭证路由到授权实体计算机的过程。网关不可知令牌化允许资源提供商计算机经由数个网关计算机中的任何网关计算机将对应于凭证(例如,支付账号或PAN)的令牌路由到授权实体,而不限于单个网关计算机。此外,即使网关计算机在路由过程期间变得无响应(例如,崩溃),网关不可知令牌化也允许完成路由过程。另外,网关不可知令牌化提高了授权速度,因为与常规资源交换系统不同,网关不可知系统不需要将令牌路由到令牌服务器以进行去令牌化。此外,网关不可知令牌化提供了敏感凭证(例如,PAN、SSN、病历号(MRN)等)的安全性和机密性。
在网关不可知令牌化系统中,在资源交换期间,边缘计算机可以从资源提供商计算机接收令牌。作为示例,资源提供商可以是在线商家,并且令牌可以是商家在其服务器上存储的凭证的替代。边缘计算机可以指“边缘”或“云”计算网络中的计算机。边缘计算机通常与内容分发网络服务相关联。例如,边缘计算机可以充当“反向代理”,充当计算机网络与互联网之间的缓冲器,并且可用于DDoS缓解,以及其它功能。
在从资源提供商接收令牌之后,边缘计算机可以将令牌转发到网关计算机。网关计算机可以标识数据项,包括数据库或令牌库中与令牌相关联的两个密文。第一密文可以包括加密的凭证(例如,PAN)。第二密文可以包括加密的密码密钥。可使用来自第二密文的密码密钥对第一密文进行解密。使用被称为“代理重新加密”的过程,边缘计算机和网关计算机可以一起工作以对第二密文进行重新加密,对第二密文进行解密,然后对第一密文进行解密。然后,网关计算机可以将解密的第一密文(即,凭证)发送给授权实体计算机以进行授权。
作为示例,在线商家可以向客户提供服务,例如基于订阅的视频流服务。商家可以存储令牌,而不是将客户的凭证存储在所述商家的服务器上。当要向客户收取服务费用时(例如,在月初),商家可以经由边缘计算机将令牌发送给网关计算机(例如CyberSource服务器)以进行处理。网关计算机可以标识数据项,包括令牌库中与令牌相关联的两个密文。然后,网关计算机和边缘计算机可以一起工作以对第一密文和第二密文进行解密以检取与客户相关联的PAN。然后,网关计算机可以将PAN发送给发行方银行(授权实体计算机)以进行支付授权。然后,发行方银行可以批准支付并向商家支付,并且客户可以继续使用服务。
网关不可知令牌化还可以涵盖与例如以下操作相关联的其它方法和系统:在所述系统用于路由令牌、对令牌进行去令牌化或对资源交换交互授权之前生成并预配令牌、密文和密码密钥。
一个实施例涉及一种方法,包括:由网关计算机在资源提供商计算机与用户装置之间的交互期间,从边缘计算机接收令牌,其中资源提供商计算机将令牌发送给边缘计算机;由网关计算机确定数据项,所述数据项包括数据库中与令牌相关联的第一密文和第二密文;由网关计算机将第二密文发送给边缘计算机,其中边缘计算机通过对第二密文进行重新加密来产生重新加密的第二密文;由网关计算机从边缘计算机接收重新加密的第二密文;由网关计算机用网关计算机私钥对重新加密的第二密文进行解密以获得密码密钥;由网关计算机用密码密钥对第一密文进行解密以获得凭证;以及由网关计算机将凭证发送给授权实体计算机,其中授权实体计算机确定是否对交互授权。
另一实施例涉及一种网关计算机,包括:处理器;以及耦合到处理器的非瞬态计算机可读介质,所述非瞬态计算机可读介质包括可由处理器执行以实施上述方法的代码。
另一实施例涉及一种方法,包括:作为资源提供商计算机与用户装置之间的交互的一部分,由边缘计算机从资源提供商计算机接收令牌;由边缘计算机基于令牌标识网关计算机;由边缘计算机将令牌发送给网关计算机,其中网关计算机标识数据项,所述数据项包括数据库中对应于令牌的第一密文和第二密文;由边缘计算机从网关计算机接收第二密文;由边缘计算机通过使用重新加密密钥对第二密文进行重新加密来产生重新加密的第二密文;以及由边缘计算机将重新加密的第二密文发送给网关计算机,其中网关计算机通过使用网关计算机私钥对重新加密的第二密文进行解密来产生密码密钥,通过使用密码密钥对第一密文进行解密来产生凭证,并将凭证发送给授权实体计算机,其中授权实体计算机确定是否对交互授权。
术语
“服务器计算机”可以包括功能强大的计算机或计算机群集。举例来说,服务器计算机可以是大型主机、小型计算机集群或充当单元的一组服务器。作为示例,服务器计算机可以是耦合到网络服务器的数据库服务器。服务器计算机可包括一个或多个计算设备,并且可使用各种计算结构、布置和编译中的任一种来服务来自一个或多个客户端计算机的请求。
“存储器”可以包括可存储电子数据的任何合适的一个或多个装置。合适的存储器可以包括非瞬态计算机可读介质,其存储可由处理器执行以实施所要方法的指令。存储器的示例可包括一个或多个存储器芯片、磁盘驱动器等。此类存储器可使用任何合适的电气、光学和/或磁性操作模式来操作。
“处理器”可以包括任何合适的一个或多个数据计算装置。处理器可以包括一起工作以实现所要功能的一个或多个微处理器。处理器可以包括CPU,所述CPU包括至少一个高速数据处理器,所述高速数据处理器足以执行用于执行用户和/或系统生成的请求的程序组件。所述CPU可以是微处理器,例如AMD的速龙(Athlon)、钻龙(Duron)和/或皓龙(Opteron);IBM和/或摩托罗拉(Motorola)的PowerPC;IBM和索尼(Sony)的Cell处理器;英特尔(Intel)的赛扬(Celeron)、安腾(Itanium)、奔腾(Pentium)、至强(Xeon)和/或XScale;和/或类似处理器。
“用户”可以包括出于某种目的而使用其它事物的人或事物。用户可包括可以与一个或多个个人账户和/或用户装置相关联的个人。在一些实施例中,用户也可被称作持卡人、账户持有人或消费者。
“通信装置”可以包括可以提供远程或直接通信能力的任何合适的装置。远程通信能力的示例包括使用移动电话(无线)网络、无线数据网络(例如,3G、4G或类似网络)、Wi-Fi、Wi-Max,或可提供对例如互联网或私用网络等网络的访问的任何其它通信介质。通信装置的示例包括台式计算机、视频游戏机、移动电话(例如,蜂窝电话)、PDA、平板计算机、上网本、便携式计算机、个人音乐播放器、手持式专用读取器、智能卡等。通信装置的另外的示例包括可穿戴装置,例如智能手表、健身手环、脚链、戒指、耳环等,以及具有远程或直接通信能力的车辆。由用户操作的通信装置可以被称为“用户装置”。
“资源”可以包括可以由实体使用或在实体之间转移的任何事物。资源的示例包括商品、服务、信息和/或对受限位置的访问。
“资源提供商”可以包括可提供资源的任何实体。资源提供商的示例包括商家、政府机构等。资源提供商可以操作资源提供商计算机。
“交互”可以包括任何相互行为、效果或影响。例如,交互可以是例如资源提供商与用户的两方或更多方之间的交换或交易。涉及资源转移的与资源提供商的交互可被称为“资源交换交互”。
“交互数据”可以包括与交互相关的任何数据。例如,交互数据可以包括与交互发生的时间相关的数据(例如,时间戳)或与交互相关联的任何值(例如,与销售相关联的价格)。
“凭证”可以包括指示或证明实体身份的任何事物。凭证可以包括例如字母数字序列,例如支付账号(PAN)或社会保障号(SSN)。凭证可用于对交互授权,所述交互例如与凭证相关联的用户与商家资源提供商之间的资源交换交互。
“令牌”可以包括真实凭证的任何替代。令牌可用于访问资源或用于两个实体之间的交互。令牌可以包括可以用作支付账号(PAN)的替代的一连串字母数字字符。例如,令牌“4900 0000 0000 0001”可以用于代替PAN“4147 0900 0000 1234”。令牌可以是“保留格式的”,并且可以具有与现有交易处理网络中使用的账户标识符一致的数字格式(例如,ISO8583金融交易消息格式)。在另一示例中,令牌可以包括数据项的散列测量值(或者“散列”)。数据项可以包括第一密文C1(例如,加密的凭证)和第二密文C2(例如,可用于对加密的凭证进行解密的密钥)。
“令牌化”可以包括用替代数据替换数据的任何过程。例如,可以通过用可以与PAN相关联的替代数据(例如,令牌)替换PAN来对PAN进行令牌化。此外,令牌化可以应用于可以用替代值替换的任何其它信息。
“令牌交换”或“去令牌化”可以包括恢复在令牌化期间被替代的数据的任何过程。例如,令牌交换可以包括在与支付令牌相关联的对应PAN的令牌化期间用所述PAN替换支付令牌。因此,去令牌化可指基于存储在例如令牌库中的令牌到PAN映射来将令牌兑换成相关联PAN值的过程。检取PAN以交换相关联令牌的能力可限于特定授权的实体、个人、应用程序或系统。此外,去令牌化或令牌交换可应用于任何其它信息。在一些实施例中,令牌交换可通过例如ISO消息的交易消息、应用程序编程接口(API)或另一类型的网络接口(例如,网络请求)来实现。
“令牌库”或“令牌数据库”可以包括用于存储令牌的任何适当的硬件或数据结构。令牌数据库中的令牌可以与其它数据相关联地存储。例如,令牌数据库中的令牌可以与令牌所替代的凭证相关联地存储,或者可以同与令牌相关联的实体的标识符(即,令牌的用户的用户标识符)相关联地存储。
“令牌服务器计算机”可以包括提供令牌或为令牌提供服务的任何计算机。令牌服务器计算机可以促进请求、确定(例如,生成)和/或发行令牌,以及在存储库(例如,令牌库)中维护建立的令牌到例如主账号(PAN)等凭证的映射。令牌服务器计算机可以为令牌建立令牌保障级别,以指示令牌与PAN绑定的置信水平。
“授权请求消息”可以包括请求对交互授权的任何电子消息。在一些实施例中,授权请求消息可发送给授权计算机和/或支付卡的发行方,以请求对交易进行授权。根据一些实施例,授权请求消息可符合ISO8583,这是针对交换与用户使用支付装置或支付账户进行的支付相关联的电子交易信息的系统的标准。授权请求消息可以包括可与支付装置或支付账户相关联的发行方账户标识符。授权请求消息还可以包括对应于“标识信息”或“用户信息”的额外数据元素,仅举例来说,包括:服务代码、CVV(卡验证值)、dCVV(动态卡验证值)、PAN(主账号或“账号”)、访问令牌、用户标识符(例如用户名)、到期日期等。授权请求消息还可以包括“交易信息”,例如与当前交易相关联的任何信息,例如交易金额、商家标识符、商家位置、收单方银行标识号(BIN)、卡接受器ID、标识正购买的物品的信息等,以及可用于标识和/或确定是否授权交易的任何其它信息。
“授权响应消息”可以包括响应于授权请求的任何消息。在一些情况下,授权响应消息可以是由发行金融机构或授权计算机生成的对授权请求消息的电子消息应答。授权响应消息可以包括例如以下状态指示符中的一个或多个:批准-交易被批准;拒绝-交易未被批准;或呼叫中心-响应未决的更多信息,商家必须呼叫免费授权电话号码。授权响应消息还可以包括授权代码,所述授权代码可以是信用卡发行银行响应于电子消息中的授权请求消息(直接地或者通过交易处理计算机)返回给商家的访问装置(例如POS设备)的指示对交易的批准的代码。代码可以用作授权的证据。
“密码密钥”可以包括用于对数据进行加密或解密的任何数据。密码密钥可用于对明文数据进行加密以产生密文数据,或对密文数据进行解密以产生明文数据。密码密钥可以是对称的,意味着用于对数据进行加密的相同的密码密钥可以用于对加密数据进行解密。密码密钥也可以是不对称的,并且是“密码密钥对”的一部分。利用密码密钥对,使用一个密码密钥加密的数据可以用另一密码密钥进行解密,反之亦然。通常,不对称密钥对中的一个密码密钥被称为“公钥”,并且另一密码密钥被称为“私钥”或“秘密密钥”。
“明文”可以包括在不解密的情况下人或机器可以解译的任何数据。明文的一个示例是字符串,例如“你好世界”。PAN是明文的另一示例。可以使用密码密钥对明文进行加密以产生密文。
“密文”可以包括在不解密的情况下人或机器无法解译的任何数据。密文可以包括加密的明文。可以用密码密钥对密文进行解密以产生对应的明文。
“代理”可以包括代表其它实体行事的实体。作为示例,代理计算机可以代表客户端计算机从服务器计算机请求数据。
“代理重新加密”可以包括涉及由代理执行的数据重新加密的任何密码活动。例如,第一计算机可以对数据进行加密并将其发送给代理计算机。代理计算机可以对数据进行重新加密,使得所述数据可以使用属于第二计算机的密码密钥来解密。可以使用“重新加密密钥”来执行代理重新加密。
“重新加密密钥”可以包括用于对数据进行重新加密的任何密码密钥。可以在代理重新加密方案中使用重新加密密钥,以使得代理能够对使用一个密码密钥加密的数据进行重新加密,使得所述数据可以使用不同的密码密钥来解密。
“散列函数”可以包括可用于将数据值映射到不同数据值的任何函数。散列函数可以将任意大小或长度的数据映射到固定大小或长度的数据。散列函数的输出可以被称为“散列”或“散列测量值”。散列测量值可以用作其映射的数据的替代。散列测量值还可以用于检查数据的完整性。
“数据项”可以包括任何数据集。数据项可以包括多个数据元素。例如,对应于人类个体的数据项可以包括对应于个体的身高、体重和年龄的数据。数据项或包括数据项的数据元素可以采用加密或未加密形式。
“网关计算机”可以包括允许在一个或多个计算机与一个或多个其它计算机之间通信的任何计算机。网关计算机可以将通信从发送方计算机路由到适当的接收方计算机。网关计算机可以使用密码协议在发送方计算机与接收方计算机之间建立安全通信信道。出于对交互授权的目的,网关计算机可以启用资源提供商计算机与授权实体计算机之间的通信。
“边缘计算机”可以包括边缘计算网络或云计算网络中的任何计算机。边缘计算机可以为客户端计算机执行计算、提供存储和为请求提供服务。通常,计算机网络(例如互联网)内的边缘计算机相对接近客户端计算机。使用边缘计算机可以改善延迟并减少带宽使用。在一些实施例中,边缘计算机可以是例如AkamaiTM或CloudflareTM等公司运营的内容分发网络系统中的服务器计算机。
附图说明
图1示出根据一些实施例的示例性资源交换授权网络的系统框图。
图2示出根据一些实施例的示例性网关计算机的系统框图。
图3示出根据一些实施例的示例性边缘计算机的系统框图。
图4示出根据一些实施例的代理重新加密方案的混合序列图。
图5示出根据一些实施例的示例性密钥设置阶段的流程图。
图6示出根据一些实施例的示例性密钥设置阶段的序列图。
图7示出根据一些实施例的示例性令牌预配阶段的流程图。
图8示出根据一些实施例的示例性令牌预配阶段的序列图。
图9示出根据一些实施例的示例性交互阶段的流程图。
图10示出根据一些实施例的示例性交互阶段的序列图。
具体实施方式
网关不可知令牌化的方法可以包括至少三个阶段:密钥设置阶段、令牌预配阶段和交互阶段。密钥设置阶段和令牌预配阶段使得令牌能够在交互阶段期间使用(例如,如上文在发明内容中所描述)。
下文参考图5-6更详细地描述密钥设置阶段。总而言之,密钥设置阶段涉及网关计算机和令牌服务器计算机分别生成网关密钥对和令牌服务器密钥对。这些密钥对可以各自包括公钥(PK)和私钥(SK)。网关计算机可以将网关公钥PKG发送给令牌服务器计算机。令牌服务器计算机可以使用网关公钥PKG和令牌服务器私钥SKB来生成重新加密密钥RKB→G
重新加密密钥是代理重新加密方案中使用的密码密钥。重新加密密钥允许使用第二密码密钥对使用第一密码密钥加密的数据进行重新加密,而不首先对数据进行解密。通常,使用令牌服务器公钥PKB加密的数据只能使用令牌服务器私钥SKB来解密。然而,在使用重新加密密钥RKB→G的情况下,使用令牌服务器公钥PKB加密的数据可以使用重新加密密钥RKB→G来重新加密,并使用网关私钥SKG来解密。在生成重新加密密钥RKB→G之后,可以将重新加密密钥RKB→G分配到边缘计算机。边缘计算机可以在交互阶段期间使用重新加密密钥RKB→G对第二密文C2进行重新加密(由此创建重新加密的第二密文C2'),使得所述第二密文可以由网关计算机解密(在下文进一步详细描述)。
下文参考图7-8更详细地描述令牌预配阶段。令牌预配阶段可以涉及基于凭证生成包括第一密文C1和第二密文C2的数据项T,以及基于数据项T生成令牌H(T)。令牌H(T)可以包括数据项T的散列测量值(或者“散列”)。令牌H(T)可以在交互阶段期间充当凭证的替代。作为示例,交互阶段可以包括商家资源提供商与消费者之间的销售。可以提供令牌H(T)来代替传统的支付凭证,例如PAN。
第一密文C1可以包括使用密码密钥DEK加密的凭证。第二密文C2可以包括使用令牌服务器公钥PKB加密的密码密钥DEK。可以通过以下操作来检取凭证:首先对第二密文C2进行解密以检取密码密钥DEK,然后使用密码密钥DEK对第一密文C1进行解密,以检取凭证。
在令牌预配阶段,首先在令牌服务器计算机处接收凭证。然后,令牌服务器计算机可以生成密码密钥DEK,并且通过使用密码密钥DEK对凭证进行加密来产生第一密文C1。然后,令牌服务器计算机可以通过使用令牌服务器公钥PKB对DEK进行加密来产生第二密文C2。然后,令牌服务器计算机可以将数据项T(包括第一密文和第二密文)发送给网关计算机。网关计算机可以生成数据项T的令牌(例如,散列测量值)H(T)。网关计算机可以将数据项T与令牌H(T)相关联地存储在数据库或令牌库中。然后,网关计算机可以将令牌H(T)发送给资源提供商计算机,所述资源提供商计算机可以存储令牌H(T)以供以后使用。
在下文参考图9-10进一步详细描述的交互阶段,可以使用令牌H(T)来检取凭证并对资源提供商计算机与用户装置(例如,与用户相关联的智能电话、平板计算机、笔记本计算机、台式计算机等)之间的交互(例如,销售)授权。在交互期间,资源提供商计算机可以将令牌H(T)发送给边缘计算机。边缘计算机可以标识与令牌H(T)相关联的网关计算机,然后将令牌H(T)发送给网关计算机。网关计算机可以从数据库(或者被称为“令牌库”)标识和检取对应于令牌H(T)的数据项T。网关计算机可以将数据项T发送给边缘计算机。边缘计算机可以使用(在密钥设置阶段期间接收到的)重新加密密钥RKB→G对第二密文C2进行重新加密以产生重新加密的第二密文C2'。然后,边缘计算机可以将包括第一密文C1和重新加密的第二密文C2'的数据项T发送回到网关计算机。然后,网关计算机可以使用网关计算机私钥SKG对重新加密的第二密文C2'进行解密,从而在过程中产生密码密钥DEK。网关计算机可以使用密码密钥DEK对第一密文C1进行解密以产生凭证(例如,PAN)。然后,网关计算机可以将凭证转发到授权实体计算机以进行授权。
实施例提供了数个优点。例如,实施例可以利用现有的内容分发网络(边缘计算机)经由任何网关计算机路由令牌。许多资源提供商、网关和令牌化服务器将内容分发网络用于其安全服务(例如,DDoS缓解、反向代理服务等)。通过在边缘计算机处执行代理重新加密,实施例消除了对每个令牌化服务器与每个网关计算机之间的特定通信信道的需要。此外,以新颖的方式使用现有基础设施减少了资源提供商、网关计算机和令牌服务器的集成负担。
另外,实施例使用代理重新加密以便进一步保护敏感数据。呈内容分发网络(例如Akamai或Cloudflare)形式的边缘计算机无法以未加密的形式使用凭证或其它敏感数据。敏感凭证一直以令牌化的形式存在,直到它们被去令牌化并发送给授权实体以进行授权。除了安全优势外,此特征还减少了对边缘计算机的合规性要求(例如PCI合规性要求)。此外,在去令牌化过程期间不需要调用令牌化服务器或以其它方式与之通信,从而提高了资源交换交互授权的总体速度。
实施例可用于支付交易的上下文中,并且下文的许多示例描述此类实施例。但是,本发明的实施例不限于此。例如,在本发明的实施例中,凭证不是支付令牌并且授权实体计算机不是由银行账户的发行方操作的发行方计算机,所使用的凭证可以是可用于访问网站或安全数据的密码,并且授权实体可以是允许在接收到密码后访问安全数据的计算机。
下午参考图1描述根据实施例的示例性系统。下文参考图2描述示例性网关计算机。下文参考图3描述示例性边缘计算机。下文参考图4概述代理重新加密。下文参考图5的流程图和图6的序列图描述密钥设置阶段。下文参考图7的流程图和图8的序列/系统图描述令牌预配阶段。下文参考图9的流程图和图10的序列/系统图描述交互阶段。
图1示出根据一些实施例的示例性资源交换系统100的框图。系统100可以包括操作用户装置104的用户102,所述用户装置与资源提供商计算机106交互。资源提供商计算机108可以与边缘计算机108交互。边缘计算机可以与令牌服务器计算机110和网关计算机112交互。网关计算机112可以与网络计算机114和授权实体计算机116通信。
尽管图1中仅示出每个计算机或实体的单个例子,但一些实施例可以具有一个或多个用户102、用户装置104、资源提供商计算机106、边缘计算机108、令牌服务器计算机110、网关计算机112、网络计算机114和授权实体计算机116。网关不可知令牌化的一个优点是,它可以使得资源提供商计算机106能够经由数个网关计算机中的任何网关计算机112将令牌或凭证路由到适当的授权实体计算机116。
图1的计算机和装置可以经由通信网络彼此通信,所述通信网络可以呈任何合适的形式,并且可以包括以下中的任一个和/或组合:直接互连;互联网;局域网(LAN);城域网(MAN);作为互联网上节点的运行任务(OMNI);安全自定义连接;广域网(WAN);无线网络(例如,使用例如但不限于无线应用协议(WAP)、I-模式等协议)等。参与者计算机之间的消息可以使用安全通信协议来发送,所述安全通信协议例如但不限于文件传送协议(FTP)、超文本传送协议(HTTP)、安全超文本传送协议(HTTPS)、安全套接层(SSL)、ISO(例如,ISO 8583)等。
用户102可以包括用户装置104的人类用户或机器用户。用户102可以使用用户装置104来执行与资源提供商计算机106的资源交换交互。作为示例,用户102(例如,消费者)可以使用用户装置104(例如,智能电话)以便从与在线商家相关联的资源提供商计算机106购买商品或服务。用户102可以经由例如键盘、鼠标、按钮、触摸屏、麦克风、扬声器等任何适当的输入/输出(I/O)装置与用户装置104交互。这些I/O装置可以集成到用户装置104中。
用户装置104可以包括如术语章节中所定义的任何适当的通信装置。用户装置104的示例包括台式计算机、视频游戏控制台、移动电话(例如,蜂窝电话)、PDA、平板计算机、上网本、笔记本计算机、个人音乐播放器、手持式专用读取器、智能卡等。通信装置的其它示例包括可穿戴装置,例如智能手表、健身手环、脚链、戒指、耳环等。用户装置104可以拥有使其能够与资源提供商计算机106通信的通信能力。例如,用户装置104可以经由例如局域网或互联网的网络与资源提供商计算机106通信。替代地,用户装置104可以经由例如近场通信(NFC)的介质与资源提供商计算机106通信。
在一些实施例中,作为用户102与资源提供商计算机106之间的交互的一部分,用户装置104可以将令牌存储在其存储器中并将一个或多个令牌发送给资源提供商计算机106。然而,在其它实施例中,资源提供商计算机106可以将令牌存储在数据库中,并且用户装置104可能不会将令牌发送给资源提供商计算机106。
作为第一示例,用户102可以使用用户装置104在在线商家处购买商品或服务。用户102可以使用用户装置104和网络浏览器导航到与在线商家相关联的网站。此网站可以由资源提供商计算机106托管。用户102可以完成其购物并导航到结账网页,此时用户102有机会提供支付凭证(例如,PAN或令牌)。用户102可以选择提供存储在用户装置104上的令牌,并且用户装置104可以将所述令牌发送给资源提供商计算机106。
作为第二示例,用户102可以使用用户装置104在由资源提供商计算机106托管的在线流媒体平台上观看电影、电视节目或其它视频。用户102可以每月向资源提供商支付此服务的费用。资源提供商计算机106可以替代地存储令牌,而不是将用户102的支付凭证存储在资源提供商计算机106处。在这种情况下,在资源提供商计算机106与用户装置104或用户102之间的交互期间,令牌可能不一定从用户装置104传送到资源提供商计算机106。
资源提供商计算机106可以包括与资源提供商相关联的计算机或服务器。如上文所定义,资源提供商可以包括向例如用户102的用户提供资源(例如,商品或服务)的任何实体,包括例如商业企业和政府。资源提供商可以使用资源提供商计算机106来提供这些资源,或者执行或自动化与用户的资源交换交互。例如,资源提供商计算机106可以包括托管电子商务网站的网络服务器。资源提供商计算机106可以经由例如互联网等任何适当的通信网络与边缘计算机108或网关计算机112通信。资源提供商计算机106可以在交互阶段期间(例如,在向用户102出售期间)将令牌和包括令牌的授权请求消息发送给边缘计算机108。资源提供商计算机106还可以在令牌预配阶段将非令牌凭证发送给边缘计算机108或网关计算机112。
边缘计算机108可以包括边缘计算网络或云计算网络中的计算机。边缘计算机108可以(例如,在地理距离或网络距离上)相对接近资源提供商计算机106,从而减少延迟。边缘计算机108可以执行计算或密码操作,以便能够对从资源提供商计算机106接收的令牌进行去令牌化。值得注意的是,边缘计算机108可以执行与代理重新加密相关联的操作。可以参考图3和边缘计算机300更好地理解边缘计算机108。
图3示出根据一些实施例的边缘计算机300的系统框图。边缘计算机300可以包括处理器302、通信接口304和计算机可读介质306。计算机可读介质306可以存储数个软件模块,尤其包括通信模块308、密码模块310、代理重新加密模块312和验证模块314。
处理器302可以包括如上所述的任何合适的处理设备或装置。通信接口304可以包括网络接口(例如,以太网接口、无线网卡等),其使得边缘计算机300能够通过例如互联网的网络与其它计算机(例如,资源提供商计算机、令牌服务器计算机和网关计算机)或系统通信。计算机可读介质306可以包括能够存储边缘计算机300可以使用处理器302读取或写入的数据的任何硬件。作为示例,计算机可读介质306可以包括硬盘驱动器(HDD)、固态驱动器(SSD)、RAM等,或其任何组合。
在一些实施例中,计算机可读介质306可以包括代码,所述代码可由处理器302执行以执行包括以下各项的方法:作为资源提供商计算机与用户装置之间的交互的一部分,从资源提供商计算机接收令牌;基于令牌标识网关计算机;将令牌发送给网关计算机,其中网关计算机标识数据项,所述数据项包括数据库中对应于令牌的第一密文和第二密文;从网关计算机接收第二密文;通过使用重新加密密钥对第二密文进行重新加密来产生重新加密的第二密文;以及将重新加密的第二密文发送给网关计算机,其中网关计算机通过使用网关计算机私钥对重新加密的第二密文进行解密来产生密码密钥,通过使用密码密钥对第一密文进行解密来产生凭证,并将凭证发送给授权实体计算机,其中授权实体计算机确定是否对交互授权。
通信模块308可以包括代码或指令,所述代码或指令使得处理器302生成或使得所述处理器能够生成数据、重新格式化数据、发送数据、接收数据,和/或以其它方式与其它实体或计算机通信。这可以包括例如以下中的一项或多项:作为资源提供商与用户或用户装置之间的交互的一部分而接收令牌,将令牌发送给网关计算机,从网关计算机接收密文,从网关计算机接收包括多个(例如,两个)密文的数据项,将重新加密的密文(例如,重新加密的第二密文C2')发送给网关计算机,从网关计算机或令牌服务器计算机接收密码密钥(例如,重新加密密钥RKB→G),以及从令牌服务器计算机或网关计算机接收“无服务器”函数。另外,通信模块308可以使得边缘计算机300能够使用例如TCP、UDP等任何适当的通信协议通过网络进行通信。
密码模块310可以包括使得处理器302能够执行与密码相关联的任何操作的代码或指令。这可以包括例如生成和存储密码密钥、使用密码密钥对数据进行解密或加密等。密码模块310可以包括使得处理器302能够实施例如高级加密标准(AES)、椭圆曲线密码术等特定密码系统的代码。
代理重新加密模块312可以包括使得处理器302能够执行与代理重新加密相关联的任何操作或以其它方式实施代理重新加密方案的代码或指令。在一些实施例中,代理重新加密模块312和密码模块310可以包括单个软件模块。代理重新加密模块312可以使得边缘计算机300能够存储一个或多个重新加密密钥(例如,重新加密密钥RKB→G)并使用重新加密密钥对密文(例如,第二密文C2)进行重新加密以产生重新加密的密文(例如,重新加密的第二密文C2')。
在一些实施例中,资源交换交互系统(即,图1中的系统100)可以包括多个网关计算机和对应于那些网关计算机的多个重新加密密钥。在这些实施例中,代理重新加密模块312可以包括使得处理器302能够标识对应于特定令牌、数据项或密文的网关计算机的代码。边缘计算机可以通过基于令牌、数据项或密文确定与网关计算机相关联的网关标识符来标识网关计算机。此外,边缘计算机300可以使用代理重新加密模块312来确定对应于所述网关计算机和网关计算机标识符的重新加密密钥,使得由边缘计算机300使用重新加密密钥(例如,重新加密的第二密文C2')产生的重新加密的密文可以由对应的网关计算机解密。代理重新加密模块312可以使用网关标识符,例如使用包括多个网关标识符和对应的多个重新加密密钥的查找表来确定对应于网关标识符的重新加密密钥。
在一些实施例中,代理重新加密模块312可以包括“无服务器函数”。也就是说,无服务器函数可以包括使得处理器302能够执行上述功能的代码中的一些或全部。无服务器函数之所以可以被称为无服务器函数,是因为它在不使用令牌服务器计算机(例如,来自图1的令牌服务器计算机110)的情况下实现了去令牌化。可以从令牌服务器计算机或网关计算机接收无服务器函数。
验证模块314可以包括可由处理器302执行以验证数据项的完整性的代码或指令。这可以包括例如生成数据项的散列测量值,以及将那些散列测量值与已知的散列测量值进行比较。作为示例,从资源提供商计算机106接收的令牌H(T)可以包括数据项T的散列测量值。在交互阶段期间,边缘计算机300可以将令牌H(T)发送给网关计算机,并且从网关计算机接收数据项T。边缘计算机300可以使用验证模块314来生成数据项H'(T)的散列测量值,并将H'(T)与令牌H(T)进行比较。如果H'(T)与令牌H(T)相同,则网关计算机检取了正确的数据项T,并且去令牌化过程可以继续,否则边缘计算机300可以选择终止去令牌化过程。
返回图1,令牌服务器计算机110可以包括在密钥生成阶段和令牌预配阶段准备密文和密码密钥的服务器计算机。令牌服务器计算机110可以生成或创建边缘计算机108在代理重新加密中使用的重新加密密钥,并且可以将这些重新加密密钥发送给边缘计算机108。另外,令牌服务器计算机110可以使用凭证来生成包括两个密文C1和C2的数据项T。令牌服务器计算机110可以将此数据项T发送给网关计算机112。
在一些实施例中,令牌服务器计算机110可以与授权实体计算机116相关联。作为示例,令牌服务器计算机110可以由操作授权实体计算机116的授权实体拥有或操作。授权实体可以包括向用户102发行凭证的发行方银行。
网关计算机112可以包括代表资源提供商计算机106充当网关的计算机系统。网关计算机112可以允许资源提供商计算机106与任何数量的授权实体计算机116通信。这可以为资源提供商提供便利,因为它们只需要知道较少数量的网关计算机112的身份或网络地址,而不是相对较多数量的授权实体计算机116的身份或网络地址。在网关不可知令牌化中,网关计算机112可以参与密钥设置阶段、令牌预配阶段和交互阶段。参考图2更详细地描述网关计算机112。
图2示出根据一些实施例的网关计算机200的系统框图。网关计算机200可以包括处理器202、通信接口204、令牌数据库206和计算机可读介质208。计算机可读介质208可以存储数个软件模块,尤其包括通信模块210、密码模块212、令牌管理模块214和决策管理模块216。
处理器202可以包括如上所述的任何合适的处理设备或装置。通信接口204可以包括网络接口(例如,以太网接口、无线网卡等),其使得网关计算机能够通过例如互联网的网络与其它计算机(例如,资源提供商计算机、边缘计算机和令牌服务器计算机)或系统通信。
令牌数据库206(也称为“令牌库”206)可以包括用于彼此相关联地存储一个或多个令牌和一个或多个数据项的任何硬件或软件。这些数据项可以各自包括第一密文和第二密文。在一些实施例中,令牌可以包括其对应数据项的散列测量值。因此,在一些实施例中,令牌数据库206可以实施将令牌映射到其对应数据项的散列表。
计算机可读介质208可以包括能够存储网关计算机200可以使用处理器202读取或写入的数据的任何硬件。作为示例,计算机可读介质208可以包括硬盘驱动器(HDD)、固态驱动器(SSD)、RAM等,或其任何组合。
在一些实施例中,计算机可读介质208可以包括代码,所述代码可由处理器202执行以实施包括以下各项的方法:在资源提供商计算机与用户装置之间的交互期间从边缘计算机接收令牌,其中资源提供商计算机将令牌发送给边缘计算机;确定数据项,所述数据项包括数据库中与令牌相关联的第一密文和第二密文;将第二密文发送给边缘计算机,其中边缘计算机通过对第二密文进行重新加密来产生重新加密的第二密文;从边缘计算机接收重新加密的第二密文;用网关计算机私钥对重新加密的第二密文进行解密以获得密码密钥;用密码密钥对第一密文进行解密以获得凭证;以及将凭证发送给授权实体计算机,其中授权实体计算机确定是否对交互授权。
通信模块210可以包括代码或指令,所述代码或指令使得处理器302生成或使得所述处理器能够生成数据、重新格式化数据、发送数据、接收数据,和/或以其它方式与其它实体或计算机通信。这可以包括例如以下中的一项或多项:从边缘计算机接收令牌,将密文或数据项(包括第一密文C1和/或第二密文C2)发送给边缘计算机,从边缘计算机接收重新加密的密文,将凭证发送给授权实体计算机,从边缘计算机接收交互数据,将重新加密密钥发送给边缘计算机,从令牌服务器计算机接收数据项等。
密码模块212可以包括使得处理器202能够执行与密码相关联的任何操作的代码或指令。这些可以包括例如生成和存储密码密钥、使用密码密钥对数据进行解密或加密等。密码模块212可以包括使得处理器202能够实施例如AES、椭圆曲线密码术等特定密码系统的代码。
网关计算机200可以使用密码模块212对例如重新加密的第二密文C2'的密文进行解密,以便获得密码密钥DEK。同样,网关计算机200可以使用密码模块212以使用密码密钥DEK对第一密文C1进行解密,以便获得凭证。
令牌管理模块214可以包括使得处理器202能够执行与令牌和任何相关联数据的生成和管理相关联的功能的代码或指令。网关计算机200可以使用令牌管理模块214以便与令牌数据库206对接,并且从令牌数据库206检取令牌或相关联数据。网关计算机200可以使用令牌管理模块214来标识与从边缘计算机接收的令牌相关联的数据项(其可以包括第一密文C1和第二密文C2)。这可以通过使用令牌查询令牌数据库206来实现。网关计算机200还可以使用令牌管理模块214来生成令牌,例如基于对应数据项T的散列测量值生成令牌H(T)。网关计算机200可以使用令牌管理模块214将生成的令牌与其对应的数据项相关联地存储在令牌数据库206中。
决策管理模块216(也称为“决策管理器”)可以包括可由处理器202执行以做出与交互授权相关联的决策的代码或指令。决策管理模块216可以例如用于确定给定交互是合法的还是欺诈性的。如果网关计算机200确定交互可能是欺诈性的,则网关计算机200可以决定不将凭证发送给授权实体计算机以进行授权。网关计算机200可以使用决策管理模块216基于交互数据和凭证来评估交互。如上所述,交互数据可以指与交互相关联的数据,例如交互发生的时间、交互发生的位置等。例如,对于交易交互,特定用户可以主要在中午12:00到下午3:00的几个小时之间使用他们的PAN(凭证),并且授权请求可能主要来自美国。如果交易发生在此时间窗口之外(例如,晚上11:30)、来自不同位置(例如,乌兹别克斯坦),则决策管理模块216可将交易标记为可能是欺诈性的。决策管理模块216可以使用任何适当的技术来评估交互,包括例如基于规则的系统、统计模型、机器学习、人工智能等。
返回到图1,网络计算机114可以包括网关计算机112与授权实体计算机116之间的网络中的任何计算机或任何数量的计算机。来自网关计算机112的凭证或授权请求消息可以在由授权实体计算机116接收之前通过网络计算机114。网络计算机114可以包括例如互联网等通用网络中的计算机系统,或专用网络中的计算机系统。例如,网络计算机114可以包括例如VisaNET等支付处理网络中的计算机。
授权实体计算机116可以包括与授权实体相关联的计算机,授权实体可以使用所述计算机来评估交互和对交互授权。在一些实施例中,授权实体计算机116可以与代表用户102管理账户的发行方银行相关联。来自账户的资金可用于支付用户装置104与资源提供商106之间的交易交互。授权实体计算机116可以与令牌服务器计算机110相关联,即,授权实体还可以管理、拥有或操作令牌服务器计算机110。授权实体计算机116可以接收授权请求消息,批准或拒绝那些消息,并发送授权响应消息。这些授权请求消息可以包括在去令牌化期间产生的凭证。
图4示出根据一些实施例的用于代理重新加密的模型的混合序列图。图4旨在用于说明目的,并且图4的描述将不包括与代理重新加密的实际实施方案相关联的许多细节。参考期刊文章《用于保护分布式存储的改进的代理重新加密方案及其应用(Improved ProxyRe-Encryption Schemes with Applications to Secure Distributed Storage)》(Ateniese等人,期刊《ACM信息与系统安全事务(ACM Transactions on Information andSystem Security)》(TISSEC)第9卷第1期,2006年2月,第1-30页,美国纽约州纽约市),可以更好地理解代理重新加密。
在一些密码应用中,第一方(例如,甲方402)可能希望在将敏感数据(例如,支付凭证,例如PAN)发送给第二方(例如,乙方406)之前对所述敏感数据进行加密。然而,甲方402可能不希望与乙方406共享使乙方406能够对加密数据进行解密的密码密钥。替代地,可能存在多个乙方406(例如,多个网关计算机),并且甲方402可能不希望向所有乙方406分配密码密钥。通常,在没有对应的密码密钥的情况下,乙方406无法对由甲方402加密的数据进行解密。
然而,代理重新加密允许代理404使用重新加密密钥对由甲方402产生的加密数据进行重新加密,从而允许乙方406使用乙方406已知的密码密钥对重新加密的数据进行解密。
通常,所述过程如下:在步骤408,甲方402使用甲方402已知但乙方410未知的密码密钥对数据进行加密。在步骤410,甲方402将加密数据发送给代理404。在步骤412,代理404使用重新加密密钥对加密数据进行重新加密。重新加密密钥对应于甲方402已知的密码密钥和乙方406已知的密码密钥。重新加密的数据现在可以由乙方406解密。在步骤414,代理404将重新加密的数据发送给乙方406方。在步骤416,乙方406使用乙方已知的密码密钥对数据进行解密。
在网关不可知令牌化中,甲方402可以对应于令牌服务器计算机(例如,令牌服务器计算机110),代理404可以对应于边缘计算机(例如,边缘计算机108),并且乙方406可以对应于网关计算机(例如,网关计算机112)。令牌服务器计算机可以使用令牌服务器计算机公钥PKB对密码密钥DEK进行加密,以形成第二密文C2。可以使用令牌服务器计算机私钥SKB对第二密文C2进行解密。然而,令牌服务器计算机不与网关计算机共享令牌服务器计算机私钥SKB。替代地,令牌服务器计算机使用令牌服务器计算机私钥SKB和网关计算机公钥PKG来生成重新加密密钥RKB→G。可以将重新加密密钥RKB→G发送给充当代理404的边缘计算机。当网关计算机希望对第二密文C2进行解密以获得密码密钥DEK时,网关计算机首先将第二密文C2发送给边缘计算机。然后,边缘计算机使用重新加密密钥RKB→G对第二密文进行重新加密以产生重新加密的第二密文C2'。边缘计算机可以将重新加密的第二密文C2'发送回到网关计算机。然后,网关计算机可以使用网关计算机私钥SKB对重新加密的第二密文C2'进行解密,并检取密码密钥DEK。
当边缘计算机存储并使用多个重新加密密钥时,代理重新加密使得资源交换交互系统成为网关不可知的。边缘计算机能够对第二密文C2进行重新加密,使得所述第二密文可以通过使用对应于所述网关计算机的重新加密密钥由任何给定网关计算机解密。如果一个网关计算机离线,则边缘计算机可以对第二密文C2进行重新加密,使得所述第二密文可以由不同的网关计算机解密。如果至少一个网关计算机是功能性的,则代理重新加密的使用使得资源提供商能够将功能性网关计算机用于去令牌化,而在常规系统中,那些资源提供商可能已经“锁定”使用其它非功能性网关计算机之一。
可以参考图5的流程图和图6的序列图更好地理解密钥设置阶段。在密钥设置阶段,网关计算机和令牌服务器计算机基于令牌服务器私钥SKB和网关公钥PKG生成重新加密密钥RKB→G。重新加密密钥RKB→G被发送给边缘计算机,使得所述重新加密密钥可用于在交互阶段期间执行代理重新加密。
在步骤502,网关计算机514可以生成网关密钥对(PKG、SKG)。网关密钥对可以是不对称密钥对,包括网关公钥PKG和网关私钥SKG。用网关公钥PKG加密的数据可以使用网关私钥SKG进行解密,反之亦然。网关计算机514可以使用任何适当的技术来生成网关密钥对。例如,网关公钥PKG和网关私钥SKG中的任一个或两个可以包括随机数、大的素数、大的素数的乘积等。
在步骤504,令牌服务器计算机516可以生成令牌服务器密钥对(PKB、SKB)。令牌服务器密钥对可以是包括令牌服务器公钥PKB和令牌服务器私钥SKB的不对称密钥对。用令牌服务器公钥PKB加密的数据可以使用令牌服务器私钥SKB进行解密,反之亦然。令牌服务器计算机516可以使用任何适当的技术来生成令牌服务器密钥对。例如,令牌服务器公钥PKB和令牌服务器私钥SKB中的任一个或两个可以包括随机数、大的素数、大的素数的乘积等。
在步骤506,网关计算机514可以将网关公钥PKG发送给令牌服务器计算机516。令牌服务器计算机516随后可以使用网关公钥PKG来生成重新加密密钥RKB→G。网关计算机514可以任何适当(例如,加密或未加密)形式将网关公钥PKG发送给令牌服务器计算机516。
在步骤508,令牌服务器计算机516可以基于令牌服务器私钥SKB和网关公钥PKG生成重新加密密钥RKB→G。重新加密密钥RKB→G可以对应于提供网关公钥PKG的网关计算机514。令牌服务器计算机516可以根据任何适用的代理重新加密方案生成重新加密密钥RKB→G
在一些实施例中,网关计算机514可以是多个网关计算机中的一个。在这些实施例中,步骤502、506和508可以由每个网关计算机执行或针对每个网关计算机执行。因此,令牌服务器计算机516可以生成各自对应于不同的网关计算机的多个重新加密密钥RKB→G。令牌服务器计算机516可以将多个重新加密密钥RKB→G与多个网关标识符相关联,使得对应于特定重新加密密钥RKB→G的网关计算机514可以稍后由边缘计算机518标识。
然后,一个或多个重新加密密钥RKB→G以及一个或多个对应网关标识符可以由令牌服务器计算机516发送给边缘计算机518,使得边缘计算机518可以在交互阶段期间使用这些重新加密密钥RKB→G来执行代理重新加密。
一些实施例可以涉及边缘计算机518使用无服务器函数来执行代理重新加密。无服务器函数可以包括使得边缘计算机能够使用重新加密密钥RKB→G来执行代理重新加密的软件或软件算法。无服务器函数之所以可以被称为无服务器函数,是因为它在没有令牌服务器计算机516参与的情况下在交互阶段期间实现了去令牌化。无服务器函数可以包括重新加密密钥RKB→G、网关计算机标识符,以及使用这些重新加密密钥和网关计算机标识符对密文执行代理重新加密所必需的任何代码。
如果使用无服务器函数,则在任选步骤510,网关计算机514可以将无服务器函数发送给令牌服务器计算机516。随后,令牌服务器计算机516可以使用在步骤508中生成的重新加密密钥RKB→G以及任何网关标识符来填充无服务器函数。在任选步骤512,令牌服务器计算机516可以将已填充的无服务器函数发送给边缘计算机518,使得所述无服务器函数可以在交互阶段期间使用。替代地,网关计算机514可以将无服务器函数直接发送给边缘计算机518,并且边缘计算机518可以使用重新加密密钥RKB→G和从网关计算机514或令牌服务器计算机516接收的网关标识符来填充无服务器函数。
可以参考图7的流程图和图8的混合序列图更好地理解令牌预配阶段。在令牌预配阶段期间,令牌服务器计算机可以生成密码密钥DEK。令牌服务器计算机可以使用密码密钥DEK、凭证(例如,PAN)和令牌服务器公钥PKB来生成第一密文C1和第二密文C2。第一密文C1和第二密文C2形成数据项T,令牌服务器计算机可以将所述数据项发送给网关计算机。网关计算机可以基于数据项T生成令牌H(T),网关计算机可以将所述令牌与数据项T相关联地存储在令牌数据库中。然后,网关计算机可以将令牌H(T)提供到资源提供商计算机,并且资源提供商计算机随后可以存储令牌H(T)。
在步骤702,资源提供商计算机722可以将凭证发送给网关计算机726。资源提供商计算机722可能希望此凭证令牌化,使得资源提供商计算机722可以将令牌存储在其令牌数据库724中,以在未来与对应于凭证的用户或用户装置进行交互。网关计算机726可以在资源提供商计算机722与用户装置之间的交互之前(即,在交互阶段之前)从资源提供商计算机722接收凭证。
在步骤704,网关计算机726可以将凭证发送给令牌服务器计算机732。网关计算机726可以将凭证发送给令牌服务器计算机732,以便令牌服务器计算机732生成包括第一密文C1和第二密文C2的数据项T。网关计算机726可以基于凭证标识令牌服务器计算机732。例如,如果凭证是对应于发行银行的PAN,则网关计算机726可以使用PAN中的数字来标识对应于所述发行银行的令牌服务器计算机732。
在步骤706,令牌服务器计算机732可以生成密码密钥DEK。密码密钥DEK可以是对称密码密钥。令牌服务器计算机732可以使用任何适当的技术并根据任何适当的对称密码系统来生成密码密钥DEK。
在步骤708,令牌服务器计算机732可以通过使用密码密钥DEK对凭证进行加密来产生第一密文C1。通过使用密码密钥DEK对凭证进行加密,可以保护凭证免遭欺诈或滥用,因为实体需要首先拥有密码密钥DEK才能获得凭证。
在步骤710,令牌服务器计算机732可以通过使用令牌服务器公钥PKB对密码密钥DEK进行加密来产生第二密文C2。由于第二密文C2是使用令牌服务器公钥PKB加密的,因此可以使用重新加密密钥RKB→G对第二密文进行重新加密,使得可以由网关计算机对重新加密的第二密文C2'进行解密以检取密码密钥DEK,并且随后使用密码密钥DEK对第一密文C1进行解密以检取凭证。
在步骤712,令牌服务器计算机732可以将包括第一密文C1和第二密文C2的数据项T发送给网关计算机726。网关计算机726随后可以接收数据项T。
在步骤714,网关计算机726基于数据项T生成令牌H(T)。在一个实施例中,令牌H(T)可以包括数据项T的散列测量值,并且网关计算机726可以使用散列函数和数据项T(例如,例如SHA-256的散列函数)来生成令牌H(T)。使用散列函数增加了益处,因为它允许边缘计算机在交互阶段期间通过将令牌H(T)与由边缘计算机生成的数据项T的散列测量值进行比较来验证数据项。然而,网关计算机726可以使用任何适当手段来生成令牌H(T),并且不限于使用散列函数。
在步骤716,网关计算机726可以将数据项T与令牌H(T)相关联地存储在令牌数据库(或令牌库)730中。网关计算机726可以使用令牌管理服务(例如,图2中的令牌管理模块214),以便将数据项T和令牌H(T)存储在令牌数据库730中。令牌数据库730可以存储多个令牌H(T)和相关联的数据项T,各自对应于多个凭证中的一个凭证。
在步骤718,网关计算机726可以将令牌H(T)发送给资源提供商计算机722。
在步骤720,资源提供商计算机722可以将令牌H(T)存储在令牌数据库724中。然后,资源提供商计算机722可以使用令牌H(T)以在未来与用户或与用户相关联的用户装置进行交互,例如定期计费交互。
可以参考图9的流程图和图10的混合序列图更好地理解网关不可知令牌化的交互阶段。交互阶段可以包括与发送令牌和对令牌进行去令牌化以便对交互授权相关的步骤。对应于令牌的密文可以由边缘计算机进行代理重新加密,并且重新加密的密文可以发送给网关计算机。网关计算机可以对重新加密的密文进行解密以获得密码密钥。网关计算机可以使用所述密码密钥对另一密文进行解密以产生凭证。然后,网关计算机可以将凭证发送给授权实体计算机以进行授权。
在步骤902,作为资源提供商计算机922与用户装置之间的交互的一部分,资源提供商计算机922可以将令牌H(T)发送给边缘计算机926。资源提供商计算机922可以首先从用户装置接收令牌H(T)。替代地,资源提供商计算机922可以从令牌数据库924检取令牌H(T)。令牌H(T)可能已经生成并在令牌预配阶段期间发送给资源提供商计算机922(如参考图7-8所描述)。资源提供商计算机922可以另外将例如网关计算机标识符的额外信息发送给边缘计算机926。
在步骤904,边缘计算机926可以标识对应于令牌H(T)的网关计算机(例如,网关计算机928)。边缘计算机926可以使用从资源提供商计算机922接收的信息来标识网关计算机,所述信息例如网关标识符。在一些实施例中,边缘计算机926能够使用令牌H(T)本身来标识网关计算机。例如,令牌H(T)可以包括数据项T的散列测量值,以及标识对应于令牌H(T)的网关计算机的字母数字序列(即,网关标识符)。
在步骤906,边缘计算机926可以将令牌H(T)发送给在步骤904标识的网关计算机。边缘计算机926可以将令牌H(T)发送给网关计算机928,使得网关计算机928可以检取对应的数据项T,以便将对应的数据项T提供到边缘计算机926以进行代理重新加密。边缘计算机926可以另外将交互数据发送给网关计算机928。此交互数据可以包括对应于资源提供商计算机922与用户装置之间的交互的数据,例如交互发起的时间、交互的位置、与交互相关联的金额(例如,交易金额)等。网关计算机928可以稍后使用此交互数据,以便在将凭证发送给授权实体计算机936以进行授权之前评估交互。
在步骤908,网关计算机928可以使用令牌H(T)来检取包括第一密文C1和第二密文C2的数据项T。网关计算机928可以使用令牌管理服务930,以便从令牌数据库(或令牌库)934检取数据项T。例如,网关计算机928可以使用令牌H(T)作为查询从令牌数据库934检取数据项T。令牌库934可以存储包括多个第一密文和多个第二密文的多个数据项,且所述多个数据项可以对应于同样存储在令牌库934内的多个令牌。
在步骤910,网关计算机928可以将数据项T发送给边缘计算机926。边缘计算机926可以在数据项T中使用第二密文C2以及重新加密密钥RKB→G,以产生重新加密的第二密文C2'。边缘计算机926还可以使用数据项T来验证从资源提供商计算机922接收的令牌H(T)。例如,边缘计算机可以通过生成数据项T的散列测量值(即,第一密文C1和第二密文C2的散列测量值)并将令牌H(T)与散列测量值进行比较来验证令牌H(T)。在一些实施例中,特别是在边缘计算机926未验证令牌H(T)的那些实施例中,网关计算机928可以仅将第二密文C2发送给边缘计算机926,而不发送数据项T。
在步骤912,边缘计算机926可以通过使用重新加密密钥RKB→G对第二密文C2进行重新加密来产生重新加密的第二密文C2'。在一些实施例中,特别是在具有多个网关计算机和多个对应重新加密密钥RKB→G的那些实施例中,边缘计算机926可以首先基于网关标识符标识对应于网关计算机928的重新加密密钥RKB→G。网关标识符可以唯一地与网关计算机928相关联,并且可以是各自与对应网关计算机相关联的多个网关标识符中的一个。
如上文参考图5-6所述,重新加密密钥RKB→G可能已经在密钥预配阶段期间由令牌服务器计算机创建,并且可以专门对应于网关计算机928。重新加密密钥RKB→G可以基于网关计算机公钥PKG和令牌服务器计算机私钥SKB
在步骤914,边缘计算机926可以将包括第一密文C1和重新加密的第二密文C2'的数据项T发送给网关计算机928。替代地,如果边缘计算机926在步骤910仅从网关计算机928接收到第二密文C2,则边缘计算机926可以仅将重新加密的第二密文C2'发送给网关计算机928。
在步骤916,网关计算机928可以通过使用在密钥预配阶段期间生成的网关计算机私钥SKG对重新加密的第二密文C2'进行解密来产生密码密钥DEK。在获得密码密钥DEK之后,网关计算机928可以使用密码密钥DEK对第一密文C1进行解密以便获得凭证。
在步骤918,网关计算机928可以通过使用在步骤916获得的密码密钥DEK对第一密文C1进行解密来获得或产生凭证。在获得凭证后,网关计算机928接着可以将凭证发送给授权实体计算机936以进行授权。
任选地,在一些实施例中,在步骤920之前,网关计算机928可以基于在步骤918解密的凭证以及交互数据来评估交互。网关计算机928可以使用决策管理器932来执行此评估。如上文参考图2所描述,网关计算机928可以在将凭证发送给授权实体计算机936以进行授权之前评估交互以确定交互是合法的还是欺诈性的。网关计算机928可以评估交互数据以确定交互的风险得分或任何其它适当的合法性或欺诈性指示。例如,网关计算机928可以使用机器学习模型来评估交互发生的时间,或交互起始的位置。
在步骤920,网关计算机928可以将凭证发送给授权实体计算机936以进行交互。网关计算机928可另外将任何额外交互数据发送给授权实体计算机936。授权实体计算机936可以基于凭证和任何接收到的交互数据确定是否对交互授权。在一些实施例中,网关计算机928可以生成包括凭证的授权请求消息,并将所述授权请求消息发送给授权实体计算机936以进行授权。在一些实施例中,授权实体计算机936可以包括与用户装置的用户和凭证相关联的发行方计算机(例如,与发行方银行相关联的计算机)。例如,发行方计算机可以包括与代表用户维护支付账户的银行相关联的计算机。
如果授权实体计算机936决定对交互授权,则授权实体计算机936可以生成授权响应消息并将所述授权响应消息发送回到网关计算机928。网关计算机928可以经由边缘计算机926将授权响应消息转发到资源提供商计算机922。如果交互被批准,则资源提供商计算机922与用户装置之间的交互可以完成。例如,如果交互包括交易,则资源提供商计算机922可以向用户装置提供商品(例如,数字电影文件)。在一天结束时或在另一适当时间,清算和结算过程可以在与授权实体计算机936相关联的发行银行同与资源提供商计算机922相关联的收单银行之间进行。
本文所提及的任何计算机系统都可以使用任何合适数量的子系统。在一些实施例中,计算机系统包括单个计算机设备,其中子系统可以是计算机设备的组件。在其它实施例中,计算机系统可以包括多个计算机设备,每个计算机设备都是具有内部组件的子系统。
计算机系统可以包括例如由外部接口或由内部接口连接在一起的多个组件或子系统。在一些实施例中,计算机系统、子系统或设备可以通过网络进行通信。在此类情况下,一个计算机可视为客户端,且另一计算机可视为服务器,其中每台计算机可以是同一计算机系统的一部分。客户端和服务器可以各自包括多个系统、子系统或组件。
应理解,本发明的任何实施例都可以使用硬件(例如,专用集成电路或现场可编程门阵列)和/或使用计算机软件以控制逻辑的形式实施,其中通用可编程处理器是模块化的或集成的。如本文所用,处理器包括单核处理器、在同一集成芯片上的多核处理器,或在单个电路板上或网络化的多个处理单元。基于本公开和本文中所提供的教示,本领域的普通技术人员将知道并且了解使用硬件和硬件与软件的组合来实施本发明的实施例的其它方式和/或方法。
本申请中描述的任何软件组件或功能可实施为使用例如Java、C、C++、C#、Objective-C、Swift的任何合适的计算机语言或例如Perl或Python的脚本语言使用例如常规的或面向对象的技术由处理器执行的软件代码。软件代码可作为一系列指令或命令存储在计算机可读介质上以供存储和/或发送,合适的介质包括随机存取存储器(RAM)、只读存储器(ROM)、例如硬盘驱动器或软盘的磁性介质,或例如光盘(CD)或数字通用盘(DVD)的光学介质、快闪存储器等。计算机可读介质可以是此类存储或发送装置的任何组合。
此类程序还可以使用适应于经由包括互联网的符合多种协议的有线、光学和/或无线网络进行发送的载波信号来编码和发送。因此,根据本发明的实施例的计算机可读介质可以使用以此类程序编码的数据信号来创建。以程序代码编码的计算机可读介质可与兼容装置一起封装或与其它装置分开提供(例如,经由互联网下载)。任何此类计算机可读介质可以驻留于单个计算机产品(例如,硬盘驱动器、CD或整个计算机系统)上或内,且可存在于系统或网络内的不同计算机产品上或内。计算机系统可以包括用于将本文中所提及的任何结果提供给用户的监视器、打印机或其它合适的显示器。
本文所述的任何方法可以完全地或部分地用包括可被配置成执行这些步骤的一个或多个处理器的计算机系统执行。因此,实施例可涉及被配置成执行本文所述的任何方法的步骤、可能具有执行相应步骤或相应步骤群组的不同组件的计算机系统。尽管呈现为编号步骤,但本文中的方法的步骤可以同时或以不同顺序被执行。另外,这些步骤的部分可与来自其它方法的其它步骤的部分一起使用。同样,一个步骤的全部或部分可以是可选的。另外,任何方法的任何步骤可以用模块、电路或用于执行这些步骤的其它手段来执行。
在不偏离本发明的实施例的精神和范围的情况下,具体实施例的特定细节可以任何合适方式组合。然而,本发明的其它实施例可涉及与每个单独的方面相关的特定实施例,或者这些单独的方面的特定组合。上文对本发明的示例性实施例的描述已经出于说明和描述的目的呈现。不旨在是详尽的,或将本发明局限到描述的精确形式,根据上文的教导许多修改和变形是可能的。选择和描述这些实施例是为了最好地解释本发明的原理及其实际应用,由此使本领域的技术人员能够在各种实施例中最好地利用本发明,并且进行适合于预期的特定用途的各种修改。
以上描述是说明性的而不是限制性的。在本领域技术人员阅读了本公开之后,本发明的许多变体对于他们会变得显而易见。因此,本发明的范围不应该参考上面的描述来确定,而是应该参考待决的权利要求及其完整范围或等同物来确定。
在不偏离本发明的范围的情况下,任何实施例的一个或多个特征可以与任何其它实施例的一个或多个特征组合。
除非明确指示有相反的意思,否则叙述“一”或“所述”旨在表示“一个或多个”。除非明确指示有相反的意思,“或”的使用旨在表示是“包括性的或”,而不是“排他性的或”。
本文中所提及的所有专利、专利申请、公开和描述是出于所有目的而以全文引用的方式并入。并非承认它们是现有技术。

Claims (21)

1.一种方法,包括:
由网关计算机在资源提供商计算机与用户装置之间的交互期间,从边缘计算机接收令牌,其中所述资源提供商计算机将所述令牌发送给所述边缘计算机;
由所述网关计算机确定数据项,所述数据项包括数据库中与所述令牌相关联的第一密文和第二密文;
由所述网关计算机将所述第二密文发送给所述边缘计算机,其中所述边缘计算机通过对所述第二密文进行重新加密来产生重新加密的第二密文;
由所述网关计算机从所述边缘计算机接收所述重新加密的第二密文;
由所述网关计算机用网关计算机私钥对所述重新加密的第二密文进行解密以获得密码密钥;
由所述网关计算机用所述密码密钥对所述第一密文进行解密以获得凭证;以及
由所述网关计算机将所述凭证发送给授权实体计算机,其中所述授权实体计算机确定是否对所述交互授权。
2.根据权利要求1所述的方法,其中所述边缘计算机使用重新加密密钥来产生所述重新加密的第二密文,并且其中所述重新加密密钥对应于代理重新加密方案。
3.根据权利要求1所述的方法,还包括:
由所述网关计算机从所述边缘计算机接收交互数据;以及
在由所述网关计算机将所述凭证发送给所述授权实体计算机之前,由所述网关计算机基于所述交互数据和所述凭证评估所述交互。
4.根据权利要求1所述的方法,其中所述数据库包括令牌库,其中所述网关计算机将多个数据项存储在所述令牌库中,所述多个数据项包括多个第一密文和多个第二密文,所述多个数据项对应于多个令牌。
5.根据权利要求1所述的方法,其中所述授权实体计算机包括与所述用户装置的用户以及所述凭证相关联的发行方计算机。
6.根据权利要求1所述的方法,其中所述用户装置在所述资源提供商计算机将所述令牌发送给所述边缘计算机之前将所述令牌发送给所述资源提供商计算机。
7.根据权利要求1所述的方法,其中所述边缘计算机包括云计算网络中的计算机。
8.根据权利要求1所述的方法,其中所述令牌包括所述数据项的散列测量值。
9.根据权利要求8所述的方法,还包括:
由所述网关计算机将所述第一密文发送给所述边缘计算机,其中所述边缘计算机使用散列函数、所述第一密文和所述第二密文来产生所述数据项的所述散列测量值,并且其中所述边缘计算机通过将所述散列测量值与所述令牌进行比较来验证所述数据项。
10.根据权利要求1所述的方法,其中:
所述边缘计算机通过用重新加密密钥对所述第二密文进行重新加密来产生所述重新加密的第二密文;
所述重新加密密钥由令牌服务器计算机创建并且对应于所述网关计算机;并且
所述重新加密密钥是基于网关计算机公钥和令牌服务器计算机私钥。
11.根据权利要求10所述的方法,其中:
所述重新加密密钥是多个重新加密密钥中的一个;
所述网关计算机是多个网关计算机中的一个;
多个网关标识符对应于所述多个网关计算机;
所述多个重新加密密钥对应于所述多个网关计算机;并且
在通过用重新加密密钥对所述第二密文进行重新加密来产生所述重新加密的第二密文之前,所述边缘计算机基于所述多个网关标识符中与所述网关计算机相关联的网关标识符标识所述重新加密密钥。
12.根据权利要求10所述的方法,其中所述令牌服务器计算机将所述重新加密密钥发送给所述边缘计算机,或其中所述方法还包括:
由所述网关计算机将所述重新加密密钥发送给所述边缘计算机。
13.根据权利要求1所述的方法,还包括:
在所述资源提供商计算机与所述用户装置之间的所述交互之前,由所述网关计算机从所述资源提供商计算机接收所述凭证;
由所述网关计算机将所述凭证发送给令牌服务器计算机,其中所述令牌服务器计算机生成包括所述第一密文和所述第二密文的所述数据项,并且其中所述令牌服务器计算机将所述数据项发送给所述网关计算机;
由所述网关计算机从所述令牌服务器计算机接收所述数据项;
由所述网关计算机使用散列函数和所述数据项来生成令牌,其中所述令牌包括所述数据项的散列测量值;
由所述网关计算机将所述数据项与所述令牌相关联地存储在所述数据库中;以及
由所述网关计算机将所述令牌发送给所述资源提供商计算机,其中所述资源提供商计算机存储所述令牌。
14.根据权利要求13所述的方法,其中所述令牌服务器计算机对应于与所述用户装置的用户相关联的发行实体。
15.一种网关计算机,包括:处理器;以及
耦合到所述处理器的非瞬态计算机可读介质,所述非瞬态计算机可读介质包括能由所述处理器执行以实施上根据权利要求1至14中任一项所述的方法的代码。
16.一种方法,包括:
作为资源提供商计算机与用户装置之间的交互的一部分,由边缘计算机从所述资源提供商计算机接收令牌;
由所述边缘计算机基于所述令牌标识网关计算机;
由所述边缘计算机将所述令牌发送给所述网关计算机,其中所述网关计算机标识数据项,所述数据项包括数据库中对应于所述令牌的第一密文和第二密文;
由所述边缘计算机从所述网关计算机接收所述第二密文;
由所述边缘计算机通过使用重新加密密钥对所述第二密文进行重新加密来产生重新加密的第二密文;以及
由所述边缘计算机将所述重新加密的第二密文发送给所述网关计算机,其中所述网关计算机通过使用网关计算机私钥对所述重新加密的第二密文进行解密来产生密码密钥,通过使用所述密码密钥对所述第一密文进行解密来产生凭证,并将所述凭证发送给授权实体计算机,其中所述授权实体计算机确定是否对所述交互授权。
17.根据权利要求16所述的方法,还包括:
由所述边缘计算机从所述网关计算机接收所述第一密文;
由所述边缘计算机生成所述第一密文和所述第二密文的散列测量值;以及
由所述边缘计算机通过将所述令牌与所述散列测量值进行比较来验证所述令牌。
18.根据权利要求16所述的方法,还包括:
由所述边缘计算机从令牌服务器计算机接收所述重新加密密钥,其中所述重新加密密钥由所述令牌服务器计算机生成,并且其中所述重新加密密钥是基于令牌服务器计算机私钥和网关计算机公钥。
19.根据权利要求16所述的方法,其中:
所述重新加密密钥是多个重新加密密钥中的一个;
所述多个重新加密密钥对应于多个网关计算机;
所述多个网关计算机对应于多个网关标识符;并且
所述方法还包括由所述边缘计算机基于所述多个网关标识符中与所述网关计算机相关联的网关标识符标识所述重新加密密钥。
20.根据权利要求19所述的方法,还包括:
由所述边缘计算机从所述网关计算机或令牌服务器计算机接收无服务器函数,其中所述边缘计算机使用所述无服务器函数基于所述网关标识符来标识所述重新加密密钥并产生所述重新加密的第二密文。
21.一种边缘计算机,包括:
处理器;以及耦合到所述处理器的非瞬态计算机可读介质,所述非瞬态计算机可读介质包括代码,所述代码能由所述处理器执行以实施包括以下操作的方法:
作为资源提供商计算机与用户装置之间的交互的一部分,从所述资源提供商计算机接收令牌;
基于所述令牌标识网关计算机;
向所述网关计算机发送所述令牌,其中所述网关计算机标识数据项,所述数据项包括数据库中对应于所述令牌的第一密文和第二密文;
从所述网关计算机接收所述第二密文;
通过使用重新加密密钥对所述第二密文进行重新加密来产生重新加密的第二密文;以及
将所述重新加密的第二密文发送给所述网关计算机,其中所述网关计算机通过使用网关计算机私钥对所述重新加密的第二密文进行解密来产生密码密钥,通过使用所述密码密钥对所述第一密文进行解密来产生凭证,并将所述凭证发送给授权实体计算机,其中所述授权实体计算机确定是否对所述交互授权。
CN202080059538.3A 2019-08-30 2020-01-30 网关不可知令牌化 Pending CN114270780A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962894057P 2019-08-30 2019-08-30
US62/894,057 2019-08-30
PCT/US2020/015797 WO2021040784A1 (en) 2019-08-30 2020-01-30 Gateway agnostic tokenization

Publications (1)

Publication Number Publication Date
CN114270780A true CN114270780A (zh) 2022-04-01

Family

ID=74685722

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080059538.3A Pending CN114270780A (zh) 2019-08-30 2020-01-30 网关不可知令牌化

Country Status (4)

Country Link
US (1) US20220329414A1 (zh)
EP (1) EP4022871A4 (zh)
CN (1) CN114270780A (zh)
WO (1) WO2021040784A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022085321A (ja) * 2020-11-27 2022-06-08 ブラザー工業株式会社 通信システム、端末装置のためのコンピュータプログラム、第1の通信装置、及び、第2の通信装置
US11805127B1 (en) * 2021-04-16 2023-10-31 Citicorp Credit Services, Inc. (Usa) Processing tokens in identity assertions for access control to resources
CN113285999A (zh) * 2021-05-18 2021-08-20 中云汇(成都)物联科技有限公司 边缘计算系统及控制方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1782265A2 (en) * 2004-07-30 2007-05-09 Lehman Brothers Inc. System and method for secure network connectivity
WO2008156452A1 (en) * 2007-06-15 2008-12-24 Koolspan, Inc. System and method of per-packet keying
US20090006865A1 (en) * 2007-06-28 2009-01-01 Michael Zunke Efficient Remotely-Keyed Symmetric Cryptography For Digital Rights Management
US20110119481A1 (en) * 2009-11-16 2011-05-19 Microsoft Corporation Containerless data for trustworthy computing and data services
US20110145593A1 (en) * 2009-12-15 2011-06-16 Microsoft Corporation Verifiable trust for data through wrapper composition
US20130179679A1 (en) * 2012-01-06 2013-07-11 Ioannis Broustis Methods And Apparatuses For Secure Information Sharing In Social Networks Using Randomly-Generated Keys
US20150163056A1 (en) * 2013-11-19 2015-06-11 John A. Nix Embedded Universal Integrated Circuit Card Supporting Two-Factor Authentication
US20180359100A1 (en) * 2014-07-23 2018-12-13 Ajit Gaddam Systems and methods for secure detokenization
US20190188696A1 (en) * 2016-08-12 2019-06-20 Visa International Service Association Mirrored token vault
WO2019147251A1 (en) * 2018-01-25 2019-08-01 Visa International Service Association Token offline provisioning

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9864874B1 (en) * 2014-05-21 2018-01-09 Amazon Technologies, Inc. Management of encrypted data storage
US9674158B2 (en) * 2015-07-28 2017-06-06 International Business Machines Corporation User authentication over networks

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1782265A2 (en) * 2004-07-30 2007-05-09 Lehman Brothers Inc. System and method for secure network connectivity
WO2008156452A1 (en) * 2007-06-15 2008-12-24 Koolspan, Inc. System and method of per-packet keying
US20090006865A1 (en) * 2007-06-28 2009-01-01 Michael Zunke Efficient Remotely-Keyed Symmetric Cryptography For Digital Rights Management
US20110119481A1 (en) * 2009-11-16 2011-05-19 Microsoft Corporation Containerless data for trustworthy computing and data services
US20110145593A1 (en) * 2009-12-15 2011-06-16 Microsoft Corporation Verifiable trust for data through wrapper composition
US20130179679A1 (en) * 2012-01-06 2013-07-11 Ioannis Broustis Methods And Apparatuses For Secure Information Sharing In Social Networks Using Randomly-Generated Keys
US20150163056A1 (en) * 2013-11-19 2015-06-11 John A. Nix Embedded Universal Integrated Circuit Card Supporting Two-Factor Authentication
US20180359100A1 (en) * 2014-07-23 2018-12-13 Ajit Gaddam Systems and methods for secure detokenization
US20190188696A1 (en) * 2016-08-12 2019-06-20 Visa International Service Association Mirrored token vault
WO2019147251A1 (en) * 2018-01-25 2019-08-01 Visa International Service Association Token offline provisioning

Also Published As

Publication number Publication date
EP4022871A1 (en) 2022-07-06
EP4022871A4 (en) 2022-11-02
US20220329414A1 (en) 2022-10-13
WO2021040784A1 (en) 2021-03-04

Similar Documents

Publication Publication Date Title
US11710120B2 (en) Secure remote payment transaction processing including consumer authentication
US20200336315A1 (en) Validation cryptogram for transaction
US9967090B2 (en) Efficient methods for protecting identity in authenticated transmissions
US20200021441A1 (en) Methods for secure credential provisioning
RU2710897C2 (ru) Способы безопасного генерирования криптограмм
Tiwari et al. A multi-factor security protocol for wireless payment-secure web authentication using mobile devices
KR102119895B1 (ko) 보안 원격 지불 거래 처리
Ramana et al. A three-level gateway protocol for secure M-commerce transactions using encrypted OTP
CN110050435A (zh) 用于安全消息收发的密钥对基础架构
JP2018522353A (ja) サーバベースド支払のための認証システム及び方法
EP1984890A2 (en) A point-of-sale terminal transaction using mutating identifiers
US20220329414A1 (en) Gateway agnostic tokenization
Sekhar et al. Secure lightweight mobile payment protocol using symmetric key techniques
CN112074835A (zh) 执行安全操作的技术
CN112970225A (zh) 高效可信的通信系统和方法
Sung et al. Mobile Payment Based on Transaction Certificate Using Cloud Self‐Proxy Server
Ahamad et al. A new mobile payment system with formal verification
WO2022154789A1 (en) Token-based off-chain interaction authorization
Islam et al. A PKI Enabled Authentication Protocol for Secure E-Payment Framework

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