专利名称:移动支付应用程序体系结构的制作方法
移动支付应用程序体系结构对相关申请的交叉引用本申请要求于2009年9月30日提交的标题为“Mobile Payment Application (移动支付应用程序)”美国临时专利申请第61/247,507号的优先权,其内容通过引用以其整体通用地合并于此。本申请还涉及于2009年9月21日提交的标题为“Over The Air Update OfPayment Transaction Data Stored In Secure Memory (存储在安全存储器中的支付交易数据的空中更新)”的共有、共同待审的美国专利申请第12/563,421号,其内容通过引用以其整体通用地合并于此。背景
本发明的各实施例涉及使用移动设备进行支付交易的系统、装置和方法,且更具体地,涉及用于可以被安装在诸如移动电话、个人数字助理或便携式计算设备等移动客户机设备中的移动支付应用程序的体系结构或平台。本发明的各实施例提供使得消费者能够利用他们的移动设备来以可在各种平台上实现的安全且高效的方式进行支付交易的一组功能1吴块。全世界数百万的人使用消费支付设备来促进各种类型的商业交易。在涉及在商家位置处购买产品或服务的典型交易中,将支付设备呈现给位于商家的营业地点处的销售点终端(“P0S终端”)。POS终端可以是能够访问被存储在支付设备上的数据的卡读取器或类似设备,其中这种数据可以例如包括标识或认证数据。从支付设备读取的数据被提供给商家的交易处理系统,且然后被提供给收单方,收单方通常是管理商家的账户的银行或其他机构。提供给收单方的数据随后可以被提供给与数据处理器进行通信的支付处理网络,数据处理器处理交易数据以确定该交易是否应由该网络授权,并帮助进行该交易的清算和账户结算功能。交易的授权决定以及清算和结算部分也可以涉及在支付处理网络和向消费者发放支付设备的银行或机构(发卡方)之间的通信和/或数据传输。尽管消费者支付设备可以是信用卡或借记卡,但它也可以采取“智能”卡或芯片的形式。智能卡一般被定义为嵌入有微处理器和一个或多个存储器芯片或嵌入有具有非可编程逻辑的一个或多个存储器芯片的袖珍卡(或其他便携式支付设备)。微处理器类型的卡通常可以实现某些数据处理功能,例如增加、删除或以其他方式操纵被存储在卡上的存储器位置中的信息。相反,存储器芯片类型的卡(例如,预付费电话卡)通常仅可以充当保持由卡读取设备操纵以执行预先定义的操作(例如从被存储在存储器中的预存余额扣费)的数据的文件。不同于磁条卡(例如标准信用卡),智能卡可以实现各种功能且在卡上包含各种类型的信息。因此,在一些应用中,在交易时,它们可以不需要出于用户认证或记录保管的目的来访问远程数据库。智能芯片是能够执行大多数(如果不是全部的话)的智能卡功能、但可以被嵌入在另一设备(例如移动电话)中的半导体器件。智能卡或智能芯片分成两大类;接触型和非接触型。接触型智能卡或芯片是包括允许通常经由某种形式的终端或卡读取器来访问卡的数据和功能能力的物理元件(例如,磁条或其他形式的接触)的设备。非接触智能卡或芯片是合并了无需直接物理接触就能与卡读取器或销售点终端进行通信的装置的设备。因而,通过使这样的设备经过卡读取器或终端,可以有效地“刷”(即,以引起启用在非接触元件和读取器或终端之间的通信的方式挥动或呈现)这样的设备。非接触卡或芯片通常使用RF(射频)技术来与卡读取器或终端通信,其中,与读取器或终端的邻近 允许在卡或芯片与读取器或终端之间的数据传输。非接触卡已经用于金融和其他应用,其中它们具有无需从用户的钱包或口袋移除就能参与交易的优点。非接触卡或芯片可以被嵌入在或以其他方式合并到诸如移动电话或个人数字助理(PDA)等移动设备中。此外,因为对这样的卡的不断增长的兴趣,已经开发出管控非接触智能卡的操作和接口的标准,例如ISO 14443标准。用户身份模块(SM)是可用于移动设备(例如,蜂窝电话)中的认证操作的安全模块。SM硬件通常包括微处理器、ROM、持久EEPROM存储器、易失性RAM和串行I/O接口。SM软件通常包括操作系统、文件系统和应用程序。SM可以合并SM工具箱(STK)的用途,SIM工具箱是用于将应用程序(例如,小应用程序)或数据安全地加载到SIM以供存储在SIM中并由移动设备执行的应用程序编程接口(API)。STK允许移动运营商(例如无线电信公司)通过将服务加载到SIM中而不改变移动设备的其他元件来创建/提供这些服务。用于将应用程序加载到SIM的一种方便的方式是经由短消息服务(SMS)协议的空中穿越标准(OTA)。可以由安全元件(SE)提供智能卡或其他设备中的安全数据或应用程序存储。SE可以被嵌入在移动设备的逻辑电路中,可以被安装在SIM中,或者可以被合并在可移动SD卡(安全数字存储卡)中,以及其他可能的实现。取决于主存小应用程序的安全元件(SE)的类型,该小应用程序所实现的特征可以不同。虽然SE通常不论其形状因子和用途如何,都是Java卡兼容的,但它可以实现对该类型的SE特定的特征或功能(被包括在操作系统和/或库中)。例如,UICC(通用集成电路卡)可以实现用于诸如文本消息收发和STK等网络通信的特征,而在某些嵌入式SE设备中,可以不实现这些特征。作为用来进行移动支付开发的方法和设备,将创建新的功能和服务,以及其中实现这些功能和服务的新设备。然而,为了最高效地启用这样的移动支付功能和服务的开发和部署,具有可以在各种平台(例如合并SIM卡的移动电话、合并安全元件的移动电话、智能电话、PDA等等)中实现的系统体系结构是合乎需要的。具有按以下方式来与支付应用程序进行交互的系统体系结构也是合乎需要的该方式允许执行对支付应用程序的更新而不损害用来实现移动设备的移动支付处理功能的各功能模块的操作。具有用于实现以下移动支付方法的系统体系结构也是合乎需要的即使在其中更新了支付应用程序的情况下,该方法也为消费者的支付账户和交易数据提供足够的安全。Java卡程序通常使用被称为“导出文件”的数据格式来提供关于由例程利用的应用程序编程接口的信息和对这些应用程序编程接口的访问,该例程是被设计为在诸如安全元件(SE)等平台上执行的应用程序的一部分。如果接口不存在于平台上,或者如果导出文件数据不可用,则不可能将Java卡程序(即,“小应用程序”)加载到该平台上。出于这种原因,一些平台在它们可以支持的应用程序的类型或功能方面受到限制。所需要的是用于在各种移动设备平台上进行支付交易的体系结构或系统设计,该体系结构为消费者的支付账户和支付交易数据提供足够的安全且按以下方式来与支付应用程序进行交互该方式允许更新支付应用程序而不损害移动支付设备的其他功能的操作。本发明的各实施例个别地和共同地解决这些问题和其他问题。概述本发明的各实施例涉及用于使用移动设备进行支付交易的系统、装置和方法。具体地,本发明的各实施例涉及用于驻留在可被用来进行支付交易的移动设备中的功能元件的体系结构或系统设计。本发明的体系结构可以被实现为驻留在被嵌入或以其他方式被合并到移动设备中的安全元件中的一组功能模块。这些功能模块可以包括Java小应用程序(在Java卡虚拟机的控制下执行的Java卡应用程序)和Java类(可以包含数据以及能操作该数据的功能两者的代码段的定义),它们协作来实现允许用户(经由移动支付应用程序用户界面)与被安装在设备上的移动支付应用程序进行交互所需要的主要功能。本发明的各实施例提供在各种Java卡平台上实现移动支付服务的能力且与支付应用程序和支付应用程序用户界面合作,该支付应用程序和支付应用程序用户界面可被更新或变更而不影 响本发明的功能模块实现所需功能和操作的能力。本发明的各实施例还按需提供在允许用户和支付应用程序与消费者的支付账户和支付交易数据进行交互的同时安全地管理该账户和交易数据的能力,以实现移动支付服务。在一个实施例中,本发明涉及用于进行支付交易的装置,其中该装置包括安全元件、被安装在安全元件中的多个功能模块,该多个模块包括用于允许消费者进行支付交易的移动支付模块、用于手动地认证移动网关和移动支付模块的移动网关认证模块、用于在蜂窝网络和该装置之间传输数据和命令以进行支付交易的空中通信和数据传输模块、用于将从移动网关接收到的消息转换成可由该多个功能模块中的其他模块执行的命令并将来自该多个功能模块中的其他模块的响应转换成移动网关可理解的消息的处理消息模块、以及用于在该多个功能模块之间共享消费者的多个支付账户共有的数据的多路访问模块;以及被安装在安全元件外且用于生成允许消费者与移动支付模块进行交互的用户界面的用户界面应用程序。在另一实施例中,本发明涉及进行支付交易的方法,其中该方法包括提供包含多个功能模块的安全元件,其中这些功能模块包括用于允许消费者进行支付交易的移动支付模块、用于手动地认证移动网关和移动支付模块的移动网关认证模块、用于在蜂窝网络和包含安全元件的装置之间传输数据和命令以进行支付交易的空中通信和数据传输模块、用于将从移动网关接收到的消息转换成可由该多个功能模块中的其他模块执行的命令并将来自该多个功能模块中的其他模块的响应转换成移动网关可理解的消息的处理消息模块、以及用于在该多个功能模块之间共享消费者的多个支付账户共有的数据的多路访问模块;提供处于安全元件外部且用于生成允许消费者与移动支付模块进行交互的用户界面的用户界面应用程序,配置多路访问模块以便为消费者的多个支付账户中的每一个生成多路访问应用程序的单独实例,配置安全元件以便存储所共享的、多路访问应用程序的实例中的每一个所共有的数据,并且允许消费者与用户界面应用程序进行交互以便操作移动支付模块和进行支付交易。在阅读本发明的详细描述和所包括的附图
之后,本领域中的普通技术人员将明显看出本发明的其他目标和优点。附图简述图I是阐释诸如其中可嵌入或以其他方式实现本发明移动支付应用程序体系结构的移动电话等移动设备的主要组件的功能框图;图2是阐释根据本发明的一个实施例的使用诸如图I的移动设备等移动设备来执行支付交易的系统的主要组件的功能框图;图3是阐释根据本发明的一个实施例的本发明移动支付应用程序体系结构的逻辑体系结构的主要组件的功能框图;图4是阐释根据本发明的一个实施例的多路访问(MA)小应用程序能如何提供存 储和访问可由多个模块使用的消费者和/或支付账户或支付交易数据的有效方式的示图;以及图5是阐释用于进行和处理可以与本发明移动支付体系结构一起使用的移动支付交易的可能的功能体系结构的示图。详细描述本发明的各实施例涉及使用移动设备来进行支付交易的系统、装置和方法。具体地,本发明的各实施例涉及驻留在可以用来进行支付交易的移动设备中的功能元件的体系结构或系统设计。本发明的启用移动支付交易的体系结构准许包含安全元件(SE)的移动设备在销售点(POS)终端处进行非接触支付交易。该体系结构提供管理和维持消费者的支付账户和支付交易信息的安全的功能,消费者的支付账户和支付交易信息可以被存储在SE或移动设备的另一数据存储元件内。本发明体系结构可以直接安装在安全元件上,同时支付模块的用来访问该体系结构的各组件的功能的用户界面应用程序可以被安装在安全元件外以及安装在移动设备的另一数据存储元件中。在一些实施例中,本发明体系结构提供用于与支付应用程序进行交互以便允许该应用程序作为进行移动支付交易的一部分来访问和利用该体系结构的各模块的功能的一组应用协议数据单元接口(APDU,其是在小应用程序和正在执行该小应用程序的宿主应用程序之间交换的数据分组)。在一些实施例中,本发明体系结构可以由基于Java卡和GlobalPlatform (全局平台)规范的安全元件(SE)实现来主存。在一个实施例中,该体系结构遵循EMV非接触通信协议规范2. 0且被实现为运行在SE上的一个或多个Java卡小应用程序。注意,EMV是IC卡(“芯片卡”)与具备IC能力的POS终端和ATM的互操作标准,且被用来认证信用卡和借记卡支付,其中EMV是该标准的发起者Europay、MasterCard和Visa的缩写。正如将要描述的,本发明体系结构可以被实现为诸如移动电话、智能卡、个人数字助理(PDA)或膝上型计算机以及其他示例等便携式消费支付设备的一部分或可由其访问的模块。因而,尽管在下列描述中将参考移动电话中的实现来描述本发明,但应理解,可以使用其他实现平台,且被认为是在本发明的可能实施例内。图I是阐释诸如其中可嵌入或以其他方式实现本发明移动支付应用程序体系结构的移动电话等移动设备102的主要组件的功能框图。正如图I中所阐释的,移动设备102可以包括用来允许某些电话通讯和其他设备功能的电路。负责允许那些功能的功能元件可以包括用于执行实现设备的功能和操作的指令的处理器104 (例如电子数据处理器或微处理器)。处理器104可以访问数据存储112 (或另一合适的存储器区域或元件)以便检索指令或在执行指令时使用的数据。数据输入/输出元件108可以用来允许用户输入数据(例如,经由话筒或键盘)或接收输出数据(例如,经由扬声器)。显示器106也可以用来向用户输出数据或其他形式的信息。通信元件110可以用来允许在设备102和无线网络之间的数据传输(例如,经由天线118),以便帮助启用电话通讯和数据传输功能。设备102也可以包括非接触或安全元件接口 114,以便允许在非接触和/或安全元件116和该设备的其他元件之间的数据传输,其中非接触和/或安全元件116可以包括安全存储器和近场通信(或其他形式的近程通信)数据传输元件。注意,尽管图中将安全元件和近场通信数据传输元件描绘为单个模块(元件116)的一部分,但本发明的实现并不要求这样,且在一些实施例中,这些元件可以独立的模块的一部分。还应注意,安全元件(SE)可以包括安全数据存储区域、处理元件(例如能够执行指令集的CPU或微处理器)或能够执行加密功能的元件以及其他组件中的一个或多个。数据存储112可以是存储数据的存储器,且可以是包括存储器芯片等的任何合适的形式。数据存储或存储器112可以用来存储诸如用户标识或认证信息、用户账户信息、交易数据等等数据。所存储的财务信息可以包括诸如银行账户信息、银行标识号(BIN)、信用卡或借记卡账号信息、账户余额信息、有效期、消费者信息(例如姓名、生日等)等信息。注意,这样的数据可以改为存储在或者也存储在作为非接触/安全元件116的一部分的安全数据存储区域中。在本发明的一些实施例中,非接触/安全元件116充当安装本发明体系结构的位置和存储消费者的支付账户或支付交易数据的位置。正如所描述的,数据存储112 也可以包含在由处理器104执行时实现作为设备的操作的一部分的操作或处理的指令。在一个实施例中,这样的指令可以用来生成允许用户进行移动支付交易的用户界面。可以使用显示器106来显示用户界面,且消费者可以使用数据输入/输出元件108与该界面进行交互。这样的交互可以允许消费者激活支付应用程序、发起移动支付交易、提供进行交易所需要的数据或其他形式的输入等等。正如将描述的,支付应用程序用户界面可以访问设备102中包含的本发明体系结构,以便允许设备执行进行移动支付交易中或者以其他方式管理消费者的移动支付交易账户或交易数据中所使用的功能或操作。因而,在本发明的一些实施例中,本发明体系结构安装并驻留在可以是元件116的全部或部分的安全元件(SE)中,其中消费者的支付账户数据和/或支付交易数据中的一些或全部也被存储在安全元件中。此外,在一些实施例中,由消费者用来进行支付交易的支付应用程序可以安装且驻留在安全元件中,其中允许用户与支付应用程序交互的用户界面应用程序被安装在安全元件外。用来进行支付交易的功能元件和数据的这种排列通过将消费者的私有数据与支付设备的其他元件隔离开以向消费者提供安全性,同时允许对进行各种支付交易操作所需要的数据和功能模块的交互和访问。图2是阐释根据本发明的一个实施例的使用诸如图I的移动设备等移动设备来执行支付交易的系统的主要组件的功能框图。如图2中所示出的,系统200包括具有无线通信能力222的移动设备202。移动设备202可以是无线移动电话、PDA、膝上型计算机、寻呼机等等。在典型的实施例中,移动设备202是蜂窝电话,但应注意,本发明的实现不限于此实施例。在蜂窝电话用作移动设备202的情况中,该设备包括允许某些电话通讯功能的移动设备(蜂窝电话)电路204。移动设备电路204允许移动设备202经由蜂窝网络222与蜂窝系统(即,无线电信公司)220无线地进行通信,以及其他功能。移动设备202还包括通常以半导体芯片的形式来实现的非接触元件206。移动设备202还包括以半导体芯片或其他合适的形状因子的形式来实现的安全元件(SE)210。在一些实施例中,安全元件210可以包括处理元件(例如用于执行所存储的指令的CPU或微处理器)、允许执行密码操作的一个或多个模块、以及安全数据存储元件中的一个或多个。安全数据存储元件可以向由处理元件执行的指令和/或向被执行来给用户提供进行移动支付的能力的应用程序或小应用程序提供存储。非接触元件206通常包括诸如天线或换能器等近场通信(NFC)数据传送(例如,数据传输)元件。非接触元件206通常被嵌入在移动设备202的元件内并与之集成,且在一些实现中,经由蜂窝网络222传送的数据或控制指令可以通过非接触/安全元件接口 208与非接触元件206交换或被应用到非接触元件206。非接触/安全元件接口 208用于准许在移动设备电路204(且因此蜂窝网络)与安全元件210或非接触元件206之间交换数据和/或控制指令。非接触元件206也可以包括可经由接口 208访问以准许实现例如数据读 、写和擦除功能的存储器或安全数据存储形式的数据存储能力。安全元件210 (或更准确地,作为安全元件210的一部分的安全数据存储区域)可以用来存储设备的操作或进行支付交易中使用的操作参数或其他数据。安全元件210还可以用来存储需要增强安全的其他数据,例如,支付交易数据、个人支付账户数据、标识数据、认证数据、应用程序或设备功能的访问控制数据等等。安全元件210可以实现成独立且与非接触元件206分开的形式的芯片,或者可以是形成非接触元件206的一部分的芯片中的存储器的一部分。还应注意,被包含在移动设备内的安全元件和/或非接触元件可以是可移动元件或者可以集成在移动设备内。可移动元件的示例包括SIM卡、闪存卡和其他合适的器件。移动设备202也可以包括一个或多个应用程序209,其中应用程序209以软件、固件或硬件中的一种或多种的形式来实现。应用程序209被用来实现用户所需的各种功能,其中这样的功能可以包括但不限于某些电子商务交易操作、某些支付交易操作等等。通常,应用程序209表示专用于特定功能的处理或操作,该特定功能向用户提供附加值且不是设备的标准操作的一部分(即,例如,不是启用标准电话通讯功能的一部分)。例如,应用程序209可以包括可由消费者用来通过与所安装的支付应用程序或小应用程序交互来进行移动支付交易的用户界面应用程序。核心支付应用程序或小应用程序可以与本发明移动支付应用程序体系结构的其他功能模块中的一个或多个交互,其中核心应用程序和那些模块被包含在安全元件210或另一形式的安全数据存储中。用户界面应用程序因而允许用户发起支付并与核心支付应用程序(即,移动支付模块或应用程序)交互以进行交易。如图所示,应用程序209可以与安全元件210交换数据(在一些情况中,经由非接触/安全元件接口 208,而在其他实现中,例如SIM,可以直接完成通信和数据交换而无需中间接口)且也能与移动设备电路204交换数据。如上所述,用于本发明目的的典型的应用程序209是用户界面应用程序,其允许用户利用所安装的支付应用程序来为交易进行支付,其中该交易是使用移动设备来全部或部分地进行的。在一些实施例中,安全元件210(或相关联的安全数据存储元件或区域)可以包含用户或支付应用程序认证数据、加密密钥数据、用户或支付账户标识数据、支付交易记录数据、账户余额数据等等。应用程序209通常被存储为存储器207中的一组可执行指令,存储器207也可以包括数据存储213。处理器访问存储器207以按需加载和卸载指令和数据来执行指令和执行所安装的应用程序的功能。非接触元件206能够使用实现近场通信能力212的数据传输元件来传送和接收数据,通常根据标准化协议或数据传输机制(图中被标识为ISO 14443/NFC)来进行。近场通信能力212是近程通信能力;示例包括ISO 14443标准、RFID、蓝牙TM、红外或可以用来在移动设备202和通常位于商家的营业地点的设备读取器或销售点终端230之间交换数据的其他数据传输能力。因而,移动设备202能够经由蜂窝网络222和近场通信能力212两者来通信和传输数据和/或控制指令。系统200还包括收单方232,收单方232与商家或商家的设备读取器或销售点终端230通信。收单方232与支付处理网络234通信且作为交易授权过程的一部分来与支付处理网络234交换数据。支付处理网络134也与发卡方236通信。作为交易授权或交易核对过程的一部分,发卡方236可以与支付处理网络234交换数据。系统200也可以包括移动网关238,移动网关238能够将蜂窝(无线)网络或系统耦合到第二网络(通常是诸如因特网等有线网络),且能够允许在各网络之间的数据通信和传输。移动网关238可以按需执行数据处理操作以准许在两种类型的网络之间的有效 传输数据,包括但不限于考虑网络协议中的差异的数据重新格式化或其他处理。移动网关238也可以执行数据处理操作以便允许在网络和被耦合到每一类型的网络的设备之间的更有效和更安全的数据传输,例如出于提高用户在移动设备上使用所接收的数据的能力的目的。如图所示,在一些实施例中,移动网关238被耦合到支付处理网络234,支付处理网络234被耦合到收单方230。注意,其他实施例是可能的,例如移动网关238被耦合到发卡方236,以及收单方230被耦合到发卡方236。类似地,发卡方236可以包括用作移动网关238的能力。系统200也可以包括能够与移动网关238和发卡方236进行通信和数据传输的加密密钥分发服务器240。加密密钥分发服务器240可以用来将加密密钥分发给移动网关238、发卡方236或移动设备202中的一个或多个,以便用于允许在发卡方和移动设备之间传输的交易数据的加密和解密。在一些实施例中,支付处理网络234可以被配置为允许传输经加密的数据;如果是这样,则加密密钥分发服务器240能够与支付处理网络234通信,以用于将加密密钥分发给该网络的元件(如将密钥服务器240连接到网络234的非固定线路所示)。数据加密/解密过程也可以(或改为)根据加密密钥分发服务器240分发的加密密钥来在移动网关238中执行。注意,发卡方236可以与加密密钥分发服务器240通信,以便告知服务器240它出于与移动设备202通信的目的授权了若干移动网关中的哪一个,以及因此应将特定一组加密密钥分发给哪个移动网关。因而,发卡方236可以出于与特定移动设备通信和交换交易数据的目的来挑选它选择授权多个可用的移动网关中的哪一个。图3是阐释根据本发明的一个实施例的本发明移动支付应用程序体系结构的逻辑体系结构的主要组件的功能框图。如图所示,在一些实施例中,本发明系统设计或体系结构包括被实现为安全元件302中的可执行指令(或另一功能上等效的形式,例如固件、中间 件等等)的一组功能模块。安全元件(SE) 302表示用于实现各功能模块的一个可能的实施例,且其他可能的实施例是SIM卡、智能卡或类似的元件。安全元件302可以嵌入在移动设备(诸如被描绘成图I的元件102或图2的元件202等移动设备)中,或者以其他方式成为移动设备的一部分。图3中,移动设备被描绘成手机或移动电话304,为清晰起见将其描绘为两个逻辑元件,其中安全元件302 —侧放置一个。安全元件302可以是诸如图2中描绘的元件210或图I中描绘的元件116等元件。
如上所述,在一些实施例中,本发明体系结构被实现为包括各功能模块的逻辑体系结构或系统,其中每一模块能够执行用于进行移动支付交易或管理被用来使用移动设备进行支付的消费者账户的特定一组功能或操作。本发明体系结构被设计为当新的技术和服务变得可用时容纳开发使用环境。它做到这点的一种方式是通过将移动支付功能分成不同的模块以便简化整组模块的可移植性,且也减少确认每一模块和该组模块的总体顺从性所需的时间和努力在本发明的一些实施例中,本发明体系结构可以包括实现或辅助实现下列功能的模块、小应用程序或类 移动非接触支付操作(由移动支付模块306实现),其可以包括以下中的一个或多个〇磁条数据管理(MSD)〇快速智能借/贷(qVSDC)操作〇消费者移动设备命令处理〇移动非接触发卡方更新处理〇移动非接触支付个性化; 多路访问功能(由多路访问(MA)模块308实现)一这一模块通过在适用时使用共享的对象和数据结构来允许高效地使用数据存储,来提供在小应用程序和其他功能元件之间的数据共享; 移动网关认证(由移动网关(MG)认证模块310实现)一这一模块辅助提供一组数据和功能,以便通过将蜂窝或无线通信网络到诸如因特网等另一网络来允许将移动网关(例如参考图2描述的)用作在移动设备和支付处理网络之间的中间代理; OTA(空中)平台连接一这一功能通过可信路径且使用移动运营商网络,允许应用程序的个性化以及由发卡方发起的更新或由应用程序发起的更新请求; STK交互处理(由工具箱模块316和STK框架318实现); 消息处理(由处理消息(PM)模块314实现)一其辅助处理传入和传出的消息。在一些实施例中,处理消息模块用于将从移动网关接收到的消息转换成可由移动支付模块306执行的命令,并将来自模块306的响应转换成可以被移动网关理解的消息; 密码功能(由密码功能(CF)模块312实现)一这一模块辅助提供一组功能和数据,以便通过对传入或传出数据执行密码操作来允许数据的安全传输; 非接触注册服务一由安全元件平台通过API提供的一组服务,以便管理非接触服务的注册和应用程序在非接触接口上的可见性,以及被选择在支付交易期间使用的应用程序的优先级;以及 应用程序激活用户界面——与消费者对接以便激活/停用支付应用程序和设置被选择为用于进行支付交易的支付应用程序的优先级等等的模块(在安全元件或移动设备上)。如图所示,移动设备或手机304可以包括移动支付应用程序用户界面应用程序320,其被安装在安全元件302外,且可实现成Java软件移动信息设备小程序(midlet)的形式。用户界面应用程序320允许消费者使用移动设备302来进行移动支付交易,且可以允许支付处理网络或发卡方执行作为管理消费者的支付账户的一部分的某些数据处理或数据传输操作。在进行移动支付交易时,用户界面应用程序320可以提供用户界面以便允许消费者进行支付应用程序,且也可以用于认证消费者,并向安全元件302中所包含的模块中的一个或多个提供数据或从其接收数据。移动设备或手机304也可以包括用来执行设备的电话通讯功能中的某些(例如允许与蜂窝网络通信)的基带处理器322。基带处理器322将通常被用来允许通过无线或蜂窝网络的空中(OTA)更新处理和支付交易数据的其他通信。另外,移动设备或手机304也可以包括非接触支付前端(CLF) 324,其允许设备或手机304使用近场通信(NFC)或其他近程通信能力来执行非接触数据传输操作。除了允许非接触支付交易之外,本发明体系结构也可以提供附加功能,包括但不限于 对在手机应用程序和安全元件应用程序之间定义的一组命令的消费者移动设备命令处理,以便认证消费者、允许对持卡人数据的受保护访问并允许对支付交易日志的受保护访问等等;以及
通过空中(OTA)网络、广域网或将移动设备呈现给非接触支付终端读取器的移动非接触发卡方更新处理(这一功能准许发卡方更新或复位被存储在移动设备中的数据,该移动设备可以用来跟踪支付交易的各方面、刷新可用资金、复位消费者验证方法等等)。这一功能的一种可能的实现的描述可见于先前提到的于2009年9月21日提交的标题为“Over The Air Update Of Payment Transaction Data Stored In Secure Memory(安全存储器中存储的支付交易数据的空中更新)”的美国申请第12/563,421号。本发明的各实施例可以提供使用非接触接口进行移动非接触支付交易的下列方式中的一种或多种1)磁条非接触支付(基于磁条数据,MSD);以及2)允许通过非接触接口(例如本申请的受让人Visa所允许的那些)进行交易的快速智能借/贷(qVSDC)支付。通过要求移动非接触应用程序支持MSD和qVSDC两者,并要求读取器支持MSD或qVSDC,可以实现全球互操作性。支付设备读取器和消费者移动设备交互的方式可以取决于读取器的能力。如果读取器支持qVSDC功能和协议,则初步交易处理操作可以包括通过可用的消费者验证方法(例如,通过如果偏好设置要求在进行支付交易之前或者交易额高于由卡发卡方定义的限度时进行消费者认证,则要求输入口令)来用移动设备认证消费者。这样的认证过程可以在支付交易之前进行,且可以包括提示消费者将移动设备呈现给读取器。这种类型的认证操作的一种可能实现的描述可见于在2009年9月21日提交的标题为“Methodof Performing Transactions with Contactless Payment Devices Using Pre-Tap andTwo-Tap Operations (使用预叩和双叩操作借助于非接触支付设备执行交易的方法)”的美国专利申请第12/563,444号,该专利申请的内容出于所有目的通过引用以其整体合并于此。在实地检测到或以其他方式发现能够进行非接触支付交易的移动设备之后,在一些实现中,读取器尝试读取PPSE,PPSE是可通过非接触接口访问的所支持的支付应用程序的区分了优先次序的目录。设备读取器可以向支付设备指示可以使用什么非接触支付交易支持模式(其中通常支持MSD和qVSDC中的任一种或两者)。然后,移动支付交易的处理可以由在本发明体系结构内的适当的数据路径来确定(其可以确定被安装在移动设备上且由移动设备执行的支付应用程序(图3的元件320)的行为)。如上所述,本发明的各实施例可以支持MSD和qVSDC处理路径(以及其他),其中MSD路径用于利用磁条数据来提供设备数据的区域或设备读取器,而qVSDC路径用于利用嵌入式芯片来提供设备数据的区域或设备读取器。在一些实施例中,本发明体系结构可以支持下列命令 Select (选择)(按名称),由IS0/IEC 7816-4定义,允许选择对应于特定持卡人账户的特定支付应用程序,其返回卡的处理数据对象列表以及其他信息; Get Processing Option (获取处理选项),包含卡的处理数据对象列表中所请求的终端数据; Read Record (读取记录),由支付系统第三册、应用程序规范4. 2版的EMV集成 电路卡规范定义,用于从线性文件检索文件记录;以及 Get Data(获取数据),用于检索数据元素。图3的多路访问模块308为本发明体系结构提供了在该体系结构的不同入口点之间共享内部数据以及消费者账户和交易数据的能力,其中减少了复制数据的量。通过允许在本发明移动支付体系结构的多个小应用程序、类、功能或操作之间共享某些数据,多路访问模块308可以减少设备的数据存储或存储器需求。注意,在一些实施例中,下列数据元素可以不在模块的不同实例之间共享,且因而对多路访问模块的每一实例具有一个值 Select响应数据中的文件控制信息(FCI); Get Processing Option响应数据中的应用程序文件定位符(AFL);以及# Get Processing Option响应数据中的应用程序互换特征(AIP)。在一些实施例中,即使这些数据元素包含相同值或相同值中的一些,也为多路访问模块308的每一实例复制它们。其余的数据可以在本发明体系结构的其他实例或图3的元件302的点线内示出的应用程序组之间共享。图4是阐释根据本发明的一个实施例的多路访问(MA)模块308可如何提供存储和访问可由多个模块使用的消费者和/或支付账户或支付交易数据的有效方式的示图。该附图描绘了如何在多个多路访问实例和底层体系结构的组件对象之间分发数据。如图所示,该附图中多路访问模块的每一实例(被标记为“多路访问实例I”(元件402)、“多路访问实例m” (元件404)和“多路访问实例最大(instancemax) ” (元件406))由对应于该实例的文件控制信息(FCI)、应用程序文件定位符(AFL)和应用程序互换特征(AIP)的唯一值来表征。应注意,FCI、AFL和AIP被示出为可以与多路访问模块的每一实例相关联的唯一数据的示例,且在一些实施例中,每一实例中可以仅存在这些唯一数据类型中的一些(单独存在,或者还有其他数据类型)。每一实例402、404、406与诸如公共或共享的加密密钥、交易记录或内部数据等一组公共的其他值或数据408相关联。以此方式使用多路访问模块实例和公共数据408允许本发明体系结构节省数据处理和数据存储资源,同时允许使用图3中用多个消费者支付账户描绘的各功能模块。例如,在其中每一消费者支付账户(例如,借、贷、汇款等等)由唯一多路访问实例表示的情况中,本发明体系结构提供允许每一账户按需利用一组公共的数据和功能模块来实现一定范围的可能交易和交易操作的资源高效的方式。在另一示例中,每一类型或类的借记账户(例如,国内的或国际的)可以由唯一多路访问实例表示,且对贷记账户或其他形式的账户是类似的。在另一示例中,多路访问模块和公共数据的使用可以允许将单个计数器用于多个持卡人账户(其中,在这样的示例中,计数器可以由被存储在公共的共享数据对象中的数据表示,其可由多路访问模块的多于一个的实例来更新)。在这一示例中,多路访问模块的每一实例可以表示不同的消费者账户、账户类型或账户类型内的子类型(例如,借记卡、信用卡、国内卡、国际卡、ATM(自动柜员机)等等),其中每一账户都能访问和更新公共计数器。这种安排可以准许有效跟踪关于整组消费者账户(而不仅是每一个别账户)的感兴趣的某些消费者账户特性。例如,发卡方可以想要跟踪消费者参与的交易的总数、所有交易的总值、特定类别的交易的总数等等,其中这一数量是被期望为所有消费者账户的总和(例如,以便提供更好的欺诈控制、新服务的营销等等)。返回到图3中所描绘的各功能模块,如上所述,本发明的各实施例可以支持移动网关认证(MG)功能(如使用移动网关认证模块310来实现的)。这一功能在授权网关或工具箱模块316转发发卡方脚本请求之前实现在本发明体系结构和移动网关之间的相互认证操作。注意,在这种情况中,工具箱模块可以在移动网关和安全元件移动支付应用程序之间提供直接连接,以便允许发卡方更新。这可以允许发卡方(通过支付处理网络的中介)实现账户更新、计数器刷新、消费者验证方法(例如口令)复位或更新、应用程序启用/禁用等等,而不需要在移动设备上的中间应用程序或不需要与消费者交互。在一些实施例中,处理消息模块(图3的元件314)用于将从移动网关接收到的消息转换成APDU命令并将其转发给移动支付模块306。处理消息模块314也可以将从移动支付模块306接收到的APDU命令的响应转换成适当的移动网关消息格式。图5是阐释可以与本发明移动支付体系结构一起使用的用于进行和处理移动支付交易的可能的功能体系结构的示图。如图所示,总体功能体系结构可以包括一组消费者服务502、一组接入服务504、近邻平台506和支持数据处理和信息系统508。如图所示,月艮务的一些或全部的用户可以包括商家店铺510、发卡方512和消费者514。消费者服务502包括消费者在进行或尝试进行支付交易时与其交互的那些体系结构元素或服务。这样的元素或服务可以包括,例如,商家销售点终端(图中被标识为“商家终端”)。取决于消费者移动设备和该移动设备中可用的移动支付应用程序和移动支付体系结构的配置和功能,消费者可以使用接触或非接触操作模式与商家终端交互。消费者服务502可以包括由消费者的支付账户的一个或多个发卡方提供的服务或功能(被标识为“发卡方的消费者服务”),且其可以包括诸如登记、消费者验证方法设置等等服务。消费者服务502还可以包括TSM服务,TSM服务通常包括应用程序的提供(用于移动设备和安全元件)、应用程序的个性化、移动设备和安全元件应用程序的寿命管理等等。消费者服务502与负责允许消费者利用这些服务的元件可以与接入服务504交互,以便允许进行支付交易。接入服务504可以包括移动网关所提供或允许的服务(由此允许在移动支付设备和诸如因特网等网络之间的通信和数据传输)、用于支付交易的支付处理网络的伙伴网络所提供的服务、以及诸如用于发卡方的近邻服务的处理和管理的访问等等客户机共有服务。近邻平台506表示提供诸如发卡方近邻应用程序偏好管理、用于发卡方和可信服务管理器提供商的(Visa)个性化助手等发卡方管理服务,用于向伙伴提供对近邻相关材 料的规范和实现指南的访问的(Visa)伙伴服务,以及提供用于与消费者设备上的移动应用程序的移动消息通信的分析器和构建器和用于通过支付处理网络在移动应用程序和发卡方系统之间交换脚本的集成设施的近邻支付服务。处理和信息系统服务508表示提供用于进行支付交易并向消费者提供增值服务的后端数据处理和数据访问的服务。这些服务中的一个或多个可以由负责处理与支付交易相关的数据且与发卡方或收单方通信以便授权交易的支付处理网络提供。这些服务可以包括用于与消费者相关的交易记录和数据的数据存储(如图中标记为“数据仓库”的元件所示),争议解决服务(如图中标记为“争议”的元件所示)、用于交易记账的账户记账服务(如图中标记为“记账”的元件所示)、例如提供与交易相关的警报和通知等增值服务(如图中标记为“警报/通知”的元件所示)、或与支付交易的处理和执行相关的其他典型服务(如图中由记为“交易服务”的元件所示),例如验证授权消息并将其转发给发卡方以及返回授权响应、提供清算和结算服务、欺诈检测等等。在典型的使用情况中,移动支付应用程序用户界面应用程序(例如由图3的元件320表示)被安装在移动设备304中。用户界面应用程序可以由消费者用来使用移动设备 进行支付交易。在一些实施例中,响应于与销售点终端(POS)的交互,可以激活所安装的用户界面应用程序或以其他方式使其对消费者可用,其中交互可以按接触或非接触模式执行。在其他实施例中,通过用户界面或准许消费者执行启动或激活移动支付应用程序或支付应用程序用户界面的操作的其他方法,可以激活移动支付应用程序和/或支付应用程序用户界面或以其他方式使其对消费者可用。在激活了移动支付应用程序用户界面应用程序之后,它与移动支付模块306通信(如图3中连接元件320和元件306的箭头所示)。这准许移动支付应用程序用户界面320和移动支付模块306在这两个元件之间交换消息和数据。如图3所示,移动支付应用程序用户界面320驻留在安全元件302外,而移动支付模块306驻留在安全元件302内。这种体系结构的设计准许在不影响安全元件302的内容或操作的情况下进行移动支付应用程序用户界面320的更新、修订、或甚至替换。在这样的情况中,移动网关认证模块310和/或CF模块312可以用来允许对应用程序320的任何更新、修订或替换进行认证和/或确认。类似地,移动网关认证模块310和/或CF类312可以用来对寻求将其安装在安全元件302或支付设备的其他部分中的其他应用程序或功能模块进行认证和/或确认。本发明体系结构也准许将敏感数据(例如交易记录、加密密钥、消费者认证数据等等)存储在安全元件302中并使其可访问,以供用于进行移动支付交易,而没有作为移动设备304的其他应用程序或元件的操作的结果,该数据被破坏或未经授权方访问该数据的可能性。移动支付模块306充当与移动支付应用程序用户界面320的消息收发和数据交换的主要入口。在这一角色中,移动支付模块306可以交换数据或引起安全元件302中所包含的其他模块执行数据处理或数据访问操作。例如,在执行用来允许消费者使用移动设备进行支付交易的功能或操作时,移动支付模块306可以与移动网关认证模块310通信,以确定用于特定交易的适当移动网关,或者获得用来认证移动网关的数据。类似地,移动支付模块306可以与CF模块312通信,以便执行与数据或消息的加密或解密相关的功能或操作。移动支付模块306可以与PM模块314通信,以便将消息在移动支付模块306和移动网关使用的格式之间进行变换或转换(根据需要)。此外,MA(多路访问)模块308可以与移动支付模块306通信,以便获得用来使用特定消费者账户进行支付交易的数据。注意,如图3所示,作为使用非接触操作模式进行支付交易的一部分,非接触前端(CLF) 324也可以与MA模块308通信。在这样的情况中,CLF324可以与MA模块308交互,以便使用特定消费者账户进行支付交易,其中该账户的数据或信息被存储为模块308的实例。可以使用任何合适的计算机语言(诸如,例如,Java、C++或Perl)使用例如传统的或面向对象技术来将本申请中描述的软件组件或功能实现为由一个或多个处理器执行的软件代码。可以在计算机可读介质(例如随机存取存储器(RAM)、只读存储器(ROM)、磁介质(例如硬驱动器或软盘)、或光学介质)例如CD-ROM))上将软件代码存储为的一系列指令或命令。任何这样的计算机可读介质也可以驻留在单个计算装置之上或之内,且可以出现在系统或网络内的不同的计算装置之上或之内。本发明可以实现成软件或硬件或两者的组合中的控制逻辑的形式。该控制逻辑可作为适于指示信息处理设备以执 行本发明的各实施例中所公开的一组步骤的多个指令来存储在信息存储介质中。基于在此提供的本公开内容和教导,本领域中的普通技术人员将明白实现本发明的其他方式和/或方法。在各实施例中,在此描述的任何实体可以由执行所公开的功能和步骤中的任何或全部的计算机、计算设备或数据处理设备实现。对“一”、“一个”或“该”的任何叙述意指“一个或多个”,除非特别指出与此相反。以上描述是说明性的且不是限制性的。在阅读本公开内容后,本发明的许多变型对本领域的技术人员将变得显而易见。因此,不应参考以上描述确定本发明的范围,而是应参考待审的权利要求以及它们的完全范围或等效方案来确定本发明的范围。
权利要求
1.一种用于进行支付交易的装置,包括 安全元件; 被安装在所述安全元件中的多个功能模块,所述多个模块包括 用于允许消费者进行支付交易的移动支付模块; 用于对移动网关和所述移动支付模块进行相互认证的移动网关认证模块; 用于传输数据和命令以便在蜂窝网络和所述装置之间进行所述支付交易的空中通信 和数据传输模块; 用于将从所述移动网关接收到的消息转换成可由所述多个功能模块中的其他模块执行的命令并将来自所述多个功能模块中的其他模块的响应转换成所述移动网关可理解的消息的处理消息模块;以及 用于在所述多个功能模块之间共享所述消费者的多个支付账户共有的数据的多路访问模块;以及 被安装在所述安全元件外且用于生成允许所述消费者与所述移动支付模块交互的用户界面的用户界面应用程序。
2.如权利要求I所述的装置,其特征在于,所述多路访问模块用于,为所述消费者的多个支付账户中的每一个生成多路访问应用程序的单独实例,且进一步,其中所述装置还包括包含由所述多路访问应用程序的所述实例中的每一个共享的数据的数据存储元件。
3.如权利要求2所述的装置,其特征在于,所述共享的数据包括密钥、用于消费者验证方法的数据、账户相关的数据、或支付交易数据中的一种或多种。
4.如权利要求2所述的装置,其特征在于,所述多路访问应用程序的每一实例与文件控制信息、应用程序文件定位符信息或应用程序互换特征信息中的一种或多种的唯一值或一组值相关联。
5.如权利要求I所述的装置,其特征在于,所述装置被包含在移动电话中。
6.如权利要求I所述的装置,其特征在于,所述安全元件是SM卡或安全嵌入式元件。
7.如权利要求I所述的装置,其特征在于,还包括用于加密或解密数据或消息的密码功能1吴块。
8.如权利要求2所述的装置,其特征在于,所述共享的数据包括在使用所述消费者的支付账户中的一个执行了交易时更新的计数器。
9.如权利要求2所述的装置,其特征在于,所述多路访问应用程序的第一实例对应于所述消费者的国内账户,且所述多路访问应用程序的第二实例对应于所述消费者的国际账户。
10.如权利要求8所述的装置,其特征在于,所述计数器指示使用所述消费者的多个支付账户中的任何账户进行的交易的总数。
11.如权利要求8所述的装置,其特征在于,所述计数器指示使用所述消费者的多个支付账户中的任何账户进行的交易的总值。
12.—种进行支付交易的方法,包括 提供包含多个功能模块的安全元件,其中所述功能模块包括 用于允许消费者进行所述支付交易的移动支付模块; 用于对移动网关和所述移动支付模块进行相互认证的移动网关认证模块;用于传输数据和命令以便在蜂窝网络和包含所述安全元件的装置之间进行所述支付交易的空中通信和数据传输模块; 用于将从所述移动网关接收到的消息转换成可由所述多个功能模块中的其他模块执行的命令并将来自所述多个功能模块中的其他模块的响应转换成所述移动网关可理解的消息的处理消息模块;以及 用于在所述多个功能模块之间共享所述消费者的多个支付账户共有的数据的多路访问丰旲块; 提供外置于所述安全元件且用于生成允许所述消费者与所述移动支付模块交互的用户界面的用户界面应用程序; 配置所述多路访问模块以便为所述消费者的多个支付账户中的每一个生成多路访问应用程序的单独实例; 配置所述安全元件以便存储共享的所述多路访问应用程序的所述实例中的每一个所共有的共享数据;以及 允许所述消费者与所述用户界面应用程序交互以便操作所述移动支付模块并进行所述支付交易。
13.如权利要求12所述的方法,其特征在于,所述共享数据包括密钥、用于消费者验证方法的数据、账户相关的数据、或支付交易数据中的一种或多种。
14.如权利要求12所述的方法,其特征在于,所述多路访问应用程序的每一实例与文件控制信息、应用程序文件定位符信息或应用程序互换特征信息中的一种或多种的唯一值或一组值相关联。
15.如权利要求12所述的方法,其特征在于,还包括将所述安全元件安装在移动电话中。
16.如权利要求12所述的方法,其特征在于,所述安全元件是SIM卡或嵌入在移动设备中的元件。
17.如权利要求12所述的方法,其特征在于,所述多个功能模块还包括用于加密或解密数据或消息的密码功能模块。
18.如权利要求12所述的方法,其特征在于,所述共享数据包括在使用所述消费者的多个支付账户中的任何账户执行了交易时更新的计数器。
19.如权利要求12所述的方法,其特征在于,所述多路访问应用程序的第一实例对应于所述消费者的国内账户,且所述多路访问应用程序的第二实例对应于所述消费者的国际账户。
20.如权利要求19所述的方法,其特征在于,所述计数器指示使用所述消费者的多个支付账户中的任何账户进行的交易的总数。
全文摘要
用于使用移动设备进行支付交易的系统、装置和方法。本发明的各实施例涉及驻留在可以用来进行支付交易的移动设备中的功能元件的体系结构或系统设计。本发明体系结构可以被实现为驻留在被嵌入在移动设备中或以其他方式被合并到移动设备中的安全元件中的一组功能模块。
文档编号G06Q20/32GK102656599SQ201080054797
公开日2012年9月5日 申请日期2010年9月29日 优先权日2009年9月30日
发明者K·皮尔扎德, M·B·科基切夫 申请人:维萨国际服务协会