论文导读::本文采用J2EE多层体系结构设计网络教学平台。容器为Java组件提供基本功能的底层平台及接口通信等。
论文关键词:虚拟物品,交换平台,J2EE,接口
1引言
近年来,随着全球网络,特别是网络游戏的迅猛发展,虚拟物品交易日渐成为业界关注的焦点。伴随虚拟物品的发展,围绕虚拟物品的各种商业模式也逐渐涌现出来,第三方交换平台开始专门致力于提供这些虚拟物品交易服务[1],开发一个规范、高效、安全可靠的虚拟物品交换平台显得尤为迫切。本文从实际应用出发,利用J2EE架构来设计开发,旨在通过与网络游戏运营商及银行之间的合作,搭建这样一个交易平台,从而实现网络虚拟物品到真实货币之间通过互联网完成置换,最终实现商业流通。同时,整个交易通过互联网完成,也充分实现了交易的及时性。
2系统平台总体设计
2.1系统功能需求
该虚拟物品交换平台实质是一个基于商业供应链的电子商务平台[2],为构建一个完整、快捷、安全的个人网络虚拟物品交易服务接口,本系统分前台交易系统与后台管理系统两部分。鉴于开发成本及推广实施等相关问题,因此初期平台系统的运作设计主要是通过寻找相关的合作商户,与之达成合作协议及完成相应平台对接的前提下,借助合作商户良好、相对完善平台界面,确保顺利完成整个交易过程。从这方面来说,该系统也体现出了一定的可移植性和良好的业务拓展空间。
2.1.1系统功能需求
系统目前设计主要由以下几个部分组成:
1)交易场所――寻找合适的合作商户,借助商户平台界面为广大用户展示相应商品以及所能提供的服务。
2)用户交易――保证用户顺利实现相关的销售、购买流程,并提供相关的销售及购买记录的取消、查询等功能。
3)系统管理――为系统提供后台管理功能。
2.1.2功能角色
参与系统互动的角色主要包括普通用户(既是买家,又是卖家)、系统管理员。
1)买家、卖家角色
两者首先都必须是相应合作商户平台的注册用户,可以通过登陆合作商户平台后访问该虚拟交易系统。买家在在虚拟交易系统中所购买的商品须通过其登陆商户平台相应账户进行支付龙源期刊。
2)系统管理员角色
系统管理员通过系统管理界面管理买卖双方的信息,包括对买卖双方各种信息的审核、不同参与者间订单的匹配,实现买卖双方资源的统一调度,以及各种意外及异常情况的处理等。
2.2平台各参与方关系说明
该虚拟物品交换平台系统主要目的是实现平台系统中不同角色参与者之间订单的匹配,实现买卖双方间资源的统一调度,再加上统一的意外及异常情况的处理手段,确保各个参与者的订单都可以得到有效正确的处理。

图1 平台各方关系示意图
根据目前该平台功能实现的规划,系统主要以话费充值卡作为平台的交易商品,各个参与方分别命名为商户和代理商,商户为话费充值卡的卖方,即需要将话费充值卡出售,为此平台为其提供充值卡支付网关服务,即商户通过充值卡支付网关由其用户自助以充值卡完成支付,若支付完成则表示充值卡出售成功,用户可以通过出售充值卡到商户平台获取相应的服务或者产品;代理商是平台中话费的买方,通过收受现金等相关方式购买话费,为此平台提供了代理商话费充值接口,由代理商提交需要充值的手机号码和话费金额,由平台为其完成话费充值。平台各方关系如图1所示。
3接口功能模块设计
该交换平台采用J2EE构架[3],以下仅以代理商话费接口中的订单取消接口为例来阐述整个设计过程。
3.1代理商话费接口
代理商话费接口主要实现话费代理商通过该接口向平台实现话费充值业务,其主要工作流程为:话费代理商通过接口把手机号码和需要充值的金额提交到平台接口,平台对代理商提交的号码进行充值,充值完成后把充值的结果返回给代理商系统。
代理商话费接口采用服务器与服务器之间直接通过HTTP应答对接的模式实现,整个协议的交互过程中用户并不参与,HTTP之间的发起通信是双向的,即既有代理商系统主动发起的HTTP请求,也有平台主动发起的HTTP通信请求。
代理商话费接口设计主要包括订单提交接口、订单取消接口、订单查询接口及订单状态通知接口四个部分。
3.1.1订单取消接口处理流程
整个订单取消的处理流程如图2所示,但需要说明的是,在以下几种情况下的订单不允许取消,取消接口返回取消失败。
a)订单正在执行充值操作;
b)订单已经完成部分金额的充值;
c)订单充值已经成功;
d)订单充值失败,由系统自动取消,不能够通过代理商接口取消;

