用于向移动设备供应访问数据的方法和系统与流程

文档序号:13561387阅读:160来源:国知局
用于向移动设备供应访问数据的方法和系统与流程
相关申请的交叉引用本申请要求提交于2015年5月7日的美国临时申请no.62/158,503和提交于2015年5月8日的美国临时申请no.14/707,788的权益。为了所有目的,所有这些申请的全部内容全文以引用方式并入本文。
背景技术
:移动电话可以利用访问数据来获得对资源或位置的访问。例如,移动电话可以包括传递到访问设备的数据,以允许移动电话的用户访问建筑物中的房间。在另一个示例中,移动电话可以具有访问数据,诸如账户数据,该数据可以允许移动电话的用户访问账户以获得商品。在许多情况下,资源提供商可以向移动电话提供访问数据。例如,建筑物操作者系统可以为移动电话供应允许移动电话的用户访问建筑物的数据。在另一示例中,银行可以为移动电话提供访问数据,其允许移动电话的用户访问在银行的账户。在这种特定情况下,资源提供商可以验证移动电话的用户实际上是真实的用户。因此,访问数据到移动电话的传送是相对安全的。在一些情况下,移动设备可以包含应用程序,这些应用程序可以执行多种功能和/或可以为多于一个资源提供商执行功能。在一个示例中,移动电话上要执行多种功能或为许多资源提供商执行服务的单个应用程序可以不直接和与这些功能或服务相关联的资源提供商相关。在这种情况下可能存在信任问题,因为资源提供商可能无法控制单个应用程序。例如,如果服务提供商提供的访问数据是高度敏感的,则服务提供商可能不能完全控制单个移动应用程序的任何安全特征。此外,如果用户请求资源提供商向用户的移动电话提供访问数据,则用户也可能不信任单个移动应用程序中的数据是安全的。此外,在当今世界,许多不同的实体需要合作,以便将访问数据提供到移动设备上。例如,为了供应访问数据给移动电话以在销售点进行交易,可能需要在手机制造商、数字钱包提供商、银行、移动网络运营商和发送访问数据到移动设备的服务提供商之间进行合作。由于访问数据供应过程中涉及到许多方,所以敏感的认证数据和访问数据可能会在各种实体之间传递,并且因此可能会暴露给中间人攻击或黑客。也难以确保在供应过程发生时,用户的敏感访问数据和其他保密信息受到充分保护。本发明的实施方案涉及提高数据安全性的方法和系统。本发明的实施方案单独地和集体地解决了这些和其他问题。技术实现要素:本发明的实施方案涉及在向移动设备供应访问数据时提高安全性的方法和系统。本发明的一个实施方案涉及一种方法,该方法包括由验证实体计算机接收认证码。该方法还包括由验证实体计算机解密认证码的加密部分以获得访问数据。该方法还包括由验证实体计算机发起将访问数据供应到移动设备。本发明的另一实施方案涉及验证实体计算机,该验证实体计算机配置成执行上述方法。本发明的另一个实施方案涉及一种方法。该方法包括由移动设备在移动设备上的第一应用程序处接收用户认证数据,然后将该用户认证数据发送到授权计算机系统。该方法还包括由移动设备经由第一应用程序从授权计算机系统接收认证码。认证码可以从访问数据导出。然后,认证码从第一应用程序提供给移动设备上的第二应用程序。然后,移动设备将认证码提供给验证实体计算机。验证实体计算机验证认证码,并从认证码中获得访问数据。然后,它可以指示供应服务器计算机以向移动设备上的第二应用程序提供访问数据。本发明的另一实施方案涉及移动设备,该移动设备配置成执行上述方法。下面参考附图和详细描述对这些和其他实施方案进行更详细的描述。附图说明图1示出了根据本发明的实施方案的系统的框图。图2示出了根据本发明的实施方案的移动设备的框图。图3示出了根据本发明的实施方案的授权计算机的框图。图4示出了根据本发明的实施方案的验证实体计算机的框图。图5示出了说明用于向移动设备上的第二应用程序提供认证码的方法的流程图。图6示出了说明用于向移动设备供应访问设备的方法的流程图。图7示出了说明本发明的另一实施方案的系统和流程序列的框图。图8示出了建筑物访问系统的框图。图9示出可以使用具有访问数据的移动设备的交易处理系统的框图。图10示出了计算机的框图。具体实施方式本发明的实施方案可以提供许多不同的机制,这些机制可以在通过移动设备上的不可信应用程序访问资源时增强安全性。在一些实施方案中,这可以通过经由移动设备上的可信应用程序请求认证码来实现。在一些实施方案中,激活码可以包括加密的时间数据元,使得激活码是有时间限制的。验证实体计算机可以使用时间数据元来确定激活码是否仍然有效。本发明的一些实施方案可以包括由移动设备将用户认证数据接收到移动设备上的第一应用程序中。一旦由移动设备上的第一应用程序接收到用户认证数据,就将其发送到授权计算机系统。然后,授权计算机系统验证认证数据。在授权计算机系统验证认证数据之后,授权计算机系统然后可以生成认证码并将认证码发送到移动设备中的第一应用程序。在移动设备接收到认证码之后,移动设备中的第一应用程序可以通过第二应用程序api(应用编程接口)向移动设备上的第二应用程序提供认证码。然后,移动设备中的第二应用程序可以将认证码提供给验证实体计算机。在验证实体计算机验证认证码之后,验证实体计算机可以向供应服务器发送指令以向移动设备中的第二应用程序提供访问数据。在一些实施方案中,认证码可以是移动银行认证码,并且第一应用程序可以是移动银行应用程序。一旦消费者已经出于个性化消费者的账户信息到移动设备的目的而被发行方认证或授权,就可以由发行方生成认证码。可以将认证码传送给将向移动设备供应账户数据的一方。该方可以在执行供应过程之前认证代码。根据本发明的实施方案的高级处理流程可以描述如下。首先,发行方验证消费者的身份,并确认消费者被授权在他的移动设备上接收支付账户信息。第二,发行方使用其服务器计算机安全地创建认证码。第三,发行方将认证码传递到消费者移动设备上的发行方的移动银行应用程序。第四,移动银行应用程序通过api(应用编程接口)向移动设备上的数字钱包提供商应用程序传递认证码。然后,移动设备中的数字钱包提供商应用程序将认证码提供给远程定位的数字钱包服务器计算机。第五,数字钱包服务器计算机然后将认证码传送给验证实体计算机,该验证实体计算机可以在移动设备上的数字钱包提供商应用程序中启动支付账户数据的供应或支付账户的激活。一旦移动设备上的数字钱包提供商应用程序被供应了支付账户数据,则可以允许或授权移动设备进行支付交易。在讨论本发明的详细实施方案之前,某些术语的某些描述可能是有用的。“移动设备”可以包括用户可以携带和操作的任何电子设备,该设备还可以提供与网络的远程通信能力。远程通信能力的示例包括使用移动电话(无线)网络、无线数据网络(,例如3g、4g或类似网络)、wi-fi、wi-max或可以提供诸如互联网或专用网络之类的网络访问的任何其他通信介质。移动设备的示例包括移动电话(例如,蜂窝电话)、pda、平板计算机、上网本、膝上型计算机、个人音乐播放器、手持式专用阅读器、可穿戴设备(例如手表)、车辆(例如,汽车)等等。移动设备可以包括用于执行此类功能的任何合适的硬件和软件,并且还可以包括多个设备或组件(例如,当设备通过系固到另一个设备而远程访问网络-即,使用其他设备作为中继-一起使用的两个设备可以被认为是单个移动设备)。“认证数据”可以包括适合于认证用户或移动设备的任何数据。认证数据可以从用户或由用户操作的设备获得。从用户获得的认证数据的示例可以包括pin(个人标识号)、密码等。可以从设备获得的认证数据的示例可以包括设备序列号、硬件安全元件标识符、设备指纹、电话号码、imei号等。“验证实体计算机”可以是可以验证数据的任何合适的计算机。在本发明的实施方案中,可以验证的数据可以包括认证码。该数据可以由诸如支付组织、支付处理网络、高速运输管理局(transitauthority)、建筑物系统、票据系统等的验证实体来操作。“供应服务器计算机”可以包括可以向设备供应访问数据的任何合适的计算机。“访问数据”可以包括任何合适的数据,该数据可以用于访问资源或创建可以访问资源的数据。在一些实施方案中,访问数据可以是支付账户的账户信息。账户信息可以包括pan、支付令牌、到期日期和验证值(例如,cvv、cvv2、dcvv、dcvv2)等。在其他实施方案中,访问数据可以是可用于激活账户数据的数据。例如,在一些情况下,账户信息可以存储在移动设备上,但是可以未被激活,直到移动设备接收到特定信息。在一些实施方案中,该特定信息可被表征为访问信息。在其他实施方案中,访问数据可以包括可用于访问位置的数据。此类信息可以是事件的票据信息、用于访问建筑物的数据、中转票据信息等。“访问数据参考标识符”可以包括可标识访问数据而不是实际访问数据本身的标识符。访问数据参考标识符可用于标识特定访问数据。例如,诸如4000819882981132的主账号可以由诸如xp28278978的账户参考标识符来表示。在本发明的实施方案中,账户参考标识符不能用于进行交易,但可以用作安全机制,以允许不同的实体在不使用实际账号的情况下采取关于账户的行动。“应用程序”可以是用于特定目的的计算机程序。“时间数据元”可以包括与任何合适的时间有关的数据。例如,时间数据元可以是时间、日期、月份、年份、或上述的任何合适的组合。时间数据元也可以从时间、日期、月份、年份、或上述的任何合适的组合导出。加密的时间数据元可以是可以包括加密的时间、日期、月份、年份和/或上述的合适组合的数据元。“访问设备”可以是用于获得对资源的访问的任何合适的设备。访问设备通常可以位于任何合适的位置,例如在商家的位置。访问设备可以是任何合适的形式。访问设备的一些示例包括pos设备、蜂窝电话、pda、个人计算机(pc)、平板电脑、手持专用阅读器、机顶盒、电子收款机(ecr)、自动取款机(atm)、虚拟现金寄存器(vcr)、报亭、安全系统、访问系统、网站等。访问设备可以使用任何合适的接触或非接触式操作模式来从支付设备和/或用户移动设备发送或接收数据,或者与支付设备和/或与用户移动设备相关联。“授权请求消息”可以是发送给支付处理网络和/或支付卡的发行方以请求交易授权的电子消息。根据一些实施方案的授权请求消息可以符合iso8583,其是用于交换与由消费者使用支付设备或支付账户进行的支付相关联的电子交易信息的系统的标准。授权请求消息可以包括可以与支付设备或支付账户相关联的发行方账户标识符。授权请求消息还可以包括对应于“标识信息”的附加数据元素,仅包括例如:服务代码、cvv(卡验证值)、dcvv(动态卡验证值)、到期日期等。授权请求消息还可以包括“交易信息”,例如与当前交易相关联的任何信息,诸如交易金额,商家标识符,商家位置等,以及可以用于确定是否标识和/或授权交易。“授权响应消息”可以是针对通过发行金融机构或支付处理网络生成的授权请求消息的电子消息应答。授权响应消息可以仅作为示例来包括以下状态指示符中的一个或多个:批准-交易获得批准;拒绝-交易未获批准;或呼叫中心-响应等待更多信息,商家必须拨打免费授权电话号码。授权响应消息还可以包括授权码,其可以是信用卡发行银行响应于电子消息中的授权请求消息(直接地或者通过支付处理网络)返回商家的访问设备(例如pos设备)的指示交易被批准的代码。代码可以作为授权证明。如上所述,在一些实施方案中,支付处理网络可以向商家生成或转发授权响应消息。“服务器计算机”通常是功能强大的计算机或计算机集群。例如,服务器计算机可以是大型主机,小型计算机集群或作为一个单元的一组服务器。在一个示例中,服务器计算机可以是耦合到web服务器的数据库服务器。“处理器”可以指任何合适的一个或多个数据计算设备。处理器可以包括一个或多个微处理器一起工作以实现期望的功能。处理器可以包括cpu,该cpu包括足以执行用于执行用户和/或系统生成的请求的程序部件的至少一个高速数据处理器。cpu可能是amd的athlon,duron和/或opteron等微处理器;ibm和/或摩托罗拉的powerpc;ibm和sony的cell处理器;英特尔的赛扬,安腾,奔腾,至强和/或xscale;和/或类似处理器。“存储器”可以是可以存储电子数据的任何合适的一个或多个设备。合适的存储器可以包括非暂时性计算机可读介质,其存储可由处理器执行以实现期望方法的指令。存储器的示例可以包括一个或多个存储器芯片,磁盘驱动器等这样的存储器可以使用任何合适的电,光和/或磁操作模式来操作。i.系统图1示出根据本发明的实施方案的系统的框图。图1示出了与授权计算机系统40、供应服务器计算机90和数字钱包服务器计算机60通信的移动设备10。移动设备10可以存储第一应用程序20a和第二应用程序20b。验证实体计算机80与供应服务器计算机90和数字钱包服务器计算机60通信。授权计算机系统40与验证实体计算机80通信。供应服务器计算机90可以配置成向移动设备10供应访问数据。供应服务器计算机可以包括处理器和包括代码的计算机可读介质,该代码使得处理器执行与向移动设备10供应访问数据相关联的任何合适的方法。它还可以维护用于各种移动设备的地址数据库(例如,ip或互联网协议地址或电话号码),这些移动设备可被供应有访问数据。供应服务器计算机还可以维护要供应的访问数据的数据库。要供应的访问数据可以已经先前由操作授权计算机系统40的发行方和/或操作验证实体计算机80的支付处理器获得。数字钱包服务器计算机60可以配置成维护与移动设备10的用户以及其他用户相关联的数字钱包。“数字钱包”可以存储用户简档信息、支付信息(例如pan或主账号、支付令牌(即,pan替代品)、诸如cvv等的验证值)、银行账户信息和/或类似者,并且可以用于各种交易中,例如但不限于用于零售购买的电子商务、社交网络、转账/个人付款、移动商务、近距离支付、游戏和/或类似者,数字商品购买、公用事业支付、从游戏网站购买游戏或游戏积分、在用户之间转移资金等等。图1中的每个实体可以通过任何合适的通信信道或通信网络进行通信。合适的通信网络可以是以下的任一种和/或组合:直接互连;互联网;局域网(lan);城域网(man);作为互联网节点的运营任务(omni);安全的定制连接;广域网(wan);无线网络(例如,使用诸如但不限于无线应用协议(wap),i模式等的协议)等);和/或类似物。图2示出了根据本发明的实施方案的移动设备10的框图。在一些实施方案中,移动设备10可以是可用于进行支付的支付设备或可以允许用户获得对位置的访问的设备。示例性移动设备10可以包括可以存在于移动设备10的主体10h内的计算机可读介质10b。计算机可读介质10b可以是存储数据的存储器的形式。在一些情况下,存储器10b还可以存储诸如访问数据的信息。通常,使用任何合适的方法,包括使用天线10a或非接触元件10g,这些信息中的任一个可以由移动设备10发送到另一设备。主体10h可以是塑料基板,壳体或其他结构的形式。计算机可读介质10b可以包括代码,该代码可由处理器执行用于实现方法,该方法包括在移动设备上的第一应用程序处接收用户认证数据;由移动设备将用户认证数据发送到授权计算机系统;由移动设备经由第一应用程序从授权计算机系统接收认证码;由移动设备将来自第一应用程序的认证码提供给移动设备上的第二应用程序;由移动设备将认证码提供给验证实体计算机,其中验证实体计算机验证认证码;以及从供应服务器接收与验证实体计算机通信的访问数据。在一些实施方案中,可以从访问数据导出认证码,使得接收认证码的验证实体计算机可以简单地解密认证码以获得为移动设备供应访问数据的必要信息。在一些实施方案中,移动设备10还可以包括非接触元件10g,其通常以半导体芯片(或其他数据存储元件)的形式实现,其具有关联的无线传输(例如,数据传输)元件,诸如天线。非接触元件10g可以耦连到(例如嵌入其中)移动设备10,并且通过蜂窝网络传输的数据或控制指令可以通过非接触元件接口(未示出)施加到非接触元件10g。非接触元件10g可以能够使用短距离无线通信能力传送和接收数据。如上文提到的,移动设备10可以包括既是询问器设备(例如接收数据)又是被询问设备(例如发送数据)的部件。因此,移动设备10可以能够通过蜂窝网络(或任何其他适当无线网络-例如互联网或其他数据网络)和短距离通信进行通信和传输数据或控制指令。移动设备10还可以包括用于处理移动设备10的功能的处理器10c(例如微处理器)和允许消费者看电话号码和其他信息和消息的显示器10d。移动设备10还可以包括输入元件10e以允许用户将信息输入到设备中,扬声器10f以允许用户听到语音通信、音乐等,以及麦克风10i以允许用户通过移动设备10发送她的声音。移动设备10还可以包括用于无线数据传送(例如数据传输)的天线10a。存储器20可以耦连到处理器10c,并且可以存储第一应用程序20a和第二应用程序20b。使用任何合适的数据存储模式,存储器20可以是一个或多个存储器设备(例如,ram、eeprom、rom芯片)的形式。在一些实施方案中,移动设备10中的存储器20还可以包括用于存储诸如支付凭证(账号、付款令牌、验证值等)等敏感数据和访问数据的安全存储区域。例如,存储器20可以是安全元件的一部分或者可以包含安全元件。在一些实施方案中,第一应用程序20a是与授权计算机系统40特别关联的应用程序,并且通常受与授权计算机系统40相关联的授权实体信任。第一应用程序20a可以是例如发行方应用程序,诸如移动银行应用程序。此类应用程序通常由授权实体设计,并且可以包括授权实体特别要求的数据安全性措施。第二应用程序20b可以与诸如数字钱包服务器计算机60的实体相关联。由于第二应用程序20b不是由授权实体开发的,所以第二应用程序20b通常较不受操作授权计算机的授权实体信任。第二应用程序的示例可以包括数字钱包应用程序、商家应用程序、健身应用程序以及可以存在于移动设备10上的任何其他合适的应用程序。图3示出了根据本发明的实施方案的授权计算机系统40的框图。图3示出了服务器计算机40a和耦连到服务器计算机40a的账户数据数据库40b。账户数据数据库40b可以保持各种用户的账户,这些账户附属于与授权计算机系统相关联的授权实体。例如,授权实体可以是发行方银行,并且数据库40b可以存储发行方银行的客户的信用卡账户和借记卡账户的账户信息。数据库40b(以及本文所描述的任何其他数据库)可以是常规的、容错的、关系的、可扩展的、安全的数据库,诸如oracletm或sybasetm。数据库1204可以使用诸如阵列、散列、(链接)列表、结构化文本文件(例如,xml)、表格和/或类似者的各种标准数据结构来实现。此类数据结构可以存储在存储器和/或(结构化的)文件中。服务器计算机40a可以包括处理器41,该处理器可以耦合到系统存储器42和外部通信接口43。计算机可读介质44也可以可操作地耦合到处理器41。计算机可读介质44可以包括多个软件模块,包括通信模块44a、加密模块44b、数据库更新模块44c、认证码生成模块44d、授权模块44e和验证模块44f。通信模块44a可以包括代码,该代码使处理器41产生消息、转发消息、重新格式化消息和/或以其他方式与其他实体通信。在本发明的实施方案中,加密模块44b可以包括用于加密数据的任何合适的加密算法。合适的数据加密算法可以包括des、三重des和aes等。加密模块还可以存储加密密钥,这些加密密钥可以与此类加密算法一起使用。加密模块44b可以利用对称或非对称加密技术来加密和/或验证数据。数据库更新模块44c可以与处理器41一起工作,以更新账户数据数据库40b中的账户信息。认证码生成模块44d可以包括计算机代码,该计算机代码当由处理器41执行时生成认证码。下面详细描述特定认证码生成过程。授权模块44e可以包括代码,该代码可以使得处理器41评估用于交易的授权请求消息并确定交易是否应被授权。此类交易可能会根据多个因素被授权或拒绝,这些因素包括潜在欺诈水平和/或与用于进行交易的账户相关的资金额度或信用额度。验证模块44f可以包括代码,其使得处理器41验证从用户的移动设备接收的验证凭证。验证模块44f可以包括用于使处理器41从数据库40b检索数据并将该数据与接收的数据进行比较的代码。计算机可读介质44可以包括代码,该代码可由处理器执行以实现方法,该方法包括:由授权计算机并从移动设备接收认证数据;由授权计算机验证认证数据;响应于确定认证数据是有效的来确定认证数据是有效的;创建认证码,其中认证码包括第一部分和第二部分,第一部分包括加密信息,加密信息包括加密的时间数据元,以及第二部分包括未加密信息,未加密信息能够用于处理未加密的信息;以及将该认证码发送到移动设备,其中认证码被提供给验证实体计算机,该验证实体计算机启动向移动设备供应访问数据。图4示出了根据本发明的实施方案的验证实体计算机80的框图。在本发明的一些实施方案中,验证实体计算机80还可以在支付处理网络中。验证实体计算机80可以包括处理器81,该处理器可以耦合到系统存储器82和外部通信接口83。计算机可读介质84也可以可操作地耦合到处理器81。在一些实施方案中,验证计算机80可以是支付处理网络的一部分,其切换交易请求并在发行方与收单方之间响应。支付处理网络可以是交易处理网络。交易处理网络可以处理支付交易或其他类型的访问交易。计算机可读介质84可以包括多个软件模块,包括通信模块84a、结算模块44b、代码验证模块84c、授权模块84d和加密模块84e。通信模块84a可以包括代码,其使处理器81产生消息、转发消息、重新格式化消息和/或以其他方式与其他实体通信。结算模块84b可以包括代码,该代码使处理器81结算各种实体(包括发行方和收单方)之间的交易。代码验证模块84c可以包括代码,该代码使得处理器81分析接收的认证码以确定接收到的认证码是否有效。在一些实施方案中,验证模块84c可以获得最近接收的认证码,并且可以解密(或与加密模块84e配合)任何加密的数据。然后,验证模块可以检索先前从授权计算机系统40接收到的先前接收的认证码,并也解密任何加密的数据。另选地,从授权计算机系统40接收的数据可以是访问数据本身(不接收认证码)。来自接收到的认证码的解密数据可以被评估并与先前接收到的访问数据或与来自先前接收的认证码的解密信息进行比较,以确定是否存在匹配(从而验证所接收的认证码)。代码验证模块84c还可以包括代码,该代码使得处理器81接收认证码、解密认证码的加密部分以获得访问数据、并且启动向移动设备供应访问数据。授权模块84d可以包括代码,该代码可以使得处理器81评估用于交易的授权请求消息,并且确定交易是否应被授权。授权模块还可以包括用于在授权请求和响应消息在各方(诸如发行方和收单方)之间通过时路由或修改授权请求和响应消息的代码。在本发明的实施方案中,加密模块84e可以包括用于加密数据的任何合适的加密算法。合适的数据加密算法可以包括des、三重des和aes等。加密模块还可以存储加密密钥,这些加密密钥可以与此类加密算法一起使用。任何对应的密钥对的其他密钥可以被存储在授权计算机系统40中的加密模块44b。加密模块84e可以利用对称或非对称加密技术来加密和/或验证数据。ii。方法图5示出了说明用于向移动设备上的第二应用程序提供认证码的方法的流程图。图6示出了说明用于向移动设备供应访问数据的方法的流程图。也可以参考图1的系统图来描述图5-图6所示的方法。虽然下面具体描述的方法可以涉及支付处理,但是本发明的实施方案可以应用到不需要支付的其他区域。在步骤s102之前,用户可能希望将访问数据加载到第二应用程序20b中。在一些实施方案中,第二应用程序20b可以是数字钱包应用程序,该数字钱包应用程序与数字钱包服务器计算机60相关联。访问数据可以是诸如信用卡账户数据的支付账户数据,或可用于激活已经驻留在移动设备上的支付账户数据的激活数据。在本发明的实施方案中,用户可以通过启动移动设备10上的第一应用程序20a或以其他方式与其交互来启动加载过程。第一应用程序20a可以是发行方应用程序(例如,移动银行应用程序),其与授权计算机系统40相关联。授权计算机系统可以是发行方计算机系统。在其他实施方案中,第二应用程序20b可以首先启动,并且这可以调用或引发第一应用程序20a的启动。如果第二应用程序20b调用第一应用程序20a的启动,则在一些实施方案中,第二应用程序20b可以将移动设备标识符和/或第二应用程序标识符传递给第一应用程序20a。此类标识符可以由后续的下游实体(例如,授权计算机系统40)使用来帮助标识待供应的移动设备(如果设备信息尚未已经驻留在那些下游实体处)。在第一应用程序20a启动之后,第一应用程序20a可向用户呈现加载账号(例如,信用卡账号)到第二应用程序20b的选项。在这样做时,第一应用程序还可以要求用户输入用户的认证数据,以及可选地与要加载到第二应用程序20b的账号相关联的任何账户标识符。例如,第一应用程序20a可以向移动设备10的用户要求先前标识的pin(个人标识号)或密码,以及可选地用户名。另选地或另外地,第一应用程序20a可以从移动设备10直接收集认证数据(例如,序列号、电话号码、数字指纹等)。在某些情况下,这可以自动完成,无需任何用户输入或动作。在步骤s102中,认证数据从移动设备10发送,并在授权计算机系统40处接收。认证数据可以使用任何合适的电子消息格式从移动设备10发送到授权计算机系统40,该电子消息格式包括电子邮件、短消息服务(sms)消息、多媒体消息服务(mms)消息、超文本传输协议(http)请求消息、传输控制协议(tcp)数据包、web表单提交等。消息可以被引导到任何合适的位置,诸如电子邮件地址、电话号码、互联网协议(ip)地址或统一资源定位符(url)。参考图1描述的其他通信可以以相同或不同的方式进行。在步骤s104中,授权计算机系统40验证认证数据。它可以通过以下方式这样处理:检索先前为用户存储的认证数据,然后将检索的认证数据与接收到的认证数据进行比较。例如,授权计算机系统40可以存储密码、可以从移动设备10接收相应的密码,并且可以确定所存储的密码是否与接收的密码匹配。如果接收到的认证数据与先前存储的认证数据不匹配,则可以由授权计算机系统40产生消息并将该消息发送到移动设备10以指示输入的认证数据不正确。在步骤s106中,如果所接收的认证数据与先前存储的认证数据相匹配,则授权计算机系统40可以生成认证码。可以以任何合适的方式生成认证码。可以使用加密过程来生成认证码。在一些实施方案中,认证码可以包括加密部分和非加密部分。非加密部分可以用于解密加密部分。此外,加密部分可以包括消费者的主账户标识符(pan),当生成认证码(时间数据元的示例)时或当用户被授权实体验证时的日期和时间,以及由授权实体生成的特定授权码。通过加密当生成认证码时或者当用户被授权实体验证时的日期和时间,验证认证码的验证实体计算机可以确定其是否仍然有效。下面进一步详细描述根据本发明的实施方案的生成认证码的具体方法。此外,通过创建具有加密部分和非加密部分的认证码,认证码可以包括关于如何恢复存在于加密部分中的任何秘密的信息。不需要多个单独的数据传输来提供关于加密信息的解密的信息。在步骤s108中,在一些实施方案中,在生成认证码之后,可以使用通信路径将认证码提供给验证实体计算机80,该通信路径与移动设备10或数字钱包服务器计算机60分离并且不涉及移动设备或数字钱包服务器计算机。验证实体计算机80可以将接收到的认证码存储在数据库中。在其他实施方案中,验证实体计算机可以接收访问数据,并且可以不接收实际的认证码。在步骤s110中,将认证码从授权计算机系统40发送到移动设备10中的第一应用程序20a。在步骤s112中,在移动设备10中的第一应用程序20a接收到认证码之后,第一应用程序20a然后通过适当的api(应用程序编程接口)将认证码传递到移动设备10中的第二应用程序20b。在步骤s114中,在由第二应用程序20b接收到认证码之后,移动设备10然后使用任何合适的电子消息格式将认证码发送到数字钱包服务器计算机60。在步骤s116中,在数字钱包服务器计算机60接收到认证码之后,数字钱包服务器计算机60然后使用任何合适的电子消息格式将认证码发送到验证实体计算机80。在步骤s118中,在验证实体计算机80接收到认证码之后,验证实体计算机80然后验证该认证码。在一些实施方案中,验证实体计算机80中的验证模块84c可以采用最近接收的认证码,并且可以解密(或与加密模块84e配合)任何加密的数据。然后,该验证模块可以检索先前从授权计算机系统40接收到的先前接收的认证码(存储在数据库中),并且也解密任何加密的数据。然后可以将来自先前存储认证码和最近接收的认证码的解密数据进行比较,以确定当前接收到的认证码和先前存储的认证码是否匹配(从而验证所接收的认证码)。在其他实施方案中,访问数据可以已经先前由验证实体计算机80从授权计算机系统40接收。该访问数据可以从数据库检索,并与来自接收到的认证码的解密信息进行比较。如果存在匹配,并且如果认证码另外有效(例如,在预定时间段内),则可以验证所接收的认证码。验证实体计算机80和授权计算机系统40可以共享对称加密密钥,这些密钥将允许它们加密和解密认证码或认证码的部分。在其他实施方案中,授权计算机系统和验证实体计算机可以分别利用公钥来加密认证码的一部分和利用私钥来解密认证码的该部分。如果从授权计算机系统40接收到的认证码与从数字钱包服务器计算机60接收到的认证码不匹配,则可以向移动设备10发送消息,以指示供应请求失败。在步骤s120中,如果接收到的认证码有效,则然后验证实体计算机80启动供应过程。这可以通过多种方式完成。在一些情况下,验证实体计算机80可以向供应服务器计算机90发送消息,以请求向移动设备的第二应用程序供应由移动设备10的用户请求的访问数据。在另一个实施方案中,供应服务器计算机90可以是验证实体计算机80的一部分,并且可以在不发送任何特定的供应指令消息的情况下启动供应。如果使用供应指令消息,则它可以包括向移动设备10供应访问数据所需的细节。此类细节可以包括访问数据本身(如果访问数据尚未存储在供应服务器计算机90处)、与要供应的移动设备10相关联的地址(例如,电话号码)、由移动设备10使用的允许移动设备10接受访问数据等的任何数据。验证实体计算机80和/或供应服务器计算机90可能已经通过不同的通信在过去的某个时间从授权计算机系统40接收到访问数据。在一些实施方案中,如下所述,访问数据可以从认证码导出。在步骤s122中,供应服务器计算机90将访问数据发送到移动设备10中的第二应用程序20b以进行存储。在一些实施方案中,供应服务器计算机90可以存储一个加密密钥(例如,短暂的公共ecc密钥),并且移动设备10可以存储另一对应的加密密钥。然后,供应服务器计算机90可以在将访问数据发送到移动设备10之前加密访问数据,并且移动设备10可以在接收时对加密的访问数据进行解密。一旦移动设备10接收并存储访问数据,移动设备10此后就可以用于使用第二应用程序20b和被供应给它的访问数据进行支付交易。在一些情况下,访问数据可以存储在移动设备10中的安全区域(例如,安全元件)中。上述过程可用于向移动设备供应静态或动态访问数据。如果访问数据是动态的,则可以将其提供到移动设备用于每个交易或预定数量的交易(例如,每5-10个交易)。这有助于确保中间人攻击造成的欺诈风险降低。图7示出了系统框图,其示出根据本发明的其他实施方案的方法。在步骤s202之前,用户可能想要将访问数据供应到第二应用程序20b中。在一些实施方案中,第二应用程序20b可以是数字钱包应用程序,该数字钱包应用程序与数字钱包服务器计算机60相关联。访问数据可以是诸如信用卡账户数据的支付账户数据。用户可以通过启动移动设备10上的第一应用程序20a或以其他方式与其交互来启动供应过程。在一些实施方案中,这可以在没有与第二应用程序20b的任何初始交互的情况下完成。第一应用程序20a可以是发行方应用程序(例如,移动银行应用程序),其与授权计算机系统40相关联。授权计算机系统可以是发行方计算机系统。第二应用程序20b可以是数字钱包应用程序,其与数字钱包服务器计算机60相关联。在第一应用程序20a启动之后,第一应用程序20a可向用户呈现加载账号(例如,信用卡账号)到第二应用程序20b的选项。在这样做时,第一应用程序20a还可以要求用户输入用户的认证数据,以及可选地与要加载到第二应用程序20b的账号相关联的任何账户标识符。例如,第一应用程序20a可以向移动设备10的用户要求先前标识的pin(个人标识号)或密码和用户名。在某些情况下,pin或密码和用户名可以仅仅是使用第一应用程序20a访问授权计算机系统40所需的用户凭证信息。另选地或另外地,第一应用程序20a可以从移动设备10直接收集认证数据(例如,序列号、电话号码、数字指纹等)。在某些情况下,这可以自动完成,无需任何用户输入或动作。在步骤s202中,认证数据从移动设备10发送,并在授权计算机系统40处接收。认证数据可以使用任何合适的电子消息格式从移动设备10发送到授权计算机系统40(如上面参考图1所述)。参考图7描述的其他通信可以以相同或不同的方式进行。在步骤s204中,授权计算机系统40验证认证数据。它可以通过以下方式这样处理:检索先前为用户存储的认证数据,然后将检索的认证数据与接收到的认证数据进行比较。例如,授权计算机系统40可以存储密码、可以从移动设备10接收相应的密码,并且可以确定所存储的密码是否与接收的密码匹配。如果接收到的认证数据与先前存储的认证数据不匹配,则可以由授权计算机系统40产生消息并将该消息发送到移动设备10以指示输入的认证数据不正确。在步骤s206中,在授权计算机系统40验证认证数据之后。然后,授权计算机系统40将响应发送返回到移动设备10上的第一应用程序20a。在步骤s207中,由第一应用程序20a查询第二应用程序20b(以及可选的数字钱包服务器计算机60)以确定由授权计算机系统40保持的任何账户数据是否已经被供应给移动设备10中的第二应用程序20a。第一应用程序20a可以通过向第二应用程序(以及可选地,数字钱包服务器计算机60)发送(s208)一个或多个访问数据参考标识符,诸如访问数据所具有的用于移动设备10的用户的账户参考标识符来执行此操作。账户参考标识符可以与用户具有的账户相关联,这些账户具有与授权计算机系统40相关联的发行方。如果第二应用程序20b已经确定与一个或多个账户参考标识符相关联的访问数据(例如,支付账户数据)已经在移动设备10上的第二应用程序20b上被供应,则第二应用程序20b通知同样的移动设备上的第一应用程序20a。在一些实施方案中,第二应用程序20b可将与已经被供应给第二应用程序20b的与账户数据相关联的任何账户参考标识符发送返回第一应用程序20a,然后其可以将它们转发到授权计算机系统40。为了增强安全性,第二应用程序20b和数字钱包服务器计算机60可以不使用实际的账户数据(例如,实际的主账号)进行通信,而是可以替代地使用支付账户参考标识符进行通信。在一些实施方案中,当第二应用程序20b将一个或多个账号参考标识符返回到第一应用程序20a和授权计算机系统40(或将账户数据先前供应的其他指示符返回到第二应用程序20a)时,第二应用程序20b(或数字钱包服务器计算机60)可以经由第一应用程序20a将附加的设备特定或事件特定信息发送返回到授权计算机系统40,以确保最终生成的认证码不能由另一个用户设备重演。这可以在返回一个或多个账号参考标识符时或在不同的时间完成。例如,第二应用程序20b或数字钱包服务器计算机60)可以具有设备特定信息,诸如移动设备10的标识符或第二应用程序20a的标识符(例如,钱包标识符),并且可以将该信息(以明文或散列或加密的形式)发送到第一应用程序20a,然后发送到授权计算机系统40。移动设备10或第二应用程序20a的标识符可以是任何合适的形式(例如,任何合适的长度和/或字符数)。可以从第二应用程序20b或数字钱包服务器计算机60发送到第一应用程序20a,并且然后发送到授权计算机40的事件特定信息的类型可以包括时间戳和随机数。此类信息可以以加密或明文形式从第二应用程序20b或数字钱包服务器计算机60发送到第一应用程序20a和授权计算机系统40。此外,在一些实施方案中,为了确保验证实体计算机80知道该请求来源于哪个移动设备10,事件特定信息和/或设备特定信息可以用密码密钥(例如密码私钥)来签名,该密码密钥可以驻留在移动设备10中的存储器(例如,安全元件)中。然后,签名信息可以由第二应用程序20b提供到第一应用程序20a,然后到授权计算机系统40。示例性地,第二应用程序20b可以从移动设备10中的安全元件检索密码密钥(例如,私钥),并且然后可以使用该密钥对事件特定数据或设备特定数据进行签名。这可以在稍后的时间由验证实体计算机80使用以验证移动设备10是否发起供应请求。在一些实施方案中,验证可以由验证实体计算机60通过使用与签名事件特定数据或设备特定数据的私钥相关联的公钥(或私钥)来执行。例如,在一些实施方案中,事件特定数据可以是随机数,并且随机数可以由驻留在移动设备10上的安全元件中的私钥进行签名。第二应用程序20b可以生成随机数,并且可以从移动设备10上的安全元件检索私钥以对其进行签名。然后,可以将签名的随机数单独提供给授权计算机系统40,或者与随机数一起提供以包含在随后生成的认证码中。这将允许验证实体计算机80确认第一应用程序20a和第二应用程序20b在移动设备10上进行交互,并且供应请求来自正确的移动设备10。在步骤s208中,在第一应用程序20a从第二应用程序20b接收到账号参考标识符之后,第一应用程序20a和/或授权计算机系统40然后可以确定哪个账户数据尚未被供应给移动设备10。然后,授权计算机系统40可选地将尚未被供应给第二应用程序20b的主账号或主账号的别名发送到移动设备10中的第一应用程序20a。在第一应用程序20a中,用户可以选择尚未被供应给第二应用程序20a的所呈现的主账号(或其别名)中的任何一个,使得它们可以被供应给第二应用程序20a。在步骤s210中,如果接收到的认证数据与先前存储的认证数据匹配,并且授权计算机系统40已经确定存在要供应的账户数据,则授权计算机系统40可以生成认证码。可以以任何合适的方式生成认证码。可以使用加密过程来生成认证码。在一些实施方案中,认证码可以包括加密部分和非加密部分。非加密部分可以包括信息,该信息可用于解密加密部分和/或验证加密的信息是有效的或来自有效源。例如,加密或非加密部分可以包括上述设备特定信息和/或事件特定信息,以及该信息的数字签名版本。此外,加密部分可以包括消费者的主账户标识符(pan)、到期日期、当生成认证码(时间数据元的示例)或当用户被授权实体验证时的日期和时间、以及由授权实体生成的特定授权码。通过加密当生成认证码时或者当用户被授权实体验证时的日期和时间,验证认证码的验证实体计算机可以确定其是否仍然有效。此外,认证码还可以包括(以加密形式)上述设备特定信息和/或事件特定信息。签名的设备特定信息和/或事件特定信息也可以包括在认证码中(例如,以加密形式)。在其他实施方案中,设备特定信息和/或事件特定信息可以与认证码一起发送,但是当它从授权计算机系统40传送到验证实体计算机80时,不会被包括在认证码本身中。下面进一步详细描述根据本发明的实施方案的生成认证码的具体方法。此外,通过创建具有加密部分和非加密部分的认证码,认证码可以包括关于如何恢复存在于加密部分中的任何秘密的信息。不需要多个单独的数据传输来提供关于加密信息的解密的信息。在一些实施方案中,认证码是从访问数据导出的。在一些实施方案中,认证码可以加密所有访问数据,使得供应服务器计算机可以从认证码获得所有访问数据,而不需要从授权计算机系统40单独获得该信息。例如,认证码可以至少从主账号和与主账号相关联的到期日期以及可选地验证值(诸如cvv或cvv2值)中导出。在此类实施方案中,可以接收认证码并且该认证码可以用于获得主账号、到期日期、cvv和cvv2。因为在本发明的一些实施方案中可以从认证码导出所有访问数据,所以授权计算机系统40不需要在单独的通信中向验证实体计算机80或供应服务器计算机90提供访问数据。这是特别有利的,因为这减少了授权计算机系统40与验证实体计算机80以及供应服务器计算机90之间否则将需要的通信。这也是有利的,因为这为任何主账号提供增加的安全性,因为不需要传送主账号。除了具有包括在认证码本身内的所有访问数据之外,在一些实施方案中,将访问数据传送到移动设备10所需的任何信息也可以被包括在认证码中。此类信息可以是ip地址、电话号码、数字钱包id、通信网络id等。此外,在根据本发明的实施方案的供应系统中,授权系统计算机40、验证实体计算机80和数字钱包服务器计算机60可以由不同的实体操作。尽管在给移动设备供应访问数据之前使计算机系统对用户进行认证是比较直接的,但是当在供应过程中涉及多个不同的实体时,这并不直接。也难以确保在供应过程发生时,用户的敏感访问数据和其他保密信息受到充分保护。本发明的实施方案可以在访问数据在系统中的各个实体之间通过时保护该访问数据,同时还最小化为移动设备10供应访问数据所需的通信次数。在步骤s230中,在一些实施方案中,在生成认证码之后,可以使用通信路径将认证码提供给验证实体计算机80,该通信路径与移动设备10或数字钱包服务器计算机60分离并且不涉及移动设备或数字钱包服务器计算机。验证实体计算机80可以将接收到的认证码存储在数据库中。在其他实施方案中,验证实体计算机可以接收访问数据,并且可以不接收实际的认证码。在其他实施方案中,如果验证实体计算机80简单地验证认证码是在有效时间段内接收到的并且验证所接收的认证码来源于正确的移动设备10,则步骤230可以是可选的。在步骤s212中,将认证码从授权计算机系统40发送(例如用无线电(overtheair)发送)到移动设备10中的第一应用程序20a。在步骤s214中,在移动设备10中的第一应用程序20a接收到认证码之后,第一应用程序20a然后通过适当的api(应用程序编程接口)将认证码传递到移动设备10中的第二应用程序20b。在步骤s216中,在由第二应用程序20b接收到认证码之后,移动设备10然后使用任何合适的电子消息格式将认证码发送到数字钱包服务器计算机60。在步骤s218中,在数字钱包服务器计算机60接收到认证码之后,数字钱包服务器计算机60然后使用任何合适的电子消息格式将认证码发送到验证实体计算机80。在步骤s212、步骤s214、步骤s216和步骤s218中,可以将先前描述的设备特定信息(例如,设备和/或钱包应用标识符)和/或事件特定信息(例如,随机数)连同认证码一起发送到验证实体计算机80。在其他实施方案中,可以将设备特定信息和/或事件特定信息与认证码分开发送到验证实体计算机80。该数据可以是清晰的或加密的,但是可以由验证实体计算机80使用来确认认证码来自正确的移动设备10。在步骤s220中,在验证实体计算机80接收到认证码之后,验证实体计算机80然后验证该认证码。在一些实施方案中,验证实体计算机80中的验证模块84c可以采用最近接收的认证码,并且可以解密(或与加密模块84e配合)任何加密的数据。然后,验证模块可以检索先前从授权计算机系统接收到的先前接收的认证码(存储在数据库中),并且也解密任何加密的数据。然后可以将来自先前存储认证码和最近接收的认证码的解密数据进行比较,以确定当前接收到的认证码和先前存储的认证码是否匹配(从而验证所接收的认证码)。在其他实施方案中,访问数据可以已经先前由验证实体计算机80从授权计算机系统40接收。该访问数据可以从数据库检索,并与来自接收到的认证码的解密信息进行比较。如果存在匹配,并且如果认证码另外有效(例如,在预定时间段内),则可以验证所接收的认证码。此外,先前描述的签名设备和/或事件特定数据也可以由验证实体计算机80进行验证。设备和/或事件特定数据可以与认证码一起从数字钱包服务器60获得。例如,在一些实施方案中,如上所述,设备和/或事件特定数据可以由移动设备10中的安全元件中的加密密钥来签名。所得到的数字签名可以由验证实体计算机80使用对应的加密密钥(例如,公钥)进行验证,以确保向正确的移动设备10供应账户数据。验证实体计算机80和授权计算机系统40可以共享对称加密密钥,这些密钥将允许它们加密和解密认证码或认证码的部分。在其他实施方案中,授权计算机系统和验证实体计算机可以分别利用公钥来加密认证码的一部分和利用私钥来解密认证码的该部分。如果从授权计算机系统40接收到的认证码与从数字钱包服务器计算机60接收到的认证码不匹配,则可以向移动设备10发送消息,以指示供应请求失败。如上所述,在一些实施方案中,认证码可以包含(以加密形式)要供应给移动设备10的访问数据。解密认证码中的加密信息分量将为验证实体计算机80和/或供应服务器计算机90供应其向移动设备10中的第二应用程序20b供应访问数据需要的所有信息。因此,供应服务器计算机90不需要从授权计算机系统40接收访问数据。这减少了向第二应用程序20b供应访问数据所需的数据传输的次数。在步骤s220中,如果从授权计算机系统40接收到的认证码与从数字钱包服务器计算机60接收到的认证码匹配,则验证实体计算机80然后启动供应过程。这可以通过多种方式完成。在一些情况下,验证实体计算机80可以向供应服务器计算机90发送消息,以请求向移动设备的第二应用程序供应由移动设备10的用户请求的访问数据。在另一个实施方案中,供应服务器计算机90可以是验证实体计算机80的一部分,并且可以在不发送任何特定的供应指令消息的情况下启动供应。如果使用供应指令消息,则它可以包括向移动设备10供应访问数据所需的细节。此类细节可以包括访问数据本身、与要供应至的移动设备10相关联的地址(例如,电话号码)、由移动设备10使用的允许移动设备10接受访问数据等的任何数据。在步骤s222中,验证实体计算机30然后将消息发送到供应服务器计算机90以开始供应过程。在步骤224中,供应服务器计算机90将访问数据发送到移动设备10中的第二应用程序20b以进行存储。在一些实施方案中,供应服务器计算机90可以存储一个加密密钥(例如,短暂的公共ecc密钥),并且移动设备10可以存储另一对应的加密密钥。然后,供应服务器计算机90可以在将访问数据发送到移动设备10之前加密访问数据,并且移动设备10可以在接收时对加密的访问数据进行解密。移动设备10此后可以用于使用第二应用程序20b和被供应给它的访问数据进行支付交易。在一些情况下,访问数据可以存储在移动设备10中的安全区域(例如,安全元件)中。上述过程可用于向移动设备供应静态或动态访问数据。如果访问数据是动态的,则可以将其提供到移动设备用于每个交易或预定数量的交易(例如,每5-10个交易)。这有助于确保中间人攻击造成的欺诈风险降低。一旦向移动设备10供应了访问数据,则访问数据可以用于进行访问交易。图8示出了包括被供应有访问数据并且可以允许用户访问诸如建筑物的位置的移动设备的系统。图9示出了支付处理系统,该支付处理系统包括供应有访问数据并且允许用户访问账户以支付商家的商品或服务的移动设备。图8示出了建筑物访问系统的框图。图8示出了由用户206操作的移动设备110。如上所述,移动设备110被供应有访问数据。移动设备110可以与访问设备120进行交互,并将访问数据传递到访问设备120。访问设备120可以本地验证所接收的访问数据,或者其可以与远程定位的认证服务器计算机(未示出)进行通信。远程定位的认证服务器计算机可以验证访问数据是真实的,并且可以将指示此的信号发送回访问设备120。然后,访问设备120可以继续让用户206进入建筑物130。图9示出可以使用具有访问数据的移动设备的交易处理系统的框图。图9示出了可以操作移动设备210的用户206。用户206可以使用移动设备210来支付商家的商品或服务。商家可以操作商家计算机230和/或访问设备220。商家可以经由收单方计算机240和支付处理网络250与发行方计算机260进行通信。支付处理网络250可以包括数据处理子系统、网络和用于支持和传送授权服务、异常文件服务以及清算和结算服务的操作。示例性支付处理网络可以包括visanettm。支付处理网络如visanettm能够处理信用卡交易,借记卡交易和其他类型的商业交易。visanettm具体包括处理授权请求的vip系统(visa集成支付系统)和执行清算和结算服务的baseii系统。支付处理网络可以使用任何合适的有线或无线网络,包括互联网。在访问设备220(例如,pos位置)处使用移动设备210的典型支付交易流程可以描述如下。用户206将他或她的移动设备210呈现给访问设备220以支付项目或服务。移动设备210和访问设备220交互,使得来自移动设备210的访问数据(例如pan、支付令牌、(若干)验证值、到期日期等)由访问设备220接收(例如经由接触或非接触接口)。商家计算机230然后可以经由外部通信接口从访问设备220接收该信息。然后,商家计算机230可以生成包括从访问设备220接收的信息(即,对应于移动设备210的信息)以及附加交易信息(例如,交易金额、商家特定信息等)的授权请求消息,并将该信息电子地传送到收单方计算机240。收单方计算机240然后可以接收、处理和转发授权请求消息到支付处理网络250以进行授权。一般来说,在发生信用卡或借记卡交易之前,支付处理网络250具有与每个发行方的建立协议,该协议关于发行方的交易将如何被授权。在一些情况下,诸如当交易金额低于阈值时,支付处理网络250可以被配置成基于其所具有的关于用户账户的信息来授权交易,而不产生并发送授权请求消息到发行方计算机260。在其他情况下,诸如当交易金额高于阈值时,支付处理网络250可以接收授权请求消息、确定与移动设备210相关联的发行方、并将交易的授权请求消息转发给发行方计算机260以用于验证和授权。一旦交易被授权,发行方计算机260可以生成授权响应消息(其可以包括指示交易被批准或被拒绝的授权码),并且经由其外部通信接口将该电子消息发送到支付处理网络250。支付处理网络250然后可以将授权响应消息转发到收单方计算机240,收单方计算机然后又可以将包括授权指示的电子消息发送到商家计算机230,然后发送到访问设备220。在一天结束时或在某个其他合适的时间间隔处,可以对该交易执行在商家计算机230、收单方计算机240、支付处理网络250和发行方计算机260之间的清算和结算流程。iii.认证码生成上述认证码可以以任何合适的方式进行格式化。例如,用于生成认证码的数据可以通过加密进行密码保护。可以使用许多不同类型的加密方案。可以在创建和验证认证码的各方之间建立任何合适的密钥方案。密码保护的代码可以根据需要进行编码以进行传输。例如,在本发明的实施方案中,可以使用base-64、hexbinary或其他编码方案来传输基于文本的消息中的值。所使用的方案可以在用于传输认证码的消息中明确地陈述,或者可以由于涉及方之间的先前安排而被隐含。在加密之前,可以根据预定方案对数据进行格式化。此格式可以包含适用于所有用途的一般信息和用途特定数据。在一些实施方案中,数据可以在加密之前用以下数据进行结构化:о控制信息——用于将信息传达给处理该信息(例如,格式化、字符编码)所必需的接收者о随机数字或字符о用途特定数据的总长度о用途特定数据о填充(按加密方案的需要)用途特定数据可以以使得数据内容不证自明的方式进行格式化。当代码是时间敏感的时,用途特定数据可以包括时间数据元。填充方案(如果使用的话)将可以从控制信息中标识。a.格式化认证码在一些实施方案中,认证码包括两个主要部分,每个部分可以包含多个元素。第一部分可以包括明文信息。明文信息包括处理加密信息所需的信息。第二部分可以包括加密信息。加密信息包含由授权实体(例如,发行方)供应的受保护数据,以使得验证实体(例如,支付处理器或访问授权方)能够验证认证码的真实性和有效性。第一部分和第二部分可以级联在一起以构建认证码。认证码可以在第一应用程序处接收,然后作为单个数据元传送到移动设备上的第二应用程序(例如,经由数字钱包提供商的api)。在一些实施方案中,构造的认证码可以与以下布局一致,其中每个分量值由连字符(-)分隔:类型-版本-密钥索引-加密信息“类型”可以是明文分量,该明文分量标识存在的认证码的类型。例如,代码的类型可以是支付账户供应代码、建筑物访问代码、支付账户激活码等。“类型”可以是任何合适的形式,包括字母、数字、符号等。例如,移动银行激活认证码的形式可以是“mbaac”。“版本”可以是明文分量,该明文分量指定由发行方构造的认证码的格式或版本。“密钥索引”可以是明文分量,该明文分量标识用于加密加密信息分量的特定数据加密密钥。该值可以在授权实体与验证实体之间进行协调。该值可以表示为正整数或任何其他合适的符号、字符或标识符。在本发明的其他实施方案中,可以使用“密钥名称”来代替或补充认证码中的“密钥索引”。“加密信息”可以是包含多个数据元的分量,这些数据元根据ascii文本中的特定语法进行格式化,加密,然后在包含在认证码数据字段之前进行hexbinary编码。包含在加密信息分量中的每个元素都可以使用名称/值对语法,其中每个名称/值对由分号隔开。名称/值对可以使用以下语法:名称=值。在一些实施方案中,以下数据元可以被包括在加密信息分量内以创建可用于将账户数据供应到移动设备上的第二应用程序的认证码:以下可以是加密之前的样本数据:pan=1234567890123456;datetime=20140424221300;authcode=846932pan=1234567890123456;datetime=20140424221400;authcode=8ac93z然后,对构造的数据进行加密。一旦加密,它可以被转换为hexbinary格式,以作为加密信息分量包含在认证码中。在一些实施方案中,加密信息分量可以包括所有的访问数据,使得当解密加密信息时存在供应移动设备10的必要信息。例如,除了主账号之外,它还可以包括到期日期。它还可以包括验证值,诸如cvv或cvv2值。此外,为了防止重演或中继转发认证码,如上所述,可以在加密信息中包括附加的设备特定信息(例如,设备id或钱包id)或事件特定信息(例如,随机数)。b.示例认证码以下是构造的认证码的示例。请注意,所示的加密信息分量是一个示例,但是认证码的长度可以比下面示出的示例更短。mbaac‐1‐1‐7af291c91f3ed4ef92c1d45eff127c1f9abc12347ec.区域加密密钥参数用于保护加密信息分量的数据加密密钥可以是双长度的三重des(tdea)对称密钥。它们可以用于各方之间的瞬态数据加密的唯一目的,并且通常与pin、mac或其他特定加密密钥不同。所使用的一个或多个密钥可以在使用之前使用常规的密钥传送和保护方案在授权实体和验证实体之间传送。d.加密块格式化认证码内的加密信息分量可以使用加密块化方案进行格式化。块化方案可以帮助保护认证码免受攻击情况的影响,并且可以为接收系统提供一致的方法来标识一个或多个加密块中的重要数据。以下部分描述加密前加密块的结构参数和格式化参数。这些加密块中的每一个都可以以一致的结构进行特殊格式化,以便于处理和附加的安全性。第一块可以包含在剩余块中不存在的附加控制信息。控制字段(仅第一块)——控制字段可以包括用于将信息传达给处理信息(例如,格式化、字符编码)所需的接收者的任何数据第二控制字段(仅第一块)随机数字或字符(仅第一块)。两位数的数据长度字段——包括要加密的数据位数或字符数(仅第一块)。排除控制、保留、长度、填充和随机数字或字符要加密的数据——正常7位ascii数字(第二块到最后块)包含ascii字符格式中的加密信息中要保护的数据的明文字符——它可以使用一个或多个8字节(64位)加密块,以按需容纳要保护的数据的长度剩余未使用的位置按需可以包括填充字符下面可以描述示例性的加密块格式化处理。第一块位1-89-1617-2425-3233-4041-4849-5657-64数据c1c2rrrrl1l2第二块到最后块位1-89-1617-2425-3233-4041-4849-5657-64数据dd/fd/fd/fd/fd/fd/fd/f在上面的示例中,c1可以是控制字段1。这可以是二进制值,诸如00100000(ascii文本格式中为空)。c2可以是控制字段2。这也可以是二进制值,诸如00100000(ascii文本格式中为空)。r可以是随机化字符。它可以包含随机的7位ascii字符。l1和l2可以指示数据的长度。l1和l2可以由包含存在于加密块中的数据的长度(字符数)的两个7位ascii数字实现。例如,l1=00110010(ascii‘2’)和l2=00110110(ascii‘6’)表示存在二十六个字符。d可以是名称/值对数据(例如,7位ascii字符)。d/f可以是名称/值对数据或填充字符。这些字段的标号由长度字段确定。f可以是填充字符。f可以是二进制值,诸如00100001(ascii文本格式中的‘!’)。可以使用具有密码块链接(cbc)的三重des加密算法(tdea)对加密块进行加密,以产生加密数据用于包含在认证码的加密信息分量中。在一些实施方案中,加密信息分量可以在包含在认证码中之前被转换为hexbinary格式。加密块(加密前的明文)的示例可以描述如下。以下数据可以进行格式化,以便它被包含在加密信息分量中:pan=1234567890123456;datetime=20140424221300;authcode=846932在编码之前,可以以明文格式(普通7位ascii编码字符)构造九个64位加密块。图9是可以用来实现上文描述的任何实体或部件的计算机系统的高级框图。图9中所示的子系统经由系统总线775互连。附加子系统包括打印机774、键盘778、系统存储器772和监视器776,监视器耦合到显示器适配器782。外设和输入/输出(i/o)设备,其耦合到i/o控制器771。例如,外部接口722可以用于经由输入/输出端口777将计算机设备连接到诸如互联网的广域网、鼠标输入设备或扫描仪。经由系统总线775的互连允许中央处理器773与每个子系统进行通信,并控制来自系统存储器772或一个或多个存储设备779的指令的执行以及在各子系统之间的信息交换。系统存储器772和/或一个或多个存储设备可以由计算机可读介质来实现。本发明的实施方案具有许多优点。例如,如上所述,在本发明的实施方案中,通过使用与授权实体相关联的可信第一应用程序首先对访问数据进行请求,可以向不可信应用程序供应访问数据。用户和授权实体可以确信对访问数据的请求是真实的,而不是欺诈性的。此外,使用上述认证码可以允许除授权实体外的一方供应访问数据。最后,由于认证码具有加密部分(即时间数据元)和包含关于如何处理加密部分的信息的未加密部分,认证码可以由不同方使用来验证供应请求是真实且有效的。本发明的实施方案具有许多附加优点。如上所述,在根据本发明的实施方案的供应系统中,授权系统计算机、验证实体计算机和数字钱包服务器计算机可以由不同的实体操作。尽管在给移动设备供应访问数据之前使计算机系统对用户进行认证是比较直接的,但是当在供应过程中涉及多个不同的实体时,这并不直接。也难以确保在供应过程发生时,用户的敏感访问数据和其他保密信息受到充分保护。本发明的实施方案可以在访问数据在系统中的各个实体之间通过时保护该访问数据,同时还最小化为移动设备10供应访问数据所需的通信次数。用于验证移动设备10可以接收访问数据的认证码可以包含访问数据本身,从而不需要授权计算机系统将访问数据单独地传送到验证实体计算机和/或供应服务器计算机。应当理解,如上文描述的本发明可以用控制逻辑的形式以模块化或集成方式使用计算机软件来实现。基于本文提供的公开内容和教导,本领域普通技术人员将知道并理解使用硬件和硬件和软件的组合来实施本发明的其他方式和/或方法。本申请中描述的任何软件部件或功能可以实现为使用任何适当计算机语言(诸如,例如java、c++或perl),使用例如传统的或面向对象的技术由处理器执行的软件代码。软件代码可以作为一系列指令或命令存储在计算机可读介质上,诸如随机存取存储器(ram)、只读存储器(rom)、诸如硬盘驱动器的磁介质或软盘、或诸如cd-rom的光学介质。任何这样的计算机可读介质可以驻留在单个计算装置上或内部,并且可以存在于系统或网络内的不同计算装置上或内部。虽然已经详细描述了并且在附图中示出了一些示例性实施方案,但是应当理解,这样的实施方案仅仅是对本发明的说明而不是限制性的,并且本发明不限于示出和描述的具体安排和结构,因为本领域的普通技术人员可以想到各种其他修改。如本文所用,除非明确指示有相反的意思,否则“一个”、“一种”或“该”的使用旨在表示“至少一个”。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1