支付能力结合至计算机的安全元件的制作方法

xiaoxiao2020-7-22  12

支付能力结合至计算机的安全元件的制作方法
【专利摘要】用于实现对于基于因特网的购买向商家进行支付信息的安全通信的方法、安全元件、验证实体、和计算机程序产品。在计算机的安全元件上安装用户真实支付信息的支付信息,该支付信息可包括由验证实体所提供的便携式消费设备的伪PAN号。该安全元件屏蔽于计算机的操作系统从而阻碍黑客攻击。用户访问该安全元件进行购买。作为响应,安全元件用伪账号联系验证实体,且作为响应获得动态支付信息,安全元件可使用该动态安全信息来实现支付。该动态安全信息包括不同于伪PAN的账号,且其相对于用户的真实支付信息具有至少一个差异。
【专利说明】支付能力结合至计算机的安全元件
[0001]相关申请的交叉引用
[0002]本申请要求2011 年 3 月 4 日提交的、名为“Integration of Payment Capabilityinto Secure Elements of Computers (支付能力结合至计算机的安全元件)”的美国临时专利申请N0.61/449,507的优先权,为所有目的,该专利的内容通过引用全部结合至此。
【背景技术】
[0003]最近十年来,在线购买商品与服务显著增长。尽管现在是通过在用户计算机和加密的商家网站之间的通信进行这样的购买,但是在线交易期间用户信用卡支付信息仍易于被盗。黑客偷盗信用卡支付信息的常用方法是在用户不知道的情况下在用户计算机上安装恶意软件程序,其中该恶意软件程序检查用户的击键和浏览器内容来检测支付信息(如,信用卡号、有效期、卡验证值,等)。这被称为“中间人”攻击。一旦检测到支付信息,恶意软件程序将数据传输至黑客的远程服务器,在此处这些数据可被使用或售卖来进行欺诈交易。
[0004]本发明涉及对于在因特网上进行的交易,规避中间人攻击并实现将支付信息安全通信至商家的途径。

【发明内容】

[0005]本发明的一个示例性实施例涉及在计算机的安全元件内安装用户专属支付信息,该用户专属支付信息具有至少账号(个人账号——PAN)、以及如下中的一个或多个:卡验证值、有效期、和账单邮编。示例性方法包括在计算机的安全元件处接收用户专属支付信息的账号和如下至少一个:有效期、卡验证值、或账单邮编;获得该安全元件的标识符;将所接收到的账号、所接收到的有效期、卡验证值、或账单邮编中的至少一个、以及所获得的该安全元件的标识符,发送至验证实体;作为响应,从该验证实体处接收伪账号,所接收到的伪账号与所接收到的用户专属支付信息的账号不同;且,将所接收到的伪账号存储在安全元件的存储器内。将用户专属支付信息唯一地分配给用户,且该用户专属支付信息可以是用户便携式消费设备的支付信息(例如,银行分发的主信用卡账号)、或与主账户关联且受限于特定商业通道和/或特定交易(诸如因特网交易)的子账户、或者与主信用卡账户关联且受限于与安全元件一起使用的代理账号。用户专属支付信息的账号和伪账号中每一个都是可由处理信用卡和/或借记卡交易的卡支付处理网络(诸如VisaNet?)所识别和处理的。该支付处理网络独立于发行用户专属支付信息的银行、以及涉及用户交易的商家。还有,每一个账号包括至少十一位数字序列,优选是至少13位数字,且一般是15、16、17、18、或19位数字的序列。可由计算机的安全元件制造商来分配安全元件的标识符,且该标识符可被写入安全元件的非易失性存储器内,或可由安装在安全元件内的支付应用写入安全元件的非易失性存储器内。
[0006]本发明的另一个示例性实施例涉及使用用户计算机的安全元件内的安全支付信息的方法。这样的示例性方法包括:接收安全元件内的支付应用将由用户激活的指示;从计算机的安全元件,向验证实体发送存储于安全元件的计算机可读存储器内的伪账号的表示;且作为响应,从验证实体接收动态的支付信息,所接收到的动态支付信息具有与该伪账号不同的账号。该动态支付信息可由处理信用卡和/或借记卡交易的卡支付处理网络(诸如VisaNet?)所识别和处理。动态支付信息包括至少十一位数字的账号,优选是至少13位数字,且一般是15、16、17、18、或19位数字。
[0007]本发明的附加实施例涉及执行上述方法计算机程序产品、以及具有存储这些计算机程序产品的计算机可读存储器的安全元件、以及执行所存储的计算机程序产品的处理器。例如,一个这样的实施例涉及实现在有形非瞬态计算机可读介质上的计算机程序产品。该示例性产品包括:引导数据处理器接收用户专属支付信息的账号和如下至少一项:有效期、卡验证值、或账单邮编的代码;引导数据处理器获得安全元件的标识符的代码;引导数据处理器将所接收到的账号、所接收到的有效期、卡验证值、或账单邮编中的至少一个、以及所获得的该安全元件的标识符,发送至验证实体的代码;引导数据处理器,作为响应,从该验证实体处接收伪账号的代码,所接收到的伪账号与所接收到的用户专属支付信息的账号不同;以及,引导数据处理器将所接收到的伪账号存储在安全元件的存储器内的代码。
[0008]本发明的另一个示例性实施例涉及向安全元件提供可由安全元件存储的支付信息的方法。这样的示例性方法包括:在服务器处,接收来自计算机的安全元件的提供伪账号的请求,该请求包括安全元件的标识符、和用户专属支付信息的账号、以及如下中至少一个:有效期、卡验证值、或账户邮编;应用与所接收到的请求有关的至少一个验证测试;如果通过了该至少一个验证测试,则向该安全元件发送伪账号;并将该伪账号与至少所接收到的账号的指示一起存储。
[0009]本发明的另一个示例性实施例涉及向安全元件提供可由安全元件用于支付交易的动态支付信息的方法。这样的示例性方法包括:在服务器处,接收来自计算机的安全元件的提供动态支付信息的请求,该请求包括伪账号和安全元件的标识符;应用与所接收到的请求有关的至少一个验证测试;如果通过了该至少一个验证测试,则向该安全元件发送动态支付信息。
[0010]本发明的附加实施例涉及执行上述方法计算机程序产品、以及具有存储这些计算机程序产品的计算机可读存储器的验证实体、以及执行所存储的计算机程序产品的处理器。例如,一个这样的示例性实施例涉及验证实体且包括:数据处理器;耦合至该处理器的联网设施;耦合至该处理器的计算机可读介质;以及实现在计算机可读介质上的计算机程序产品。计算机程序产品的示例性实施例包括:引导数据处理器接收来自计算机的安全元件的提供伪账号的请求的代码,该请求包括安全元件的标识符、和用户专属支付信息的账号、以及如下中至少一个:有效期、卡验证值、或账户邮编;引导数据处理器应用与所接收到的请求有关的至少一个验证测试的代码;引导数据处理器,如果通过了该至少一个验证测试则向该安全元件发送伪账号的代码;以及,引导数据处理器将该伪账号与至少所接收到的账号的指示一起存储的代码。该示例性计算机程序产品还可包括:引导数据处理器接收来自计算机的安全元件的提供动态支付信息的请求的代码,该请求包括伪账号和安全元件的标识符;引导数据处理器应用与所接收到的请求有关的至少一个验证测试的代码;引导数据处理器,如果通过了该至少一个验证测试则向该安全元件发送动态支付信息的代码。
[0011]以下参考附图在详细描述中提供有关本发明的各实施例的进一步细节。【专利附图】

