专利名称:支付处理方法和服务器的制作方法
技术领域:
本发明涉及网络支付领域,具体涉及一种支付处理方法和服务器。
背景技术:
对诸如网络游戏之类的网络应用而言,当用户想要使用网络应用中的一些功能(如网络应用的高级功能)之前,需要先向该网络应用支付费用。同时,随着网络应用的用户数量的不断增加,为了提高网络应用对于用户的吸引力,网络应用通常会通过建立例如用户之间的好友关系等手段来加强用户之间的关联。相应地,在网络支付方面,网络应用一般也会为用户提供代为支付的功能,通过该功能,当一个用户,例如用户A,需要向某一网络应用支付费用时,可以指定其他的用户,例如用户B,由用户B代替用户A向该网络应用支付费用。目前,为了实现代为支付的功能,通常的做法是,由用户A(需要充值的用户)在网络应用提供的充值接口中提交代充请求,网络应用会为用户A生成特定的充值URL。用户A将该URL发送给指定的用户B,用户B点击该URL后,将呈现出网络应用提供的充值接口,从而由用户B通过该充值接口完成为用户A的充值操作。在这种方式中,需要网络应用生成专门用于代充的URL,然后由想充值的用户A通过其他渠道将该URL发送给代充的用户B。由此可见,在这一过程中,只需要通过URL即可完成充值,这样,一些恶意网站,如钓鱼网站,往往会构造类似的URL,引导用户B前往该钓鱼网站进行支付,从而使得用户的金钱遭受损失。由此可见,现有的通过构造URL来引导用户代为支付的方法,存在着被钓鱼网站利用的安全隐患。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的网络支付方法和服务器。依据本发明的一个方面,提供了一种支付处理方法,包括接收第一客户端的用户发送的包含支付信息的第一支付请求,根据支付信息生成对应的支付验证码,相关联地存储支付信息以及对应的支付验证码,并将支付验证码发送给第一客户端,该支付信息包括在第一客户端处的用户信息以及待支付产品的信息;接收第二客户端的用户发送的、包含支付验证码的第二支付请求,根据存储的与支付验证码对应的支付信息引导第二客户端完成支付。可选地,其中支付信息还包括发送第一支付请求的时间。可选地,根据支付信息生成支付验证码的步骤包括通过随机密钥对支付信息进行加密,得到支付验证码。可选地,还包括步骤在接收到第二客户端的用户发送的第二支付请求之后,验证是否已经存储有支付验证码,若验证结果为是,获取与支付验证码对应的支付信息。
可选地,还包括步骤在生成支付验证码超过预设时间后,删除存储的支付信息以及对应的支付验证码。根据本发明的另一方面,提供了一种支付处理服务器,包括第一网络接口、验证码生成器、存储器和第二网络接口,其中,第一网络接口,适于接收第一客户端的用户发送的包含支付信息的第一支付请求,并且将验证码生成器生成的支付验证码发送给第一客户端;验证码生成器,适于根据支付信息生成对应的支付验证码;存储器,适于相关联地存储支付信息以及对应的支付验证码,其中,该支付信息包括在第一客户端处的用户信息以及待支付产品的信息;第二网络接口,适于接收第二客户端的用户发送的、包含支付验证码的第二支付请求,根据存储器存储的与支付验证码对应的支付信息引导第二客户端完成支付。可选地,其中支付信息还包括发送第一支付请求的时间。可选地,验证码生成器通过随机密钥对支付信息进行加密,得到支付验证码。可选地,该服务器进一步包括验证码检查器,适于在第二网络接口接收到第二客户端的用户发送的第二支付请求之后,验证存储器中是否已经存储有支付验证码,若验证结果为是,获取与支付验证码对应的支付信息。可选地,存储器进一步适于在生成支付验证码超过预设时间后,删除存储的支付信息以及对应的支付验证码。根据本发明的支付处理方法和服务器,根据第一客户端的用户发送的第一支付请求中所包含的支付信息生成对应的支付验证码,并将该支付信息和支付验证码关联存储,在后续过程中,接收第二客户端发送的包含该支付验证码的第二支付请求,根据与第二支付请求中的支付验证码关联存储的支付信息来引导第二客户端进行支付。由此解决了目前采用URL进行支付时容易被钓鱼网站利用,从而导致支付失败的问题,实现了能够通过支付验证码进行支付,并通过支付信息和支付验证码之间的对应关系,对支付验证码进行验证,以避免支付失败的有益效果。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式
。
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中图1示出了根据本发明一个实施例的支付处理系统的结构示意图;图2示出了根据本发明一个实施例的支付处理方法的流程图;图3示出了在本发明一个实施例中网络游戏的官方网站上发送第一支付请求时的充值界面的示意图;以及图4示出了在本发明一个实施例中网络游戏的官方网站上发送第二支付请求时的充值界面的示意图。
具体实施例方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。本发明实施例提供了一种支付处理服务器。图1示出了包含该支付处理服务器的支付处理系统的结构示意图。如图1所示,该支付处理服务器100包括第一网络接口 110、验证码生成器120、存储器150和第二网络接口 130。第一网络接口 110接收第一客户端210的用户发送的包含支付信息的第一支付请求,将该支付信息发送给验证码生成器120,由验证码生成器120根据第一网络接口 110接收到的支付信息生成对应的支付验证码,然后,第一网络接口 110将验证码生成器120生成的支付验证码发送给该第一客户端210。其中,该第一支付请求中包含的支付信息包括在第一客户端处的用户信息以及待支付产品的信息。验证码生成器120根据该第一支付请求中的支付信息生成支付验证码时可通过如下方式实现通过md5算法对支付信息进行加密,得到支付验证码。或者,通过随机密钥对支付信息进行加密,得到支付验证码。其中,通过随机密钥对支付信息进行加密时,由于密钥是随机的,因此,破解起来难度更大,所以安全性更好。因此,在本实施例中,主要介绍一下通过随机密钥对支付信息进行加密的方式。为了获取随机密钥,可以在上述的支付信息中进一步包括发送第一支付请求的时间,这样,验证码生成器120根据第一支付请求的发送时间来确定对第一支付请求中的支付信息加密时的加密密钥。由于每次发送第一支付请求的时间都不同,所以每次对第一支付请求进行加密时的加密密钥也不同,从而提高了安全性。另外,还可以在第一客户端发送第一支付请求时产生一个随机数,根据该随机数确定加密密钥,以便增加破解难度。当验证码生成器120生成支付验证码之后,存储器150将该支付信息以及生成的对应的支付验证码关联存储。另外,为了进一步增加破解难度,存储器150进一步用于在生成支付验证码超过预设时间后,删除存储的支付信息以及对应的支付验证码。第二网络接口 130用于接收第二客户端220的用户发送的、包含支付验证码的第二支付请求,根据存储器150存储的与该支付验证码对应的支付信息引导第二客户端220完成支付。通常情况下,第二客户端的用户与第一客户端的用户之间为朋友关系或合作伙伴关系等。第二客户端的用户可通过各种通信方式(例如QQ、短消息、电子邮件等)从第一客户端处获取到验证码生成器生成的支付验证码。可选地,为了进一步对第二支付请求中的支付验证码进行验证,该支付处理服务器还可以进一步包括验证码检查器140,适于在第二网络接口 130接收到第二客户端220的用户发送的第二支付请求之后,验证存储器150中是否已经存储有该支付验证码,若验证结果为是,获取与该支付验证码对应的支付信息。另外,可选地,也可以在接收到来自第二客户端的支付验证码之后,检查该支付验证码生成的时间是否超过了预定时间,如果超过了预定时间(例如30分钟),则认为支付验证码失效,并且不允许第二客户端进行的支付。
关于上述的第一网络接口 110、验证码生成器120、存储器150和第二网络接口 130以及验证码检查器110的具体工作过程将在本发明提供的支付处理方法的实施例中参照附图给予进一步地详细描述。通过本发明实施例提供的支付处理服务器,第二客户端通过待支付产品的官方网站提供的支付验证码来代替第一客户端完成支付过程,由于该支付验证码只能在官方网站上使用,因此,避免了被钓鱼网站欺骗的风险。而且,通过预先存储支付验证码与对应的支付信息,并进一步根据存储的支付验证码与对应的支付信息来引导第二客户端完成支付,可以进一步验证第二客户端输入的支付验证码的合法性,从而提高支付安全性。另外,本发明实施例中,通过随机密钥对支付信息进行加密,以及设置支付验证码的存储时限,并将超出存储时限的支付验证码删除或设为无效等方式,进一步提高了支付验证码的破解难度,保障了支付安全。本发明实施例还提供了一种支付处理系统,如图1所示,该支付处理系统包括支付处理服务器100、第一客户端210和第二客户端220。其中,第一客户端210和第二客户端220可通过各种有线/无线网络链接与支付处理服务器100进行通信。支付处理服务器100包括上述的第一网络接口 110、验证码生成器120、存储器150和第二网络接口 130以及验证码检查器140。关于支付处理服务器100以及第一客户端210和第二客户端220的具体工作过程将在本发明提供的支付处理方法的实施例中结合附图给予进一步地详细描述。本发明实施例还提供了一种支付处理方法,该支付处理方法可应用于上述的支付处理服务器及支付处理系统。图2示出了该支付处理方法的流程图。如图2所示,该方法始于步骤S210,在步骤S210中,接收第一客户端的用户发送的包含支付信息的第一支付请求。其中,该第一支付请求中包含的支付信息包括在第一客户端处的用户信息以及待支付产品的信息。其中,步骤S210的执行主体可以是图1中的第一网络接口 110。第一客户端的用户在发送第一支付请求时,可以通过待支付产品的官方网站上提供的指定充值接口进行发送。在本实施例中,以待支付产品为网络游戏为例进行说明。当第一客户端的用户想要为网络游戏充值时,可以登录该网络游戏的官方网站。图3示出了该网络游戏的官方网站上的充值界面的示意图。从图3中可以看出,在该充值界面的左上角,为用户提供了三个充值接口 第一个充值接口为“给自己充值”,第二个充值接口为“给别人充值”,第三个充值接口为“找人代充”。用户通过第三个充值接口 “找人代充”即可完成上述的第一支付请求的发送。具体地,当用户点击“找人代充”的按钮之后,在充值界面的右侧会显示相应的选择框,供用户输入支付信息。支付信息包括待支付产品的信息以及第一客户端处的用户信息。其中,待支付产品的信息主要用于标识待支付的产品,例如,在图3所示的界面中,待支付产品的信息包括游戏名称和游戏区服,用户可以通过下拉框来选择游戏的名称(如龙将),然后通过多选框选择相关的游戏区服。第一客户端处的用户信息主要用于标识要充值的用户,例如,在图3所示的界面中,第一客户端处的用户信息主要是指游戏角色(如隗华)。当用户选择完上述的待支付产品信息和用户信息之后,点击“生成代充标识码”(图3中的“代充标识码”就是指上述的“支付验证码”)的按钮,就可以向服务器发送上述的第一支付请求,该第一支付请求中包含图3中输入的支付信息。接收到上述的第一支付请求之后,在步骤S220中,根据该第一支付请求中的支付信息生成对应的支付验证码,相关联地存储该支付信息以及对应的支付验证码,并将该支付验证码发送给第一客户端。具体地,在步骤S220中,根据该第一支付请求中的支付信息生成支付验证码时可通过如下方式实现通过md5算法对支付信息进行加密,得到支付验证码。或者,通过随机密钥对支付信息进行加密,得到支付验证码。其中,通过随机密钥对支付信息进行加密时,由于密钥是随机的,因此,破解起来难度更大,所以安全性更好。因此,在本实施例中,主要介绍一下通过随机密钥对支付信息进行加密的方式。为了获取随机密钥,可以在上述的支付信息中进一步包括发送第一支付请求的时间,这样,服务器根据第一支付请求的发送时间来确定对第一支付请求中的支付信息加密时的加密密钥。由于每次发送第一支付请求的时间都不同,所以每次对第一支付请求进行加密时的加密密钥也不同,从而提高了安全性。另外,还可以在第一客户端发送第一支付请求时产生一个随机数,根据该随机数确定加密密钥,以便增加破解难度。图3中“生成代充标识码”的按钮右侧显示的一串字母和数字的组合就是上述的 支付验证码。该支付验证码是通过随机密钥对用户输入的支付信息(即游戏名称、游戏区服和游戏角色)进行加密得到的,具体地,可采用如下代码来产生支付验证码
Static fvnciion add($<ikcy,Sskcyt$qfd.. Siiname, $gname, $sname)
{
$iisf OhjCdFi^uier::fmd(('gamesvc1 ''f-yiisiGamesf^SOi); foreach($list[ 'data,] as $game)(
$ga me—array [] 二 $game[ 'simpname iJ;
}
权利要求
1.一种支付处理方法,包括接收第一客户端的用户发送的包含支付信息的第一支付请求,根据所述支付信息生成对应的支付验证码,相关联地存储所述支付信息以及对应的支付验证码,并将所述支付验证码发送给所述第一客户端,该支付信息包括在第一客户端处的用户信息以及待支付产品的信息;接收第二客户端的用户发送的、包含所述支付验证码的第二支付请求,根据存储的与所述支付验证码对应的支付信息引导所述第二客户端完成支付。
2.如权利要求1所述的支付处理方法,其中所述支付信息还包括发送所述第一支付请求的时间。
3.如权利要求1或者2所述的支付处理方法,根据所述支付信息生成支付验证码的步骤包括通过随机密钥对所述支付信息进行加密,得到所述支付验证码。
4.如权利要求1-3中任一个所述的方法,还包括步骤在接收到所述第二客户端的用户发送的第二支付请求之后,验证是否已经存储有所述支付验证码,若验证结果为是,获取与所述支付验证码对应的支付信息。
5.如权利要求4所述的方法,还包括步骤在生成所述支付验证码超过预设时间后,删除存储的所述支付信息以及对应的支付验证码。
6.一种支付处理服务器,包括第一网络接口、验证码生成器、存储器和第二网络接口,其中,第一网络接口,适于接收第一客户端的用户发送的包含支付信息的第一支付请求,并且将所述验证码生成器生成的支付验证码发送给所述第一客户端;验证码生成器,适于根据所述支付信息生成对应的支付验证码;存储器,适于相关联地存储所述支付信息以及对应的支付验证码,其中,该支付信息包括在第一客户端处的用户信息以及待支付产品的信息;第二网络接口,适于接收第二客户端的用户发送的、包含所述支付验证码的第二支付请求,根据所述存储器存储的与所述支付验证码对应的支付信息引导所述第二客户端完成支付。
7.如权利要求6所述的服务器,其中所述支付信息还包括发送所述第一支付请求的时间。
8.如权利要求6或者7所述的服务器,所述验证码生成器通过随机密钥对所述支付信息进行加密,得到所述支付验证码。
9.如权利要求6-8中任一个所述的服务器,进一步包括验证码检查器,适于在所述第二网络接口接收到所述第二客户端的用户发送的第二支付请求之后,验证所述存储器中是否已经存储有所述支付验证码,若验证结果为是,获取与所述支付验证码对应的支付信息。
10.如权利要求9所述的服务器,所述存储器进一步适于在生成所述支付验证码超过预设时间后,删除存储的所述支付信息以及对应的支付验证码。
全文摘要
本发明公开了一种网络支付方法和服务器,该方法包括接收第一客户端的用户发送的包含支付信息的第一支付请求,根据支付信息生成对应的支付验证码,相关联地存储支付信息以及对应的支付验证码,并将支付验证码发送给第一客户端,该支付信息包括在第一客户端处的用户信息以及待支付产品的信息;接收第二客户端的用户发送的、包含支付验证码的第二支付请求,根据存储的与支付验证码对应的支付信息引导第二客户端完成支付。由此解决了目前采用URL进行支付时容易被钓鱼网站利用,从而导致支付失败的问题,实现了能够通过支付验证码进行支付,并通过支付信息和支付验证码之间的对应关系,对支付验证码进行验证,以避免支付失败的有益效果。
文档编号H04L29/06GK103020826SQ201210518398
公开日2013年4月3日 申请日期2012年12月5日 优先权日2012年12月5日
发明者赵宏威 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司