图2 订单取消处理流程
3.1.2订单取消接口参数说明
1)请求包数据格式
请求包采用GET或者POST方式发送订单提交接口的服务URL地址[4],以下为一个以GET方式提交HTTP请求样式(所用变量说明见表1):
http://{ServiceURL}?Version=1.0&Action=OrderCancelReq&AgentID=XXXXXX&OrderID=XXXXXXXXXXXXXX&Sign=XXXXXXXX
{ServiceURL}为平台提供的订单取消接口URL地址。
加密字符串Sign的生成办法如下:
Sign=MD5(Version=1.0&Action=OrderCancelReq&AgentID=XXXXXX&OrderID=XXXXXXXXXXXXXX||PRIVATEKEY)
其中PRIVATEKEY为系统管理员分配给代理商的签名密钥。
2)返回包数据格式
请求返回包采用XML格式返回,在HTTP包中包含返回数据信息,以下为一个完整的请求返回包的格式。
<RetPackage>
<Version>1.0</Version>
<Action>OrderCancelResp</Action>
<AgentID>XXXXXXXX</AgentID>
<OrderID>XXXXXXXXXXXXXX</OrderID>
<RetCode>XX</RetCode>
<RetMsg>XX</RetMsg>
<Sign>XXXXXXXXXXXXXXX</Sign>
</RetPackage>
加密字符串Sign的生成办法如下:
Sign=MD5(Version=1.0&Action=OrderCancelResp&AgentID=XXXXXXXXXXX&OrderID=XXXXXXXX&RetCode=XXX&RetMsg=XXXXXXXXXXXXXX||PRIVATEKEY)
表1 取消接口请求/返回包所用的变量说明

3.2商户支付接口
商户支付接口主要实现合作商户系统通过接口提交需要支付的订单,系统对商户提交的订单的有效性进行检验,引导卡密用户完成订单支付,对用户提交的卡密信息进行验证,并返回支付结果至商户平台和前台用户。
商户支付接口在商户指定了一套在商户服务器和平台之间通过HTTP通信方式交互数据的标准数据报格式,平台之间以用户浏览器为媒介通过以HTTP方式实现数据的传递,以输出HTML[5]页面方式确定用户。为了保证传递过程中的数据不被其他非法方式篡改,接口指定了一套协议双方约定的数据签名认证方法以保证数据正确性。商户支付主要涉及支付和查询两大方面。
3.3系统加密模块
随着网络技术的飞速发展,面对互联网这一面向大众的开放系统,网络安全问题越发凸显重要。数据保密变换或密码技术,是对计算机信息进行保护的最实用、可靠的方法,是网络安全技术中的核心技术。
基于加密机制的保密性、数据完整性、身份认证及不可否认性等功能,在本系统中,对于系统敏感数据的加密存放,根据数据性质的不同,采用了可逆加密和不可逆加密等方式。而对于可逆加密的加密方法是采用DES[6],对与不可逆加密采用的方式是MD5。
3.1.1加密机制的应用场合:
在本系统设计过程中接口,可逆加密的应用场合主要是:系统中预备充值卡密码的加密存放。而不可逆加密的应用场合主要有以下几种:
a)用户登录密码的加密存放;
b)代理商帐户金额的签名防篡改;
c)商户帐户金额的签名防篡改;
3.1.2实现方法
系统设计过程中对加密数据的运算采用了随机加扰码结合系统密钥的算法,在数据库中保存随机加扰码和密文。加密过程的组成示意图如图3所示。

图3加密过程的组成示意图
值得注意的是,此系统针对一些关键数据如用户口令在数据库中存放时都采用了不可逆加密存放,同时为了避免一些对弱口令的猜测,在加密过程还加入了一个随机加扰的过程。
1/2 1 2 下一页 尾页 |