移动网络环境下SET支付协议模拟实验平台开发与应用
2017-09-20王信敏
◆王信敏
(中国石油大学(华东)经济管理学院 山东 266580)
移动网络环境下SET支付协议模拟实验平台开发与应用
◆王信敏
(中国石油大学(华东)经济管理学院 山东 266580)
本文基于Shih-Mills移动学习模型对移动网络环境下改进的SET支付协议模拟实验平台进行了需求分析与功能设计,对模拟实验平台的网络配置环境和业务流程进行了详细设计,最后对模拟实验平台进行了开发实现和教学应用。应用效果显示,情境化的模拟实验教学方式能够适合现阶段高校学生学习方式的转变并较好地提升学生的学习兴趣,实验成效较为明显;智能终端APP能够提供便捷的理论学习和师生交流渠道,学生可以随时随地获取学习资源并进行学习研讨,大大提升了实验效率;模拟实验平台配置简单、成本低廉、通用性强,打破了传统专业信息安全实验室的限制,具有较好的可推广性。
Shih-Mills移动学习模型;移动支付;SET协议;模拟实验平台
0 引言
SET协议[1]于1997年推出,专门为信用卡支付安全而设计,该协议保障了开放网络上进行在线支付的安全性,解决了用户、商家、银行之间数据的安全传输,具有保密性、完整性、不可抵赖性等多种优势,因此迅速成为了信用卡在线支付的国际标准。随着智能设备和无线网络的不断普及,移动支付方式开始成为重要的支付手段之一,如Paypal、支付宝、财付通等,其易用性、实用性、便捷性对传统的支付方式带来了较大冲击[2]。Paypal作为全球最大的移动支付公司,业务已覆盖全球203个国家和地区,超过2.5亿注册用户。移动支付在我国同样发展迅速,根据艾瑞咨询公司统计数据,2016年我国第三方移动支付交易规模达到了38万亿元,同比增长215.4%,其中支付宝占比51.8%,财付通占比38.3%。现有的移动支付除了易用性之外,其担保交易模式[3]、用户体验[4]等方面均具有较大优势,但其身份认证、消息的完整性和不可否认性的保障方面与SET协议相比尚存在不足,这也是导致近年来二维码欺骗行为经常发生的主要原因。为适应移动支付的发展需求以及弥补现有移动支付的不足,将传统SET支付协议向移动支付方式改进升级成为较好的选择,近年来逐渐成为研究的热点之一,例如张若岩[5]对SET协议的移动支付系统进行了设计和开发;万仲保、王晴[6]对WAP环境下基于SET协议的移动支付的安全性进行了分析和改进,加入了预付款机制、信用等级制度和纠纷仲裁机制;Ahamad等人[7]提出了移动支付环境下改进的SET协议,该协议中的数字签名使用了ECDSA消息恢复机制。
改进的SET支付协议能够较好应用于移动支付领域,同时该协议也是高校信息安全课程的重要内容。由于移动支付类实验往往需要在复杂的专业实验环境下完成[7、8],对于改进的SET协议而言,其理论性较强,包含较多的信息安全算法,涉及持卡人、商家、CA、银行等多方参与,在通用实验环境下对SET协议的实际执行过程进行实验的难度较大。对于我国高校的信息管理、电子商务等专业,目前具备专业的信息安全实验环境的并不多,而SET协议又是一项较为重要的实验项目,因此信息安全模拟实验环境建设具有较好的现实意义[9、10]。当前我国部分高校已具有了信息安全实验平台,唐海涛等人[11]构建了网络安全实验平台,该平台包含较为复杂的硬件设备,如主控中心平台、安全设备、组控设备、无线组控设备、应用服务器和管理服务器等,实现了基本的密码学算法实验、主机安全实验、网络攻防实验、病毒攻防实验和容灾备份实验功能;朱辉等人[12]基于虚拟化技术开发了一套软硬结合的信息安全综合实验平台,实现了密码学算法、防火墙、入侵检测和漏洞扫描实验功能;底晓强等人[13]基于云计算和虚拟化技术开发了网络攻防实验教学平台,实现了Internet协议分析、无线网络攻击、病毒攻防等实验功能;刘坤[14]开发了基于云服务器的信息安全虚拟实验平台,功能包括漏洞定位实验、主机加固实验、部署及搭建IDS和网络设备安全配置实验;任丙忠等人[15]构建的基于GNS3和VMware/VirtualBox的信息安全平台实现了较多的实验项目,如访问控制、防火墙、入侵检测、VPN、证书服务器的配置、密码算法等实验;黄建忠等人[16]对网络安全虚拟仿真实验教学体系进行了设计,并构建了“四类型六环节”的虚拟仿真实验教学云平台。上述实验平台包含了较多的信息安全实验项目,但由于SET协议的复杂性,各平台均未涉及SET协议的实验功能,而对于移动支付环境下的SET协议实验更是未能实现。
本文首先基于Shih-Mills移动学习模型对模拟实验平台进行需求分析,在此基础上对移动支付环境下改进的SET协议模拟实验平台进行功能设计、网络环境配置和业务流程设计等,进而完成对SET协议模拟实验平台的开发和应用。该系统不仅能够在通用环境下应用,而且可以提供高度情境化的学习环境,以角色扮演的方式实现SET协议操作流程的模拟实验。该模拟系统以移动学习模型为设计理念,除了对协议操作流程进行情境化模拟外,还提供理论学习、实验考核、师生交流等功能,能够较好地提升教学效率。
1 SET协议模拟实验平台需求分析
SET协议模拟实验平台根据Shih-Mills移动学习模型[17]理念进行构建,移动学习模型如图1所示。
图1 Shih-Mills移动学习模型
该模型提倡学习互动、模拟仿真、数字化教学等高度情境化的学习方式,这种方式能够较好地适应移动网络环境下高校学生的学习特点。因此根据移动学习模型的基本理念及具体的实验环境要求,SET协议模拟实验平台需要实现:
(1)情境化的学习模式。SET协议包含持卡人、商家、银行、CA等较多的参与者,同时涉及较深的信息安全理论和算法实现,特别是对于高校信息管理、电子商务等专业学生来说,具有较大的学习难度,因此情境化的学习模式能够较好提升学生的学习兴趣,增强学习效果。在学习过程中,学生可以赋予各种角色,以角色扮演的方式对SET协议各流程进行模拟,在各流程中展示协议中理论和算法的实现过程,促进学生对于该协议的掌握。
(2)便捷获取学习资源。智能设备及无线网络的快速发展使得学生学习方式发生了较大变化,传统的课堂教学受到了冲击,同时纸质教材也逐渐趋于弱化,学习资源和学习渠道更加丰富,学生也逐渐转向了网络及电子资源的学习。在SET协议模拟实验平台设计中,应考虑学生学习方式的转变,因此模拟实验平台应提供智能终端的学习资源获取功能,充分拓宽学习渠道、丰富学习资源,使学生能够使用智能手机就能随时随地浏览学习资源,为课下理论学习提供便利。
(3)课堂内外充分的学习交流。学习交流是Shih-Mills移动学习模型的重要内容之一,也为学生学习和教师教学提供有效反馈,能够在较好提升学习效果的同时,为教师教学和模拟实验平台的改进提供支撑,因此平台设计中应提供师生交流的畅通渠道,便于课堂内外充分的学习交流。
(4)实验考核与学习监督。目前考试改革是高校教学改革的一项重要内容,考核方式应能够更客观地反映学生的学习效果。信息安全课程除了理论知识适合于传统考试方式外,实践能力的考核则较为困难,特别是SET协议模拟实验,学生是否完成操作及对于知识的掌握程度则很难体现。因此模拟实验平台应对学生操作信息进行详细记录,并对考核方式进行合理设计,实验平台能够自动根据学生操作情况给出实验考核成绩,同时便于教师进行学习监督。
(5)实验环境的通用性。传统的信息安全实验往往需要专业设备及环境才能完成,而对于大多高校信息管理、电子商务等专业来说,信息安全的实验环境往往较为缺乏,因此模拟实验平台适用于通用实验环境显得尤为重要。学生利用个人手机、普通电脑在普通机房环境下完成专业的信息安全实验模拟,能够降低实验成本,打破严苛实验条件的限制。
2 SET协议模拟实验平台设计与开发
2.1 网络环境设计与系统软件架构
SET协议模拟实验平台的网络环境设计主要依据实验的具体要求和通用实验环境的易于配置特点,设计结果如图2所示,该实验的终端支付设备为手机、平板电脑等智能设备,利用GSM、CDMA或校园无线网络等完成模拟支付,其他模拟角色采用普通PC或便携电脑,智能设备通过WAP网关将访问请求发送至WAP服务器,WAP服务器主要提供浏览和查询服务,在应用时可以将理论学习的资源配置于WAP服务器,便于学生通过智能终端浏览查询。其他模拟角色通过PC、便携电脑等登录服务器完成模拟操作,服务器包括电子钱包服务器、商家服务器、CA、支付网关、发卡行、收单行服务器等,为节约服务器资源,可以将WAP服务器、电子钱包服务器、商家服务器、CA等全部集成与一台服务器,只需将功能划分清楚即可。同样,数据源也可以全部集成,当然这与现实中服务器和数据源各属一家是不同的,本系统仅为完成功能模拟,不再考虑现实中的各种安全保障措施。
图2 移动支付环境下SET协议模拟系统的网络环境配置图
系统软件架构采用三层开发体系:表示层(UI)、业务逻辑层(BLL)和数据服务层(DAL),如图3所示。
图3 SET协议模拟系统的软件分层结构
表示层主要包括持卡人、商家的客户端系统以及其他模拟角色的B/S结构模拟系统,持卡人、商家的手机客户端基于J2ME进行开发,服务器端采用J2EE技术,借助Servlet调用EJB,其他模拟角色的B/S结构模拟系统采用JSP技术实现。业务逻辑层则由JSP和Servlet技术实现,基于J2ME的手机客户端向服务器端发送请求,通过Servlet访问EJB层的业务逻辑组件,EJB层通过JDBC的API连接数据服务层。数据服务层主要包括由SQLServer构建的各模拟服务器的数据库,包括CA数据库、电子钱包数据库、商家数据库、支付网关数据库、收单行数据库和发卡行数据库,为节约成本、提高系统通用性,这些数据库可以集合于一个数据库,通过设计不同的表来完成相应的模拟功能。
2.2 功能设计
根据SET协议模拟实验平台的需求分析,该系统的主要功能包括持卡人客户端、商家客户端、CA模块、银行模块、学习与考核模块和系统配置模块,如图4所示。
图4 SET协议模拟系统的功能设计图
持卡人客户端是一个智能设备终端安装的APP,便于学生随时随地获取资源且符合学生的学习习惯变化。持卡人客户端的主要功能包括账户申请和数字证书申请,系统账户是SET协议模拟系统的登录账户,同时也是模拟银行的网上银行账户,该模拟账户可以绑定一个模拟信用卡,用来进行模拟支付。除此之外,持卡人客户端还可以实现个人数字证书管理、个人账户信息管理及后续的模拟支付流程实验。
商家客户端与持卡人客户端类似,均具有账户申请与账户管理、数字证书申请与管理等功能,不同之处在于商家客户端中需要完成商品信息管理和订单管理功能。
CA模块则模拟现实系统PKI系统的基本功能,如RA的数字证书申请与审核功能、CA的数字证书生成与管理功能、数字证书与证书撤销列表的发布功能等。
银行模块包括支付网关的支付信息处理功能、发卡行的支付确认功能、收单行的支付确认功能等。
学习和考核模块包括理论学习、学生操作信息管理、考核信息管理、师生交流与指导。学生操作信息管理功能主要便于教师对学生操作进程和操作平台使用情况进行查看,便于实验进度的控制,学生操作信息主要包括每个角色登录次数、每个操作步骤的操作次数、每个角色的登录主机地址、登录时间等。考核信息管理由系统根据学生操作情况给出实验操作的分数,每个角色赋予固定分值,然后将分值分解到每个操作步骤,各个步骤的总分即为实验操作考核分数,实验操作分数作为实验总分数的重要依据。师生交流功能便于在实验中进行问题的研讨,也是实验效果反馈的重要渠道,为便于使用,在现实开发中将该模块的理论学习和师生交流指导功能集成于智能设备端持卡人客户端APP中,这也符合当前学生学习习惯的变化趋势。
系统配置是系统管理员的功能模块,包括课堂设置、教师管理、学生用户的管理与权限的分配等,同时系统配置还具有系统的其他维护功能,如系统日志、系统清理等。
2.3 系统业务流程设计
SET协议模拟系统的业务流程包括CA管理职能的业务流程、模拟支付流程、商家的商品管理流程、订单管理流程、系统配置流程、考核信息管理流程等。由于该系统功能较多,涉及流程也较多,本文仅对最为核心的CA管理流程和模拟支付流程进行说明。
CA管理职能的业务流程是PKI系统的核心,包括数字证书的申请、审核、生成、使用、更新、撤销等环节,整体流程如图5所示。证书申请由持卡人或商家的手机客户端完成,支付网关的数字证书申请则可以在系统初始化配置时自动生成,也可以通过模拟角色进行申请,持卡人或商家登录手机客户端后首先检测是否具有系统账户,需要注册成功后才能申请数字证书,数字证书申请提交后由CA进行审核,审核通过后CA按照X.509证书格式生成数字证书,并提供下载,持卡人或商家下载数字证书后方可进行后续的模拟支付流程。当数字证书需要更新时,持卡人或商家发出证书更新申请,类似于数字证书申请流程,CA重新生成新证书并经过持卡人或商家下载后,使用数字证书进行模拟支付,而原数字证书则进入数字证书的撤销流程,撤销流程还包括过期的数字证书,证书撤销后进入证书撤销列表(CRL),CRL由CA进行发布。
模拟支付的业务流程涉及持卡人、商家、电子钱包服务器、支付网关、收单行和发卡行,具体流程如图6所示。持卡人登录客户端APP,电子钱包服务器首先对持卡人进行身份认证,身份认证成功后持卡人可以使用网上购物模块进行商品浏览,生成订单并输入支付信息后产生交易的初始请求。商家从电子钱包服务器获取购物请求信息后生成初始响应数据,电子钱包服务器验证商家及支付网关的身份后,进一步验证商家的响应消息,然后对订购信息(OI)和付款指令(PI)进行处理,将OI及PI消息进行双重签名,对PI进行加密,并生成数字信封,将部分相关信息发送给商家,商家验证持卡人证书和收到的消息并形成支付指令,然后发送给支付网关。支付网关对支付指令进行处理,之后将支付授权请求发送给发卡行和收单行,发卡行和收单行根据支付授权信息进行相应的转账操作,最后产生支付成功的响应数据发给商家。商家将支付响应提交电子钱包服务器,电子钱包服务器对支付响应信息进行验证,并将验证结果反馈给持卡人,模拟支付流程完成,若流程中某一验证失败,则整个支付流程即可结束。
图5 CA管理职能的业务流程图
图6 模拟支付过程的业务流程图
2.4 模拟实验平台开发
使用J2ME和J2EE技术,结合MVC三层体系结构,对SET协议模拟支付平台进行开发,该平台包括智能终端使用的APP和基于B/S模式的程序其他部分。平台配置完成后,学生首先下载智能终端使用的APP程序并安装,首次使用时需注册客户端账户,并与虚拟的信用卡进行绑定(信用卡信息在系统中对每位学生已进行默认配置),如图7所示,注册成功后学生即拥有了与信用卡绑定的模拟客户端账户。学生以持卡人或商家身份登录客户端后即可以显示客户端系统界面(图7),持卡人客户端界面包括理论学习、数字证书、模拟支付、过程查询、师生交流和账户信息共6个模块。点击“理论学习”可以查看SET协议的详细步骤及相关算法的使用介绍。数字证书模块提供数字证书申请、下载安装等功能。模拟支付则可以浏览购物页面,生成订单及模拟支付。过程查询主要为学生提供模拟角色操作过程中的细节查询,为便于实验考核需要,学生的每步操作均形成一条记录,每条记录里的数据可以提供查询(主要是关键环节的数据处理部分,如双重签名、加密操作等)。师生交流模块为学生提供交流平台,类似于QQ群,学生或教师可以针对某一问题进行讨论。账户信息提供客户端账户详细信息的管理功能。除此之外,商家客户端APP中还包括商品管理和订单管理,商品管理便于商家角色添加、修改、删除商品信息,订单管理主要是查看和处理持卡人提交的订单情况。
基于B/S模式的程序其他部分主要包括CA系统模拟、支付网关模拟、收单行和发卡行模拟等,学生可以使用客户端的账户在普通PC上登录SET协议模拟实验平台,选取相应的角色进行操作。CA管理系统模拟的开发结果见图8,CA管理系统主要包括审核数字证书申请、生成数字证书、发布数字证书、管理证书撤销列表等功能,用户点击“审核通过”按钮即可进行生成数字证书的环节,而点击“拒绝申请”后,该申请即进入了“审核未通过申请”列表,点击“查看详情”按钮可以查看证书申请的各项详细内容。点击“交换角色”按钮可以进入其他角色页面,如支付网关、发卡行和收单行等,在持卡人用户开始进行模拟购物时,支付网关、发卡行和收单行角色即可对相应的信息进行操作,同时学生以相应角色进入后,可以查看操作流程介绍,同时可以查看数据的具体细节,便于学生对相关理论进行验证学习。由于SET协议模拟实验平台涉及功能较多,此处不再对其他页面进行详细展示。
图8 CA管理模块的开发结果
3 SET协议模拟实验平台应用效果
SET协议模拟实验平台的教师角色中可以查看学生的实验操作信息,包括每个角色的练习时间、登录地点、操作步骤记录等,因此教师可以使用这些信息对实验教学活动进行分析。下面从实验操作时间地点、实验完成情况、平台资源需求和利用情况对SET协议模拟实验平台的应用效果进行说明。
(1)由于实验平台对硬件的要求较低,服务器端配置成功后,实验不再受到时间和地点限制,学生可以在规定时间和地点完成实验,也可以课下完成,因此大大拓展了实验环境的限制。从平台应用统计情况来看,80%左右的学生能够在常规实验课时内完成实验,剩余20%左右的学生无法完成,但均可以在课下用较少的时间完成实验,因此模拟实验平台能够给予学生更大的学习自主性。
(2)从实验完成情况来看,100%的学生均能够完成各个角色的练习,平均可以在两个实验课时内完成操作(不包括理论学习,理论学习课前完成),每个步骤操作次数平均大于2次,因此实验平台能够为学生提供充分的操作训练。模拟实验平台采用角色扮演的模式,能够提供较好的情境化学习体验。从师生交流情况来看,学生对于模拟实验平台的学习效果均给予了较好评价,对这种实验教学模式具有较高接受度,模拟实验平台可以较好地提升学生的学习兴趣。
(3)由于高校智能手机和无线网络的普及,SET协议模拟实验平台仅需要对服务器端进行配置即可完成对实验环境的设置,因此能够大大减少实验的硬件投入。另一方面,学生对于模拟实验平台的利用存在时段性特征,一般而言,课程实验课时和地点较为固定,虽然模拟实验平台打破了这些限制,但对于大部分学生而言(平均80%左右)实验操作仍在固定时间和地点完成,因此对于单一服务器端来说存在一定的负载问题。当课堂较多时可将上课时间间隔安排,或者通过将不同角色功能和数据库分别配置于不同服务器端的方法进行解决,因此该模拟实验平台也可以满足多实验课堂的教学需求。
4 结语
基于移动学习模型理念及现有的信息安全实验要求,可以对SET协议模拟实验平台的构建需求进行分析,平台的功能设计及开发实现可以有效针对现阶段高校学生的学习方式进行,这对于平台的建设具有较好的指导意义。SET协议模拟支付平台具有高度情境化的模拟实验设计,学生可以根据不同角色体验不同的操作流程,同时可以查看流程中数据安全性保证机制的实现过程和细节,对于理论学习具有较好的辅助作用。该模拟实验平台基于移动互联环境设计,学生可以随时随地使用手机进行理论学习、师生交流、操作信息查询等,大大拓展了传统实验的时间和地点的限制。同时该模拟实验平台配置简单,对于硬件环境要求较低,适用于缺乏信息安全专业实验环境的信息安全课程教学,大大节约了教学成本。总的来说,模拟实验平台是一种较为有效的实验教学方式,适合于现阶段高校教学现状及学生的学习特征。
该模拟实验平台的持卡人和商家角色的工作流程通过移动端智能设备进行操作练习,由于信息安全算法复杂度较高、数据量大,其他角色(如CA、支付网关、发卡行、收单行)的功能均在普通PC端完成,因此整个实验需要智能终端和普通PC配合完成,一定程度上限制了平台使用的便捷性。随着智能终端设备不断升级,在后续的系统改进中,可以将各个角色模拟过程全部集成于智能终端中,这将会完全摆脱设备的要求,进一步提升模拟实验平台的通用性。
[1]MasterCard and VISA. SET Secure Electronic Transaction Specification, Book1: Business Description Version 1.0[DB/OL]. May 31,1997. http://www.setco.org/download/set_bk1.pdf.
[2]Kim C,Mirusmonov M,Lee I. An empirical examination of factors influencing the intention to use mobile payment[J].Computers in Human Behavior,2010.
[3]李婧华.网上购物典型支付模式分析——以支付宝为例[J].中国商界,2010.
[4]周新发,白薇,王冬妮.基于TPB理论视角的消费者微信支付使用意愿实证研究[J].国际商务(对外经济贸易大学学报),2015.
[5]张若岩.基于SET协议的移动支付系统的研究与实现[D].西北大学,2008.
[6]万仲保,王晴.基于SET协议的移动支付安全的分析与改进[J]. 微计算机信息,2010.
[7]S S Ahamad, N N Sastry, S K Udgata. Enhanced Mobile SET Protocol with Formal Verification[A]. Proceedings of 2012 Third International Conference on Computer and Communication Technology[C],2012.
[8]琚春华,杨杰,汤旭翔.高校电子商务与物流专业移动学习实践教学模式研究[J].高等工程教育研究,2014.
[9]王小妹,陈红松.信息安全专业实验室创新实践教育体系的构建[J].实验室研究与探索,2016.
[10]梁中,陈波,于泠,于浩佳.基于手机微信的信息安全翻转实验课堂教学实践[J].实验技术与管理,2016.
[11]王瑞锦, 周世杰, 秦志光, 吉家成.基于“虚拟仿真”的信息安全实验教学体系改革[J].计算机教育,2015.
[12]唐海涛, 孟繁二, 孙聪等.网络与信息安全实验教学平台的构建[J].实验技术与管理,2010.
[13]朱辉, 刘北水, 李晖, 刘乃安.基于虚拟化技术的信息安全实验平台开发与应用[J].武汉大学学报(理学版),2012.
[14]底晓强, 张宇昕, 赵建平.基于云计算和虚拟化的计算机网络攻防实验教学平台建设探索[J].实验技术与管理, 2015.
[15]刘坤.基于云服务器的信息安全虚拟实验平台的研究与实现[J].计算机安全,2013.
[16]任丙忠, 毛文杰, 孔文焕.基于GNS3和VMware/VirtualBox的网络与信息安全虚拟实验平台实现与应用[J].教育现代化,2016.
[17]黄建忠, 张沪寅, 裴嘉欣.网络安全虚拟仿真实验教学体系设计[J].实验室研究与探索,2016.
[18]Shih E Y, Mills D. Setting the new standard with mobile computing in online learning[J]. The International Review of Research in Open and Distance Learning,2007.