《用于认证电子交易的系统和方法.pdf》由会员分享,可在线阅读,更多相关《用于认证电子交易的系统和方法.pdf(16页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102792630 A (43)申请公布日 2012.11.21 C N 1 0 2 7 9 2 6 3 0 A *CN102792630A* (21)申请号 201080058159.9 (22)申请日 2010.10.27 12/607,005 2009.10.27 US H04L 9/32(2006.01) (71)申请人谷歌公司 地址美国加利福尼亚州 (72)发明人维卡斯古普塔 卢克巴耶斯 艾伦米尔斯 米克海尔舍雷吉内 赫曼特马达夫巴努 (74)专利代理机构中原信达知识产权代理有限 责任公司 11219 代理人周亚荣 安翔 (54) 发明名称 用于认证电子交易。
2、的系统和方法 (57) 摘要 提供了用于对在客户端计算机和交易服务器 之间的请求进行认证的系统和方法。在应用服务 器处从客户端接收应用请求,包括发起请求的用 户的身份。应用服务器基于以下来构建签名密钥: (i)发出请求的用户的身份、(ii)基于时间的盐 值、(iii)在应用和交易服务器之间共享的秘密、 以及可选地(iv)应用的分发者或开发者的标识 符。将签名密钥嵌入应用的无标记版本中,从而为 应用加标记。有标记应用能够用签名密钥对请求 进行签名,并且将签名的请求与用户的身份和应 用的分发者或开发者的标识符一起提交给交易服 务器。 (30)优先权数据 (85)PCT申请进入国家阶段日 2012.。
3、06.20 (86)PCT申请的申请数据 PCT/US2010/054316 2010.10.27 (87)PCT申请的公布数据 WO2011/056664 EN 2011.05.12 (51)Int.Cl. 权利要求书3页 说明书10页 附图2页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 3 页 说明书 10 页 附图 2 页 1/3页 2 1.一种用于对在客户端计算机和交易服务器之间的电子请求进行认证的方法,所述方 法包括: (A)在适当编程的应用服务器处从所述客户端计算机接收对应用的电子应用请求,其 中所述电子请求包括发起所述电子请求的用户的身份; (B)使。
4、用所述适当编程的应用服务器并且响应于所述接收(A),作为第一多个参数的第 一函数来构建签名密钥,其中所述多个参数包括:(i)发起对所述应用的所述电子请求的 用户的身份、(ii)第一基于时间的盐值、以及(iii)在所述适当编程的应用服务器和所述交 易服务器之间共享的秘密;以及 (C)将所述签名密钥嵌入所述应用的无标记版本,从而形成所述应用的有标记版本,其 中所述应用的所述有标记版本被配置成:(i)用所述签名密钥对请求进行签名,从而形成 签名的请求,以及(ii)将所述签名的请求与所述用户的所述身份和识别所述应用的分发者 或开发者的标识符一起提交给所述交易服务器。 2.根据权利要求1所述的方法,其中。
5、所述第一多个参数进一步包括识别所述应用的所 述分发者或开发者的标识符。 3.根据权利要求1所述的方法,其中所述嵌入(C)由所述适当编程的应用服务器执行, 以及所述方法进一步包括: (D)将所述应用的所述有标记版本电子地递送给所述客户端计算机。 4.根据权利要求1所述的方法,其中所述嵌入(C)由所述客户端计算机执行,以及所述 方法进一步包括:在所述嵌入(C)之前: 将所述签名密钥电子地递送给所述客户端计算机。 5.根据权利要求1所述的方法,其中所述第一函数是哈希函数,以及其中所述签名密 钥是以下的哈希:(i)发起对所述应用的所述电子请求的所述用户的所述身份、(ii)识别 所述应用的所述分发者或开。
6、发者的所述标识符、(iii)所述第一基于时间的盐值、以及(iv) 在所述适当编程的应用服务器和所述交易服务器之间共享的所述秘密。 6.根据权利要求1所述的方法,其中所述第一函数是哈希函数,以及其中所述签名密 钥是以下的哈希:(i)发起对所述应用的所述电子请求的所述用户的所述身份、(ii)所述 第一基于时间的盐值、以及(iii)在所述适当编程的应用服务器和所述交易服务器之间共 享的所述秘密。 7.根据权利要求1所述的方法,其中所述第一基于时间的盐值是(i)与所述接收(A) 相关联的协调世界时(UTC)以及(ii)预先确定的时间增量的整数除。 8.根据权利要求1所述的方法,其中所述第一基于时间的盐。
7、值是(i)与所述构建(B) 相关联的协调世界时(UTC)以及(ii)预先确定的时间增量的整数除。 9.根据权利要求1所述的方法,其中所述签名的交易请求是使用在所述交易服务器上 维护的与所述用户的所述身份相关联的账户来购买游戏中的升级的游戏中的交易。 10.根据权利要求9所述的方法,其中所述游戏中的升级是级别解锁、对虚拟装备的购 买、对虚拟特殊武器的购买、对秘籍的购买或对虚拟货币的购买。 11.根据权利要求1所述的方法,其中所述应用的所述有标记版本是社交网络应用、金 融服务应用、会计应用或税务筹划应用。 12.根据权利要求1所述的方法,所述方法进一步包括: 权 利 要 求 书CN 1027926。
8、30 A 2/3页 3 使用所述客户端计算机来执行所述有标记应用,其中所述客户端计算机被适当编程来 执行所述有标记应用; 使用所述执行的有标记应用来基于所述签名密钥,发出包括签名的请求;以及 将所述签名的请求通信给所述交易服务器。 13.根据权利要求12所述的方法,其中所述签名的请求包括所述用户的所述身份和识 别所述应用的所述分发者或开发者的所述标识符。 14.根据权利要求12所述的方法,所述方法进一步包括: (i)在所述交易服务器处接收所述签名的请求; (ii)形成重新构建的签名密钥;其中所述交易服务器被适当编程来执行所述形成,以 及其中所述形成包括将第二函数应用到第二多个参数,其中所述第二。
9、多个参数包括:(i) 发出所述请求的所述用户的所述身份、(ii)第二基于时间的盐值、以及(iii)在所述适当编 程的应用服务器和所述交易服务器之间共享的所述秘密; (iii)从所述重新构建的签名密钥形成签名;以及 (iv)评估所述签名的请求,其中所述评估: (a)当从所述重新构建的签名密钥形成的所述签名与所述交易请求中的所述签名匹配 时,获得已验证状态,或 (b)当从所述重新构建的签名密钥形成的所述签名与所述交易请求中的所述签名不匹 配时,获得已失败状态。 15.根据权利要求14所述的方法,其中所述第二多个参数进一步包括识别所述应用的 所述分发者或开发者的标识符。 16.根据权利要求14所述的。
10、方法,其中所述第二函数是哈希函数,以及其中所述重新 构建的签名密钥是以下的哈希:(i)发起对所述应用的所述电子请求的所述用户的所述身 份、(ii)识别所述应用的所述分发者或开发者的所述标识符、(iii)所述第二基于时间的盐 值、以及(iv)在所述适当编程的应用服务器和所述交易服务器之间共享的所述秘密。 17.根据权利要求14所述的方法,其中所述第二函数是哈希函数,以及其中所述重新 构建的签名密钥是以下的哈希:(i)发起对所述应用的所述电子请求的所述用户的所述身 份、(ii)所述第二基于时间的盐值、以及(iii)在所述适当编程的应用服务器和所述交易服 务器之间共享的所述秘密。 18.根据权利要求。
11、14所述的方法,其中所述第二基于时间的盐值是(i)与所述接收 (H)、形成(I)或验证(J)相关联的协调世界时(UTC)以及(ii)所述预先确定的时间增量的 整数除。 19.根据权利要求14所述的方法,其中当获得所述已失败状态时,所述方法进一步包 括:重复所述形成(i)、形成(ii)和评估(iii),其中所述第二基于时间的盐值被递增或递 减。 20.根据权利要求14所述的方法,其中当获得所述已验证状态时,所述方法进一步包 括:使用所述交易服务器为所述请求服务,其中所述交易服务器被适当编程来当获得所述 已验证状态时为所述请求服务。 21.根据权利要求1所述的方法,其中所述适当编程的应用服务器是除。
12、所述交易服务 器外的服务器。 权 利 要 求 书CN 102792630 A 3/3页 4 22.根据权利要求1所述的方法,其中所述适当编程的应用服务器和所述交易服务器 是同一服务器。 23.根据权利要求1所述的方法,其中所述应用是FLASH应用。 24.一种用于与计算机系统协同使用的计算机程序产品,所述计算机程序产品包括计 算机可读存储介质和嵌入在其中的计算机程序机制,所述计算机程序机制用于对在客户端 计算机和交易服务器之间的电子请求进行认证,所述计算机程序机制包括用于以下的计算 机可执行指令: (A)在适当编程的应用服务器处从所述客户端计算机接收对应用的电子应用请求,其 中所述电子请求包括。
13、发起所述电子请求的用户的身份; (B)使用所述适当编程的应用服务器并且响应于所述接收(A),作为多个参数的函数来 构建签名密钥,其中所述多个参数包括:(i)发起对所述应用的所述电子请求的用户的身 份、(ii)第一基于时间的盐值、以及(iii)在所述适当编程的应用服务器和所述交易服务器 之间共享的秘密;以及 (C1)将所述签名密钥嵌入所述应用的无标记版本,从而形成所述应用的有标记版本, 其中所述应用的所述有标记版本被配置成:(i)用所述签名密钥对请求进行签名,从而形 成签名的请求,以及(ii)将所述签名的请求与所述用户的所述身份和识别所述应用的分发 者或开发者的标识符一起提交给所述交易服务器,或。
14、 (C2)将所述签名密钥递送给所述客户端计算机。 25.根据权利要求24所述的计算机程序产品,其中所述多个参数进一步包括识别所述 应用的所述分发者或开发者的标识符。 26.一种系统,包括: (A)用于在适当编程的应用服务器处从客户端计算机接收对应用的电子应用请求的装 置,其中所述电子请求包括发起所述电子请求的用户的身份; (B)用于使用所述适当编程的应用服务器并且响应于所述接收(A),作为多个参数的函 数来构建签名密钥的装置,其中所述多个参数包括:(i)发起对所述应用的所述电子请求 的用户的身份、(ii)第一基于时间的盐值、以及(iii)在所述适当编程的应用服务器和所述 交易服务器之间共享的秘。
15、密;以及 (C1)用于将所述签名密钥嵌入所述应用的无标记版本,从而形成所述应用的有标记版 本的装置,其中所述应用的所述有标记版本被配置成:(i)用所述签名密钥对请求进行签 名,从而形成签名的请求,以及(ii)将所述签名的请求与所述用户的所述身份和识别所述 应用的分发者或开发者的标识符一起提交给所述交易服务器,或 (C2)用于将所述签名密钥递送给所述客户端计算机的装置。 27.根据权利要求26所述的系统,其中所述多个参数进一步包括识别所述应用的所述 分发者或开发者的标识符。 权 利 要 求 书CN 102792630 A 1/10页 5 用于认证电子交易的系统和方法 技术领域 0001 本申请一。
16、般地涉及用于对源于可能不安全的应用的电子交易进行认证的系统和 方法。 背景技术 0002 运行于客户端计算机上、然而需要安全的实时交易服务的潜在不安全的应用的数 量持续增长。这样的应用的一个非限制性示例是基于FLASH的游戏应用,其需要补充虚拟 货币,以购买游戏中的升级,例如级别解锁、虚拟装备、虚拟特殊武器和直接针对玩家的秘 籍。在本领域中需要使这样的实时交易安全,以保护好用户和应用开发者以防被欺骗获取 账户信息、身份盗窃以及其他形式的欺骗。 0003 用于使这样的交易安全的一个已知方法是使用共享秘密的概念(秘密密钥密码 术)。秘密密钥密码术涉及对单个密钥的使用。给定消息和密钥,加密产生难以理。
17、解的数据, 其需要密钥来进行解密。参见,例如新泽西州,上部马鞍河的普伦蒂斯-霍尔公司出版的、 考夫曼的网络安全的章节2.4,其特此以引用的方式并入。然而,共享秘密方法在应用中的 一个是不安全的情况下不起作用。例如,许多受欢迎的编程应用由FLASH播放器执行并且 是不安全的。典型地,当使用共享秘密算法时,存在调用本地web服务器的远程web服务器。 秘密在远程web服务器和本地web服务器上是安全的,并且不在这两个服务器之间进行通 信。当应用以FLASH或下载到客户端计算机并且例如在客户端的浏览器内运行的其他程序 编写时,这失败。在FLASH的情况下,当用户请求FLASH应用时,包含由FLASH。
18、播放器解释 的字节码的SWF文件被下载到客户端计算机并且由在客户端的浏览器内的FLASH播放器运 行(解释)。可以在客户端计算机处对SWF文件中的字节码进行检查来确定秘密。因此,不 能将秘密包含在FLASH SWF文件内。 0004 给定上面的背景,本领域中需要用于对源于可能不安全的应用的电子交易进行认 证的改进的系统和方法。 发明内容 0005 本公开解决本领域中的不足。一个方面提供了用于对在客户端计算机和交易服务 器之间的电子请求进行认证的方法。在该方法中,在适当编程的应用服务器处从客户端计 算机接收对应用的电子应用请求。该电子请求包括发起该电子请求的用户的身份。使用 适当编程的应用服务器。
19、并且响应于接收,作为多个参数的第一函数来构建签名密钥,所述 多个参数包括:(i)发起对应用的电子请求的用户的身份、(ii)第一基于时间的盐值、以及 (iii)在适当编程的应用服务器和交易服务器之间共享的秘密。在一些实施例中,所述多个 参数进一步包括识别应用的分发者或开发者的标识符。 0006 在一些实施例中,应用服务器将签名密钥嵌入应用的无标记(unbranded)版本,从 而形成应用的有标记(branded)版本。在这样的实施例中,将有标记应用递送给客户端计 算机。在一些实施例中,应用服务器不用签名密钥为应用加标记,而是将签名密钥传递给客 说 明 书CN 102792630 A 2/10页 。
20、6 户端浏览器。在这样的实施例中,客户端浏览器自身用签名密钥为应用加标记。不管如何 构建应用的有标记版本,应用的有标记版本被配置成:(i)用签名密钥对请求进行签名,从 而形成签名的请求(例如,包括基于签名密钥生成的签名的请求),以及(ii)将签名的请求, 可选地与用户的身份和识别应用的分发者或开发者的标识符一起,提交给交易服务器。 0007 在一些实施例中,第一函数是哈希函数,以及签名密钥是以下的哈希:(i)发起对 应用的电子请求的用户的身份、(ii)识别应用的分发者或开发者的标识符、(iii)第一基于 时间的盐值、以及(iv)在适当编程的应用服务器和交易服务器之间共享的秘密。 0008 在一。
21、些实施例中,第一函数是哈希函数,以及签名密钥是以下的哈希:(i)发起对 应用的电子请求的用户的身份、(ii)第一基于时间的盐值、以及(iii)在适当编程的应用服 务器和交易服务器之间共享的秘密。 0009 在一些实施例中,第一基于时间的盐值是(i)与接收(A)相关联的协调世界时 (UTC)以及(ii)预先确定的时间增量的整数除。在一些实施例中,第一基于时间的盐值是 (i)与构建(B)相关联的协调世界时(UTC)以及(ii)预先确定的时间增量的整数除。 0010 在一些实施例中,签名的交易请求是使用在交易服务器上维护的与用户的身份相 关联的账户来购买游戏中的升级的游戏中的交易。在一些实施例中,游。
22、戏中的升级是级别 解锁、对虚拟装备的购买、对虚拟特殊武器的购买、对秘籍的购买或对虚拟货币的购买。 0011 在一些实施例中,应用是社交网络应用、金融服务应用、会计应用或税务筹划应 用。 0012 在一些实施例中,该方法进一步包括使用客户端计算机来执行有标记应用,其中 客户端计算机被适当编程为执行该有标记应用。然后,使用已执行的有标记应用来发出用 签名密钥签名的请求,以及该请求被通信到交易服务器。在一些实施例中,签名的请求包括 用户的身份以及可选地,识别应用的分发者或开发者的标识符。 0013 在一些实施例中,该方法进一步包括在交易服务器处接收签名的请求,在这之后, 交易服务器通过以下来查明签名。
23、的请求的有效性:(i)使用其秘密密钥的版本来生成重新 构建的签名密钥,然后(ii)使用重新构建的秘密密钥来形成重新构建的签名。为了清晰起 见的目的,交易服务器所生成的签名密钥在此被称为“重新构建的签名密钥”。为了清晰起 见的目的,使用交易服务器从重新构建的签名密钥形成的重新构建的签名在此被称为重新 构建的签名。如果重新构建的签名与请求中的签名匹配,则交易服务器“信任”该请求并且 将为其服务。交易服务器使用应用服务器使用来创建签名密钥的完全相同的函数来生成重 新构建的签名密钥。为清晰起见的目的,交易服务器使用来从秘密密钥生成重新构建的签 名密钥的函数在此被称为“第二函数”,而应用服务器使用来从秘。
24、密密钥生成签名密钥的函 数在此被称为“第一函数”。然而,应当理解的是,第一函数和第二函数不必是相互相同的, 尽管其运行于不同的服务器上。带着这样的思想,并且取决于应用服务器所运行的第一函 数的性质,交易服务器通过将第二函数应用到第二多个参数来形成重新构建的签名密钥。 在一些实施例中,第二多个参数包括:(i)发出请求的用户的身份、(ii)第二基于时间的盐 值、以及(iii)在适当编程的应用服务器和交易服务器之间共享的秘密。在一些实施例中, 第二多个参数进一步包括识别应用的分发者或开发者的标识符。交易服务器然后从重新构 建的签名密钥形成重新构建的签名。交易服务器然后通过将重新构建的签名与请求中的签。
25、 名进行比较来对交易请求进行验证。 说 明 书CN 102792630 A 3/10页 7 0014 在一些实施例中,第二函数是哈希函数,以及重新构建的签名密钥是以下的哈希: (i)发起对应用的电子请求的用户的身份、(ii)可选地,识别应用的分发者或开发者的标识 符、(iii)第二基于时间的盐值、以及(iv)在适当编程的应用服务器和交易服务器之间共享 的秘密。在一些实施例中,第二基于时间的盐值是(i)与在交易服务器处接收请求的步骤 或交易服务器采取的验证步骤相关联的协调世界时(UTC)(例如,这些步骤发生的时间)以 及(ii)预先确定的时间增量的整数除。 0015 在一些实施例中,前述验证确定。
26、重新构建的签名与请求中的签名不匹配。在一些 这样的情况下,该方法进一步包括重新尝试来形成重新构建的签名密钥,因此,新的重新构 建的签名,其中第二基于时间的盐值被递增或递减。 0016 如上所述,当验证是成功的时,交易服务器为请求服务。在一些实施例中,适当编 程的应用服务器是除交易服务器外的服务器。在一些实施例中,适当编程的应用服务器和 交易服务器是同一服务器。在一些实施例中,应用是FLASH应用。如在此所使用的,词语“服 务器”被宽泛地用来指被认为足够安全来存储秘密密钥并且能够通过任何手段(例如,无线 通信、因特网、数据电缆等)与另一个计算机电子地通信的任何计算机。 0017 另一个方面提供了。
27、用于与计算机系统协同使用的计算机程序产品,该计算机程序 产品包括计算机可读存储介质和嵌入在其中的计算机程序机制。计算机程序机制用于对在 客户端计算机和交易服务器之间的电子请求进行认证。计算机程序机制包括用于从客户端 计算机接收对应用的电子请求的计算机可执行指令。该电子请求包括发起该电子请求的用 户的身份。该计算机程序机制进一步包括以下的计算机可执行指令:响应于接收,作为多个 参数的第一函数来构建签名密钥,所述多个参数包括:(i)发起对应用的电子请求的用户 的身份、(ii)第一基于时间的盐值、以及(i ii)在计算机程序机制和交易服务器之间共享的 秘密。在一些实施例中,所述多个参数进一步包括识别。
28、应用的分发者或开发者的标识符。 0018 在一些实施例中,计算机程序机制进一步包括用于以下的计算机可执行指令:将 签名密钥嵌入应用的无标记版本,从而形成应用的有标记版本,其中应用的有标记版本被 配置成:(i)用签名密钥对请求进行签名,从而形成签名的请求,以及(ii)将签名的请求与 用户的身份和识别应用的分发者或开发者的标识符一起提交给交易服务器。在这样的实施 例中,该计算机程序机制进一步包括用于将应用的有标记版本电子地递送给客户端计算机 的计算机可执行指令。 0019 在一些替选实施例中,该计算机程序机制进一步包括用于以下的计算机可执行指 令:将签名密钥电子地递送给客户端计算机,该客户端计算机。
29、进而为应用的无标记版本加 标记,从而形成应用的有标记版本。在这些替选实施例中,应用的有标记版本被配置成: (i)用签名密钥对请求进行签名,从而形成签名的请求,以及(ii)将签名的请求与用户的身 份和可选地,识别应用的分发者或开发者的标识符一起提交给交易服务器。 0020 另一个方面提供了系统,该系统包括用于从客户端计算机接收对应用的电子请求 的装置,其中该电子请求包括发起该电子请求的用户的身份。该系统进一步包括用于以下 的装置:响应于接收,作为多个参数的函数来构建签名密钥,所述多个参数包括:(i)发起 对应用的电子请求的用户的身份、(ii)基于时间的盐值、以及(iii)在该系统和交易服务器 之。
30、间共享的秘密。在一些实施例中,所述多个参数进一步包括识别应用的分发者或开发者 的标识符。 说 明 书CN 102792630 A 4/10页 8 0021 在一些实施例中,该系统进一步包括用于以下的装置:将签名密钥嵌入应用的无 标记版本,从而形成应用的有标记版本,其中应用的有标记版本被配置成:(i)用签名密钥 对请求进行签名,从而形成签名的请求,以及(ii)将签名的请求与用户的身份和可选地,识 别应用的分发者或开发者的标识符一起提交给交易服务器。在这样的实施例中,该系统进 一步包括用于将应用的有标记版本电子地递送给客户端计算机的装置。 0022 在一些替选实施例中,该系统进一步包括用于以下的装。
31、置:将签名密钥递送给客 户端计算机,该客户端计算机使用该签名密钥来为应用的无标记版本加标记,从而形成应 用的有标记版本。应用的有标记版本被配置成:(i)用签名密钥对请求进行签名,从而形成 签名的请求,以及(ii)将签名的请求与用户的身份和可选地,识别应用的分发者或开发者 的标识符一起提交给交易服务器。 附图说明 0023 图1图示与本公开的方面一致的系统。 0024 图2图示与本公开的方面一致的方法。 0025 遍及附图的数个视图,相同的参考数字指代对应的部分。 具体实施方式 0026 本公开详述了相对于用于对由潜在不安全的应用所通信的电子交易进行认证的 已知系统和方法的有新颖性的改进。本公开。
32、使用临时签名密钥。签名密钥在潜在不安全的 应用,诸如运行于客户端计算机上的FLASH应用,和安全的交易服务器之间传递。由于签名 密钥是临时的,欺骗使用密钥的机会窗口是微不足道的。换句话说,假如某人能够构建签名 密钥,他们能够用该签名密钥来做的事情将是非常有限的。 0027 在一些实施例中,从多个参数生成签名密钥,所述多个参数包括(i)在应用开发者 和交易服务器之间共享的实际共享秘密、(ii)与不安全的应用的用户相关联的应用用户标 识符(例如,对运行于客户端上的FLASH游戏的实例特有,换句话说,请求游戏的实例的用 户为FLASH游戏的该实例被授予特有应用用户标识符,该实例在游戏会话结束时终止)。
33、、以 及(iii)诸如当创建签名密钥时,基于基准时间的盐值(例如,UTC除以某个时段,比方说一 天,的整数值)。在一些实施例中,多个参数进一步包括给予不安全应用的开发者(由该开发 者创建)的应用开发者标识符。当给定的应用开发者使用多个独立的货币平台或交易配置 时,该另外的参数是有用的。因此,为了阻止开发者提供的仅仅一个这样的货币平台或配置 的用户发出该应用开发者提供的其他货币平台或配置的未经授权的请求,该应用开发者能 够有益地提供识别特定货币平台或配置的应用开发者标识符。因此,可能的是,应用开发者 具有任何数量的应用开发者标识符(例如,一个或多个应用开发者标识符、两个或更多个应 用开发者标识符。
34、、五个或更多个应用开发者标识符等),每一个对应于应用开发者在一个或 多个应用中使用的不同货币平台或配置。 0028 在一些实施例中,可以使用另外的组分(参数)来形成签名密钥,并且所有这样的 实施例均被包括在本公开内。 0029 上面识别的组分被拿到一起并且被哈希,来形成潜在不安全的应用使用来为与交 易服务器的通信进行签名的特有临时密钥。由于上面指定的应用开发者标识符、时段标识 说 明 书CN 102792630 A 5/10页 9 符、可选的应用用户标识符密钥以及秘密密钥需求,该特有密钥(哈希值)仅仅对指定用户 以及指定应用开发者在指定时段(例如,特定24小时时期)期间有效。截获签名密钥或使用。
35、 签名密钥来产生的签名的任何人将无法使用其来访问其他用户的数据或其他商人的数据。 此外,由于特有签名密钥基于仅仅应用开发者和交易服务器具有的共享秘密,甚至仅仅应 用开发者和交易服务器能够在第一实例中生成特有哈希密钥。潜在不安全应用用签名密钥 对各交易请求进行签名。这意味着,签名密钥被用作用于使用本领域技术人员所知道的方 法来形成被包括在交易中的签名的基础。当交易服务器接收签名的请求时,执行检查以确 保该请求用从指定标准生成的密钥进行了签名。所做的是,交易服务器试图对用来(在应用 服务器上)在第一实例中构建签名密钥的相同参数进行哈希。这导致重新构建的签名密钥 的形成。然后,交易服务器使用重新构建。
36、的签名密钥来形成重新构建的签名。然后,将重新 构建的签名与请求中的签名进行比较。然而,在一些实施例中,为了考虑在创建签名密钥的 时间(因此,当创建签名密钥时,基于时间的盐值)和交易服务器接收签名的交易请求的时 间之间的时间差,如果必要的话交易服务器将试图用以下三个不同的时间来形成重新构建 的签名密钥:(i)目前时间、(ii)到未来的一个时间增量(例如,下一8小时时间间隔)、以及 (iii)到过去的一个时间增量(例如,上一8小时时间间隔)。当然,在进一步时间间隔探究是 适当的实施例中,可以尝试更多时间间隔。在上面的示例中,完成基于目前时间的哈希(重 新构建的签名密钥的形成),因为这是用来使用的最。
37、可能正确的值,完成使用在前时间增量 的哈希(重新构建的签名密钥的形成)以允许用户在先前时间增量开始使用潜在不安全应 用的实例(例如,如果某人在比如说11PM开始潜在不安全应用的实例,不期望的是,一小时 后,他们被踢出应用),以及完成使用未来时间增量的哈希(重新构建的签名密钥的形成)以 考虑在运行潜在不安全应用的计算机和交易服务器之间存在时钟偏移的可能性。 0030 现在,已公开了用于从潜在不安全应用进行安全请求的有新颖性的过程方法的概 述,并且已提供了其优势,将结合图1描述与本申请一致的系统的更详细描述。图1图示与 本公开一致的环境的拓扑结构。 0031 在该拓扑结构中,有应用服务器180、客。
38、户端计算机100和交易计算机200。当然, 其他拓扑结构是可能的,例如,应用服务器180实际上可以包括数个服务器。此外,典型地, 存在数百、数千、成千上万的客户端计算机100或更多。图1中所示的示例性拓扑结构仅仅 用来以对本领域技术人员容易理解的方式最大程度描述本发明的特征。 0032 应用服务器180典型地将具有一个或多个处理单元(CPU)102、网络或其他通信接 口110、存储器114、由一个或多个控制器118进行访问的一个或多个磁盘存储设备120、用 于使前述组件互连的一个或多个通信总线112、以及用于对前述组件供电的电源124。使用 诸如缓存的已知计算技术,可以与非易失性存储器120无。
39、缝共享存储器114中的数据。存 储器114和/或存储器120可以包括关于中央处理单元102远程定位的海量存储。换句话 说,存储在存储器114和/或存储器120中的一些数据实际上可以被托管在以下计算机上: 对应用服务器180是外部的,但是能够由应用服务器180使用网络接口110通过因特网、内 联网或其他形式的网络或电子电缆(如图1中的元件126所图示)电子地访问。 0033 存储器114优选地存储: 0034 操作系统130,其包括用于处理各种基本系统服务和用于执行依赖硬件的任务的 程序; 说 明 书CN 102792630 A 6/10页 10 0035 应用服务模块132,其用于经由一个或多。
40、个通信网络,诸如因特网、其他广域网、 局域网(例如,局部无线网络能够将客户端计算机100连接到应用服务器180)、城域网等, 将应用服务器180连接到诸如客户端计算机100(图1)的各种客户端计算机,以及可能地 连接到其他服务器或计算机(诸如交易服务器200); 0036 无标记应用134,用于当用户请求时,分发给客户端计算机100;以及 0037 与本公开一致的签名密钥生成模块140,其用于帮助为无标记应用134加标记。 0038 应用服务器180经由因特网/网络126连接到一个或多个客户端设备100。图1 图示到仅仅一个这样的客户端设备100的连接。可能的是,客户端设备是个人计算机(例 如。
41、,台式或膝上型计算机)或任何形式的移动计算设备(例如,I-phone、黑莓等)。在典型实 施例中,客户端设备100包括: 0039 一个或多个处理单元(CPU)2; 0040 网络或其他通信接口10; 0041 存储器14; 0042 可选地,由一个或多个可选控制器18访问的一个或多个磁盘存储设备20; 0043 用户接口4,用户接口4包括显示器6和键盘或键区8; 0044 一个或多个通信总线12,其用于使前述组件互连;以及 0045 电源24,其用于对前述组件供电,该电源可以是例如电池。 0046 在一些实施例中,使用诸如缓存的已知计算技术,可以与可选非易失性存储器20 无缝共享存储器14中。
42、的数据。在一些实施例中,客户端设备100没有磁盘存储设备。例如, 在一些实施例中,客户端设备100是便携式手持式计算设备,以及网络接口10通过无线手 段与因特网/网络126通信。 0047 存储器14优选地存储: 0048 操作系统30,其包括用于处理各种基本系统服务和用于执行依赖硬件的任务的 程序; 0049 网络通信模块32,其用于将客户端设备100连接到诸如应用服务器180和交易 服务器200的其他计算机; 0050 可选的web浏览器34,诸如微软Internet Explorer版本6.0或更后的、Firefox 2.x、Firefox 3.x、AOL 9、Opera 9.5或更后的。
43、、Safari 3.x、Chrome 2.0或更高的,其用于 运行有标记应用(在一些实施例中,可选的web浏览器34包括诸如FLASH播放器的模块); 以及 0051 与本公开一致的有标记应用36,其能够使用签名密钥138来发出签名的请求。 0052 交易服务器200典型地将具有一个或多个处理单元(CPU)202、网络或其他通信接 口210、存储器214、由一个或多个控制器218进行访问的一个或多个磁盘存储设备220、用 于使前述组件互连的一个或多个通信总线212、以及用于对前述组件供电的电源224。使用 诸如缓存的已知计算技术,可以与非易失性存储器220无缝共享存储器214中的数据。存 储器。
44、214和/或存储器220可以包括关于中央处理单元202远程定位的海量存储。换句话 说,存储在存储器214和/或存储器220中的一些数据实际上可以被托管在以下计算机上: 对交易服务器200是外部的,但是能够由交易服务器200使用网络接口210通过因特网、内 联网或其他形式的网络或电子电缆(如图1中的元件126所图示)电子地访问。 说 明 书CN 102792630 A 10 7/10页 11 0053 存储器214优选地存储: 0054 操作系统230,其包括用于处理各种基本系统服务和用于执行依赖硬件的任务的 程序; 0055 网络通信模块232,其用于经由一个或多个通信网络,诸如因特网、其他广。
45、域网、 局域网(例如,局部无线网络能够将客户端计算机100连接到应用服务器180)、城域网等, 将交易服务器200连接到诸如客户端计算机100(图1)的各种客户端计算机,以及可能地 连接到其他服务器或计算机(诸如应用服务器180); 0056 交易模块234,其用于进行与运行于各个客户端100上的有标记应用36的交易; 以及 0057 签名密钥验证模块236,其用于形成重新构建的签名密钥、从重新构建的签名密 钥形成重新构建的签名、以及将重新构建的签名与交易模块234所服务的签名的交易请求 中的签名进行比较;以及 0058 与应用服务器180共享的秘密148。 0059 参考图2,描述了与本公开。
46、的一个实施例一致的示例性方法。该方法详述了与本公 开一致的应用服务器180、客户端计算机100和交易服务器200采用来为交易交互服务的步 骤。 0060 步骤202。在步骤202中,客户端100请求应用。例如,希望玩在线游戏的用户可 以使用其web浏览器34来选择游戏。将该请求发送给应用服务器180,应用服务器180负 责以无缝方式对应用进行授权。在一些实施例中,应用可能已以无标记形式存在于客户端 100上,以及在这样的实施例中,所需要的是,应用服务器180为应用加标记,使得应用能够 发出交易请求。在一些实施例中,应用尚未存在于客户端100上,以及在这样的实施例中, 所需要的是,应用服务器18。
47、0向客户端提供(i)以有标记形式的应用或(ii)以无标记形式 的应用以及签名密钥。 0061 在典型实施例中,将请求与用户的身份(例如,应用用户标识符密钥144)一起发 送。在一些实施例中,用户具有与操作应用服务器180的应用开发者的账户,以及应用用户 标识符密钥144是与该账户相关联的特有标识符。 0062 步骤204。在步骤204中,签名密钥生成模块140生成临时签名密钥。在一些实施 例中,需要至少四个不同的参数来完成该任务。在一些实施例中,需要至少三个不同的参数 来完成该任务。 0063 可以由签名密钥生成模块140使用来生成临时签名密钥的可选参数是应用开发 者标识符142。在一些实施例。
48、中,标识符142唯一识别待被派发给发出请求的客户端100的 应用的开发者。在一些实施例中,开发者标识符142由控制交易服务器200的实体进行分 配。在一些实施例中,开发者标识符142由开发者创建并且向交易服务器200注册。在一 些实施例中,给定的应用开发者使用多个独立货币平台或交易配置。在这样的实施例中,为 了防止开发者提供的仅仅一个这样的货币平台或配置的用户发出该应用开发者提供的其 他货币平台或配置的未经授权的请求,该应用开发者能够有益地提供识别特定货币平台或 配置的应用开发者标识符144。因此,可能的是,应用开发者具有任何数量的应用开发者标 识符144(例如,一个或多个应用开发者标识符、两。
49、个或更多个应用开发者标识符、五个或更 多个应用开发者标识符等),每一个对应于应用开发者在一个或多个应用中使用的不同货 说 明 书CN 102792630 A 11 8/10页 12 币平台或配置。因此,在一些实施例中,可选的第一参数指定应用开发者已与步骤202的交 易请求关联的货币平台或配置。 0064 由签名密钥生成模块140使用来生成签名密钥的第一所需参数是用户标识符密 钥(应用用户标识符密钥)144。在一些实施例中,如在上面结合在上面的步骤202论述的, 将应用用户标识符密钥144与源于客户端100的步骤202的请求一起提供。在一些实施例 中,应用用户标识符密钥144与用户与应用开发者具有的账户相关联,以及交易服务器214 的交易模块234为该账户服务。在一些实施例中,必要的是,在步骤204中生成新的应用用 户标识符密钥,因为请求与这样的标识符不相关联。这可以是例如用户是所请求的应用的 新用户,并且与应用开发者没有账户的情况。在一些实施例中,应用用户标识符密钥由诸如 FAC。