CN114207578A - 移动应用程序集成 - Google Patents
移动应用程序集成 Download PDFInfo
- Publication number
- CN114207578A CN114207578A CN202080056092.9A CN202080056092A CN114207578A CN 114207578 A CN114207578 A CN 114207578A CN 202080056092 A CN202080056092 A CN 202080056092A CN 114207578 A CN114207578 A CN 114207578A
- Authority
- CN
- China
- Prior art keywords
- software module
- mobile device
- token
- user
- software
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/322—Aspects of commerce using mobile devices [M-devices]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/326—Payment applications installed on the mobile devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/327—Short range or proximity payments by means of M-devices
- G06Q20/3276—Short range or proximity payments by means of M-devices using a pictured code, e.g. barcode or QR-code, being read by the M-device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/08—Access security
- H04W12/084—Access security using delegated authorisation, e.g. open authorisation [OAuth] protocol
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/69—Identity-dependent
- H04W12/71—Hardware identity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/69—Identity-dependent
- H04W12/77—Graphical identity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/50—Service provisioning or reconfiguring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0861—Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Abstract
公开了使用单个装置实现交易处理的方法和系统。一种移动装置可以存储包括第一软件模块和第二软件模块的应用程序。一个模块可以执行接受处理,而另一软件模块可以模拟与用户相关联的交易装置。可以获取对应于一个或多个实体物品的一个或多个标识符(例如,QR码、条形码)。可以经由所述移动装置请求授权。作为响应,数据可以在所述软件模块之间交换,并且可以将此数据(例如,交易数据、支付令牌、密码等)提供给远程计算机(例如,基于云的接受服务),所述远程计算机可以生成用于所述交易的授权请求消息。
Description
相关申请交叉引用
本申请是2019年8月8日提交的第62/884,432号美国临时申请的PCT申请并且主张所述美国临时申请的权益,出于所有目的将所述美国临时申请以全文引用的方式并入本文中。
背景技术
移动装置能力的进步使得例如智能电话之类的移动装置能够用作进行非接触式交易的工具。例如,移动装置可以放置在访问装置(例如,POS终端或交通(transit)终端)附近,以将账户信息从移动装置传输到访问装置以进行交易。在例如此交易之类的常规交易中,移动装置的用户需要拿取待获得的任何物品,然后将其带到访问装置以进行交易。这可能繁琐且耗时,尤其是在访问装置处存在排队的情况下。
还开发了其它方式以便能够更快地处理资源的获取。例如,一些移动电话应用程序可以允许用户进行交易,即使在例如商家之类的资源提供商处也是如此。然而,可以实现此情况的方法和系统不是那么安全(与使用存储有凭证的实体卡进行的交易相比)。在此类情况下,用户的凭证可以作为存档凭证存储在远程计算机上。当这样做时,远程计算机可能遭到黑客攻击,并且需要具有严格的数据存储要求。
本发明的实施例单独地以及共同地解决了这些问题和其它问题。
发明内容
本发明的一个实施例涉及一种方法。所述方法包括在移动装置上在第一软件模块处接收与所述移动装置外部的一个或多个实体物品相关联的一个或多个标识符。所述移动装置包括被配置成执行接受处理的所述第一软件模块和被配置成模拟与用户相关联的用户装置的第二软件模块。所述一个或多个标识符由所述移动装置使用输入组件读取。然后,所述第一软件模块可以接收要发起授权请求的指示。然后,所述移动装置的所述第一软件模块和所述第二软件模块通过首先由所述第一软件模块将包括交互数据的API调用提供给所述第二软件模块并且其次由所述第一软件模块从所述第二软件模块接收包括令牌的API响应,来交换与所述一个或多个实体物品相关联的所述交互数据和与所述用户相关联的所述令牌。然后,所述第一软件模块将所述交互数据和与所述用户相关联的所述令牌发送给远程计算机,以使所述远程计算机生成包括所述交互数据和所述令牌的授权请求消息。
本发明的另一实施例涉及一种移动装置,其包括一个或多个处理器以及存储计算机可执行指令的一个或多个存储器,所述计算机可执行指令在由所述一个或多个处理器执行时使得所述移动装置执行以下操作。所述移动装置包括被配置成执行接受处理的第一软件模块和被配置成模拟与用户相关联的用户装置的第二软件模块。所述操作包括在所述移动装置上的所述第一软件模块处接收与所述移动装置外部的一个或多个实体物品相关联的一个或多个标识符。所述一个或多个标识符可以由所述移动装置使用输入组件读取。所述操作还包括所述第一软件模块接收要发起授权请求的指示。然后,所述移动装置的所述第一软件模块和所述第二软件模块可以交换与所述一个或多个实体物品相关联的交互数据和与所述用户相关联的令牌。所述交换可以由将包括所述交互数据的API调用提供给所述第二软件模块的所述第一软件模块执行。然后,所述第一软件模块从所述第二软件模块接收包括所述令牌的API响应。在交换之后,所述第一软件模块将所述交互数据和与所述用户相关联的所述令牌发送给远程计算机,以使所述远程计算机生成包括所述交互数据和所述令牌的授权请求消息。
本发明的另一实施例涉及一种包括远程计算机和移动装置的系统。所述移动装置包括一个或多个处理器和存储计算机可执行指令的一个或多个存储器,所述计算机可执行指令在由所述一个或多个处理器执行时使得所述移动装置执行以下操作。所述移动装置包括被配置成执行接受处理的第一软件模块和被配置成模拟与用户相关联的用户装置的第二软件模块。所述移动装置上的所述第一软件模块接收与所述移动装置外部的一个或多个实体物品相关联的一个或多个标识符。所述一个或多个标识符由所述移动装置使用输入组件读取。所述第一软件模块接收要发起授权请求的指示。所述移动装置的所述第一软件模块和所述第二软件模块交换与所述一个或多个实体物品相关联的交互数据和与所述用户相关联的令牌。所述第一软件模块和所述第二软件模块可以通过所述第一软件模块将包括所述交互数据的API调用提供给所述第二软件模块并且接着从所述第二软件模块接收包括所述令牌的API响应来交换所述数据。所述操作还包括所述第一软件模块将所述交互数据和与所述用户相关联的所述令牌发送给所述远程计算机,以使所述远程计算机生成包括所述交互数据和所述令牌的授权请求消息。
关于本发明的实施例的其它细节可以参见具体实施方式和附图。
附图说明
图1示出说明根据实施例的基于云的交易系统100的框图。
图2示出说明根据实施例的交互处理方法的流程图。
图3示出说明根据实施例的第一软件模块与第二软件模块之间的通信细节的流程图。
图4示出根据实施例的建筑物接入系统的框图。
具体实施方式
在论述本发明的实施例之前,可以进一步详细描述一些术语。
“移动装置”可以是由用户操作的装置。用户装置的实例可以包括移动电话、智能电话、卡、个人数字助理(PDA)、笔记本电脑、台式计算机、服务器计算机、例如汽车等车辆、精简客户端装置、平板PC等。另外,用户装置可以是任何类型的可穿戴技术装置,例如,手表、耳机、眼镜等。用户装置可以包括能够处理用户输入的一个或多个处理器。用户装置还可以包括用于接收用户输入的一个或多个输入传感器。如本领域已知的,有能够检测用户输入的各种输入传感器,例如加速度计、照相机、麦克风等。由输入传感器获得的用户输入可以来自各种数据输入类型,包括但不限于,音频数据、视觉数据或生物特征数据。用户装置可以包括用户可以操作的任何电子装置,所述电子装置还可以提供与网络的远程通信能力。远程通信能力的实例包括使用移动手机(无线)网络、无线数据网络(例如,3G、4G或类似网络)、Wi-Fi、Wi-Max,或可提供对例如互联网或专用网络等网络的访问的任何其它通信介质。
“用户装置”可以包括可由用户操作的任何合适的装置。例如,用户装置可以用来进行金融交易,例如将支付凭证提供给商家。合适的用户装置可以是手持式并且紧凑的,使得它们能够放到用户的钱包和/或口袋中(例如,口袋大小)。示例用户装置可包括智能卡、密钥链装置(例如可购自Exxon-Mobil公司的SpeedpassTM)等。用户装置的其它实例包括支付卡、智能媒介、应答器等。如果用户装置的形式是借记卡、信用卡或智能卡,则用户装置还可以可选地具有例如磁条这样的特征。此类装置可在接触式或非接触式模式下操作。
“交互”可以包括互惠作用或影响。“交互”可以包括各方、各装置和/或各实体之间的通信、联系或交换。示例交互包括两方之间的交易和两个装置之间的数据交换。在一些实施例中,交互可以包括用户请求访问安全数据、安全网页、安全位置等。在其它实施例中,交互可以包括支付交易,在所述支付交易中,两个装置可以交互以促进支付。
“交互数据”可以包括与交互相关的数据和/或在交互期间记录的数据。在一些实施例中,交互数据可以是交易数据。交互数据可以包括用于处理和完成交互的数据。例如,交互数据可以包括金额(例如,交易金额、数据量和时间量等)。交互数据可以包括交易代码、货币代码、日期和/或时间、资源提供商标识符和/或在交互中使用的任何其它合适的数据。交互数据可以包括值或量、与第一方相关联的信息(例如,别名、标识符、联系人地址等)、与第二方相关联的信息(例如,别名、装置标识符、联系人地址等)、一次性值(例如,随机值、临时值、时间戳、计数等)和/或任何其它合适的信息。
“凭证”可以是充当价值、所有权、身份或权限的可靠证据的任何合适的信息。凭证可以是一串数字、字母或任何其它合适的字符,以及可充当确认的任何对象或文档。
“支付凭证”可以包括与账户(例如支付账户和/或与账户相关联的交易装置)相关联的任何合适的信息。此类信息可以与账户直接相关,或可以源自与账户相关的信息。账户信息的实例可以包括主账号或“账号”(PAN)、用户姓名、到期日期,以及例如卡验证值(CVV)、dCVV、CVV2、dCVV2和卡验证代码3(CVC3)值之类的验证值。
“令牌”可以是凭证的替代值。令牌可以是一串数字、字母或任何其它合适的字符。令牌的实例包括支付令牌、访问令牌、个人标识令牌等。例如,令牌可以包括账户的标识符,所述标识符是账户标识符的替代,例如主账号(PAN)。例如,令牌可以包括可以用作原始账户标识符的替代的一系列字母数字字符。举例来说,令牌“4900 0000 0000 0001”可代替PAN“4147 09000000 1234”使用。在一些实施例中,令牌可以是“保留格式的”,并且可具有与现有交易处理网络中使用的账户标识符一致的数字格式(例如,ISO8583金融交易消息格式)。在一些实施例中,令牌可以用于代替PAN来发起、授权、结算或解决交易,或在通常将提供原始凭证的其它系统中表示原始凭证。在一些实施例中,可以将令牌值生成为不可以通过计算方式取得由令牌值对PAN或其它账户标识符的恢复。此外,在一些实施例中,令牌格式可被配置成允许接收令牌的实体将其标识为令牌,并标识发行令牌的实体。
“用户”可以包括个人。在一些实施例中,用户可与一个或多个个人账户和/或移动装置相关联。在一些实施例中,用户也可被称为持卡人、账户持有人或消费者。
“资源提供商”可以是可以提供例如商品、服务、信息和/或位置之类的资源的实体。资源提供商的实例包括商家、数据提供商、交通部分、政府实体、场地和住宅运营商等。“商家”通常可以是参与交易并且可以出售商品或服务或提供对商品或服务的访问的实体。
“实体物品”可以包括有形和/或可见对象。实体物品可以是由资源提供商在资源提供商位置提供的资源(例如,在商店中列出要购买的实体物品)。实体物品的实例可以是盒子、上面有印刷物的纸、例如家用电器之类的对象等。在一些实施例中,实体物品可以具有印刷在实体物品的表面上的标识符。
“收单方”通常可以是与特定商家或其它实体具有业务关系的业务实体(例如,商业银行)。一些实体可执行发行方和收单方两者的功能。一些实施例可以涵盖此类单个实体发行方-收单方。收单方可以操作收单方计算机,其也可一般称为“传输计算机”。
“授权实体”可以是授权请求的实体。授权实体的实例可以是发行方、政府机构、文档存储库、访问管理员等等。授权实体可以操作授权计算机。
“发行方”通常可以指代维护用户的账户的企业实体(例如,银行)。发行方还可向用户发行存储在例如蜂窝电话、智能卡、平板电脑或笔记本电脑等便携式装置上的支付凭证。
“访问装置”可以是提供对远程系统的访问的任何合适的装置。访问装置还可以用于与商家计算机、交易处理计算机、认证计算机或任何其它合适的系统通信。访问装置通常可位于任何合适的位置处,例如位于商家所在位置处。访问装置可呈任何合适的形式。访问装置的一些实例包括POS或销售点装置(例如,POS终端)、蜂窝电话、PDA、个人计算机(PC)、平板PC、手持式专用读取器、机顶盒、电子现金出纳机(ECR)、自动柜员机(ATM)、虚拟现金出纳机(VCR)、营业亭、安全系统、访问系统等。访问装置可以使用任何合适的接触式或非接触式操作模式,以发送或接收来自移动通信装置或交易装置的数据或者与移动通信装置或交易装置相关联的数据。在访问装置可以包括POS终端的一些实施例中,可使用任何合适的POS终端并且其可以包括读取器、处理器和计算机可读介质。读取器可包括任何合适的接触式或非接触式操作模式。例如,示例性读卡器可以包括射频(RF)天线、光学扫描器、条形码读取器或磁条读取器,以与交易装置和/或移动装置交互。在一些实施例中,用作POS终端的蜂窝电话、平板或其它专用无线装置可以被称为移动销售点或“mPOS”终端。
“授权请求消息”可以是请求对交易的授权的电子消息。在一些实施例中,所述消息被发送给交易处理计算机和/或支付卡的发行方,以请求对交易进行授权。根据一些实施例的授权请求消息可符合ISO 8583,所述ISO 8583是针对交换与用户使用交易装置或支付账户进行的支付相关联的电子交易信息的系统的标准。授权请求消息可以包括可与交易装置或支付账户相关联的发行方账户标识符。授权请求消息还可以包括与“标识信息”对应的额外数据元素,只作为实例包括:服务代码、卡验证值(CVV)、动态卡验证值(dCVV)、主账号或“账号”(PAN)、支付令牌、用户名、到期日期等。授权请求消息还可以包括“交易信息”,例如与当前交易相关联的任何信息,例如交易金额、商家标识符、商家位置、收单方银行标识号(BIN)、卡接受器ID、标识被购买的实体物品的信息等,以及可以用来确定是否标识和/或授权交易的任何其它信息。
“授权响应消息”可以是响应于授权请求的消息。在一些情况下,授权响应消息可以是由发行金融机构或交易处理计算机生成的对授权请求消息的电子消息应答。仅借助于实例,授权响应消息可以包括以下状态指示符中的一个或多个:批准-交易被批准;拒绝-交易不被批准;或呼叫中心-响应等待更多信息,商家必须呼叫免费授权电话号码。授权响应消息还可以包括授权代码,其可以是信用卡发行银行响应于电子消息中的授权请求消息(直接地或通过交易处理计算机)返回给商家的访问装置(例如,PA设备)的指示交易被批准的代码。所述代码可以充当授权的证据。
“规则引擎”可以是能够执行规则的计算机代码。在一些实施例中,瘦客户端上可以存在规则引擎。规则引擎可以处理来自远程计算机和送至远程计算机的链接消息和链接事件。在一些实施例中,规则引擎可以基于从远程计算机或任何其它合适的装置获取的规则作出有限的局部决策。在其它实施例中,规则可以从远程计算机发送给瘦客户端上的规则引擎。
“配置数据”可以限定一组规则。例如,配置数据可以限定与交互处理相关联的一组规则。例如,配置数据可以包括用于在第一软件模块与第二软件模块之间处理的交互的交互脚本/规则和/或配置信息。例如,在接收到配置数据时,可根据配置数据配置第一软件模块(例如,准备以基于从远程计算机接收的交易脚本/规则和/或配置信息而处理交互)。
“远程计算机”可以包括不靠近另一计算机的计算机。远程计算机的实例可以是位于远离尝试与网络服务器通信的客户端计算机的网络服务器。
“应用程序”可以包括为满足用户的特定目的而设计和编写的程序和/或一款软件。应用程序可以与计算机(例如,移动装置)及其系统软件捆绑在一起,或可以单独发布。系统软件涉及运行计算机本身。应用程序可以包括一个或多个软件模块,所述一个或多个软件模块可以将功能提供给应用程序。例如,应用程序可以包括两个软件模块,所述两个软件模块可以经由应用程序编程接口(API)彼此通信。为移动平台(例如,移动装置)构建的应用程序可被称为移动应用程序。
“软件模块”可以包括应用程序的一部分。应用程序可以包括一个或多个独立开发的软件模块,所述软件模块在链接并完成应用程序之前不可组合。软件模块可以包括一个或多个例程。例如,软件模块可以包封代码和数据以实施特定功能。软件模块可以与期望其接口的另一软件模块(例如,经由API)插接式连接。
“应用程序编程接口”或“API”可以包括限定多个软件模块之间的交互的计算接口。API可以限定可以进行的API调用和/或API请求的类型、如何进行API调用和/或API请求、应该使用的数据格式、遵循的惯例等。通过信息隐藏,支持API的模块化编程,这允许独立于实施方案使用应用程序编程接口。换句话说,第二软件模块可以通过仅通过应用程序编程接口将特定信息暴露于第一软件模块而从第一软件模块隐藏信息。
“接受处理”可以包括交互的处理接受。接受处理可以包括任何合适的主动步骤,这些步骤可以出于提供例如对位置、或商品或服务的访问的资源的目的而促进凭证的接受。
“服务器计算机”可以包括功能强大的计算机或计算机群集。例如,服务器计算机可以是大型主机、小型计算机集群或像单元一样工作的一组服务器。在一个实例中,服务器计算机可以是耦合到网络服务器的数据库服务器。服务器计算机可以耦合到数据库,并且可包括用于服务于来自一个或多个客户端计算机的请求的任何硬件、软件、其它逻辑或前述内容的组合。服务器计算机可以包括一个或多个计算设备,且可以使用多种计算结构、布置和编译中的任一种来服务来自一个或多个客户端计算机的请求。
“处理器”可以指任何合适的一个或多个数据计算装置。处理器可以包括一起工作以实现所要功能的一个或多个微处理器。处理器可以包括CPU,所述CPU包括至少一个高速数据处理器,所述高速数据处理器足以执行用于执行用户和/或系统生成的请求的程序组件。CPU可以是微处理器,例如AMD的Athlon、Duron和/或Opteron;IBM和/或Motorola的PowerPC;IBM和Sony的Cell处理器;Intel的Celeron、Itanium、Pentium、Xeon和/或XScale;和/或类似处理器。
“存储器”可以是可存储电子数据的任何合适的一个或多个装置。合适的存储器可包括非瞬态计算机可读介质,其存储可由处理器执行以实现所要方法的指令。存储器的实例可包括一个或多个存储器芯片、磁盘驱动器等。此类存储器可以使用任何合适的电、光和/或磁操作模式来操作。
各种实施例提供在用户装置上的单个移动应用中安全地提供第一软件模块和第二软件模块的系统和方法。第一软件模块作为瘦客户端执行,所述瘦客户端能够在第二软件模块与远程计算机(例如,云中内核(Kernel-in-the-cloud)接受服务)之间进行数据交换(例如,卡数据、终端数据等的交换)。第二软件模块被配置成管理凭证、令牌、受限使用密钥和/或对应于用户装置的用户的任何合适的数据。第一软件模块和第二软件模块使用API调用和API响应彼此直接通信。由实施例提供的此系统允许用户使用用户装置扫描实体物品的标识符,并且激活第一软件模块以获得对实体物品(例如,安全位置、产品、服务、安全数据等)的访问权。第一软件模块和第二软件模块交换与一个或多个实体物品相关联的交互数据和与用户相关联的令牌。可以将令牌从第二软件模块提供给第一软件模块,使得第一软件模块将令牌和交互数据提供给远程计算机。远程计算机从授权实体计算机请求对交互的授权,并且将授权响应消息提供回到第一软件模块。第一软件模块可以将交互是否被授权通知给用户装置的用户。
实施例提供多个技术优势。例如,用户可以使用单个装置扫描实体物品的标识符以请求访问实体物品的授权。用户不需要亲自与资源提供商通信来访问实体物品。此外,用户不需要将其用户装置或其它用户装置(例如,支付卡)提供给访问装置(例如,销售点终端、安全位置的门卡读取器等)。使用用户的凭证(例如,令牌)执行交互,以获得在第一软件模块与第二软件模块之间的用户装置上的一个或多个实体物品。此外,实施例可以使用特定API以允许第一软件模块和第二软件模块彼此通信,并且通信使用与由用户在例如销售点终端之类的访问装置处与例如支付卡之类的用户装置进行的安全的当面交易相关联的协议和数据集。这允许用户方便地进行电子商务交易,同时保持了使用例如支付卡之类的实体用户装置的常规当面交易的安全性。
图1示出根据一些实施例的基于云的交易系统100。基于云的交易系统100的核心组件可以包括基于云的平台180和移动应用程序平台170,以管理使用移动装置101进行的基于云的交易。基于云的平台180可以是“远程计算机”,并且可以使用一个或多个计算装置或计算机,例如一个或多个服务器计算机来实施,并且可以与例如授权实体(例如,发行方)、支付处理器和/或其它合适的实体等基于云的服务提供商相关联或由其操作。
为了简单说明起见,在图1中示出一定数量的组件。然而,应理解,对于每种组件,本发明的实施例可以包括不止一个。
在一些实施例中,基于云的平台180可以管理基于云的账户,提供基于云的交易的验证功能,管理来自授权实体计算机172或移动应用程序平台170的生命周期消息,以及发起生命周期管理事件。基于云的平台180还可以使用后支付功能帮助授权实体计算机172减轻针对伪造账户参数的风险,并且限制对存储在装置上的账户参数的暴露。例如,基于云的平台180可用于促进授权实体计算机172对支付交易的周期性后支付验证和/或使用后支付信息来验证账户参数补充请求。
此外,传输计算机174可以促进在基于云的平台180之间的消息(例如,授权请求消息、授权响应消息等)(例如,来自KiC处理软件190)提供给处理网络194。传输计算机174可以由与部署到和/或安装在移动装置101上的应用程序环境110的资源提供商相关联的收单方操作和/或维持。
基于云的平台180还可以实施管理发行方主衍生密钥(MDK)的一组密钥管理功能,可以从所述MDK衍生出用于基于云的交易的受限使用密钥(LUK)。基于云的平台180可以实施一组配置功能,所述一组配置功能管理基于云的账户参数(例如,替代账户标识符或令牌、初始LUK和相关联的密钥索引等)到移动应用程序平台170的准备和递送以用于移动装置101上的移动应用程序112的初始设置。基于云的平台180还可以管理由授权实体计算机172进行处理的基于云的账户,并且可以执行活动账户管理功能,例如根据基于云的平台180风险管理参数基于请求或基于云的账户的风险概况来生成账户参数的功能。基于云的平台180还可以维护每个基于云的账户的账户状态,并且管理账户参数的补充或刷新。
在一些实施例中,基于云的平台180还可以实施或具备对令牌服务182和/或令牌库184的访问。令牌服务182可用于生成、处理和维护令牌,所述令牌是账户标识符的替代标识符。在交易期间,代替使用真实账户标识符(例如,主账号(PAN))来标识用户的账户,可替代地使用令牌来标识账户。通过使用令牌作为账户标识符的替代,可缓解包括真实账户信息的风险。如上文所指示,令牌可具有其自己的用户限制集,并且令牌服务182可根据其使用限制来管理令牌的部署和使用。令牌服务182可与存储所生成的令牌的令牌库184进行通信。具体地说,令牌库184可维护令牌与由令牌表示的真实账户标识符(例如,PAN)之间的映射。在交易处理期间,可查询令牌库184以检取与令牌相关联的真实账户标识符或PAN。
在一些实施例中,装置上(on-device)基于云的交易软件113(其可以是“第二软件模块”的实例)可以被配置成模拟交易装置(例如,智能卡、信用卡、借记卡等)。通常由便携式装置提供的功能(例如,卡与访问装置之间的数据交换)可以由装置上基于云的交易软件113模拟。
在一些实施例中,基于云的平台180还可以实施云中内核接受服务(例如,(KiC)处理软件190)。在一些实施例中,KiC处理软件190可被配置成提供可由移动装置101访问的支付接受服务(例如,经由可以是“第一软件模块”的实例的接受装置软件115)。在一些实施例中,KiC可以包括用于处理由便携式装置(例如,移动装置101)发起的接触式或非接触式交易的功能、逻辑和/或数据。KiC处理软件190可以提供常规地将由访问装置提供的功能。在一些实施例中,KiC处理软件190提供注册功能,所述注册功能使得接受装置软件115能够在KiC处理软件190上注册。一旦注册,接受装置软件115就可用于在装置上基于云的交易软件113与KiC处理软件190之间传递数据。在一些实施例中,接受装置软件115可以作为瘦客户端执行,所述瘦客户端能够在装置上基于云的交易软件113与KiC处理软件190之间进行数据交换(例如,卡数据、终端数据等的交换)。接受装置软件115可以被配置成当由装置上基于云的交易软件113使用的第一通信协议与由KiC处理软件190使用的第二通信协议之间的通信协议不同时,在两者之间转换数据。在一些实施例中,接受装置软件115可以被配置成经由通信网络192(例如,互联网、蜂窝网络、无线网络等)直接与KiC处理软件190通信。然而,在一些实施例中,接受装置软件115可以经由单独的平台(未描绘)与KiC处理软件190通信,所述平台托管在移动装置101处执行的接受装置软件115。尽管被描绘为移动应用程序112的一部分,但接受装置软件115可以作为在移动装置101上执行的不同应用程序的一部分来执行。
在一些实施例中,接受装置软件115可以至少部分地执行为规则引擎。虽然作为规则引擎操作,但接受装置软件115可以处理来自和送至KiC处理软件190的链接消息和链接事件。在一些实施例中,接受装置软件115可以基于从KiC处理软件190或任何其它合适的装置获取或由其提供的规则作出有限的局部决策。因此,根据这些规则,将数据提供给装置上基于云的交易软件113和/或KiC处理软件190和/或从其获取数据所遵循的特定消息协议可以由接受装置软件115执行。这些规则可以按任何合适的格式提供(例如,由KiC处理软件190提供),并且接受装置软件115可以被配置成解释这些规则,以便推动装置上基于云的交易软件113与KiC处理软件190之间的消息传送协议/数据交换。在一些实施例中,接受装置软件115可以被配置成使用KiC处理软件190建立安全信道,使得在两者之间交换的数据是加密且安全的。
在一些实施例中,移动应用程序平台170用于促进在移动装置101上执行的装置上基于云的交易软件113(例如,作为移动应用程序112或单独应用程序的一部分操作)与基于云的交易系统100中的其它实体,例如基于云的平台180和/或授权实体计算机172等之间的通信。移动应用程序平台170可以经由例如互联网之类的通信网络192与移动装置101通信。在一些环境中,移动装置101可能并不总是具有恒定的网络连接,并且因此移动应用程序平台170的一个作用可能是在装置上基于云的交易软件113与基于云的交易系统100中的其它实体之间进行中间请求,以确保在建立与移动装置101的网络连接后,立即满足涉及装置上基于云的交易软件113的请求和响应。移动应用程序平台170可以被称为远程计算机,并且可以使用例如一个或多个服务器计算机之类的一个或多个计算装置或计算机来实施,并且可以与移动应用程序112的提供商相关联或由其操作。移动应用程序112的提供商可以是例如发行方、银行、第三方移动钱包提供商、商家或其它合适的实体。在一些实施例中,移动应用程序平台170可以与与基于云的平台180相同的实体相关联或由其操作,或者它们可以分开。但是移动应用程序平台170在图1中被说明为单独的逻辑实体,因为基于云的平台180在一些情况下无法与移动装置直接通信。尽管在一些使用情况下,基于云的平台180可以与移动装置直接通信(例如,经由接受装置软件115),但应理解,在一些实施例中,移动应用程序平台170的一些或所有功能可以集成为基于云的平台180的一部分。移动应用程序平台170的实例可以包括移动银行平台、移动钱包平台等。
在一些实施例中,当移动装置101经由移动应用程序平台170与基于云的交易系统100中的其它实体通信时,移动应用程序平台170可以实施认证功能以认证移动装置101。认证功能可以确保与系统通信的移动装置是未遭到黑客攻击、未被恶意软件或病毒感染或未以其它方式被破解的授权移动装置和/或移动装置。例如,当移动装置101与移动应用程序平台170通信时,移动应用程序平台170可以执行、请求或促进移动装置101的装置指纹以捕获移动装置101的状态。装置指纹可以例如捕获关于移动装置101的信息,例如操作系统和版本、安装在移动装置101上的应用程序、存储器使用率、移动装置101是否已被破解、例如移动装置标识符之类的装置标识符,和/或其它合适的装置特性。
移动应用程序平台170可以针对与移动装置101建立的每个通信会话或周期性地(例如,每五个通信会话一次、每月一次等)验证移动装置101的装置指纹。如果移动装置的装置指纹指示移动装置不是账户的授权装置(例如,请求补充账户参数的移动装置是与用于登记账户的原始装置不同的装置),或者如果装置指纹指示移动装置可能被黑客攻击,则移动应用程序平台170可以阻止移动装置与系统通信,并且警示发行方移动装置可能已被破解。
移动应用程序平台170可以执行登记功能以将移动持卡人登记到基于云的交易程序中,并且执行促进账户参数、配置和基于云的支付装置阈值参数到移动应用程序112的准备和递送的一组配置功能。移动应用程序平台170可以执行账户参数补充功能以促进在移动装置101上配置的基于云的账户的账户参数补充过程,并且执行管理来自授权实体计算机172、基于云的平台180和/或移动应用程序112的生命周期消息的生命周期管理功能。移动应用程序平台170还可以执行支付后功能以减轻针对伪造账户参数的风险,并且限制对存储在移动装置101上的账户参数的暴露,例如促进对支付交易的周期性后支付验证或使用后支付信息来验证账户参数补充请求。
在基于云的交易系统100中,移动装置101可用于执行由基于云的平台180和/或移动应用程序平台170促进的基于云的交易。移动装置101中的组件可以包括装置硬件103、移动操作系统(OS)114和移动应用程序112所驻存的应用程序环境110。移动应用程序112可以包括多个不同的软件模块(例如,装置上基于云的交易软件113和接受装置软件115),或者提供结合这些软件模块描述的功能的单独应用程序可以包括在应用程序环境110内。装置硬件104可以包括非接触式接口108。非接触式接口108的实例可以包括被配置成使用近场通信(NFC)或其它射频或无线通信协议(例如蓝牙、蓝牙低功耗(BLE)、Wi-Fi、iBeacon等)来发送和接收通信的一个或多个射频(RF)收发器。在一些实施例中,非接触式接口108可以包括非接触式读取器(未示出),或者非接触式接口108可以与非接触式读取器通信。装置硬件104还可以包括网络接口109,所述网络接口可以被配置成经由任何合适的通信协议,例如由通信网络192使用的协议(例如,互联网、蜂窝网络、无线网络等)进行通信。
移动装置101的应用程序环境110可以托管由移动应用程序提供商提供的移动应用程序112的一部分(例如,装置上基于云的交易软件113)。例如,移动应用程序112可以是用户自己的移动应用程序,用户可以从所述移动应用程序与商家进行电子商务交易或销售点交易。在一些实施例中,移动应用程序112可以支持多个商家(例如,经由可单独地由单独的商家托管和/或提供的接受装置软件115的多个实例)。
根据一些实施例,移动应用程序112可以包括装置上基于云的交易软件113。装置上基于云的交易软件113可以呈集成到移动应用程序112中的软件开发套件(SDK)的形式,以支持基于云的交易功能。装置上基于云的交易软件113可以执行功能以促进基于云的交易,以便获取账户参数(例如,LUK和相关联的密钥索引)、生成交易密码,并且将其递送到移动操作系统(OS)114以供经由网络接口109发送。网络接口109可以被配置成使用任何合适的无线通信协议。装置上基于云的交易软件113也可以管理在已经配置账户之后提供的初始服务概况参数(例如,受限使用阈值),以确保发起对账户参数补充和其它账户参数管理的请求。
移动应用程序112可以基于装置上阈值管理参数来执行针对每个基于云的账户管理基于云的账户的风险概况、维护账户状态和补充账户参数的功能。移动应用程序112还可以管理来自授权实体计算机172的生命周期消息或来自移动应用程序平台170的生命周期消息。移动应用程序112可以执行将移动持卡人登记到基于云的交易程序中的一组功能,以及管理从移动应用程序平台170接收的基于云的账户参数和基于云的支付装置阈值参数的接收和配置的一组功能。移动应用程序122还可以为基于云的交易提供消费者装置持卡人验证方法(CDCVM)功能,并且执行处理和响应于消息的一组功能以支持后支付处理,以限制存储在移动装置上的账户参数的暴露。例如,后支付处理可以包括对支付交易进行周期性后支付验证或使用后支付信息来验证账户参数补充请求。
根据一些实施例,移动应用程序112可以包括接受装置软件115。接受装置软件115也可以呈集成到移动应用程序112中的软件开发套件(SDK)(例如,所述SDK不同于装置上基于云的交易软件113的SDK)的形式,以支持基于云的交易功能。在一些实施例中,接受装置软件115可以与KiC处理软件190通信以交换交易数据和/或卡数据。
在一些实施例中,提供API 116以使得能够在装置上基于云的交易软件113与接受装置软件115之间交换数据。例如,API 116可以被编码并且根据移动装置101的移动操作系统114执行,并且可以包括编程功能调用以允许装置上基于云的交易软件113和接受装置软件115在彼此之间交换交易数据和/或卡数据。
一旦移动装置101和移动应用程序112已经配置了账户参数,装置上基于云的交易软件113就可以通过经由接受装置软件115与KiC处理软件190交互来进行基于云的交易。便携式通信装置101可以包括输入组件,例如可以使用NFC或例如蓝牙、BLE、Wi-Fi、iBeacon等其它射频或无线通信协议来发送和接收通信的一个或多个RF收发器。在一些实施例中,便携式通信装置101可以包括输入组件,例如光学代码扫描器或读取器或相机,以使用QR码(快速响应码)、条形码等进行交易。
为了进行基于云的交易,用户可以下载并且安装移动应用程序112。使用由移动应用程序112提供的界面,用户可以存储支付凭证(例如,支付账号、到期日期、CVV代码、账单地址等)。移动应用程序112可用于捕获一个或多个实体物品的一个或多个标识符(例如,条形码、QR码等)。当用户准备就绪时,可以在由移动应用程序112提供的用户界面处做出选择以指示交易要开始了。举例来说,用户可以选择“结账选项”以发起交易。可以使用装置上基于云的交易软件113以模拟卡功能来执行交易,而接受装置软件在装置上基于云的交易软件113与执行基于云的接受处理(例如,传统地由商家访问装置提供的功能)的KiC处理软件190之间传送数据。因此,用户可以使用自己的装置来选择要购买的实体物品并且进行支付交易,而与由商家操作的额外装置无关。
移动应用程序112可以是商家专用应用程序(例如,店内应用程序)。随后,便携式通信装置101的用户可以扫描实体物品并且发起交易。交易数据可以由接受装置软件115接收,并且支付凭证可以由接受装置软件115从装置上基于云的交易软件113请求。装置上基于云的交易软件113可以(例如,经由API 116)向接受装置软件115提供标识符(例如,例如PAN之类的账户标识符、例如替代PAN之类的替代账户标识符或令牌等),以标识用户的账户和例如受限使用账户参数之类的额外信息或从受限使用账户参数中衍生的信息(例如,从LUK生成的交易密码)。例如,在一些实施例中,账户标识符或令牌和额外信息(例如,交易密码、账户参数等)可以在响应于从KiC处理软件190接收的一系列命令的消息中经由接受装置软件115发送给KiC处理软件190。KiC处理软件190可以生成包括账户标识符或令牌以及例如交易密码和其它交易数据之类的额外信息的授权请求消息,并且将所述授权请求消息转发到与商家相关联的传输计算机174。授权请求消息可以接着由传输计算机174发送给处理网络194。
处理网络194可以包括数据处理子系统、网络和用来支持和递送授权服务、异常文件服务、交易评分服务以及清算与结算服务的操作。示例性支付处理网络可以包括VisaNet⑩。例如VisaNetTM之类的支付处理网络能够处理信用卡交易、借记卡交易和其它类型的商业交易。具体来说,VisaNetTM可以包括处理授权请求的VIP系统(Visa集成支付系统)以及执行清算与结算服务的Base II系统。
在接收到授权请求消息时,处理网络194可以将从传输计算机174接收的授权请求消息转发到移动装置101的用户的账户的对应授权实体计算机172。在授权实体计算机172接收到授权请求消息之后,可以分析授权请求消息,并且可以验证授权请求消息中的信息。例如,授权实体计算机172可以验证交易密码是由有效LUK生成,并且尚未超出与LUK相关联的一个或多个受限使用阈值的集合。在一些实施例中,授权请求消息中的一些或全部信息也可以发送给基于云的平台180以进行验证和处理。例如,如果授权实体计算机172无法验证交易密码,则处理网络194或授权实体计算机172可以将交易密码转发到基于云的平台180以进行验证。
授权响应消息接着被发送回到交易处理网络194,以指示当前交易是否被授权(或未被授权)。处理网络194接着将授权响应消息转发回到传输计算机174。在一些实施例中,即便授权实体计算机172已经授权交易,交易处理网络194仍可拒绝交易,例如,取决于欺诈风险分数的值或者取决于受限使用账户参数是否由基于云的平台180验证。传输计算机174接着将授权响应消息发送给KiC处理软件190,所述KiC处理软件又将交易被授权或拒绝的指示发送给接受装置软件115。此指示可通过接受装置软件115经由任何合适的接口呈现在移动装置101处。
在一天结束时,可以由处理网络194进行清算和结算过程。清算过程是在收单方与发行方之间交换财务细节的过程,以利于发行到顾客的支付账户,并核对用户的结算位置。应理解,传输计算机174、处理网络194、授权实体计算机172、基于云的平台180和/或移动应用程序平台170中的任一个可被称为远程计算机,并且可以包括一个或多个计算装置,例如一个或多个计算机或服务器计算机,以使实体能够与基于云的交易系统100中的其它实体通信,和/或执行本文所描述的功能中的一个或多个。
关于装置上基于云的交易软件113和受限使用密钥的额外信息可以在2018年5月15日发布的标题为“基于云的交易方法和系统(Cloud based Transactions Methods andSystems)”的第9,972,005号美国专利中找到,所述美国专利的内容出于所有目的以全文引用的方式并入本文中。此外,关于KiC处理软件190(也称为“云中内核”)的信息可以在2017年6月23日提交的标题为“提供统一交易界面的适配器(Adapter for Providing UnifiedTransaction Interface)”的第15/631,716号美国专利申请、2018年3月12日提交的标题为“用于云中内核支付交易中通信往返优化的规则引擎(Rules Engine for CommunicationRound Trips Optimization of Kernel-in-Cloud Payment Transaction)”的第62/641,712号美国临时申请中找到,所述美国专利申请和所述美国临时申请中的每一个均出于所有的目的以全文引用的方式并入。
图2示出根据本发明的实施例的示例性方法200。方法200可以由图1的基于云的交易系统100的组件执行。结合方法200描述的步骤可以按任何合适的顺序执行。在一些实施例中,可以包括更多或更少的步骤。
在执行方法200之前,用户可以下载移动应用程序112。如上文所论述,移动应用程序112可以是商家专用应用程序。方法200可以开始于步骤1,其中用户可以登录与商家相关联的用户账户。在一些实施例中,用户可以输入任何合适的凭证(例如,用户名、密码、例如指纹、视网膜扫描、面部检测之类的生物特征输入等)。这些凭证可以由移动应用程序112发送给移动应用程序平台170以进行认证。如果凭证有效,则用户可以访问由移动应用程序112提供的功能。
在一些实施例中,移动应用程序112可以包括软件模块,例如装置上基于云的交易(ODCBT)软件113。ODCBT软件113可以被配置成管理支付凭证、令牌、受限使用密钥或对应于用户的任何合适的数据。在一些实施例中,ODCBT软件113可以被配置成将数字钱包功能提供给用户。
在步骤2处,用户可以使用由ODCBT软件113提供的界面来输入支付凭证信息。举例来说,用户可以输入个人账号(PAN)、到期日期、CVV、账单地址等。一旦输入,ODCBT软件113就可以将数据发送给移动应用程序平台170。移动应用程序平台170可以被配置成将数据存储为与用户的用户账户相关联。
在步骤3处,移动应用程序平台170可以从令牌服务182请求支付凭证的令牌。令牌服务182可以被配置成生成令牌并且使令牌与支付凭证信息相关联。在一些实施例中,令牌服务182还生成密码。在一些实施例中,可以使用受限使用密钥(LUK)生成密码,所述LUK与限制LUK的使用的一个或多个受限使用阈值的集合相关联。令牌服务182可以生成令牌和/或LUK,并且经由移动应用程序平台170将此信息发送给ODCBT软件113。ODCBT软件113可以将此类数据存储在图1的便携式通信装置101本地的并且ODCBT软件113可访问的安全存储器空间中。在一些实施例中,ODCBT软件113可以在存储之前对此数据进行加密。以此方式,可以向移动应用程序112提供令牌和密码以执行后续交易。可以至少基于所述LUK的使用是否超过一个或多个受限使用阈值的集合来授权交易。
在至少一些实施例中,令牌可以由令牌服务182生成,并且移动装置101可以配置有LUK。一旦配置,移动装置101(例如,ODCBT软件113)就可以被配置成生成用于交易的密码。令牌和密码可以提供给任何合适的计算组件(例如,接受装置软件115)。
作为示意性实例,ODCBT软件113可以经由界面接收用户凭证(例如,PAN),所述界面通过移动应用程序112上的ODCBT软件113经由用户输入提供。ODCBT软件113可以生成包括用户凭证的令牌请求并且将其发送给移动应用程序平台170。移动应用程序平台170接着从令牌服务182请求用户凭证的令牌。如果令牌存在,则令牌服务182可以确定与用户凭证相关联的令牌,否则令牌服务182可以生成令牌。令牌服务182接着将令牌提供给移动应用程序平台170,所述移动应用程序平台将令牌提供给ODCBT软件113。ODCBT软件113接着从移动应用程序平台170接收令牌,并且可以按任何适当安全的方式存储令牌。
在步骤4处,接受装置软件115可以与KiC处理计算机190进行注册过程。在一些实施例中,可以在安装移动应用程序112时或在另一合适的时间执行注册过程。在一些实施例中,注册过程可以包括将连接凭证提供给接受装置软件115,所述连接凭证使得接受装置软件115能够与KiC处理计算机190连接并且与其交换信息。如上文所论述,KiC处理计算机190可以代替实体(并且在一些情况下是移动)访问装置执行接受处理(例如,销售点终端处理)。
在步骤5处,用户可以参与购物体验,其中他或她可以经由用户的移动电话(例如,移动装置101的实例)的输入装置(例如,图像捕获装置)扫描条形码和/或QR码(或任何合适的标识符)。例如,移动应用程序112可以包括扫描模块112C,所述扫描模块可以与图像捕获装置通信以获得一个或多个标识符。所述一个或多个标识符可以由检测到的实体物品收集模块112D收集。一旦用户准备好继续,用户就可以使用实体物品获得模块112E发起交互以获得扫描的实体物品。例如,在某个时间点,用户可能希望购买实体物品,并且可以选择选项(例如,结账按钮)以针对组合实体物品的总金额(可能包括销售税或其它合适的费用、税费和/或附加费)发起交易。接受装置软件115可以被配置成接收实体物品信息并且计算交易的总金额。
接受装置软件115可以基于从实体物品获得模块112E接收的一个或多个标识符来接收和/或生成交互数据。交互数据包括与交互相关的数据和/或在交互期间记录的数据。例如,在一些实施例中,交互数据可以是交易数据。交易数据可以包括金额、交易代码、货币代码、日期和/或时间、资源提供商标识符和/或在交互中使用或由ODCBT软件113使用的任何其它合适的数据,以确定是否提供至少一个令牌以继续进行交互。
在步骤6处,接受装置软件115可以从KiC处理计算机190检取任何合适的交易脚本/规则和/或配置信息。例如,接受装置软件115可以至少部分地配置有规则引擎,所述规则引擎可以解释由KiC处理计算机190提供的规则,所述规则限定将在KiC处理计算机190与ODCBT软件113之间交换数据所用的特定消息传送协议。接受装置软件115可以被配置成使用这些规则来促进KiC处理计算机190与ODCBT软件113之间的数据交换。在一些实施例中,如果协议不同,则接受装置软件115可以在ODCBT软件113的一个通信协议与KiC处理计算机190的另一通信协议之间转换。在一些实施例中,接受装置软件115可以在任何合适的时间(例如,在注册时或另一合适的时间)获得这些规则。
此外,在步骤6处,接受装置软件115将交互数据提供给KiC处理计算机190。KiC处理计算机190提供限定与交互处理相关联的一组规则的配置数据。例如,配置数据包括用于要在接受装置软件115与ODCBT软件113之间处理的交互的交易脚本/规则和/或配置信息。在接收到配置数据时,可以根据配置数据配置接受装置软件115(例如,准备基于交易脚本/规则和/或配置信息来处理交互)。
在步骤7处,接受装置软件115可以根据由KiC处理计算机190提供的规则执行操作,以从ODCBT软件113获得卡数据。接受装置软件115可以经由任何合适的API(例如,图1的API 116)与ODCBT软件113通信。例如,接受装置软件115可以经由这些API从ODCBT软件113请求卡数据。ODCBT软件113可以生成交易数据(例如,卡数据)并且将此数据提供给接受装置软件115(例如,经由API 116)。在一些实施例中,交易数据可以包括由令牌服务182生成的令牌和/或密码,并且可以存储在移动装置101的本地存储器中。
例如,在步骤7处,接受装置软件115可以生成API调用。API调用可以包括对来自ODCBT软件113的至少一个令牌的请求。在一些实施例中,API调用还可以包括对与令牌相关联的密码的请求。例如,令牌可以是凭证(例如,PAN)的替代值,而密码包括一段模糊文本,例如(例如,例如dCVV(动态卡验证值)之类的凭证的)加密文本。接受装置软件115和ODCBT软件113可以使用API调用和响应而不是APDU(应用程序协议数据单元)命令和响应进行通信。API调用和响应可以包括比APDU命令和响应更大量的信息,并且因此接受装置软件115和ODCBT软件113可以有利地被配置成在单轮通信期间执行交易。
API调用可以包括与一个或多个实体物品相关联的交互数据,所述交互数据包括例如交易金额、货币代码、资源提供商标识符、时间和/或能够描述交互和/或由ODCBT软件113使用的任何其它合适的信息,以确定是否继续进行交互。例如,在一些实施例中,API调用可以包括接受装置软件115数据,所述数据例如包括接受装置软件标识符、接受装置软件版本号、接受装置软件证书、证实接受装置软件115真实性的密码密钥等。接受装置软件115接着将API调用提供给ODCBT软件113。API调用可以直接从接受装置软件115提供给ODCBT软件113,而不传递通过并非接受装置软件115或ODCBT软件113的一部分的模块或硬件(例如,安全元件)。
在接收到API调用时,ODCBT软件113基于包括在API调用中的交互数据确定是否将令牌提供给接受装置软件115。在一些实施例中,ODCBT软件113可以确定接受装置软件115是否真实。例如,ODCBT软件113可以验证本领域技术人员已知的接受装置软件证书、接受装置软件公钥和/或接受装置软件签名。
ODCBT软件113可以基于API调用和/或接受装置软件115的有效性确定是否对API调用作出响应。如果ODCBT软件113确定作出响应,则ODCBT软件113生成API响应。API响应包括令牌。在一些实施例中,API响应还可以包括与令牌相关联的密码。密码可以由ODCBT软件113生成。然后,ODCBT软件113将API响应提供给接受装置软件115。API响应可以被直接提供给接受装置软件115。
应了解,尽管接受装置软件115被描述为从ODCBT软件113获得卡数据,但在一些实施例中,接受装置软件115可以被配置成经由图1的非接触式接口108获得卡数据。因此,如果用户希望使用除ODCBT软件113已知的交易装置之外的交易装置,则用户可以轻触或以其它方式将交易装置带到移动装置101附近,使得接受装置软件115可以经由非接触式接口108接收数据。
在步骤8处,接受装置软件115可以将从ODCBT软件113获得的数据发送给KiC处理计算机190。在一些实施例中,步骤8可以包括经由接受装置软件115(和API 116)在ODCBT软件113与KiC处理计算机190之间交换任何合适数目的消息和/或数据。
例如,在步骤8处,接受装置软件115可以在从ODCBT软件113接收到令牌之后将令牌提供给KiC处理计算机190。在一些实施例中,如果在步骤6处未将交互数据提供给KiC处理计算机190,则接受装置软件115可以将交互数据连同令牌一起提供给KiC处理计算机190。
在步骤9处,KiC处理计算机190可以处理交易数据以生成授权请求消息。授权请求消息可以至少包括令牌和交互数据。将授权请求消息发送给传输计算机174。
在步骤10处,在接收到授权请求消息之后,传输计算机174将授权请求消息提供给处理网络194。
在步骤11处,在接收到授权请求消息之后,处理网络194将授权请求消息提供给授权实体计算机172。在一些实施例中,授权实体计算机172可以与令牌服务182通信以获得与令牌相关联的凭证(例如,PAN)。处理网络194可以修改授权请求消息以用凭证替换令牌。然后,处理网络194将包括交互数据和凭证的授权请求消息提供给授权实体计算机172以供授权。
在接收到授权请求消息之后,授权实体计算机172确定是否授权或拒绝交互。例如,授权实体计算机172可以接受或拒绝交互。授权实体计算机172可以生成包括用户凭证以及交互是否被授权的指示的授权响应消息。在一些实施例中,授权响应消息还可以包括交互数据。在其它实施例中,授权响应消息还可以包括令牌或凭证。
在步骤12处,在生成授权响应消息之后,授权实体计算机172将授权响应消息发送给处理网络194。
在步骤13处,在接收到授权响应消息之后,处理网络194将授权响应消息发送给传输计算机174。在一些实施例中,如果授权响应消息包括凭证,则通信网络194可以与令牌服务182通信以获得令牌。然后,在将授权响应消息发送给传输计算机174之前,处理网络194可以修改授权响应消息以用令牌替换凭证。
在步骤14处,在从处理网络194接收到授权响应消息之后,传输计算机174将授权响应消息发送给KiC处理计算机190。
在步骤15处,在接收到授权响应消息之后,KiC处理计算机190可以将授权/拒绝(以及在一些实施例中为交易数据)的指示提供给移动应用程序平台170。在接收时或在另一合适的时间,移动应用程序平台170和/或KiC处理计算机190可以经由移动应用程序112提供的接口提供授权/拒绝(和交易数据)的指示。例如,KiC处理计算机190可以将授权响应消息或交互是否被授权的指示提供给移动应用程序112。移动应用程序112可以将交互是否被授权的指示呈现给移动应用程序112的用户。在一些实施例中,交互是否被授权的指示可以允许用户获得一个或多个实体物品。
图3示出说明根据实施例的第一软件模块与第二软件模块之间的通信细节的流程图。图3中所说明的方法将在移动装置上的应用程序内的第一软件模块与第二软件模块通信的上下文中描述。图3中说明的方法可由移动装置300执行,所述移动装置包括移动应用程序302以及远程计算机308,所述移动应用程序包括第一软件模块304和第二软件模块306。然而,应理解,本发明可以适用于其它情况。
在步骤320之前,用户可以使用移动装置300扫描或以其它方式获得一个或多个实体物品的一个或多个标识符。例如,移动装置300可以包括输入元件(现在示出),所述输入元件可以是能够经由相机或其它合适的装置捕获QR码的扫描器。用户可以使用移动装置300扫描一个或多个标识符,然后可以选择在移动应用程序302内执行交互以获得和/或得到对一个或多个实体物品的访问。第一软件模块304可以基于一个或多个标识符确定交互数据。例如,第一软件模块304可以确定要包括在交互数据中的总金额、货币代码、资源提供商标识符等。
在一些实施例中,用户可以在交互期间选择要使用的用户装置。例如,移动装置300可以接收对在移动装置上呈现的多个用户装置中的选定用户装置的选择。例如,可以向用户呈现两个用户装置。第一用户装置可以由第二软件模块306模拟。第二用户装置可以是实体装置,在交互期间用户可以使所述实体装置与移动装置300接触。作为实例,用户可以选择第一用户装置以继续进行下文所描述的交互。
在步骤320处,第一软件模块304将交互数据提供给远程计算机308。例如,第一软件模块304可以通过空气与远程计算机308通信。在一些实施例中,第一软件模块304可以从远程计算机308请求配置数据。配置数据可以包括用于要在第一软件模块304与第二软件模块306之间处理的交互的交易脚本/规则和/或配置信息。例如,配置数据可以包括第一软件模块304将API调用提供给第二软件模块306以至少获得令牌的指令。配置数据可以指示应包括在从第一软件模块304到第二软件模块306的API调用中的数据。例如,配置数据可以指示API调用包括金额的数据字段、资源提供商标识符和联系人交互的交互环境选择。
在步骤325处,在从第一软件模块304接收到交互数据之后,远程计算机308可以确定要提供给移动应用程序302的第一软件模块304的配置数据。例如,远程计算机308可以存储对应于不同交互环境的多个配置数据。远程计算机308可以基于交互数据确定多个配置数据中的哪些配置数据要提供给第一软件模块304。例如,交互数据可以包括第一软件模块标识符。远程计算机308可以基于预存储的第一软件模块标识符(例如,在图2的步骤4处接收),确定第一软件模块标识符指示第一软件模块304可以在接触类交互环境中与第二软件模块306执行交互。
在步骤330处,远程计算机308接着将配置数据提供给第一软件模块304。在一些实施例中,远程计算机308可以将要发起授权请求的指示提供给第一软件模块。
在步骤335处,在从远程计算机308接收到配置数据之后,可以根据配置数据配置第一软件模块304(例如,准备基于交易脚本/规则和/或配置信息处理交互)。第一软件模块304基于配置数据生成API调用,以提供给第二软件模块306。API调用可以按由来自远程计算机308的配置数据指定的格式将交互数据提供给第二软件模块306。此外,API调用可以从第二软件模块306请求数据。例如,API调用可以请求令牌、密码、到期日期和/或由第二软件模块306维护的任何其它合适的信息以模拟用户装置。
在步骤340处,在生成API调用之后,第一软件模块304将API调用直接提供给第二软件模块306。
在步骤345处,在从第一软件模块304接收到API调用时,第二软件模块306确定是否对API调用作出响应。例如,第二软件模块306可以确定第一软件模块304是否可信,如本文进一步详细描述的。然后,第二软件模块306可以生成包括第二软件模块数据的API响应,所述第二软件模块数据包括例如令牌。
在步骤350处,在生成API响应之后,第二软件模块306将API响应提供给第一软件模块304。在一些实施例中,并非在第一软件模块304与第二软件模块306之间执行若干后续命令和响应消息,而是第一软件模块304和第二软件模块306可以在单个API调用和API响应中传送完成交互所必需的所有数据。例如,在一些实施例中,并非第二软件模块306响应于令牌请求而提供令牌,而是在响应于密码请求而提供密码的第二响应中,第二软件模块306可以在单个消息中将令牌和密码(以及由第二软件模块306模拟的任何其它合适的用户装置数据)提供给第一软件模块304。这种情况可以实现,因为第一软件模块304和第二软件模块306不需要遵循标准APDU命令和响应,这些命令和响应可以处理每个命令/响应中的少量数据。
在第一软件模块304与第二软件模块306之间的API调用和API响应分别可以直接被提供给第二软件模块306和第一软件模块304。因此,实施例不需要硬件控制器(例如,控制器元件或控制器模块)在第一软件模块304与第二软件模块306之间通信。
在步骤360处,在从第二软件模块306接收到API响应之后,第一软件模块304将与用户相关联的交互数据和令牌提供给远程计算机308。第一软件模块304可以基于配置数据将数据提供给远程计算机308。例如,配置数据可以指示在步骤360处应向远程计算机308提供什么数据以及以什么格式提供。
在从移动装置300的第一软件模块304接收到交互数据和令牌之后,远程计算机308可以生成包括交互数据和令牌的授权请求消息(未示出)。远程计算机308经由传输计算机和处理网络将授权请求消息发送给授权实体计算机,如参考图2进一步详细描述。授权实体计算机确定是否授权交互并且经由传输计算机和处理网络将授权响应消息提供给远程计算机308。授权响应消息可以包括交互是否被授权的指示。
在接收到授权响应消息时,在步骤370处,远程计算机308将授权响应消息发送给第一软件模块304。然后,第一软件模块304可以确定授权响应消息是否指示交互被授权。对于所述实例,第一软件模块304可以接收交互被授权的指示。移动应用程序302可以经由显示器或其它合适的装置将指示呈现给移动装置300的用户。然后,用户可以获得对应于一个或多个标识符的一个或多个实体物品。在一些实施例中,用户可以使用交互被授权的指示来访问一个或多个实体物品。例如,交互被授权的指示可以充当收据或访问代码。
图4示出根据实施例的建筑物访问系统400的框图。图4示出由用户操作的移动装置401(例如,图1的移动装置101)。移动装置401可以与移动应用程序平台470和建筑物访问安全计算机490(例如,管理对建筑物402的访问的装置)交互。
访问交易可以如下描述,用户将使用移动装置401在建筑物402的位置处扫描标识符。例如,建筑物402处带锁的门可以具有印刷在门上的QR码(或其它合适的标识符)。用户可以使用移动装置401上的QR码扫描器扫描门上的QR码。移动应用程序412显示“解锁”按钮或其它元素,以允许用户选择解锁扫描门的选项。然后,用户在移动应用程序412中选择解锁门。然后,第一软件模块415将接收与门相关联的标识符和嵌入扫描的QR码中的任何其它信息。然后,第一软件模块415将交互数据提供给建筑物访问安全计算机490(例如,远程计算机)。
在接收到交互数据之后,建筑物访问安全计算机490接着将配置数据提供给第一软件模块415。第一软件模块415将经由移动OS 414的API 416与移动应用程序412的第二软件模块413通信。第一软件模块415按与由建筑物访问安全计算机490提供的配置数据一致的方式将交互数据提供给第二软件模块413。例如,第一软件模块415可以请求由第二软件模块413保持的令牌。令牌可以是证明用户可以经由带锁的门进入建筑物402的凭证。第二软件模块413可以评估包括接收到的与门相关联的标识符的交互数据。例如,第二软件模块413可以确定是否应该使用令牌来尝试经由带锁的门访问建筑物402。第二软件模块413确定接收到的标识符匹配与令牌(例如,可用于尝试解锁门的令牌)相关联的标识符。第二软件模块413可以将令牌提供给第一软件模块415。
在经由API 416从第二软件模块413接收到令牌和任何其它合适的数据(例如,密码等)时,第一软件模块415将交互数据和令牌发送给建筑物访问安全计算机490。然后,建筑物访问安全计算机490确定是否授权交互(例如,以允许用户访问建筑物)。例如,建筑物访问安全计算机490可以确定令牌是否足以证明用户可以被授权以访问建筑物402。在一些实施例中,建筑物访问安全计算机490可以将指示交互被授权的消息发送给移动装置401和/或建筑物402的门处的机电锁。
技术优势
使用本文所论述的技术,可以减少进行交易所需的时间,因为可以使用共同装置来存储支付凭证、获得交易数据并且发起交易接受处理。与使用一个装置提供支付凭证并且使用另一装置进行接受处理不同,此功能可以在单个装置中提供,从而减少交易处理所需的总体处理资源。本文的技术使得用户能够扫描实体物品、结账和支付,而不需要在商店内搜索访问装置。另外,通过装置上基于云的交易软件提供的主机卡模拟功能和接受装置软件促进的接受处理,交易可被视为有卡交易,因为装置上基于云的交易软件正在本地与接受装置软件交互。因此,所述交易比常规的电子商务交易更安全。
实施例提供多个额外技术优势。例如,由于移动装置上的应用程序包括第一软件模块和第二软件模块两者,因此可以降低移动装置的复杂性。例如,移动装置不需要集成到移动装置中以允许各种组件进行通信的额外硬件组件。例如,由于不需要多个安全元件和在安全元件之间通信的控制器,移动装置可以不那么复杂。此外,由于第一软件模块和第二软件模块包括在应用程序中,因此可以容易地更新应用程序并且将其提供给移动装置。当对应用程序进行更新时,移动装置不会过时,因为应用程序的软件模块没有集成到移动装置的安全元件(或其它硬件)中。
实施例还提供了敏感数据的安全通信的技术优势。例如,第一软件模块和第二软件模块可以经由API调用和API响应彼此安全地通信。由存储令牌的第二软件模块暴露的应用程序编程接口可以比数字钱包存储令牌并且在请求后将令牌提供给商家的先前方法更安全地隐藏令牌,以防恶意令牌请求。
应理解,本发明的任何实施例都可以使用硬件(例如,专用集成电路或现场可编程门阵列)和/或使用计算机软件以控制逻辑的形式实施,其中通用可编程处理器是模块化的或集成的。如本文中所使用,处理器包括单核处理器、在同一集成芯片上的多核处理器,或在单个电路板上或网络化的多个处理单元。基于本公开和本文中所提供的教示,本领域的普通技术人员将知道并且理解使用硬件和硬件与软件的组合来实施本发明的实施例的其它方法和/或方法。
本申请中描述的任何软件组件或功能可实施为使用例如Java、C、C++、C#、Objective-C、Swift的任何合适的计算机语言或例如Perl或Python的脚本语言使用例如常规的或面向对象的技术由处理器执行的软件代码。软件代码可作为一系列指令或命令存储在计算机可读介质上以供存储和/或发送,合适的介质包括随机存取存储器(RAM)、只读存储器(ROM)、例如硬盘驱动器或软盘的磁性介质,或例如光盘(CD)或数字通用盘(DVD)的光学介质、快闪存储器等。计算机可读介质可以是此类存储或发送装置的任何组合。
此类程序还可以使用适应于经由包括互联网的符合多种协议的有线、光学和/或无线网络进行发送的载波信号来编码和发送。因此,根据本发明的实施例的计算机可读介质可以使用以此类程序编码的数据信号来创建。以程序代码编码的计算机可读介质可与兼容装置一起封装或与其它装置分开提供(例如,经由互联网下载)。任何此类计算机可读介质可以驻存在单个计算机产品(例如,硬盘驱动器,CD或整个计算机系统)之上或其内部,并且可以存在于系统或网络内的不同计算机产品上或其内部。计算机系统可以包括监视器、打印机,或用于向用户提供本文所提及的任何结果的其它合适的显示器。
以上描述是说明性的并且不是限制性的。在本领域技术人员阅读了本公开之后,本发明的许多变体对于他们会变得显而易见。因此,本发明的范围不应该参考上面的描述来确定,而是应该参考待决的权利要求及其完整范围或等同物来确定。
在不偏离本发明的范围的情况下,任何实施例的一个或多个特征可以与任何其它实施例的一个或多个特征组合。
如本文所使用,除非明确指示为相反情况,否则“一(a)”、“一(an)”或“所述”的使用意图表示“至少一个”。
Claims (20)
1.一种方法,包括:
在移动装置上的第一软件模块处接收与所述移动装置外部的一个或多个实体物品相关联的一个或多个标识符,所述移动装置包括被配置成执行接受处理的所述第一软件模块和被配置成模拟与用户相关联的用户装置的第二软件模块,所述一个或多个标识符是由所述移动装置使用输入组件读取的;
在所述第一软件模块处接收要发起授权请求的指示;
通过以下操作在所述移动装置的所述第一软件模块与所述第二软件模块之间交换与所述一个或多个实体物品相关联的交互数据和与所述用户相关联的令牌:
由所述第一软件模块将包括所述交互数据的API调用提供给所述第二软件模块;以及
由所述第一软件模块从所述第二软件模块接收包括所述令牌的API响应;以及
由所述第一软件模块将所述交互数据和与所述用户相关联的所述令牌发送给远程计算机,以使所述远程计算机生成包括所述交互数据和所述令牌的授权请求消息。
2.根据权利要求1所述的方法,其中所述第一软件模块由资源提供商托管,并且其中所述移动装置由不同于与所述第一软件模块相关联的所述资源提供商的实体操作。
3.根据权利要求1所述的方法,还包括:
由所述第一软件模块从所述远程计算机接收限定与交互处理相关联的一组规则的配置数据;以及
根据所述配置数据配置所述第一软件模块。
4.根据权利要求3所述的方法,其中由所述第一软件模块将所述API调用提供给所述第二软件模块是基于所述配置数据的。
5.根据权利要求1所述的方法,其中所述API响应还包括与所述令牌相关联的密码。
6.根据权利要求1所述的方法,其中所述第一软件模块经由所述API调用和所述API响应直接与所述第二软件模块通信。
7.根据权利要求1所述的方法,其中所述一个或多个实体物品涉及所述移动装置的所述用户与托管所述第一软件模块的资源提供商之间的交互,其中所述远程计算机将所述授权请求消息提供给授权实体计算机,并且其中所述授权实体计算机确定是否授权所述交互并且生成授权响应消息,并且其中所述方法还包括:
由所述第一软件模块从所述远程计算机接收包括所述交互是否被授权的指示的所述授权响应消息;以及
由所述第一软件模块显示所述交互是否被授权给所述用户的所述指示。
8.根据权利要求1所述的方法,其中所述输入组件包括代码扫描器、读取器、相机或一个或多个RF收发器,所述一个或多个RF收发器使用NFC、射频或包括蓝牙、BLE、Wi-Fi和iBeacon的无线通信协议发送和接收通信。
9.根据权利要求1所述的方法,其中在所述移动装置的所述第一软件模块与所述第二软件模块之间交换与所述一个或多个实体物品相关联的所述交互数据和与所述用户相关联的所述令牌之前,所述方法还包括:
由所述移动装置的所述第二软件模块从移动应用程序平台接收所述令牌;
由所述移动装置的所述第二软件模块将所述令牌存储在所述移动装置的安全元件中,由此所述第一软件模块在没有所述第二软件模块的情况下不能访问所述令牌。
10.一种移动装置,包括:
一个或多个处理器;以及
一个或多个存储器,其存储计算机可执行指令,所述计算机可执行指令在由所述一个或多个处理器执行时使得所述移动装置执行包括以下各项的操作:
在所述移动装置上的第一软件模块处接收与所述移动装置外部的一个或多个实体物品相关联的一个或多个标识符,所述移动装置包括被配置成执行接受处理的所述第一软件模块和被配置成模拟与用户相关联的用户装置的第二软件模块,所述一个或多个标识符是由所述移动装置使用输入组件读取的;
在所述第一软件模块处接收要发起授权请求的指示;
通过以下操作在所述移动装置的所述第一软件模块与所述第二软件模块之间交换与所述一个或多个实体物品相关联的交互数据和与所述用户相关联的令牌:
由所述第一软件模块将包括所述交互数据的API调用提供给所述第二软件模块;以及
由所述第一软件模块从所述第二软件模块接收包括所述令牌的API响应;以及
由所述第一软件模块将所述交互数据和与所述用户相关联的所述令牌发送给远程计算机,以使所述远程计算机生成包括所述交互数据和所述令牌的授权请求消息。
11.根据权利要求10所述的移动装置,还包括:
安全元件;以及
所述输入组件。
12.根据权利要求10所述的移动装置,其中在所述移动装置的所述第一软件模块与所述第二软件模块之间交换与所述一个或多个实体物品相关联的所述交互数据和与所述用户相关联的所述令牌之前,还包括:
接收对所述移动装置上呈现的多个用户装置的选定用户装置的选择,其中所述选定用户装置是所述用户装置。
13.根据权利要求10所述的移动装置,其中在所述第一软件模块处接收与所述一个或多个实体物品相关联的所述一个或多个标识符之前,其中所述操作还包括:
由所述第二软件模块经由所述第二软件模块提供的接口接收用户凭证;
由所述第二软件模块将包括所述用户凭证的令牌请求发送给移动应用程序平台,其中所述移动应用程序平台从令牌服务请求所述用户凭证的所述令牌;以及
由所述第二软件模块从所述移动应用程序平台接收所述令牌。
14.根据权利要求10所述的移动装置,其中所述操作还包括:
由所述第一软件模块从所述远程计算机接收限定与交互处理相关联的一组规则的配置数据;以及
根据所述配置数据配置所述第一软件模块,其中所述API调用基于所述配置数据。
15.根据权利要求14所述的移动装置,其中由所述第一软件模块将所述API调用提供给所述第二软件模块是基于所述配置数据的。
16.根据权利要求10所述的移动装置,其中所述第一软件模块由资源提供商托管,并且其中所述移动装置由不同于与所述第一软件模块相关联的所述资源提供商的实体操作。
17.根据权利要求10所述的移动装置,其中所述一个或多个标识符包括一个或多个条形码和/或一个或多个QR码。
18.根据权利要求10所述的移动装置,其中所述操作还包括
在所述移动装置的所述第一软件模块与所述第二软件模块之间交换与所述令牌相关联的密码。
19.一种系统,包括:
远程计算机;以及
移动装置,其包括:
一个或多个处理器;以及
一个或多个存储器,其存储计算机可执行指令,所述计算机可执行指令在由所述一个或多个处理器执行时使得所述移动装置执行包括以下各项的操作:
在所述移动装置上的第一软件模块处接收与所述移动装置外部的一个或多个实体物品相关联的一个或多个标识符,所述移动装置包括被配置成执行接受处理的所述第一软件模块和被配置成模拟与用户相关联的用户装置的第二软件模块,所述一个或多个标识符是由所述移动装置使用输入组件读取的;
在所述第一软件模块处接收要发起授权请求的指示;
通过以下操作在所述移动装置的所述第一软件模块与所述第二软件模块之间交换与所述一个或多个实体物品相关联的交互数据和与所述用户相关联的令牌:
由所述第一软件模块将包括所述交互数据的API调用提供给所述第二软件模块;以及
由所述第一软件模块从所述第二软件模块接收包括所述令牌的API响应;以及
由所述第一软件模块将所述交互数据和与所述用户相关联的所述令牌发送给所述远程计算机,以使所述远程计算机生成包括所述交互数据和所述令牌的授权请求消息。
20.根据权利要求19所述的系统,其中所述远程计算机还包括:
一个或多个处理器;以及
一个或多个存储器,其存储计算机可执行指令,所述计算机可执行指令在由所述一个或多个处理器执行时使得所述移动装置执行包括以下各项的操作:
由所述远程计算机提供配置数据,其中所述配置数据限定与交互处理相关联的一组规则;
由所述远程计算机从所述移动装置接收所述交互数据和与所述用户相关联的所述令牌;
由所述远程计算机生成包括所述交互数据和所述令牌的所述授权请求消息;以及
由所述远程计算机将所述授权请求消息发送给授权实体计算机以使得所述授权实体计算机确定是否授权交互。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962884432P | 2019-08-08 | 2019-08-08 | |
US62/884,432 | 2019-08-08 | ||
PCT/US2020/045637 WO2021026534A1 (en) | 2019-08-08 | 2020-08-10 | Mobile application integration |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114207578A true CN114207578A (zh) | 2022-03-18 |
Family
ID=74503671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080056092.9A Pending CN114207578A (zh) | 2019-08-08 | 2020-08-10 | 移动应用程序集成 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220291979A1 (zh) |
EP (1) | EP4010865A4 (zh) |
CN (1) | CN114207578A (zh) |
WO (1) | WO2021026534A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11947640B2 (en) * | 2021-07-12 | 2024-04-02 | Bank Of America Corporation | Adaptive, multi-channel, embedded application programming interface (API) |
CN116823248A (zh) * | 2022-03-22 | 2023-09-29 | 华为技术有限公司 | 支付方法和电子设备 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8380177B2 (en) * | 2010-04-09 | 2013-02-19 | Paydiant, Inc. | Mobile phone payment processing methods and systems |
US10445723B2 (en) * | 2010-04-09 | 2019-10-15 | Paypal, Inc. | NFC-transaction processing systems and methods |
US9141945B2 (en) * | 2010-12-02 | 2015-09-22 | Appmobi Iplc, Inc. | Secure distributed single action payment system |
KR20150021306A (ko) | 2013-08-20 | 2015-03-02 | (주)인스타페이 | 바코드 또는 큐알 코드를 포함하는 그래픽 코드를 이용한 쇼핑 결제 시스템 및 결제 방법 |
US9953311B2 (en) | 2013-09-25 | 2018-04-24 | Visa International Service Association | Systems and methods for incorporating QR codes |
US9942043B2 (en) * | 2014-04-23 | 2018-04-10 | Visa International Service Association | Token security on a communication device |
AU2015259162B2 (en) * | 2014-05-13 | 2020-08-13 | Visa International Service Association | Master applet for secure remote payment processing |
WO2016144904A1 (en) * | 2015-03-06 | 2016-09-15 | Mastercard International Incorporated | Secure mobile remote payments |
US20170169420A1 (en) * | 2015-12-14 | 2017-06-15 | WIBMO Inc. | One-step payments in a secure digital platform |
WO2017156247A1 (en) * | 2016-03-09 | 2017-09-14 | Mastercard International Incorporated | Systems and methods for use in facilitating payment account transactions |
US20190066089A1 (en) * | 2017-08-25 | 2019-02-28 | Mastercard International Incorporated | Secure transactions using digital barcodes |
KR101955427B1 (ko) * | 2017-09-01 | 2019-03-07 | 주식회사 국민은행 | Qr코드를 이용한 거래단축 금융서비스 제공시스템 및 방법 |
-
2020
- 2020-08-10 CN CN202080056092.9A patent/CN114207578A/zh active Pending
- 2020-08-10 US US17/632,386 patent/US20220291979A1/en active Pending
- 2020-08-10 WO PCT/US2020/045637 patent/WO2021026534A1/en unknown
- 2020-08-10 EP EP20850520.6A patent/EP4010865A4/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4010865A4 (en) | 2022-10-05 |
EP4010865A1 (en) | 2022-06-15 |
WO2021026534A1 (en) | 2021-02-11 |
US20220291979A1 (en) | 2022-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109328445B (zh) | 唯一令牌认证验证值 | |
EP3414869B1 (en) | Authentication systems and methods using location matching | |
CN113507377B (zh) | 用于使用基于交易特定信息的令牌和密码的交易处理的装置和方法 | |
US20190356489A1 (en) | Method and system for access token processing | |
US10922675B2 (en) | Remote transaction system, method and point of sale terminal | |
CN110169035B (zh) | 具有协议特性的绑定密码 | |
CN110447213B (zh) | 用于中继攻击检测的方法和系统 | |
KR20140125449A (ko) | 거래 프로세싱 시스템 및 방법 | |
AU2023200221A1 (en) | Remote transaction system, method and point of sale terminal | |
US11797650B2 (en) | Data value routing system and method | |
CN111886618A (zh) | 数字访问代码 | |
CN112823368A (zh) | 通过云生物特征标识和认证实现的令牌化非接触式交易 | |
US11010482B2 (en) | System and method for secure device connection | |
US20220291979A1 (en) | Mobile application integration | |
CN115315924A (zh) | 使用移动装置在访问控制服务器处进行用户认证 | |
EP4020360A1 (en) | Secure contactless credential exchange | |
CN112514346A (zh) | 实时交互处理系统和方法 | |
WO2019125636A1 (en) | A method and system for conducting a transaction | |
CN115907757A (zh) | 数字身份认证系统和方法 | |
CN116711267A (zh) | 移动用户认证系统和方法 | |
WO2024077060A1 (en) | User verification system and method | |
CN117242470A (zh) | 通过启用加密的智能卡进行多因素认证 | |
CN117999553A (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 |