【附图说明】
[0012]图1示出根据本发明的与各方法、安全元件、和验证实体有关的示例性动作。
[0013]图2示出了根据本发明的具有安全元件的计算机的示例性实现。
[0014]图3示出了根据本发明的安全元件的示例性实施例。
[0015]图4示出了根据本发明的验证实体的示例性实施例。
【具体实施方式】
[0016]本发明涉及对于在因特网上进行的交易,实现将支付信息安全通信至商家的途径。本发明的示例性实施例涉及将支付信息(如,信用卡或借记卡支付信息)结合至特别设计的计算机的安全元件,且在高度改进的安全度下通过商家网站来使用所结合的支付信息从商家购买产品或服务。下文更详细地描述计算机的安全元件。作为简要概述,该安全元件提供与用户之间的硬件级接口,该接口不能由计算机上运行的操作系统所控制或访问,且因此免于可能被不注意地安装在用户计算机上的计算机病毒所侵入。用户通过敲击计算机或计算机键盘上的特定按键或按键序列、或者用户通过点击在由特别的浏览器插件所提供的浏览器工具栏上设置的按钮,可访问该安全元件。当被激活时,该安全元件可访问计算机的用户接口(如,屏幕、键盘、和鼠标),且可防止键盘击键、鼠标点击、鼠标移动、和屏幕光标位置信息发送至运行在计算机上的操作系统。安全元件还可,直接或间接地通过操作系统来访问用户计算机的联网设施,从而与验证服务器安全地通信。该验证服务器帮助用户将支付信息传送至购买交易的商家网站。可由发卡银行或支付处理网络(诸如VisaNetTM)来提供这个服务器。该安全元件可包括其自己的数据处理器和存储器,且还可具有将屏幕、键盘、鼠标与计算机的I/O控制器选择性地连接和断开连接的开关电路。支付应用被安装在安全元件上,且由安全元件的处理器所执行。该支付应用处理支付信息并与用户和验证实体通信。
[0017]图1示出可被用于在用户1、商家网站20、由用户I用来从网站20进行购买的计算机10、以及验证实体80之间实现支付交互的示例性动作A1-A27。在动作Al中,用户I通过按下浏览器窗口上的特定键(其可被设置在浏览器插件所提供的工具栏内)、或者通过按下计算机键盘上的特定键或常规键的组合,来激活计算机10的安全元件。(使用特定键对于膝上型计算机、PDA、和智能手机实现可以是有利的。)作为响应,在动作A2中,安全元件断开计算机用户接口与计算机上运行的操作系统之间的连接,并在计算机屏幕上呈现对话框来要求用户输入口令。可通过使用计算机键盘、或用户通过点击由安全元件显示在计算机屏幕上的键盘图像或0-9数字键盘图像,来输入口令。在动作A3,用户I输入口令,这允许对于安全元件的完全访问。在完全访问状态,用户I可对之前已经被安装在安全元件存储器内的上述安全应用进行访问。一旦接收到正确口令,支付应用可自动启动,或者安全元件可向用户呈现安全的“桌面”屏幕,这个安全屏幕具有用户I可点击来启动支付应用的图标。安全“桌面”屏幕可小于常规桌面屏幕,且可覆盖在常规桌面的一部分上,以使用户仍可看到常规桌面的部分。一旦激活,支付应用可呈现其自己的对话框序列,如同从常规桌面运行的常规应用。支付应用能使用户I登记用户专属支付信息的实例(如,数据),诸如信用卡或借记卡信息,支付应用和验证实体80使用该信息进行与商家网站(诸如商家网站20)进行将来的交易。在动作A4,用户I指令支付应用来登记用户专属支付信息的实例。在动作A4,用户I提供用户专属支付信息的实例的如下字段:PAN (个人账号)、卡持有者姓名、卡有效期(如果适用的话)、卡验证值(CVV,如果适用的话)、以及卡持有者账单地址和/或账单邮编。将用户专属支付信息唯一地分配给用户1,且该用户专属支付信息可以是用户的便携式消费设备5的支付信息(例如,银行分发的主信用卡账号)、或与主账户关联且受限于特定商业通道和/或特定交易(诸如因特网购买)的子账户、或者与主信用卡账户关联且受限于与安全元件一起使用的代理账号。在动作A5,支付应用对用户I提供的支付信息加密、访问计算机的网络设备来接触验证实体80、并安全地将支付信息和唯一地标识安全元件的标识符通信至实体80。可由计算机的安全元件制造商来分配安全元件的标识符,且该标识符可被写入安全元件的非易失性存储器内,或可由支付应用写入安全元件的非易失性存储器内。安全元件的唯一标识符不同于计算机制造商编码在计算机10的CPU、存储器、和固件内的每一个系列号,且优选地无法通过使用单次数学运算就从中导出这个唯一标识符。因此,操作系统无法访问该安全元件的标识符。
[0018]实体80在动作A6中验证所接收到的用户专属支付信息的实例,并在动作A7中将伪账号(伪PAN)发送回在安全元件上运行的支付应用。伪账号(伪PAN)与由用户I提供至实体的真实账号(PAN)不同,且优选地无法通过使用单次数学运算就从中导出该伪账号。此夕卜,伪PAN优选地具有可由支付处理网络(诸如下述网络70)所处理的PAN的形式,这是至少11位数字串(序列)、优选地是至少13位数字串(序列)、且一般是15、16、17、18、或19位数字的序列,且优选地不大于20位数。作为动作A6的一部分,实体80创建计算机记录,存储并关联如下项:用户I提供的用户专属支付信息、伪账号(伪PAN)、和安全元件的唯一标识符。在动作AS中,支付应用向用户I提供已经登记了支付信息的指示,并提供图标或其他表示,用户可在以后点击或选择该图标或其他表示来向商家网站20发送支付信息。这个图标或表示可包括分发用户专属支付信息的银行名称加上用户专属支付信息的真实PAN的最后3到5位数。同样,支付应用可提供允许用户I创建所登记的支付信息的名称的输入对话框。在动作9中,用户I点击支付应用中的图标或表示来关闭应用,并进一步点击另一个图标或表示来退出安全元件,这个动作恢复了操作系统对计算机用户接口的访问。为了保护用户真实支付信息的安全性,诸如来自安全元件40的反向工程,在安全元件上运行的支付应用不永久性地存储由用户向其提供的用户专属支付信息的PAN、CVV、和有效期。而是,支付应用可将这个信息转送至验证实体80,而不进行信息的任何本地存储。
[0019]在以后的时间,用户I在商家网站20购物,找到一个或多个商品或服务要购买,并导航至网站的付款页来支付交易。在图中,在AlO处示出这些动作。在付款页,如上所述,用户I在动作All通过按下浏览器上的特定键(其可被设置在浏览器插件所提供的工具栏内)、或者通过按下计算机键盘上的特定键或组合常规键,来激活安全元件。在动作A12,如上所述,安全元件显示安全屏幕并请求用户口令。在动作A13,用户I输入口令,当输入正确时,这允许对安全元件的完全访问。一旦确认口令正确,安全元件进行动作A14来自动地启动安全应用或者呈现安全桌面屏幕来使用户I能启动支付应用。一旦被启动,如果用户以前已经用该支付应用登记了用户专属支付信息的数个实例(如,多个便携式消费设备),则该支付应用可向用户I呈现具有这些实例中每一个的图标/表示的对话框,使用户能够选择其一(如,多个便携式消费设备或多个卡之一)来用于支付。如果仅登记了用户专属支付信息的一个实例,支付应用可呈现对话框来确认使用该实例(且如果有要求,允许登记并使用另一个实例或便携式消费设备),或该支付应用可被配置为继续使用该唯一登记的实例(如,便携式消费设备)而不需要来自用户的确认。在图中,在A15处示出这些交互。一旦支付应用已经选择了便携式消费设备来用于支付,该支付应用基于伪PAN和其他信息来生成密码,并通过用户计算机10的联网设施将该密码发送至验证实体80,如图中动作A16所示。在动作A16中发送的密码也可具有唯一地标识安全元件的上述标识符。实体80可使用这个标识符来确认它正在与受信任的实体通信。作为又一个安全特征,动作A11-A14之一可包括获得商家20的唯一标识符,且动作16可将该商家标识符包括在密码中、或将其与密码一起传输。然后实体80可使用该商家标识符来将支付信息直接通信给商家、或指令支付处理网络(下述)来仅处理与由该标识符所指示的商家之间的交易。可从活动的网络浏览器处获得商家标识符,诸如商家付款页的URL或付款页内容中的数据字段,且可在安全元件的安全环境中向用户显示该商家标识符来确认该商家的身份。
[0020]验证实体80确定密码是否有效,如动作A17所示,且如果有效,它生成返回支付信息并将该返回信息与用户账户关联。验证过程包括基于所接收的伪PAN的值来访问用户的用户专属支付信息(如,用户的便携式消费设备)的先前存储记录,且可包括将所接收到的安全元件标识符和所访问记录中先前存储的安全元件标识符进行比较。验证过程还可包括检查与伪PAN有关的欺诈活动数据库以及用户的相应真实账号、和/或安全元件的身份。返回支付信息可包括动态PAN号(dPAN)加上动态卡验证值(dCVV2)、或真实PAN号加上dCVV2值、或dPAN或真实PAN加上动态有效期,还有任选的dCVV2值。动态PAN不同于伪PAN和用户的用户专属支付信息(如,便携式消费设备5的支付信息)的相应真实PAN。dPAN、dCVV2、和动态有效期被称为“动态的”,是因为它们的值随时间变化。每一个在预定时段上可具有相同值,或可随着对验证实体80的每一次请求而变化。返回支付信息可被称为动态支付信息,因为其数据字段的至少一个具有随时间变化的值。使用动态dPAN目前相对于使用真实PAN是优选的。在动作A18中,验证实体80向在计算机10的安全元件上运行的支付应用发送该返回(动态)支付信息。动作A18还可包括发送运输信息。先前动作A17优选地包括将返回支付信息与用户的用户专属支付信息(如,真实账户信息)的指示一起存储在实体80中,且任选地与商家标识符的指示一起存储。如下更详细描述地,这将帮助通过卡支付系统进行交易处理。
[0021]在这一点,可以数种不同方式完成与商家20的交易的支付。作为第一种方式,支付应用可使得所返回的动态支付信息显示在操作系统的浏览器窗口或另一类型的窗口中,从而用户手动地或通过操作系统的剪切-粘贴工具可将该动态支付信息复制到商家的付款页内。为此,支付应用可将动态支付信息传送至在计算机操作系统下运行的配套应用,且该配套应用可向用户显示该动态支付信息。作为第二种方式,支付应用可将动态支付信息传送至在操作系统下运行的配套应用,且该配套应用可在计算机10上定位商家的付款页并将该动态支付信息插入(或填入)付款页的字段内。不管哪一种情况,用户I可退出安全元件接口并返回操作系统提供的接口,且然后向商家20提交具有被填入的支付信息的付款页用于处理。在图中,该动作由动作A19所示出。然后商家网站20可向收单银行50发送所接收到的动态支付信息来处理该交易。作为第三种方式,验证实体80可直接向商家站点20发送动态支付信息,如图中动作A18-A所示,还有关于用户I和/或与商家的用户浏览器会话的信息,这些信息是先前已经在动作A11-A14中的一个或多个中收集并在动作A16中发送至实体80的信息。商家网站20可使用这个附加信息来将所接收到的动态支付信息与用户浏览器会话相关,且可将付款页以及已经接收到PAN、CVV、和有效期数据(诸如在这些字段中显示星号)的指示再次发送至计算机10。作为另一个方法,实体80可向商家80提供用户的姓名和用户真实PAN的一部分,且商家80可判定用户先前是否已经为该商家设置了账户(当设置账户时,用户已经提供了真实PAN的一部分,且商家20已经存储了这一部分)。如果是这样、且如果用户I在导航至付款页前已经登入她的账户,则商家20可易于从所有的活动购买会话中标识出该用户的购买会话,且可将来自实体80的支付信息与正确的购买会话和正确的付款页进行相关。
[0022]一旦商家20接收到动态支付信息,通过常规信用卡/借记卡处理通道,可完成购买交易。在动作A20中,商家20向其收单银行50发送交易信息,包括用户的动态支付信息,该收单银行50记录该信息(用于以后的结算目的),并将动作A21中的交易信息转送至支付处理网络70,作为一个示例,该支付处理网络可以是VisaNet?。如果支付处理网络70将交易信息中提供的PAN识别为动态PAN,它可在动作A22中联系验证实体80来要求真实的支付信息。在动作A23中,验证实体80可将从网络70接收的动态PAN与它的记录对照检查,并向网络70提供对应的真实支付信息。作为另一个方法,如果动态支付信息是在动作A17中生成的,则验证实体80可将用户的动态支付信息以及用户的真实支付信息一起转送,藉此能省略动作A22和A23。然后,网络70可将它接收到的每一个交易与它已经从实体80接收到的信息集对照检查来找出动态支付信息集的匹配,且如果找到匹配则用真实支付信息替换所接收到的动态支付信息。可由相同的服务提供者来拥有并操作网络70和实体80,且网络70和实体80每一个可使得它们的消息通过(funneled through)(如,传输通过)网关服务器。授权码和拒绝码的每一个具有与上述PAN的每一个不同的格式。授权/拒绝码在长度上小于13个字符,且一般在长度上是5到9个字符,且可包括字母字符以及数字。
[0023]一旦支付处理网络70具有真实支付信息,其可接触用户I的发卡银行60来寻求批准交易,如图中动作A24所示。在一些情况下,发卡银行60可能先前已经向网络70给出一组规范,网络70可使用这组规范来自己批准交易而不需要为每一笔交易都从发卡银行寻求批准。如果这样的话,作为动作A24的一部分,网络70可使用之前提供的规范来自己批准或不批准该交易。在动作A25中,支付网络70向收单银行60发送交易的指示、以及授权码(如果交易被批准)或拒绝码(如果交易未被批准)。在动作A26中,收单银行50基于由网络70发送的交易指示来找到交易的记录、在所找打的记录中存储该授权码或拒绝码、并向商家20转送所接收到的码、还有该交易的指示。一旦接收到授权码或拒绝码,在动作A27中,商家网站20可向用户I发送有关交易被批准还是拒绝的指示。
[0024]计算机10和商家网站20可在公共通信网络(可包括因特网)上彼此通信。同样,计算机10和验证实体80可在公共通信网络(可包括因特网)上彼此通信。实体20、50、60、70、和80可在一个或多个公共或专用通信网络(可包括因特网)的组合上彼此通信。特别在作为公共网络的区段上,在这些组件之间可建立虚拟专用网络。可一般地表示通信网络的上述可能组合的每一个,且在附图中用参考标记31表示。
[0025]使用动态支付信息的优势在于如果黑客能接收并解密从安全元件40发送至验证实体80的对于动态支付信息的请求消息,则真实支付信息(如,上述用户专属支付信息)没有被泄漏。即使黑客想要在交易中使用该动态支付信息,这允许用户I在其他商用通道(诸如在商店内购物)中继续使用她的用户专属支付信息(如,便携式消费设备5)。通过在动态支付信息中使用dPAN而不是真实PAN,提供了增强的保护。在请求获得动态支付信息的请求消息中使用伪PAN,还具有保护真实PAN的上述优势。作为使用伪PAN的附加优势,支付处理网络70可被配置为无论何时想要使用伪PAN通过网络70处理交易时,该网络向验证实体80发送警告消息,且实体80可将该用户的账户标记为潜在欺诈,则实体80的操作人员可向用户发送更新的支付应用程序来安装在安全元件40上,该更新的支付应用程序具有新的加密密钥、以及任选的安全元件40的新的唯一标识符。以此方式,伪PAN具有可由支付处理网络70所处理的PAN形式,伪PAN进一步提供了检测安全元件40和验证实体80之间的通信消息的侵入的优势。为了进一步帮助该检测,安全元件40可在其发送至实体80的请求信息中包括假有效期和假CVV值以及伪PAN。如上所示,用户专属支付信息的账号、和伪PAN、以及动态PAN每一个都是可由处理信用卡和/或借记卡交易的卡支付处理网络70 (诸如VisaNet?)所识别和处理的。(该支付处理网络70独立于分发用户专属支付信息的银行、以及涉及用户交易的商家。)而且,以上账号(PAN)的每一个包括至少十一位数字序列,优选是13位数字,且一般是15、16、17、18、或19位数字的序列。这些账号的这些特征能使上述请求建立并接收伪PAN、接收动态PAN、并使用动态PAN,对于所有这些,由现有和传统卡支付网络所处理,而不需要大幅修改现有的支付处理网络。
[0026]这些已经提供了整体系统与方法的描述,现在提供具体组件的描述。用户计算机10可包括台式计算机、膝上型计算机、智能电话、或具有联网设施的任何便携式电子设备。参看图2,计算机10的示例性实现具有一个或多个处理器11、耦合至处理器(多个)11的有形非瞬态计算机可读介质12 (存储引导处理器11的指令代码(软件)以及可由处理器(多个)11使用的数据)、使得(多个)处理器11与用户接口 13交互的I/O控制器15、以及网络设备14。用户接口 13包括一个或多个视频输出设备(例如显示器、屏幕)和一个或多个输入设备(例如键盘、鼠标、跟踪球等等)以供用户I从计算机10接收信息并且将输入提供给计算机10。联网设施14可以包括如下的软件和硬件:所述软件和硬件使得运行在计算机10上的进程能够与通信网络通信以向耦合到该通信网络的一个或多个实体发送和接收消息、数据等等。在常规计算机中具有上述组件。作为非常规特征,图2中所示的计算机10的示例性实现还包括以上参照图1所述类型的安全元件40。安全元件40具有其自身的处理器和存储器,如下文所述,或以防止操作系统控制安全元件的处理器或访问安全元件存储器的安全方式来复用(多个)处理器11和计算机可读介质12。上述支付应用被加载至安全元件40的存储器内,并由安全元件40的处理器执行。I/O控制器15和用户接口 13之间流动的数据通过安全元件40,从而安全元件40可经由计算机屏幕向用户提供可视信息,且可从用户接口 13接收用户输出并当安全元件40与用户有效交互时防止由I/O控制器15接收该输入。安全元件40可与计算机10的(多个)处理器11 一体地组装,诸如组装在同一个半导体管芯上或组装在同一个半导体封装内,从而处理器11必须被损坏或毁坏从而获得安全元件40内存储的数据和加密密钥。
[0027]计算机10的计算机可读介质12可以包括半导体存储器和诸如一个或多个盘驱动器和/或非易失性存储器之类的非易失性存储的组合。计算机可读介质12存储计算机10的操作系统,其使得进程和应用能够被处理器11运行。该操作系统向这些进程和应用提供服务,并且使得这些进程和应用能够访问用户接口 13的组件、计算机可读介质12的部分、联网设施14、外围接口 16和计算机10的其他组件。该操作系统可以是复杂和全特征的,t匕如在台式计算机上找到的,或者是简化的,比如在手机、PDA和许多其他类型的便携式电子设备上找到的。
[0028]元件40的支付应用的配套应用被加载到计算机可读介质12,且由处理器(多个)11所执行。可与安全元件40的处理器共享对于计算机可读介质12的小部分的访问。使用介质12的被共享的部分,安全元件40上运行的支付应用和(多个)处理器11上运行的配套应用可彼此通信。例如,在被共享的部分内,每一个应用可被分配“邮件箱”部分和“标志”部分,这两个部分可由每一个应用读和写。当支付应用想要向配套应用发送数据和指令时,其可向配套应用的收件箱部分写入指令和/或数据,且然后向配套应用的“标志”部分写入数据字,指示刚写了邮件箱。配套应用可周期性地检查它标志部分的这样的数据字,当找到这样的数据字时,配套应用可读它的收件箱,然后擦除其收件箱部分的内容并将其标志部分重置为零。写入标志部分的数据字可以是非零整数值,指示写入收件箱部分的字(或字节)的数量。在写配套应用的收件箱部分前,支付应用可周期性地读配套应用的标志部分,并当标志部分具有零字值时写指令和/或数据。以类似的方式,当配套应用想要向支付应用发送数据和指令时,其可向支付应用的收件箱部分写入指令和/或数据,且然后向支付应用的“标志”部分写入数据字,指示刚写了邮件箱。支付应用可周期性地检查它标志部分的这样的数据字,当找到这样的数据字时,支付应用可读它的收件箱,然后擦除其收件箱部分的内容并将其标志部分重置为零。如上,写入标志部分的数据字可以是非零整数值,指示写入收件箱部分的字(或字节)的数量。在写支付应用的收件箱部分前,配套应用可周期性地读支付应用的标志部分,并当标志部分具有零字值时写指令和/或数据。在启动图1中概述的设置进程前(如,在动作Al前),用户可下载并安装配套应用。每次计算机启动时,配套应用可由操作系统注册表进行配置作为低-CPU级别的背景进程来运行。
[0029]图3示出了安全元件40的示例性实施例。该示例性实施例包括处理器41、稱合至处理器41的有形非瞬态计算机可读介质42 (存储引导处理器41的指令代码并存储由(多个)处理器41所使用的数据)、将处理器41对接至计算机10的计算机可读介质12和用户接口 13以及联网设施14的I/O控制器45、以及复用器单元46,当安全元件40与用户I对接时该复用器单元选择性地将用户接口 13连接至安全元件40的I/O控制器45,并当安全元件40不与用户I对接时该复用器单元选择性地将用户接口 13连接至计算机10的I/O控制器15。支付应用存储于介质42中,且包括引导处理器41执行上述任务的代码。支付应用还具有存储于介质42内加密密钥,它用于加密与验证实体80的通信、并且解密来自验证实体80的通信。这些密钥和消息的加密能使安全元件保持支付应用安全远离可能在计算机10的操作系用上运行的恶意软件。在工厂时可由计算机制造商将支付应用加载至存储器42内,且也可在现场由用户加载至存储器42内。对于后一种情况,包括用户专属加密密钥的支付应用可在⑶-ROM或存储卡上安全地提供至用户,且用户接口 13可具有ROM驱动器或USB端口,可允许当用户激活安全元件40时将该程序安全地传递至存储器42。对于这方面,且为了向用户提供基本图形用户界面(GUI),可在工厂由计算机制造商将基本操作系统加载至存储器42上,该操作系统由处理器41运行。该基本操作系统可被配置为提供加载设施将来自用户接口 13的安全器件的应用加载至存储器42内。[0030]配套应用被存储在计算机介质12上且包括引导(多个)计算机处理器11使用计算机10的联网设施14以及计算机可读介质12的共享部分来建立并处理与验证实体80的通信的代码。配套应用还可包括引导(多个)计算机处理器11从操作系统上运行的网络浏览器处获得商家标识符、并通过介质12的共享部分向安全元件提供该商家标识符的代码。配套应用还可包括引导(多个)计算机处理器11通过共享的存储器从安全元件40处接收显示动态支付信息、并向用户显示该信息、或者按用户浏览器所示在商家付款页中填入该动态信息的代码。配套应用还可包括引导(多个)计算机处理器11检测键盘的特定键盘序列或键组合、以及向安全元件40发送消息来启动安全元件与用户的交互以及将用户接口 13与操作系统去耦合的代码。鉴于本说明书,计算机软件领域的普通技术人员可易于创建一组指令来实现配套程序而不需要过分实验。
[0031]关于计算机10,计算机10的联网设施14可以包括如下的软件和硬件:所述软件和硬件使得运行在计算机10上的进程能够与诸如通信网络31之类的通信网络通信以向耦合到该通信网络的一个或多个实体发送和接收消息、数据等等。设施14的硬件可以包括与处理器11分开的专用硬件或者对处理器11的共享使用、或者其组合。设施14的软件可以包括存储在计算机可读介质12或另一计算机可读介质中的固件、软件,操作系统的部分,或者前述项目中的任意项目的组合。联网设施14优选为非独占性资源,从而允许由计算机10运行的其他进程和应用来访问通信网络。
[0032]计算机10的操作系统包括在此被统称为“网络服务模块”的一个或多个软件模块和应用程序,所述网络服务模块可访问联网设施14并建立至通信网络31上的实体的通信会话。这样的网络服务模块包括微软的Windows通信基础(例如NET3.0、NET4.0等等)、Apple的CFNetwork框架、Unix和Linux操作系统内核的联网部分、Symbian操作系统的OS服务层和基础服务层、因特网浏览器等等。这些网络服务模块中的每一个都是非独占性的(例如能够服务于一个以上处理器和一个以上进程/应用),并提供至函数集合的应用编程接口(API),该函数集合可以由处理器使用相应的函数调用来访问。利用这些API设施,可以容易地构造函数调用的集合以供处理器执行,所述函数调用使得处理器能够与耦合到联网设施14的通信网络31上的实体建立通信信道、以及与该实体交换消息和数据。配套应用可具有对计算机10的网络服务模块的API的这种函数调用集合,包括为验证实体80提供统一资源标识符(URID)(由支付应用传送至配套应用时)、以及与验证实体建立会话的指令的一个或多个函数调用。该会话可以是具有相互认证的安全套接字层(或者安全传输层)会话(例如SSL会话、STL会话)。在一些实现中作为建立会话的一部分,配套应用可包括:弓丨导数据处理器41验证实体80提供计算机网络服务模块的网络地址或使提供网络地址被提供。该网络地址可以是静态或动态的,其中后者可以通过对计算机网络服务模块的API函数调用来获得。网络地址可以是IP地址。
[0033]如果配套应用希望将因特网浏览器用于网络服务模块,则其还可包括对计算机操作系统的API函数调用,以发起浏览器的实例并向其提供对浏览器实例的访问。在一些实现中,诸如当安全元件40中的支付应用存储验证实体80的URID时,配套应用可引导数据处理器40在用户I唤起安全元件40以请求其支付交易之前,建立与验证实体80的通信。配套应用和验证实体80可保持通信会话有效,直到用户作出这样的请求,且在各请求之间,通过间歇性地交换“心跳”信息保持通信会话活动。例如,配套应用可周期地、非周期地或者随机地向验证实体80发送确认其存在于会话中的消息,并且验证实体80可以发送确认其存在于会话中的回复消息。
[0034]回过来参考图3,安全元件40包括实施在计算机可读介质42上的各种代码,所述代码引导数据处理器41执行相应的动作。第一代码引导数据处理器41借助于配套应用与计算机10通信,以便获得对计算机10的联网设施14的访问。第一代码可包括引导数据处理器41通过上述介质12的共享部分的收件箱和标志部分来发送和接收指令与数据的代码,且可包括引导处理器41执行交换协议的上述动作的指令。配套应用可包括能使元件的数据处理器41对于计算机操作系统的各应用程序接口(API)(诸如涉及联网与访问联网设施14的那些)进行功能调用的指令集合。以此方式,元件的数据处理器41可向配套应用发送对计算机10的功能调用,且配套应用可代表处理器41向计算机10的操作系统提交这些功能调用,并可接收这些功能调用的结果且将它们转送至处理器41。
[0035]安全元件40上的支付应用的另一个代码引导数据处理器41使用计算机10的联网设施14来建立与验证实体80的通信。通过向配套应用提供实体80的URL并引导配套应用来建立与实体80的通信,来完成此举。
[0036]支付应用的其他代码引导数据处理器建立与用户I的第一安全接口从而接收上述与用户便携式消费设备5有关的信息、用存储于介质42内的加密密钥来加密该信息以及安全元件的标识符、伴随着指令配套应用将信息提供给验证实体80 (从而获得伪PAN)的指令来将这个经加密的信息提供至配套应用、通过配套应用从实体80接收回经加密的消息、解密该经加密的消息并提取伪PAN、以及存储该伪PAN。这些代码可包括:引导数据处理器41接收真实账号和用户专属支付信息中有效期、卡验证值、或账单邮编的至少一个的代码;引导数据处理器41获得安全元件40的标识符的代码;引导数据处理器41将所接收到的真实账号、所接收到的有效期、卡验证值、或账单邮编中的至少一个、以及所获得的该安全元件的标识符,发送至验证实体80的代码;引导数据处理器41,作为响应,从该验证实体80处接收伪账号的代码,所接收到的伪账号与用户专属支付信息的真实账号不同;以及,引导数据处理器41将所接收到的伪账号存储在安全元件的存储器42内的代码。支付应用可被存储在存储器42的非易失性部分中,且可包含安全元件40的唯一标识符。这允许随着支付应用的重新加载(诸如当实体80检测到欺诈活动时)来更新该标识符的值。作为另一个方法,安全元件40的唯一标识符可由元件40的制造商存储在存储器42的非易失性部分,该非易失性部分与存储支付应用的位置是分离的。作为另一个方法,标识符可以是由支付应用存储的数字和由制造商在与支付应用分离的存储器42的部分内存储的数字的组合。
[0037]支付应用的附加代码引导数据处理器在之后与用户I建立第二安全接口,来接收获得动态支付信息的请求(可包括从用户接收伪PAN账户选择)、用存储在介质42中的加密密钥对这个伪PAN和安全元件的标识符进行加密、伴随着指令该配套应用将该信息传送至验证实体80 (从而获得动态支付信息)的指令将这个加密的信息提供至配套应用、通过配套应用从实体80接收回经加密的消息、并解密该经加密的消息且提取动态支付信息。这些代码还可包括引导数据处理器41伴随着寻找并向其提供与有效商家付款页相关联的商家标识符、加密该商家标识符、并将该加密的商家标识符和请求中的其他数据一起发送至实体80的指令,来向配套应用发送消息。附加指令可引导数据处理器41向用户显示经加密的动态支付信息、或随着指令配套应用在窗口中显示该动态支付信息的指令而向配套应用发送经加密的动态支付信息、或者引导配套应用在商家付款页中填写该动态支付信息。这些代码一起包括至少:引导数据处理器41从计算机的安全元件向验证实体发送伪账号的表示的代码;以及引导数据处理器41,作为响应,从验证实体接收动态支付信息的代码,所接收到的动态支付信息具有与该伪账号不同的账号。
[0038]在建立与用户的上述安全接口时,数据处理器41可通过I/O控制器45向复用器单元46发送指令,并防止来自用户接口 13的输入到达计算机10的I/O控制器15。
[0039]支付应用和配套应用的上述代码、指令、和动作可易于通过常规的I/O指令、数据库函数调用、网络功能调用、存储器访问指令、CPU算术指令、CPU逻辑指令、和CPU控制指令来实现。鉴于本公开,所述代码、指令、和动作可由本领域的普通技术人员在没有过度实验的情况下实现。可用一个CPU或多个CPU实现数据处理器41。
[0040]已经描述了安全元件40的多个实施例和实现,现在参照图4描述验证实体80的多个实施例和实现。验证实体80包括具有耦合至通信网络31的一个或多个服务器的系统,如上所述,该通信网络31可从安全元件40接收请求来处理、并依据该请求来提供合适的数据。实体80的服务器之一示出于图4 ;该服务器包括一个或多个处理器81,该处理器电耦合至有形的计算机可读介质82、用户接口 83、一个或多个数据库86、以及联网设施84中的每一个,其中联网设施84耦合至一个或多个通信网络31从而联网设施可通信至计算机10、商家20、支付处理网络70、和银行50和60。用户接口 83包括一个或多个视频输出设备(例如显示器、屏幕)和一个或多个输入设备(例如键盘、鼠标、跟踪球等等),能使实体80的管理员能够从该服务器接收信息并且将输入提供给该服务器。计算机可读介质82可以包括半导体存储器和诸如一个或多个盘驱动器和/或非易失性存储器之类的非易失性存储的组合。可用一个CPU或多个CPU实现数据处理器81。
[0041]计算机可读介质82存储服务器的操作系统,该操作系统使得进程和应用能够被处理器81运行,并且使得用于引导处理器81的操作的代码能够被运行。该操作系统向这些进程和应用提供服务,并且使这些进程和应用能够访问用户接口 83的组件、计算机可读介质82的部分、联网设施84、以及实体80的其他组件。该操作系统可以是全特征的。具体而言,该操作系统提供一个或多个I/O通信模块,所述I/O通信模块使得处理器81能够与用户接口 83和数据库86通信。每个I/O通信模块都具有应用编程接口(API),所述应用编程接口(API)具有处理器81为了访问组件可调用的函数集合。实体80的操作系统还包括一个或多个网络服务模块,所述网络服务模块能访问联网设施84并建立至通信网络31上的实体的通信会话。这样的网络服务模块包括微软的Windows通信基础(例如NET3.0、NET4.0等等)、Apple的CFNetwork框架、Unix和Linux操作系统内核的联网区段、以及Symbian操作系统的OS服务层和基础服务层等等。这些网络服务模块中的每个都可以是非独占性的(例如能够服务于一个以上的处理器和一个以上的进程/应用),并且每个都提供应用编程接口(API),该应用编程接口具有可以被处理器81调用以便管理与另一实体的通信的函数集合。利用这些API设施,可以容易地构造API函数调用集合以供处理器执行,所述函数调用使得处理器能够与耦合到联网设施84的通信网络上的实体建立通信信道、以及与该实体交换消息和数据。上面的操作系统、模块和API全部包括引导处理器81的操作的指令。
[0042]一个或多个数据库86可以被配置成数据库服务器,其中处理器81可以经由联网设施84通过图4中由虚线示出的专用通信网络87来访问所述数据库服务器。验证实体80常规地具有用于跟踪各个应用的时间和日期的时钟88。时钟88可以是可被处理器81通过I/O操作读取的秒或分数秒的简单计数器,或者可以包括硬件或固件的更复杂布置,其中所述硬件或固件可以提供可由处理器81通过执行一个或多个I/O操作读取的各种寄存器中的当前日期和时间(年、月、日、小时、分钟和秒)的各种组件。
[0043]验证实体80可处理从多个不同安全元件40 (例如几百万个元件)传送的处理请求,并可处理任何数目的由特定元件40进行的传送。如上所述,存在两种基本类型的请求:
(I)获得真实账户(如,便携式消费设备5的账户)的伪PAN的请求,和(2)获得与伪PAN对应的动态支付信息(如,d-PAN)的请求。前者可称为伪PAN请求,且后者可称为动态信息请求。验证实体80可对安全元件40和/或请求中的信息应用一个或多个验证测试来获得该请求合法的置信度。当通过一个或多个验证测试时,优选地当没有一个测试失败时,验证实体80将所请求的数据连同与请求关联的真实账号(如,真实PAN) —起发送至安全元件40、和任选地发送至支付处理网络70。对于这些任务,验证实体80可包括实现在计算机可读介质82上的代码,所述代码引导数据处理器81在通信网络31上使用联网设施84与计算机10和安全元件40通信。该代码可以包括:建立与计算机10的通信会话的指令,包括基于三重DES算法来建立具有相互认证和加密的SSL/STL会话的选项;以及用于通过通信会话将消息发送给安全元件40和从其接收消息的指令。验证实体80还可包括实现在计算机可读介质82上的引导数据处理器81接收由安全元件40发送的经加密的请求的代码、以及引导数据处理器81对请求中的经加密的信息进行解密的代码。该信息可由SSL/STL会话的会话密钥加密或者由存储在安全元件40中并且验证实体80已知的加密密钥来加密,或可由两个密钥双重地加密。后一密钥可被唯一地分配给安全元件。验证实体80可进一步包括实现在计算机可读介质82上的代码,该代码引导数据处理器81如下文所述地应用一个或多个验证测试、且如果通过了选定数量的验证测试则将所请求的数据发送至安全元件40和任选地发送至支付处理网络70。数据处理器81可以在执行一个或多个验证测试时访问数据库86。因此,下面更详细地描述验证测试和代码。上述代码和下面描述的用于验证实体80的代码可以以任何数量的编程语言来实现。它们可通过常规的I/O指令、数据库函数调用、网络功能调用、存储器访问指令、CPU算术指令、CPU逻辑指令和CPU控制指令来实现。此外,鉴于本公开,在没有过度实验的情况下,本领域的普通技术人员能够容易地构造指令来实现这些代码。
[0044]验证实体80可应用的第一验证测试涉及验证该安全元件40是可信的。验证实体80可维护安全元件的有效标识符的第一数据库86,且这个数据库还可包括对有效标识符是否与欺诈活动相关联的指示。第一验证测试可包括确定所接收的安全元件40的标识符是否在有效标识符的第一数据库86中。如果是的话,则通过该第一验证测试;如果不是,则没有通过。如果没有通过该第一验证测试,则验证实体80可在下述第三数据库86内记录未通过的安全元件40的标识符以及未通过安全元件40作出请求的源IP地址。验证实体80可应用的第二验证测试涉及验证该安全元件40尚未牵涉到欺诈交易中。为此,验证实体80还可具有追踪已被用于欺诈活动的安全元件40的标识符的第二数据库86,并可对照该数据库检查安全元件40的标识符。如果在第二数据库中找到该请求中的标识符,则第二验证测试被认为未通过。第二验证测试可进一步包括对照存储与未通过第一验证测试的请求关联的元件标识符和IP地址的前述第三数据库86来检查元件的标识符和/或传入请求所起源的IP地址(消息的源IP地址)。如果在该数据库中发现了元件标识符或IP地址,则第二验证测试被认为未通过。以此方式检查元件标识符和/或IP地址防止了欺诈者再次攻击。可以理解,第二和第三数据库86结合为单个数据库,统称为可疑安全元件的标识符数据库。如果通过了第一和第二验证测试,验证实体80可依据所接收到的请求的类型,向安全元件40发送伪账号或动态支付信息,或在发送信息前如下述应用附加验证测试。
[0045]当验证实体80从安全元件40接收到对伪PAN的伪PAN请求时,该请求将具有便携式消费设备5的真实账号(如,真实PAN),以及附加信息,是与设备5相关联的有效期、卡验证值、或账单邮编中的至少一个。除了进行上述第一和第二验证测试外,作为第三验证测试,实体80访问其用户账户信息数据库86或与发行用户专属支付信息(如,设备5)的银行联系,藉此获得在伪PAN请求中所提供的真实PAN的信息记录,且可将在伪PAN请求中所提供的附加信息(如,有效期、卡验证值、和/或账单邮编)与所获得的信息记录中的值相比较。如果伪PAN请求中的附加信息没有完全匹配所获得的信息记录中的信息,可认为第三验证测试没有通过,且拒绝该伪PAN请求。如果附加信息完全匹配所获得的信息记录中的信息,则通过了第三确认,且验证实体80可继续来给安全元件40提供对应于真实PAN的伪PAN,并可在将所分发的伪PAN与设备5的用户账户(如,与用户专属支付信息的真实PAN)、以及与所接收到的安全元件40的标识符相关联的第四数据库86中创建记录。作为选项,验证实体可在第三测试后、向安全元件40提供伪PAN前进行第四验证测试。在这个测试中,发卡银行和/或支付网络70和/或验证实体80可限制具有用户I可用于用户专属支付信息的特定实例(如,用户I可用于特定便携式消费设备5)的安全元件40的计算机的数量。作为第四验证测试,实体可访问第五数据库86来确定在所接收到的用户专属支付信息的实例(如,设备5)上是否已经设置了安全元件40数量的界限。如果是的话,实体80可访问上述第四数据库86来看多少安全元件已经与所接收到的用户专属支付信息的实例相关联(例如,与设备5的真实PAN关联)。如果没有达到界限,实体80继续向安全元件40提供伪PAN且更新第四数据库86来包括该新的伪PAN以及已经向其提供伪PAN的安全元件40的标识符。实体80还更新第四数据库86来增加与设备5关联的安全元件的数量。可理解的是,可将第四和第五数据库86组合在一起成为单个数据库。
[0046]当验证实体80从安全元件40接收到对动态支付信息的动态信息请求时,该请求将具有伪PAN和做出该请求的安全元件40的标识符。除了进行上述第一和第二验证测试夕卜,作为第五验证测试,实体80可访问其第四数据库86来获得所接收的伪PAN的记录、或者先前已经与所接收到的伪PAN相关联(通过上述伪PAN请求的处理来关联的)的所有安全元件的标识符,并针对标识符的匹配来将在动态信息请求中接收的安全元件40的标识符与所访问到的记录中的(多个)标识符进行比较。如果没有找到匹配。认为第五验证测试没有通过,且验证实体80可在与欺诈交易关联的安全元件的上述第二数据库86中记录所接收的元件40标识符。如果找到匹配,验证实体80可向安全元件40发送动态支付信息(如,d-PAN、dCVV2、和动态有效期),可在第六数据库86中记录所分发的动态支付信息的内容和设备5的对应顾客账户的指示(如,用户专属支付信息的真实PAN),且可任选地向支付处理网络70发送该动态支付信息和真实支付信息(即,用户专属支付信息),以及在将由网络70处理的交易中尽快要使用该动态数据的指示。
[0047]如前所述,验证实体80可向安全元件40发送用户的运输地址信息和/或账单地址信息,这些信息之前已与用户I关联。这种关联可被存储在验证实体80的数据库86中或存储在用户的便携式消费设备5的发行银行60处。如上所述,验证实体80可进一步包括代码,该代码用于引导数据处理器81从数据库86或者从发行银行60获得在所接收的请求中由伪账号所指示的消费者账户的地址信息,并当已经通过了选定数量的验证测试时,将该地址信息连同动态支付信息一起发送至元件40。上面的代码和动作可通过常规的I/O指令、数据库函数调用、网络功能调用、存储器访问指令、(PU算术指令、CPU逻辑指令和CPU控制指令来实现。鉴于本公开,所述代码可以由本领域的普通技术人员在没有过度实验的情况下实现。
[0048]如前面指出的,验证实体80可被配置成将动态账号(dPAN)连同dCVV2值和/或动态有效期一起发送至安全元件40和支付处理网络70。验证实体80可联系设备5的发行银行60以获得该dPAN,或可从由银行60之前发送至实体80或由实体80或网络70创建的dPAN列表中读取它,或可从之前由银行60提供给实体80的算法生成dPAN。验证实体80可包括实现在计算机可读介质82上的代码,该代码引导数据处理器81执行这些动作,如发行银行期望的那样。当支付处理网络70接收到dCCV2值、dPAN值和设备5的账号时,它可将所有这三种数据提交至发行银行60,以使发行银行可将dPAN关联至设备5的账号。
[0049]为了执行上述动作和任务,验证实体80可包括安装在其计算机可读存储器82上的计算机程序产品。所述计算机程序产品可包括:引导数据处理器81接收来自计算机的安全元件40的提供伪账号的请求的代码,该请求包括安全元件的标识符、和用户专属支付信息的实例的账号(PAN)、以及如下中至少一个:有效期、卡验证值、或账单邮编;引导数据处理器81应用与所接收到的请求有关的至少一个验证测试的代码;引导数据处理器81,如果通过了该至少一个验证测试,向该安全元件发送伪账号的代码;以及,引导数据处理器81将该伪账号与至少所接收到的真实账号的指示一起存储在其数据库86之一中的代码。该程序可进一步包括:引导数据处理器81接收来自计算机的安全元件40的提供动态支付信息的请求的代码,该请求包括伪账号和安全元件的标识符;引导数据处理器81应用与所接收到的请求有关的至少一个验证测试的代码;以及引导数据处理器81,如果通过了该至少一个验证测试,向该安全元件发送动态支付信息的代码。该计算机程序产品还可包括引导数据处理器81从支付处理网络70接收提供对应于动态支付信息的实例的真实支付信息的请求的代码;以及引导数据处理器81向支付处理网络70提供所请求的真实支付信息的代码。
[0050]计算机程序产品的又一些实施例可适于将支付信息直接传送给商家、以及传送给支付处理网络。例如,又一个计算机程序产品可包括:引导数据处理器81接收来自计算机的安全元件的提供动态支付信息的请求的代码,该请求包括伪账号、安全元件的标识符、和商家标识符;引导数据处理器81应用与所接收到的请求有关的至少一个验证测试的代码;以及引导数据处理器81,如果通过了该至少一个验证测试,向由所接收到的商家标识符所指示的商家发送动态支付信息的代码。在另一个实施例中,这种计算机程序产品可包括:引导数据处理器81接收来自计算机的安全元件的提供动态支付信息的请求的代码,该请求包括伪账号、安全元件的标识符、和商家标识符;引导数据处理器81应用与所接收到的请求有关的至少一个验证测试的代码;引导数据处理器81,如果通过了该至少一个验证测试,向该安全元件40发送动态支付信息的代码;以及引导数据处理器81,如果通过了至少一个验证测试,向支付处理网络70发送动态支付信息和商家身份指示。
[0051]可通过计算机程序产品的如下指令来实现上述验证测试。可通过如下指令来实现该第一验证测试,该指令引导数据处理器81将所接收到的安全元件40的标识符与有效标识符的数据库比对来寻找匹配,如果找到匹配则通过第一验证测试,否则不通过。可通过如下指令来实现该第二验证测试,该指令引导数据处理器81将所接收到的安全元件40的标识符与涉及先前欺诈活动的安全元件的标识符数据库比对,如果找到匹配则不通过第二验证测试,否则通过。第二验证测试的指令还可包括以下指令,该指令引导数据处理器81来将安全元件40发送的请求的IP地址与已经与欺诈活动关联的IP地址的数据库相比对,如果在这个数据库中找到匹配则第二验证测试没有通过。可由第一指令和第二指令来实现第二验证测试,该第一指令引导数据处理器81来从数据库或发行用户专属支付信息(如,设备5)的银行中获得用户专属支付信息(如,便携式消费设备5)的所接收到账号的真实支付信息;且该第二指令引导数据处理器81将接收到的有效期、卡验证值、或账单邮编中的至少一个与所接收到的账号的真实支付信息比对寻找匹配,且如果找到匹配则通过第三验证测试,否则不通过。
[0052]可通过第一指令、第二指令、和第三指令来实现第四验证测试,其中第一指令引导数据处理器81访问数据库来确定已经在所接收到的真实账号上设置的安全元件的数量的界限;该第二指令引导数据处理器81访问数据库来确定已经关联所接收到的真实账号的安全元件的当前数量;且第三指令引导数据处理器将当前数量与界限比较来确定安全元件的附加关联是否将超出该界限。如果将超过该界限,则没有通过第四验证测试,否则通过。如果真实账号没有资格与安全元件一起使用(如,便携式消费设备5没有登记在该程序中),则将该账号的界限设置为零,或如果该账号没有在数据库中则将认为该界限是零。
[0053]通过第一指令、第二指令、和第三指令可实现第五验证测试,其中第一指令引导数据处理器81访问数据库来获得所接收到的伪账号的记录;第二指令引导数据处理器81从该记录中获得之前已经与所接收到的伪账号相关联的所有安全元件40的标识符;且第三指令引导数据处理器81将在请求中接收到的安全元件的标识符与所访问的记录中的每一个标识符比对,寻找匹配。如果找到匹配,则通过该第五验证测试,否则没有通过。
[0054]验证实体80还可包括引导数据处理器81从支付处理网络70接收已经尝试过使用伪PAN的交易的消息的代码、以及引导数据处理器81向已经向其分配伪PAN的用户或是已经向其分配伪PAN的用户专属支付信息的发卡银行发送警告通知的代码。警告通知可指示替换用户的支付应用,从而提供新的加密密钥,以及任选的安全元件的新标识符。
[0055]计算机程序产品的各实施例的上述代码可利用常规的I/O指令、存储器访问指令、CPU算术指令、CPU逻辑指令以及CPU控制指令来实现。鉴于本公开,所述代码可以由本领域的普通技术人员在没有过度实验的情况下实现。
[0056]应当理解,如上所述的本发明的各个实施例可采用以模块化或集成方式使用计算机软件的控制逻辑的形式实现。基于本文中所提供的公开和教义,本领域普通技术人员将知道并理解使用硬件以及硬件和软件的组合来实现本发明的贯彻实施例的其它方式和/或方法。
[0057]本专利申请中所描述的任何软件组件或功能均可使用任何合适的计算机语言来实现为由处理器执行的软件代码,此类合适的计算机语言例如为使用例如传统或面向对象技术的C、C++、C#、Java、C++或Perl之类。软件代码可作为一系列指令或命令被存储在诸如随机存取存储器(RAM)、只读存储器(ROM)、磁介质(诸如硬驱动器或软盘)、或者光学介质(诸如CD-ROM)之类的计算机可读介质上。任何这种计算机可读介质可驻留在单个计算装置上或其内部,并且可存在于系统或网络内的不同计算装置上或其内部。
[0058]以上描述是说明性而非限制性的。基于对本公开的回顾,本发明的许多变化及其实施例对本领域技术人员将变得显而易见。因此,本发明的范围不应该参照以上描述来确定,相反应该参照所附权利要求及其全部范围或等效方案来确定。
[0059]来自任何实施例的一个或多个特征可以与任何其它实施例的一个或多个特征相结合而不背离本发明的范围。
[0060]对“一”、“一个”或“该”的引用旨在表示“一个或多个”,除非有具体地相反指示。
[0061]以上提及的所有专利、专利申请、出版物、以及描述通用地通过引用整体纳入于此。没有任何内容被承认为是现有技术。
【权利要求】
1.一种方法,包括: 在计算机的安全元件处接收用户专属支付信息的真实账号和以下的至少一个:有效期、卡验证值、或账单邮编; 获得所述安全元件的标识符; 将所接收到的真实账号、所接收到的有效期、卡验证值、或账单邮编中的至少一个、以及所获得的所述安全元件的标识符,发送至验证实体; 作为响应,从所述验证实体接收伪账号,所接收到的伪账号与用户专属支付信息的真实账号不同;以及 将所接收到的伪账号存储在所述安全元件的存储器内。
2.如权利要求1所述的方法,其特征在于,还包括: 从计算机的所述安全元件,向验证实体发送所述伪账号的表示;以及作为响应,从验证实体接收动态支付信息,所接收到的动态支付信息具有与所述伪账号不同的账号。
3.如权利要求2所述的方法,其特征在于,发送所述伪账号的表示包括基于所述伪账号生成作为密码的表不。
4.如权利要求2所述的方法,其特征在于,发送所述伪账号的表示包括基于所述伪账号和所述安全元件的所述标识符生成作为密码的表示。
5.一种实现在有形非瞬态计算机可读介质上由计算机的安全元件所执行的计算机程序产品,所述产品包括: 引导数据处理器接收用户专属支付信息的真实账号和以下的至少一个:有效期、卡验证值、或账单邮编的代码; 引导数据处理器获得所述安全元件的标识符的代码; 引导数据处理器将所接收到的真实账号、所接收到的有效期、卡验证值、或账单邮编中的至少一个、以及所获得的所述安全元件的标识符,发送至验证实体的代码; 引导数据处理器,作为响应,从所述验证实体接收伪账号的代码,所接收到的伪账号与用户专属支付信息的真实账号不同;以及 引导数据处理器将所接收到的伪账号存储在安全元件的存储器内的代码。
6.如权利要求5所述的计算机程序产品,进一步包括: 引导数据处理器从计算机的所述安全元件向验证实体发送所述伪账号的表示的代码;以及 引导数据处理器,作为响应,从验证实体接收动态支付信息的代码,所接收到的动态支付信息具有与所述伪账号不同的账号。
7.如权利要求6所述的计算机程序产品,其特征在于,引导所述数据处理器发送伪账号的表示的所述代码包括引导所述数据处理器基于所述伪账号和所述安全元件的标识符生成作为密码的表示。
8.一种计算机中的安全元件,所述安全元件包括: 有形的非瞬态计算机可读存储器; 电耦合至所述计算机可读存储器的数据处理器;以及 实现在所述计算机可读介质上的如权利要求5所述的计算机程序产品。
9.一种方法,包括: 在验证实体服务器处,接收来自计算机的安全元件的提供伪账号的请求,该请求包括安全元件的标识符、以及用户专属支付信息的实例的真实账号、和以下中至少一个:有效期、卡验证值、或账户邮编; 应用与所接收到的请求有关的至少一个验证测试; 如果通过了所述至少一个验证测试,则向所述安全元件发送伪账号;且 将所述伪账号与至少所接收到的真实账号的指示一起存储。
10.如权利要求9所述的方法,其特征在于,还包括: 在验证实体服务器处,接收来自计算机的安全元件的提供动态支付信息的请求,该请求包括伪账号和安全元件的标识符; 应用与所接收到的请求有关的至少一个验证测试;以及 如果通过了所述至少一个验证测试,则向所述安全元件发送动态支付信息。
11.如权利要求9所述的方法,其特征在于,还包括: 在验证实体服务器处,接收来自计算机的安全元件的提供动态支付信息的请求,该请求包括伪账号、安全元件的标识符、以及商家的标识符; 应用与所接收到的请求有关的至少一个验证测试;以及 如果通过了所述至少一个验证测试,则向由所述接收到的商家标识符所指示的商家发送动态支付信息。
12.如权利要求9所述的方法,其特征在于,还包括: 在验证实体服务器处,接收来自计算机的安全元件的提供动态支付信息的请求,该请求包括伪账号、所述安全元件的标识符、以及商家的标识符; 应用与所接收到的请求有关的至少一个验证测试; 如果通过了所述至少一个验证测试,则向所述安全元件发送动态支付信息;以及如果通过了所述至少一个验证测试,则向支付处理网络发送所述动态支付信息和商家身份的指示。
13.如权利要求9所述的方法,其特征在于,还包括: 在所述验证实体服务器处,接收来自支付处理网络的提供对应于动态支付信息的示例的真实支付信息的请求;以及 向所述支付处理网络提供所请求的真实支付信息。
14.一种验证实体,包括: 数据处理器; 耦合至所述处理器的联网设施; 耦合至所述处理器的计算机可读介质;和 实现在所述计算机可读介质上的计算机程序产品,所述计算机程序产品包括: 引导数据处理器接收来自计算机的安全元件的提供伪账号的请求的代码,所述请求包括安全元件的标识符、以及用户专属支付信息的实例的真实账号、和以下中至少一个:有效期、卡验证值、或账单邮编; 引导数据处理器应用与所接收到的对于伪账号的请求有关的至少一个验证测试的代码;引导数据处理器,如果通过了所述至少一个验证测试,向所述安全元件发送伪账号的代码;以及 引导所述数据处理器将所述伪账号与至少所接收到的真实账号的指示一起存储的代码。
15.如权利要求14所述的验证实体,其特征在于,所述计算机程序产品还包括: 引导所述数据处理器接收来自计算机的安全元件的提供动态支付信息的请求的代码,所述请求包括伪账号和所述安全元件的标识符; 引导数据处理器应用与所接收到的对动态支付信息的请求有关的至少一个验证测试的代码;以及 引导所述数据处理器,如果通过了所述至少一个验证测试,向所述安全元件发送动态支付信息的代码。
16.如权利要求14所述的验证实体,其特征在于,引导数据处理器应用与所接收到的对伪账号的请求有关的至少一个验证测试的代码包括如下指令中的至少一个: 引导所述数据处理器将所接收的所述安全元件的标识符与有效标识符数据库比对以寻找匹配的指令;以及 引导所述数据处理器将所接收的所述安全元件的标识符与涉及先前欺诈活动的安全元件的标识符数据库比对的指令。
17.如权利要求14所述的验证实体,其特征在于,引导数据处理器应用与所接收到的对伪账号的请求有关的至少一个验证测试的代码包括: 引导所述数据处理器从数据库或发行所述用户专属支付信息的银行获得所接收到的账号的真实支付信息的指令;以及 引导所述数据处理器将所接收到的有效期、卡验证值、或账单邮编中的至少一个与所接收到的账号的真实支付信息进行比对以寻找匹配的指令。
18.如权利要求14所述的验证实体,其特征在于,引导数据处理器应用与所接收到的对伪账号的请求有关的至少一个验证测试的代码包括: 引导所述数据处理器访问数据库来确定已经被设置在所接收到的真实账号上的安全元件数量的界限的指令; 引导所述数据处理器访问数据库来确定已经关联到所接收到的真实账号的安全元件的当前数量的指令;和 引导所述数据处理器将当前数量与界限比较来确定安全元件的附加关联是否会超出所述界限的指令。
19.如权利要求15所述的验证实体,其特征在于,引导数据处理器应用与所接收到的对伪账号的请求有关的至少一个验证测试的代码包括如下指令中的至少一个: 引导所述数据处理器将所接收到的所述安全元件的标识符与有效标识符数据库比对以寻找匹配的指令; 引导所述数据处理器将所接收到的所述安全元件的标识符与涉及先前欺诈活动的安全元件的标识符数据库比对的指令;以及 引导所述数据处理器访问数据库来获得所接收到的伪账号的记录、来从所述记录中获得之前已经与所接收到的伪账号相关联的所有安全元件的标识符、以及将在所述请求中接收到的安全元件的所述标识符与 所访问的记录中的每一个标识符进行比对以寻找匹配。
【文档编号】G06Q20/24GK103503010SQ201280021548
【公开日】2014年1月8日 申请日期:2012年3月2日 优先权日:2011年3月4日
【发明者】A·哈玛德 申请人:维萨国际服务协会

最新回复(0)