基于android手机的支付系统设计与实现

基于android手机的支付系统设计与实现

ID:35176339

大小:6.85 MB

页数:59页

时间:2019-03-20

上传者:U-56225
基于android手机的支付系统设计与实现_第1页
基于android手机的支付系统设计与实现_第2页
基于android手机的支付系统设计与实现_第3页
基于android手机的支付系统设计与实现_第4页
基于android手机的支付系统设计与实现_第5页
资源描述:

《基于android手机的支付系统设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

代若(巧財毎是邊r^JIANGXIUNIVERSITYOFFINANCE&ECONOMICS中图分类号UDC硕dt学位论文MASTERDISSERTATION基于android手机的支付系统设计与实现论文题目(中文)BasedonTheAndroidMobilePhone论文题目(英文)PaymentSystemDesignandImplementation邵悦杨波副教授作s导di5信息管理学院申请学位^培养单位工程硕去(计算机技术领域)计算机技术学科专邮研究方向二〇—五年十二月 独创性声明本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加L乂标注和致谢的地方外,也,论文中不包含其他人己经发表或撰写的研究成果不包含为获得江西财经大学或其他教育机构的学位或证书所使巧过的材料一。与我同工作的同志对本研究所做的任何贡献均己在论文中作了明确的说明并表示了谢意。、"1.’1'%争尸1>签名:日期:^关于论文使用授权的说明、本人完全了解注西肋经大学有关保留使用学位论文的规定,,即:学校有权保留送交论文的复印件允许论文被查阅和借阅;、学校可公布论文的全部或部分内容,可L乂采用影印缩印或其他复制手段保存论文。(保密的论文在解密后遵守此规定).、‘签名:导师緣違:,日期:作k心 目录1绪论11.1研究背景1.......-V,1..2研究现状21.3研究内容42相关技术简介52.1客户端Android平台简介52.11rid5.Ando平台架构2丄2Android平台开发技术728.2支竹系统安全技术简介92.2.1PKI安全体系2.2.2SSL技术102.2.3SET技术112.3本章小结123手机移动支付系统分析133.1系统需求概述133.2移动支付流程分祈133.3系统用例分析153.4非功能性需求分析173.5本章小结184手机移动支付系统设计194.1系统设计原则19420.2系统总体结构设计24.3系统功能结构设计14.3.1用户管理功能224.3.2交易管理功能234.3.3安全管理功能234.3.4后台营理功能244.4系统安全体系结构设计2544251..支付密码确认264.4.2SET安全协议427.5系统数据库设汁I 4巧.6本章小结5手机移动支付系统实现305.1用户管理功能实现305丄1用户账户管理功能30."....."..".."..,-'.5.1.2业务变更功能31巧5.2交易管理功能实现5.2.1移动支付功能345.2%.2周期结算业务5.3安全管理功能375.3.1数据传输安全控制385.3.2SET网络交易协议实现415.4后台管理功能实现4545.4.1用户权限管理5465.4.2系统曰志管理465.5本章小结476总结望476.1工作总结6.2不足与展望47参考文献49II Con化nts1Introduction11.1ResearchBackground11.2ResearchStatus21.3ResearchContents42I凸troductionofRelatedTechnology52.1RFIDTechnology52.1.1TheAndroidlatformarchitecture5p2.1.2TheAndroidlatformdevelomenttechnolo7ppgy2.2IntroductionofSystemDevelopmentTechnology82.2.1PKIsecuritysstem9y2.22SSLtechnolo10.gy2.2.3TheSET1;echnology112.3SummaryofThisChater12pm3Mobileaentsstemanalysis13pyy*31Descritionofsstemreuirements13.pyqm3.2Mobilepayentrocessanalysis13p3hesst:emusecaseanalsis15.3Tyy3-functionalreuirementsanalsis17.4Nonqy3.5SummarofThisateryChp184过Mobilepaymentsystemesign19m4.1Systedesignrinciles19ppm4.2Systeoverallstructuredesign204.3Systemfunctionstructuredesign214tc.3.1Usermanagemenfuntion22m4.3.2Transactionmanaeentfunctions23g4.3.3Securitymanagementfunctions234.3.4Thebackroundmanagementfunctions24g4.4Systemsecurityarchitecturedesin25g24.4.1Paytheasswordconfirmation5p4.42TheSETsecuritrotls26.ypoco4.5Thesystemdatabasedesign274ofTht.6SummaryisChaer29pIII 5Mobileamentsstemimlementation30pyyp5manaemenfuncios.1Usergttn30un5.1.1Useraccotmanagementfunctions305.1.2Businesschangefunction31…5.2Transactionmanagementfunctions33bmn5.2.1Moileaetfunction34py5.2.2Settlementbusinesscycle36m5.3Securityanaementfunctions37g5.3.1Datatransmissionsecuritycontrol38n5.3.2TheSETrotocolimlementationonlinetrasactions41pp5m.4Backgroundmanageentfunctions45na5.4.1Userrightsmagement45na5.4.2Thesystemlogaement46mg5.5SummarofThisChapter46y6SummarandOutlook47y6.1WorkSummary476.2ShortageandProspect47References49IV 摘要随着市场化经济的飞速发展,w及信息技术的不断完善,基于智能手机和移动网络的手机在线支付逐渐兴起,极大的方便了人们的日常生活,也促进了市场经济的不断发展。手机在线支付系统是手机在线支付的发展的基础。在本文的研.究中,主要从手机在线支付业务实现和安全性两个方面对手机在线支付系统进行研究。首先,通过对手机在线支付系统基本模式的分析,了解了手机在线支付系统的基本需求。并且通过对移动支付流程的分析,确定了手机移动给支付系统的参与者主要包括消费者、商家、系统维护人员和系统客户人员,并且据此确认手机移动支付系统的主要业务功能包括用户营理功能、交易管理功能、安全营理功能和系统后台管理功能,最终针对Android智能手机终端,对手机在线支付系统具体业务功能的实现进行研究。其次,手机在线支付系统的巧单信息、银行卡信息等交易信息都是通过不安全的无线网络进行传输的,为此,为了保证手机在线支付系统的交易数据安全,本文主要通过网路传输数据加密和SET双向网络交易协议的实现来确保网络数据的安全性,从而也提高了手机在线支付系统的实用性。ro本文所研究的基于Andid操作系统的手机在线支付系统不仅能够满足人们基本的在线支付需求一,同时也保证了交易数据的安全性,具有定的实用性。关键词i全:Androd操作系统动支付SET通信;移;数据安;协议1 AJbs化actWiththeraddevelomentofthemarketeconomandthecontinuouspipyimprovementofinformationt;echnology,onlinepaymentbased0打smartphonesandmobenetworksraduaemer打whichreatlfacilitatesthedaillifeofeoleilisgllygigyyp,,gpbutalsopromo化st:hecontinuousdevelopmentofmarketeconomy.Mobileonlinepaymentsyshmisthebasisforthedevelopmentofmobileonlinepayment.I打theresearchofthispaper化eonlineamentsskmof化emobilehoneiss1;udiedmainl,pyypy任cmtwoasectsemobeamenerviceandthesecurit.p:thUpytsyFirst,throughtheanalysisofthebasicmodeofthemobilepaymentsystem,thebasicrequirementsofthemobilepayme打tsystemareun过erstood.Andthroughtheanalsisofthemobileamentrocessthearticiantsofmobileamentsstemypyp,pppyymainlyincludeconsumermerchantsstemmaintenanceersonnelandsstem,,ypycustomersAccordintothisthemai打busi打essfunctionsofmobileamentssl;em.g,pyyincludinusermanaementtransactionmanaementsecuritmanaementandsstemgg,g,ygybackgroundmanagementflmctio打sareconfirmed.Secondltileonlineamentsstemofthemobilehoneordersbankcardy,pyyp,mfbrmationandotherinformationaretransmittedthrouh化einsecurewirelessnetworkg,toe打surethatthemobilehoneonli打eamentsstemofIransactio打datasecuritthisppyyy,apermainlythrouhthenetworktransmissiondataencrtionandSETdualtothepgyptransactio打pro1;ocoI化e打surethesecurityofnetworkdata,therebyimprovi打gtheracticabilitofltst.py:hemobilehoneonlineamensemppyyThemobilepaymentsystembasedo打Androidoperatingsys1:emisnot0打lyabletomeetthebasic打eedsof0打lineamentbutalsoe打suresthesecuritofthetransactionpy,ydatawhichhasacertainracticalit.,pyerat打ss1mmobeamenttasecurtrotocoKeywords:Androidopigy:e;ilpy;daiy;SETlp2 1绪论1绪论1.1研究背景随着社会的发展,商晶交换和交易过程的发生,随之出现了支付现象。而随着社会信用水平和商品社会的发展,在商品购买过程中的商品购买巧支付分离,.从而使得商品交易过程中的支付出现了新的特点,。同时随着信息化技术的不断i发展和完善>,li及客户需求的不断増加,电汇、邮汇、支票、现金等传统给支付方式在跨时空、便捷、安全和效率等方面都存在许多弊端和局限,从而也促使了。第H方支付服务组织的出现,W及形式的不断发展和演变与传统支付方式相比,基于信息技术的移动支付具有许多独特的有点和特征,例如使用数字化的转账方式可W提高转账速率,提高资金管理水平,同时还具有经济、快捷、高校和方便的特点,正是由于移动支付的这些优点,正逐渐被人们所推崇,并在社会中开始广泛应用。传统支付方式主要W现金或者纸质凭证为主。现金支付由于强有力的国家信用支撑,因此具有普遍可接受性,是最为普遍的交易支付方式;票据支付可W减少现金携带、输送和保管的风险和麻烦,是异地交易过程中替代现金支付的最佳工具。虽然传统支付方式的应用范国非常广,但是在信息时代,其仍然存在如下的不足一一:方面,需要随身携带现金,经常需要面临付款找零的步骤另方方;面安全性不够,不仅容易丢失,而且假币造价技术的而不断提高,降低了现金支付的安全性除此之外,先进交易缺乏灵活性。;除了W现金和票据支付为主的传统支付W外,银行卡支付也逐渐成为常见的一种支付方式,银行卡支付避免了携带现金所带来的麻烦,但是仍然存在如下的一一:方面局限性方面安全性不够,账号和密码会引发支付安全问题;另,覆盖面不够,只能够在特定的经销商处使用银行支付;除此之外,并不是所有购买者都具有持有信用卡的保准,而且不是所有的营业地点都安装了银行卡支付设备,从而降低了银行卡支付的实用性。随着信息技术的发展,W及人们对于支付便捷性、安全性要求的提高,市场上出现了财付通、支付宝、易宝支付、paypal等电子商务支付手段,送种新型的支付手段,提供了支付、网上转账功能,可W极大的提高支付的便捷性和安全性。手机移动支付就是将电子商务支付所需要的各种软件移置到手机上,从而形成了不需要依赖PC机,可实现移动支付的电子商务支付形式。手化移动支付的出现一一具有如下的意义:方面,促进了移动痛惜业务的发展;另方面,具有传统支、、、付所无法比拟的廉价快捷安全方便等特点,不受到时间和区;除此之外域的限制,极大的提高了支付的便捷性。1 基于android手机的支付系统设计与实现从前面对支付的发展可W看出,商品交易过程中的支付经历了传统支付、银行卡支付、电子商务支付、基于移动终端的手机移动支付等阶段。其中,电子商务支付和手机移动支付都是基于现有的信息技术,通过数字化的交易方式来完成商品购买过程的支付活动。但是与基于PC机的电子商务支付手段相比,由于移动终端的软硬件特点,,使得手机移动支付系统的设计和实现都存在较大的差异手机例如提高手机移动支付系统的安全性,W及在处理能力较弱的移动手机终端,如何提高支付的效率等,都是手机移动支付系统的研究难点。为此,在本文的研究中id。,主要针对Andro手机操作系统,对手机移动支付系统进行研究12研.究现状(1)国外研究现状随着信息技术的发展,国外移动支付技术的研究发展迅速,例如日韩产业合作日趋完善,移动支付应用日趋丰富,移动支付的用户规模不断扩大,目前己经成为了全球市场上移动支付的领先者。一NTT日本是目前移动支付业务推广最好的国家之,DoCoMo是日本移动支-mode付市场上最主要的移动支付产品。早在1999年i,NTTDoCoMo就退出了手机互联网服务,并且在日本市场上取得了巨大的而反向。在2005年,为了发展移动信用卡业务,NTTDoCoMo与H井住友形成了战略联盟,投入巨资发展移动支付业务。同时I、NTTD,日本的软银、KDDoCoMo分别在2004年和2005年退出了移动支付业务。目前,日本每年日0万亿日元的小额支付采用非接触式手机支付i、,甚至扎股票投资消费信贷等大额支付领域,手机支付业务市场也正在不断拓展。韩国的移动支付业务不仅可W实现商场购物时替代现金支付,同时还可W在一些ATM机上提取现金,或者在自动售货机上购买饮料、在2007年,韩国的3加移动运营商直接将T-Mone支付软件放到了手机卡上y,并且实现了地铁等交通费用的手机支付。目前,韩国有超过10亿美元的电子支付都是移动支付完成的。,目前几乎所有的韩国零售银行都通过与移动运营商的合作,提供手机支付业务,上十万家商店和餐馆能够读取手机中的信用卡信息,方便顾客进行手机支付。目前,英国、西班牙、芬兰、法国、美国、奧地利、瑞典、德国等国家已经开始全面发展手机支付应用。其中,欧洲地区通过与多国移动运营商的联合运作来推广移动支付。其业务的模式主要包括SMS短消息业务、WAR无线应用协议、IVR交互语音应答等方式,其操作较为繁琐,不利于人们的日常移动支付,因此欧洲地区的移动支付主要用于电子票务和WAR业务等。-m化美国的Verizon、TileAT&T203,移动运营商在1年成立了旧旧移动支2 1绪论,付公司,,该公司计划在盐城湖进行试点使用移动支付帮助零售商完成销售结算一并且提供个移动车票支付方式来为犹他州的交通管理局提供帮助。IS旧移动支一可W使用手机来取付公司的目标是将城市变为个消费者无需携带现金和钱包,代信用卡和先进的地方。AiteGroup所发布的美国账单支付方式和渠道预测数据国的移动支付将会W300%W上的增长速度增长。,显示,在未来的三年类,美(2)国内研究现状我国信息技术的发展较为滞后,,但是由于国家和社会对于信息技术的重视我国移动支付产业虽然起步较晩,但是发展迅速。到2000年,中国移动公司就开始了移动支付的试验,通过将用户手机号码和银行卡的绑定,通过WAP、语音或者短信服务等方式。截止到2014年年底,我国手机,来为用户提供移动支付服务6千用户己经超过了8亿用户,,其中有近2亿的用户开通了移动支付实现了多万比移动支付业务,支付金额超过200亿元。目前,已经在南京移动、广东移动、厦口移动、重庆移动、湖南移动等地开展了SIMpass试点应用示范工程。在通过一了段时间的实际试运行之后、安全性、交易,由于用户对于移动支付网络覆盖成本、交易效率的提高,现有的基于GSM的移动支付系统在实际应用过程中,表现出了如下的局限性。(1)支持的业务有限、目前的中国移动支付业务业务较少,近支持游侠点卡购买等互联网数字产品彩票购买、煤气水电费缴纳、手机投保等业务,难W提高人们日常生活的便利性。(2)操作繁琐。移动支付的用户体验较差,操作不方便,交易时常常在支付过程中,需要进行频繁的手机号码、商业代码、用户银行账号、业务码的频繁交换,繁琐的操作延长了手机移动支付的时间。而且用户必须把作为用户因素的手机号提供给收款方,,更为不变的是,用户必须要更换STK卡才能够开通手机钱包造成了额外的使用成本。(3)移动运营商为主导,不符合国内金融法规,目前,我国的手机移动支付主要W移动运营商为主从而导致移动运营商成一为了商业银行。而且银行是个专业的金融,并不符合国内金融法规的相关规定服务机构,其业务数量,安全有保障,用户更加信任,因此W移动运营商维护主的手机移动支付难W得到迅速的推广。随着信息技术的发展,智能手机终端技术的发展和3G、4G移动通信网络的快速发展,特别是Android移动手机操作,极大的提髙了移动终端手化的性价比。系统的发展,极大的丰富和移动手机终端应用,方便了移动手机终端应用开发ndroidAndroid移动为此,,在本文的研究中,主要基于A移动手化平台进行基于3 基于android手机的支付系统设计与实现手机平台的终端系统设计与研究一种全新的电子银,为银行等金融服务机构提供行远程服务解决方案。1.3研究内容随着市场化经济的飞速发展,同时随着信息技术的不断完善,人们交易过程中的支付手段也发生了翻天覆地的变化。从传统的现金交易,到后来支票交易、、银行卡转账网络在线支付等,不断提高了交易支付的效率,但是无论是支票交,易还是网络在线支付,虽然可W免除人们携带现金的繁琐步骤但是无法做到随时随地支付。而随着移动信息技术和智能手机终端技术发展而来的移动支付,却可W让人们通过智能移动终端和无处不在的移动网络,,实现随时随地的在线支付在本文的研究中也主要针对基于Android智能手机终端操作系统的手机在线支付系统进行研究。本文对于基于Android手机在线支付系统的研究主要包括如下几个方面的内容:一章绪论,第,主要对手机在线支付系统的研究背景目前国内外对手机在线支付系统的研究现状,,W及针对目前手机在线支付研究所存在的不足确定本文的主要研究内容和研究思路。第二章相关技术简介,在对手机在线支付系统进行研究之前,先对手机在线支付系统中的Android操作系统,和用于保证支付信息安全的PKI数据加密方案、SSL交易数据通信协议和SET交易数据通信协议进行研究,从而为本文对手机在线支付系统的研究打好技术基础。第三章手机支付系统分析,通过对手机在线系统基本模式的分析,了解手机在线支付系统的基本需求。并且通过移动支付流程的分析,了解移动支付过程中的相关用户,从而认为手机在线系统功能需求的分析确定基础。同时从系统性能和数据安全两个角度对手机在线支付系统的非功能性需求进行分析。第四章手机在线支付系统设计,通过对手机在线系统用例和非功能性需求的分析,确定系统设计原则和系统总体结构,并且在对系统用例分析的基础上,确定系统的功能结构,W及对系统各种存储交易信息、用户信息的关系型数据库的设计进行研究。第五章手机在线支付系统实现,基于手机在线支付系统的功能结构,对系统中的用户管理功能、交易管理功能、安全管理功能和后台管理功能等手机在线支付系统具体业务功能的详细设计和实现进行研究。第六章总结和展望,,总结全文所做的工作并且针对本课题研究所存在的不足一,对作者下步的工作和学习进行展望。4 2相关技术简介2相关技术简介2.1客户端Android平台简介And一roid平台是AndyRubin公司所开发的个主要应用于智能手机的操作系统,后来被Google么司收购之后,继续进行深入开发,最终发证成为由Google公司所牵头组织的开放手持设备联盟(OenHandsetAlliance,OHA)组织所开p一发和改良的个智能手持设各开发平台。Android操作系统不仅被广泛的应用于智能手机终端,同时在数字电视机顶盒、平板电脑等领域中被广泛应用。目前,Android平台已经发展成为全球应用最为广泛的智能手机终端操纵系统。2丄1Android平台架构A一ndroid操作系统平台是个主要由四个架构层所构成的分层环境,其中由上而下的这四个分层结构依次为应用程序层、应用程序框架层、运行时与程序库环境层W及系统核也层。其中下层结构为上层结构提供服务,由这四层所共同构建-Android操作系统平台的运行环境Android操作系统平台架构如图21。所示。APPLICATiONS^./\/、,,,omeonactsone攻wer..IHCiPhB ̄7APPLICATIONFRAMbWOKK%- ̄ ̄— ̄'-vnonn?/A幻Wiw'oicajon;i!ydoLtet一istnt.、f,ms:te'o>M汹a.ManagerManagerPrviders。。J——?、—、—''Kepacka抓)nsrcc、.ocanonge\/ie均you'CK'M'PFsenice'aa泌地扣/视auer■ieryanaerMniM.M,Ma,^UBRARIES^?^扣瞳Media,ANORO拟UN、;ouRTIMEste/''"、mC:raresfLiien化eT;(OpGIESiFeW油Kit)|)p;、{■.'-'二、ua,\tvikVirtual\/、、sSOLSfcil.Ubachne;jMi/^?TPCrixDri;:却巧ve;CameraDriverXf{)、‘.USBDriver:KeypadDriverDriver;iAudioDriver1j;-nd图21Aroid操作系统平台架构图系统核也层基于Linux内核,为整个Android操作系统平台提供内存管理、进程管理、安全性、网络管理等方面的保证和支持;运行时与程序库环境层包括了++一Android操作系统平台所需的各种C、C库,并且提供个独立的Dalvik虚拟机And一支持应用程序的应用roid,从而保证操作系统平台中的每个应用程序都能够互不干扰的工作;应用程序框架层为进行应用程序开发所需的API框架,从而为应用程序的开发提供一系列的常用功能与服务接口;应用程序层,应用程序层5 基于android手机的支付系统设计与实现是Android操作系统平台的开发与呈现出呢过,目前Android操作平台上的应用程序都是基于Java开发语言技术的。And-与其他操作系统类似roid1,,操作系统也此阿勇了分层架构,如图2所示在Android操作系统平台架构中,Android操作系统总提供幻陥如下的四层:(1)应用程序层一id些常用的应用软件应用程序层包括Andro操作系统上,例如联系人管理SMS短消息管理程序一程序、日历程序、、浏览器程序等。般而言,这些应用程And一序是roid用户所经常使用到的ndroid,因此会跟A操作系统起进行发布,这些应用程序都使用Java语言来编写。(2)应用程序框架I框架应用程序框架是面向程序开发人员的AP,通过应用程序框架供了,提A一ndroid应用开发平台,任何个基于这个A円框架所设计的Android应用程序可W在任何Android平天上运行,从而有效地提高了应用程序的重用性,同时也更加方便Android用户进行应用程序的替换。Android应用程序框架主要包括如下的内容:一?iews),Android操作系统中包含了系列丰富的、可扩展的视图视图(V,例如按钮比、文本框、网格、Web浏览器或者列表等。?内容提供器(ContentProvide巧),是Android操作系统中应用程序访问另一外个程序的接口:,,例如应用程序需要访问联系人数据库时就需要使用内容提供器。?资源管理器(ResourceManager)提供本地字符串、布局文件、图形等非代码资源的访问。?通知管理器(Not讯cationManager)在状态栏中显示应用程序的提示信息。?活动管理器(A州vityManer)用于应用程序生命周期内的导航服务。g(3)系统运行库一系统运行库是AndroididC++操作系统中,基于Andro内核所开发的系列C/A一库,能够被ndroid操作系统中的系列不同的组建所使用,可tU为应用程序提一一供idAndroid操作系统中些基础的Andro服务,主系列的运行。在要包括如下库。.媒体库,支持多种音频、视频格式的处理,同时还支持对静态图像文件的处理,媒体库默认支持能够处理的文件格式包括PNG、JPG、AAC、AMR、MP3、H.263、MPEG4等。?S图形管理器(urfaceManager)为Android操作系统提供显示管理,并且为Android操作系统的而应用程序提供2D和3D图层的无缝融合。6 2相关技术简介.浏览器引擎(LibWebCo巧)Android应用程序中嵌入Web试图,支持在,W及支持Android浏览器。(4)Linux内核Androiid操作系统公式基于Lnux内核的Linuxkernel之上,运行在,但是却.GNU/L并不是GUN/Linux。因为ndroidinuxAndroid,A不支持绝大部分的功能,在操作系统高中inuxGlibc、GTK、Alsa、Cairo、Pano、FFme、,GUN/L中的gpgX11等都被移除掉了。同时又使用叩necore取代FFmpeg、使用Skia取代Cairo、一使用Bionicid个开源操作系统取代別be。Andro操作系统作为,为了实现商业GUN一化/Linux中些被GPL、GNU授权证所约束的部分移除掉。,就不需要将的2丄2Android平台开发技术id平台开发的应用程序开发时IntentXontentProvider、在基于Andro,主要由BroadcastReceiver、Service和Activity五大基本组装件所组成。(1)ActivityAc一一itivitAndrod应用程,y是个显示用户可视化界面的活动,在个i序中可W包含多个A州vity来显示多个界面,并且可支持这些界面之间的相互切换。在And一roid开Activiti发技术中,个应用程序中的多个y是相互独立的,由多个Actvity共同构成了Android应用程序中的用户视觉体验。一Activi应用程序中每个程序界面的ity都必须要派生自Actvity基类。Activity一是个系统界面基类itOnCreate(创建)、OnStart(启,因此在A如vy中包含了动)、OnPause(暂停)、OnStop(停止)、OnRestart(重播)、OnResume(恢)、OnDestro()。复y销毁等回调西数,W支持其在生命周期中状态改变时的回调(2)Service一一Service是个后台运行程序,不为用户提供些不需要可操作界面,在后台运行计算的各种服务。例如背景音乐的播放,文件下载等功能实现都可W通过继承自Serveie的子类来实现。继承自Service基类的Android应用程序运行在Android操作系统主线程中,并不会影响其它组件的活动,但是必须要调用Context实例的startService或者bindServeie方法来启动,而不能够直接启动。虽然,不同的启动方式会导致启动Service的生命周期各不相同nCreate(,但是都提供O创建)、OnStart(启动)、OnBind(绑定)、OnReBind(重新绑定)、OnUnBind(解除绑定)、OnDestroy(销毁)等回调。(3)BroadcastReceiverBroad巧StReceiver是各个Android操作系统平台上应用程序用来接收A一ndroid操作系统所发送的广播组件。其主要作用是广播些应用程序或者7 基于android手机的支付系统设计与实现And一roid操作系统所发起的些公告信息,例如设置数据更改、电池电量较低等广播信息。BroadcastRe化iver不需要界面显示,但是可W根据具体的业务应用,一来启动相应的Activit显示界面。由于不同的应用程序所关也的内容不样y,为此id操作系统平台开发时s在进行Andro,可W根据需要注册和监听不同的BroadcatReceive「,从而当业务发生时就会促使监听该消息的所有应用程序都进行联动。(4)ContentProviderContentProvider主要用于解决Android操作系统平台上个应用程序之间的数nd一据通信与数据共享问题,可W将Aroid操作系统平台上的些应用程序的数据提供给其他应用程序,从而实现数据的管理。例如,SQLite数据库系统、Android一文件管理系统ide「,或者其他合适的数据存储方式。ContentProv提供了个标准接口一,W方便其他应用程序数据的存储和查询管理。但是,应用程序会使用个ContentRresolver对象来调用,而不是直接调用这些接口。ContentResolver对象能够实现Android操作系统平台上各应用程序内容提供者之间的数据交互,并且通过与提供者的配合来协调Android操作系统平台各应用程序之间的数据通信。(5)IntentIntent组件是Activity、Service、BroadcastReceiver和ContentProvider组件的纽带。在Activity、Service、BroadcastReceiver和ContentProvider四个组件中,除了ContentProvider是通过ContentResolver进行激活W外,Activity、Service和BroadcastReceiver组件都需要通过Intent异步消息进行激活。Intent能够实现在不同组件之间的信息传递一,并且将其中个组件的意图传送给其他组I件。但是组件类型不同,ntent所传递的数据格式、应用程序的激活方式都不同。一旦Intent组件被激活之后Android操作系统平台就能够准确找到与之匹配的,ActtSeiiviy、rvce和BroadcastReceiver进行响应。Intent、ContentProvider、BroadcastReceiver、ServiceActi和ivty五大基本组装件构成了Android操作系统个应用平台上应用程序开发的基本要素,掌握了这五个基本组件的应用,就相当于掌握了Android操作系统平台上应用程序的开发技巧。2.2支付系统安全技术简介手机在线支付系统中涉及到用户金融账户等信息。而终端用户使用手机在线支付系统功能时,所提交的用户账号卡、密码、交易等信息都是通过不安全的互联"""""网进行传输。近年来,互联网上连续发生的木马病毒、网银大盗、假冒"网站等金融案件显示了直接在互联网行传输交易数据并不安全,为此在手机在线支付系统中需要对互联网上传输的数据进行安全管理。目前互联网上进行数据8 2相关技术简介交互的安全技术主要包括如下几个方面的内容:2.2.1PKI安全体系公开密钥基础设施(PublicKeyInfrastructure,PKI)利用公钥加密的概念和一。技术,是,对网络上传输的数据进行加密和签名个具有普适性的安全技术框架PK一I安全系统通过对证书和密钥的管理,为用户提供个安全的网络环境,方便用户在不安全的网络中使用数字签名和加密技术,来吧信息的保密性、完整性、真实性和不可否认性I可,。PKW满足不同用户的不同安全需求提供认证、数据保密、数据完整和数据不可否认性等服务。其中认证是指对用户身份的鉴别,数据保密是指对数据进行加密,数据完整性是确保传输的数据没有被篡改,数据不可否认性是指数据的不可抵赖。PKI由证书发放机构(CertificateAuthority,CA)、数字证书、公开密钥技术一PKI和公开密钥的安全策略等组成,个典型的应用系统应该包括如下几个方面的内容:(1)证书发放机构CA,CA负责管理系统中的所有证书,证书发放机构是PKI的核必,CA的主要功能包括证书的签发、延期、冻结和作废,W及用户证书黑名单的管理。(2)数字证书,根据应用的不同,数字证书包括设备、应用程序和系统用户等不同的类型。一(3)证书库,证书库会是种公共信息库,用户可W在证书库中获得其他用户的证书一。证书库般采用LDAP系统的目录服务系统,相关应用系统或者用户通过目录服务系统获取证书。证书库中通常还包括黑名单证书信息。(4)注册系统RA,RA主要完成证书的申请、签发、更新、作废、冻结、注销等操作,是人际交互系统。用户与RA之间进行的操作都是通过后台CA来完成。一一I的核也非对称密钥技术是PK,非对称密码具有个公钥和个私钥,采用公钥加密的信息只能够通过私钥才能够解密,而采用私钥加密的数据也只能够通一过公约解密,而且用户在较长的时间内也无法通过私钥或者公钥来推算出另外个密钥。一在PKI体系中需要个独立,而且能够值得信赖的第三方机构作为PKI体系中的认证中也,对用户身份进行认证。如果用现实生活类比,那么认证中也就与公安局类似,而证书就是用户的身份证,而证书签发的过程就是居民申请身份证的过程,认证中也在对用户信息进行核对正确之后,就为用户办法证书,而其他用户则只需要验证身份证的真实性I体系,就可W确保用户身份的真实性。在PKPS1中户之间信息的传输过程如團2-2所:,用示9 基于android手机的支付系统设计与实现(巧带艺公巧)艺巧巧1rIf ̄品 ̄^ ̄ ̄ ̄^>1.葱名猴怒檢底^游孩■f01i—13—7甲jf、甲私巧甲公朗(化书)-2图2PKI安全体系工作原理2.2.2SSL技术安全套接层协议层(Sect!巧SocketsLayer,SSL)是Netscape公司所提出的来的一FTPHTTPTP种基于网络的通信安全愤化S化写主要用于、、NM、Tet/P/IPlene等应用程序协议之间与TCPIP协议之间的数据安全保障机制,为TC网络连接提供服务器认证、数据加密、消息网整形W及用户机认证的呢过服务,SSL协TCP与HTTP协一议介于议之间的个可选层。SSL协议分成如下两个部分:(1)SSL记录协议,是建立在TCP等可靠协议智商的,为通信系统的高层、压缩。协议提供加密、封装等服务(2)SSL握手协议,握手协议建立在SSL记录协议智商,在进行实际数据的传输之前,进行信息交互的双方完成交换加密密钥、协商加密算法、身份认证等操作。单行的SSL只需要在应用层服务器上安装证书就可W建立加密信道,而双向SSL除了在服务器上安装证书通道W外,还需要再用户端安装用户证书,并且在服务器端通过导入用户证书来进行用户端身份的认证,从而建立起加密信道,使[39]-3所示用说L进行信息通信的示意图如国2。10 2相关技术简介SSLM巧SSL客户端(刹览簿)...'".出但叩‘.府复泌括^規皆护.§手》夺、、>^、、>4^W^§?—I??|袭弯吟轉款搬转冰次对藏取^狡受'邦魏{。《j點織鍵g#应白马呈应]2-3图SSL通信示意图2.2.3SET技术(1)SET协议目标SET协议目标主要包括如下几个方面的内容:?对交易双方那个的消费者和商家进行相互认证;?保证交易双方个人账号信息和交易信息的分离;?保证交易信息在网络上传输的安全性;在SET协议中,要求所有遵循SET协议的电子商务系统都采用相同的消息传输协议和消息传输格式,从而让不同厂商所声场的SET软件系统能够相互通信,并且保证软件系统能够在各种不同的操作系统中被应用。(2)SET协议的主要内容SET协议的主要内容包括如下几个方面:?对电子交易过程中的额?对电子交易过程中资金清算信息的格式进行定义;?对电子交易过程中证书的格式进行定义;?对电子交易过程中支付授权信息的进行定义;?对电子交易过程中购买信息的格式进行定义:?对电子交易过程中用户之间的消息传输进行规范。?对电子交易过程中网络传输数据进行加密;从SET协议的主要内容可W看出,SET协议的最大功能就是保证电子交易过程中数据的安全W及交易的安全。(3)与SSL协议的比较SSL协议时Ne一tscae所SSLp提出的种安全交易标准,协议在整个网络传输协议中处于应用层之下,而在传输层之上,可看成是某个应用软件程序的底11 基于android手机的支付系统设计与实现层网络协议,保证Telnet、FTP、HTTP等通信应用的数据安全性。与SSL协议相比,SET,SET协议要复杂得多协议不仅要保证交易过程中双方信息的安全,同时还需要详细、准确的反映交易过程中,各方的关系,并且实SET一现对这些关系的复杂定义。在网络安全协议中,允许电子商务各方进行步点的报文交换一一,而SSL只是在通讯双方之间建立条安全的通信链路,般与浏一起览器绑定在,无法保证交易对方的合法性。与SSL协议相比,SET协议有如下的不同。?SETSET协协议的安全性更高,当进行电子商务交易时,支付网,在议中关、消费者、商户等电子商务交易实体都需要在认证中必来申请数字证书来证明自己的身份,到那时在SSL通信协议中,只需要对商户的合法性进行验证,而不对客户端的合法性进行验证。?SET协SET协基于议的电子商务平台在交易过程中,议都有非常严格的内容来保护消费者、商户、支付网关和银行网络的安全,而SSL只对消费者、商户、支付网关、银行之间的信息通信安全进行了规定。?SETSET协协议的设置成本更高,虽然议的安全性更高,能够更好地提高电子商务系统交易的安全性,但是由于SET协议的使用时间较短,而且操作更加复杂,为此目前SSL协议使用更加广泛。从如上SET协议和SSL协议的对比可W看出,SET协议的安全性更好,这是因为SSL并不是针对电子商务交易安全锁设计的,而SET协议不仅考虑了电子交易过程中,。,数据交互的安全性同时也充分考虑了交易过程中各方的身份问题2.3本章小结在对手机在线支付系统进行研究之前,先对手机在线支付系统中的Android操作系统,和用于保证支付信息安全的PKI数据加密方案、SSL交易数据通信协议和SET交易数据通信协议进行研究,从而为本文对手机在线支付系统的研究打好技术基础。12 3手机移动支付系统分析3手机移动支付系统分析3.1系统需求概述-手机支付系统主要包括如图31所示的手机支付段和手机支付服务器端两个■0■■■?■'锻巧—…―—?' ̄手价.…'-诏户巧《空少遮又客户谢少誤窥滋等情lE■,,,1W,叫释喊i3-图1手机支付模式图一-如图31所示,手机在线支付系统是个包含了用户、银行、商家在内的在线支付系统。用户通过GPRS、3G、4G等无线网络与服务器进行连接,手机端不保存商品、账户等信息,只能够通过与服务器的连接来获得信息。手机端在向服务器端提交申请之后,由服务器端通过与银行或者商家的端口来获得不同服务器端的信息。在手机在线支付系统中,手机支付段主要完成账户管理、余额查询、转账、购物等一必须要关注手系列的操作,在使用手机在线支付客户端转账的过程中,机端的信息安全,保证用户信息不受到任何的安全威胁,特别是用户的购物订单、此手机支付系统必须要非常关巧手机的安全性信息支付信息和银行卡信息,因和可靠性。除此之外,由于手机端处理能力较低、内存较小、屏幕小的特点。在线支付系统不仅要实现基本的账户管理、余额査询、转账、购物、明细查询等基本业务功能W外,还需要考虑系统的性能和用户交互界面的友好。3.2移动支付流程分析随着AndroidAndroid操作手机操作系统的发展,越来越多的用户使用基于系统的智能手机id,因此基于Andro操作系统的手机移动支付,对于移动支付产业的发展具有非常重要的推动作用。在本节,主要W支付宝的移动支付服务为例,分析移动支付流程。S打(Secu巧ElectronicTransaction)协议是保障基于网络使用信用卡支付13 基于android手机的支付系统设计与实现SET协一、的安全电子交易协议,议是种成立于银行消费者和商家之间的协议,使用SET协议可W保障信用卡网上交易的安全性。SET协议的组要特征就是保证SET协一交易过程的不可逆转和传输数据的完整性。目前,议已经被公认为种基于网络的信用卡交易国际标准。SET协议由多个部分组成,主要包括买家、卖家、..银行卡发行机构、结算中必、支付网关、安全征信中也等六个主体,送六个主体分别代表了基于SET协议的网上消费平台系统中的电子付费客户端软件、商家支付客户端软件、第H方支付网关软件、证书软件等。基于SET协议的移动支付工作流程步骤如下!(1)消费者选购自己的商品之后,上传包括自己所购买物品名称、数量、收获方式和地点信息的订单。(2)将巧单提交给商家,舍知具体的消费内容,并且由商家核准巧单之后,双方达成商品交换协议。(3)SET协议开始介入商品购买流程,在消费者确认订单之后,消费者和商家核对身份签名之后,确认支付指令,将消费者消费的金额支付到第王方金融机构。(4)SET协议对消费者的交易数据进斤多层签名,从而保证交易的参与者信息都有自己的隐私性和安全性。(5)商家在确认订单止呕,发送弄个货物,并且题型消费者发货信息,告知商品W及进入交互阶段,双方均可W查看交易记录,并且进行交易流程的查询。(6)在消费者确认货物收到么后,通知第H方金融机构将消费者的金额支付给商家,并且通知商家完成支付。(7)交易完成。在移动个消费交易过程中,通过商家专用的编号和交易订单号,就可在移动终端设备上进行手机确认移动支付过程中。在整个交易过程中提高了交易的灵活性,同时也降低了对消费者硬件设备和地点的要求,从而使得交易的过程变得更加便捷和简单。-2所示移动支付业务流程如图3。1斗 3手机移动支付系统分析?■?"?????yI移动支付平台I齡S爲口i僖i議!?-tHfig硬h:一苗白巧造GP燃/從化/LTEI::普痘裔系窥/I系窃POS轨ii银行mII数爱漢:I图3-2移动支付业务流程图-业务流程概括来说包括如下几个方面的内容如图32所示,移动支付。?支付系统是整个移动支付系统的核也部分,主要负责银行系统、POS机系统和移动运营商的管理和调度。?移动支付系统的前台通过POS机与用户进行交互,获取用户信息,并且对用户交易信息进行处理。?移动支付系统的后台负责与银行系统和移动运营商的BOSS系统相连,其中银行系统主要负责交易金额的处理,而BOSS系统主要负责对用户权限的鉴定,告知其它交易参与方的合法性。?用户可W通过使用移动智能手机,就可W实现支付。?移动支付平台要想移动运营商的SSBO系统提供接口。一?移动运营商为用户提供统的POS机接口,从而为第H方商户的加入提供便利,有利于手机移动支付业务的扩展。?移动支付系统向银行提供的接口不受到具体银行的限制,可W实现与其它银行的通信,更有利于移动支付业务的推广。3.3系统用例分析基于前面对移动支付业务流程的分析,确定基于Android操作系统的手化移动支付系统的具体用户主要包括普通用户、普通商户、系统维护人员、系统客服人员四种。基于Andraid手机移动支付系统的具体用例分析如下所示。15 基于android手机的支付系统设计与实现(1)普通用户用例普通用户是Android手机移动支付系统的主要用户,为了普通用户的购物方-3所示的业务便,普通用户可W使用手机移动支付系统所提供的如图3申请、业务信息更改、业务注销、商品交易W及查询管理功能。业务申请^业务注销P^品交普通用户—查询管理^图3-3普通用户用例图(2)普通商户用例一普通用户也是手机支付系统的主要用户之,从系统使用者的角色来看,普、业通商户用例与普通用户用例并没有本质的区别,同样也包括用户的注册务注销、商品交易和查询管理等功能。但是,如果用户注册为普通商户用例,那么普通商户用例的银行账户及时性会存在一些差别,普通商户用户的账户金额实施更新,并且与银行实现周期结算,因此輸应该考虑系统的安全性和数据处理能力。(3)系统维护者系统维护者是保证手机移动支付系统能够为用户提供正常服务的系统管理人,其主要的职责是定期检查手机移动支付系统服务器硬件情况员,和各项运行指标。同时还通过对手机移动支付系统后台日志的分析,及时发现系统所存在的问BUG-。34所示。题和,并且及时对系统故障进行处理系统维护者用例描述如图统功能维^?统计户)^咬系统维护人员图3-4系统维护者用例图16 3手机孩动支付系统分析(4)系统客户人员系统客户人员主要是为使用手机移动支付系统的普通用户和商家用户提供咨-询和解答服务。系统客服人贡用例分析如图35,并且妥善解决用户的投诉问题所示。咨询服务5;^^^^系统客服人员图3-5系统客服人员用例图3.4非功能性需求分析手机在线支付系统除了上述的具体业务功能,还需要满足就用户的移动性需求和交易数据的安全性要求。(1)移动性需求随着社会的发展,人们的消费方式也发生了巨大的变化,从原有的现金支付,到刷卡消费,极大的降低了人们交易时携带现金的风险和成本,但是在现有的电子商务在线支付消费中一,主要通巧PC机在线支付系统来实现,从而定程度上限制了电子商务在线消费的进一一步推广,在些商家的上口服务W及港口等范围较大的服务中,使用PC机在线支付消费会受到很大的限制。为此,使用无线网络来一实现信息的传输,从而实现手机在线支付系统已经成为了刷卡消费进步发展的一关键。特别是在GPRS网络不断完善,其速率和安全巧都得到了定保障的前提下,也已经成为了手机在线支付系统,基于GPRS无线网络来实现移动刷卡消费发展的重要方向。(2)安全性需求在金融业中,消费者、银行的资金安全是交易的重点。特别是在无线、商家网络中,信号的传输更容易彼未授权的第H方所捕获。为此,对通过无线网络进行传输的数据进行加密是保证交易中资金安全的重点,因此本文主要通过数据加。密的方法来防止在网络中传输的数据被未授权的第H方窃取和篡改同时,使用加密技术还使得交易具备不可否认性等特征。17 基于android手机的支付系统设计与实现3.5本章小结通过对手机在线系统基本模式的分析,了解手机在线支付系统的基本需求。并且通过移动支付流程的分析,了解移动支付过程中的相关用户,从而认为手机在线系统功能需求的分析确定基础。同时从系统性能和数据安全两个角度对手机在线支付系统的非功能性需求进行分析。18 4手机移动支付系统没计4手机移动支付系统设计4.1系统设计原则由于银行手机在线支付系统面向用户广,有些客户的计算机水平非常低,系统安全性需求较高W及在线支付业务发展迅速等特点,银行手机在线支付系统的设计需要满足如下的基本原则。(1)友好性原则具有友好的人机界面能够让用户熟练操作。银行手机在线支付系统的设计应该方便相关管理人员的使用,对使用的智能手机不能有特殊要求,易于操作和管理,部分业务能够部分或完整自动化处理。平台的维护均基于对服务器和数据的维护。(2)拓展性原则一银行手机在线支付系统的开发完善需要个漫长的过程,期间需要根据实际需求对系统进行更改W满足实际需要,所兑,银行手机在线支付系统的设计应该具有良好的扩展性,W满足信息更改的需要,最大程度的减少系统扩充所增加的成本。通过面向对象设计方法和分成的模块化结构设计,使系统具有较强的可扩展性。(3)稳定性原则通过高可用性容错技术,系统的设计和开发需要稳定的0S、成熟的数据库和稳定的网络协议等,。,保证服务器长期稳定的不间断运行保证系统的稳定性(4)高效性原则银行手机在线支付系统的界面设计平台界面的设计应注意简洁美观,快速响应用户需求,方便用户对相关信息和服务的访问需求。(5)安全性原则系统具备向不同使用者授予不同权限并对相应用户权限进行权限管理的功能一一,这样方面使得用户能够拥有足够的权限来完成自己的职责,同时另方面也保证了系统的安全。(6)易用性原则系统相关用户不需要对如何掌握系统的运用和系统特点这些内容进行大量的学习,开发者在开发软件系统时要将相关客户的技术水平纳入到考虑中,要使客户能够在自身的技术水平内很容易就学会对系统的熟练操作一。在系统需要花费段时间来执行某些处理过程时,系统应该可发出信息提醒用户。当因为返回的信息量太大而产生的响应时长过长的情况下,系统应该可tU采取部分响应的方式,19 基于android手化的支付系统设计与实现。比如分页取数据,W此来缩短用户的等候时间4.2系统总体结构设计手机在线支付系统平台包括了业务管理、账务、计费、交易、通信和客户服务等多方面的功能,通过这些功能,手机在线支付系统通过这些功能能够为用户提供安全的在线支付。同时,有通过具体业务额共儀你的不同,将整个手机在线支付系统划分为不同的模块,不同的系统平添功能在不同的模块上实现。为了保-1所示的主流兰层架构证系统的开放性和安全性,手机在线支付平台采用如图4。磁用服宏掛化1)巧.a;?——^;111'申H1TP::i"苗I苗二=心、臣V:],^:访朽设备:i1巧:;:;;,—_iL_P_^門爾护管化方搭戶|I陪賊.;奇I奪,I'.:\}III賴拋巧N掉;I],:;::;;"";II:若I^—^菩U2T--IIfiI":y.;I牌。还化池!i^;I1r^J!;-图41手机在线支付系统总体结构图-如图41所示,手机在线支付系统终于要分为表示层、业务层和数据层H个层次。(1)表示层表示层是手机在线支付系统与用户进行数据和操作交互的界面,手机在线支一付系统为用户提供个所见即所得的图形化交互界面。(2)业务层业务层实现手机在线支付系统的具体业务功能,同时也是表示层和数据层之间的交互桥梁,通过对用户请求的分析,访问数据库中的数据并且进行处理,最20 4手机移动支付系统设计终将处理的结果返回显示给客户层。(3)数据访问层、数据访问层包括系统中数据的定义,并完成数据的完整性安全性维护,为系统访问层提供数据增加、修改、查询、删除、更新等数据维护操作。4-采用如图1所示的H层结构进行设计,具有如下的优势:?各层的分工明确,代码结构更加清晰,在开发阶段可W提高系统开发效率,。在系统后期,有利于系统的升级和维护?系统的可扩展性更强,采用结构模块化开发方式,降低了层与层之间的依赖度,有利于系统的扩展。?各层业务功能模块的复用性增强,提高开发效率。?加强层与层之间的通信管理,减少了通信接口,可W提髙系统的安全性。如图4-1所示的手机支付系统H层结构中,层与层之间的通信流程设计如图4-2所示。巧系臣视留居N旌制器叫/I/h.、lk务投.殘型轻i数据巧问居图4-2层与层之间的通信流程设计4.3系统功能结构设计基于前面对手机移动支付系统移动支付流程和系统用例的分析,确认手机在4-线支付系统的主要功能结构设计如图3所示。21 基于android手机的支付系统设计与实现手机在线支付系统通用!交信后户易:安台,!全维管:管;理i理i管护功;功理功i能;能;功能能;I图4-3系统功能结构图4.3.1用户管理功能用户管理功能主要是指对系统中的普通用户和商户用户信息的管理,其中用户管理功能主要又包括如图4-4所示的用户开户管理功能、用户注销管理功能、账户查询功能和账户信息管理功能。用户管理功能I■A___AAA账账开i户账户户注户f管销査息理管询管功理功理能功能功能能图4-4用户管理功能结构图(1)开户管理功能开户管理功能是指,手机在线支付普通用户和商家用户根据身份信息和银行。信息,从而实现手机在线支付系统的用户开户实现账户与银行卡的绑定不仅如此,开户管理还可W能够提供手机在线支付的终端信息,W便于用户交易时的用户鉴别和使用。(2)注销管理功能用户注销需要解除用户和商户与银行卡之间的绑定关系,并且将用户和商户在手机在线支付平台上的交易数据。(3)账户信息查询功能使用账户信息查询功能,对用户的在线支付交易信息、账户信息、银行卡信息进行查询。22 4手机移动支付系统没计(4)账户管理功能包括账户信息、在线支付交易信息、银行卡信息进行完善、修改、删除等操作。4.3.2交易管理功能交易管理功能,是整个手机移动支付系统的核也,其主要的业务操作内容,就是通过对用户管理信息的识别,来确保系统中普通用户和商户的银行账户安全。交易管理功能主要包括如图4-5所示的银行账号操作和交易安全管理两个功能。交易管理功能 ̄ ̄I_银^交行易’账安号全I墓图4-5交易管理功能结构图(1)银行账号操作基于手机在线支付系统的用户在购买商品使用系统进行支付时,其实质上是通过移动营业商对与用户绑定的银行卡进行操作的过程。在交易过程中,用户对银行账号的操作主要包括普通用户对银行账号的查询、转账操作,W及商户用户对银行账号的查询和周期结算功能。(2)交易安全管理功能在整个支付过程中,为了保证交易中各方合法性,W及为了确保网络传输过程中的数据传输安全。在交易过程中,采用SET安全协议,化及Socket通信机制来保证网络中传输数据的安全性,实现商家!^及移动支付平台之间的透明传输。4.3.3安全管理功能随着电子商务技术的飞速发展,使得信息安全问题越来越成为了电子商务发展所不可避免的问题,手机移动支付过程中的安全问题也成为了关于手机在线支付所必须要关注的问题手机移动支付过程中所常见的安全问题,及其管理方案设计如下所示。(1)手机遗失或被盗的安全问题手机在线支付系统主要通过对用户的账户、密码操作来实现对手机用户的账23 基于android手机的支付系统没计与实现户安全的保护。因此,,当手机遗失或者被盗时由于无法获得手机在线支付的账号和密码,因此无法窃取用户账户中的金额。(2)空中无线窃听问题手机在线支付系统主要通过GPRS、3G、4G无线网络进行交易数据传输,虽然这些无线传输网络不想WIFI网络那样完全公开,但是由于受到无线通信网络自身特点的限制,使得空中窃听手机在线支付用户账号和密码成为可能。为此,。在系统设计时,应该注意网络中数据传输安全性的设计,W避免空中窃听风险(3)系统漏洞攻击针对手机Android操作系统平台,或者用户手机上的某个已安装应用软件的漏洞,或者针对手机在线支付系统的服务器漏洞进行攻击。而且手机在线移动支付系统与商户之间采用周期结算的功能,因此对于数据库中交易数据的保存也是手机在线支付系统所必须要关注的问题,在手机在线支付系统设计时,应该注重数据库中数据的备份保存工作。4.4.3后台管理功能为了保证手机在线支付系统能够为用户的正常交易提供正常的手机移动在线支付服务,除了前台为用户提供的具体支付业务功能W外,手机在线支付系统还应该为用户提供良好的后台管理服务-6。具体的后台管理服务功能设计如图4所-/J、0后台在线管理功能I__系统系该统数性据能库维备护化图4-6手机在线支付后台管理功能(1)系统数据库备份、在手机在线支付系统中,用户的账号信息用户交易信息都存储在后台服务一器中,旦后台服务器受到人为误操作或者水灾火灾等自然灾害的影响,使得数据库由于软硬件原因导致数据丢失时,就会导致手机在线支付系统无法为用户提。供正常的在线支付服务,甚至影响用户的财产安全为此,为了保证系统的正常。运行,W及系统的安全性,需要定期进行系统数据库的备份24 4手机移动支付系统设计(2)系统性能维护手机在线支持需要能够为用户提供实时的在线支付功能,为此手机在线支付系统的性能一直是系统所关注的重点。系统管理员,应该定期进行系统性能维护,W保障系统能够为用户提供快捷的服务。4.4系统安全体系结构设计为了保证手机移动支付系统的安全性,在本文的研究中,采用支付密码和SET愤议相结合的手机移动支付安全体系结构。4.4.1支付密码确认为了保证手机移动支付过程中的交易安全,服务器端需要确保终端的合法性,考虑到移动支付环境的复杂性。所确认的支付密码方案为;在使用动态口令时,当需要使用动态口令时,与后台服务器进行通信确认,在却热用户合法性时才使用静态密码,当商家服务终端与手机终端进行通信时,服务器对用户终端输入的。静态密码进行验证,来去人用户的合法性通过用户终端身伶认证和密码认证-7所,最终确定如图4示的双重安全认证流程。普运窗系巧"[:巧户终歲3、结3错5、蒋该済结巧果告左巧B競窥发^4S?f.起该巧巧户\合洁註萬巧t■U用声发起\I&>讚一臟嚴簿巧2.麵巧1[t提P蜘I户清忌每£夏数赛妄知支巧巧巧支巧系巧当巧冕度巧码窝普运宿傳忌都验证适注后褲认用户合法巧,厲慧更巧图4-7密码认证流程图-7所示,如图4,通过支付密码认证和身份认证为手机移动支付提供了更好的安全保障,从而为用户提供更加快速、便捷的移动支付,尽可能的降低手机移。动支付风险,更好的保护普通用户和商家的财产安全25 基子android手机的支付系统设计与实现4.4.2SET安全协议(1)证书注册在整个手机在线支付过程中,支付网关、商家W及消费者都需要电子证书都不需要到认证中也申请自己的证书,而且这些实体的电子证书注册W及申请的过-8程类似:,例如消费者证书注册与证书申请的流程如图4所示 ̄_____登录VBR______.lC黎巧加巧注册巧息的信息摘嬰IFmashwep、、2.断帛伽滅削旨m ̄ ̄.姑&钥加密〇公巧rr±r3、\eKl=?o<ue+Ki)江册fe姑^\、I对称密奶K1C公钥、C私魏\ ̄^C祗书/‘涨/hC祕聪’!.(/a據拱解密出公销、对禪密销}〇2.K1軟密出浊册信,教/j1?D+KKRca(KUc13.鼓魏解惟出注册朽息的情栽摇要.)eDkKRc):册储ash与註‘齒的H傕:比较呂[C厂\_/Dfac(Hash))巧巧Cm(Hash(Re),H{Repg图4-8证书注册与申请流程(2)购买请求和支付授权流程SET协议的手4-9:在基于机在线支付中,购买授权和支付请求流程如图所示26 4手机移动支付系统巧计^''N)+Hash(PIWIficateDualSinatureOIPD,g,,IMnature+OIMD)[It)Encry比dWperitMCtficaeEncrtedAuthReypgp|三^^thRei巨KRasAutem(HhhR)公每加禁(q)NE2(Au比Ra.k巧)1\Ecu(K2)。]g公^PurchaseResAuthReq ̄ ̄过極略f^— ̄ ̄1.验证解密的Auth^/\'Req和PI*Vppij1VPv发送VBRAuth到^y吗创迷AuthRes屯释吗加密AiithRes,的消息摘嬰,妝加密AuthRes,為公 ̄/\奶加巧K34.创建tokenG私token的消息摘耍IM^,钥加密\一 ̄en的加密tok,G公朗加密K4和帐户信息图4-9购买请求和支付授权流程图4.5系统数据库设计一、数据库是整个手机在线支付系统的核也组成部分之,所有的用户信息商户信息和交易记录信息都存储在手机在线支付系统的数据库中。在手机在线支付-0/系统中主要包含了如图41所示的系统用户表、系统权限表、用户商户信息表W及一些日志记录信息表等。27 基于android手机的支付系统设计与实现"‘—。-T:站船!肪LKTIDLi0ongnteer_gLISTn)0NAME;to巧cha巧过e反_^^^|'——"..gINTERFAG臣CX5BESSLh—Aongcarade巧拭j战子j沾K-'.R1I0L巧TDLoninIJgleger;0NAMEoncarac.UST_JDgtersLh0!MSiLonginteger|USER—BANKDIi0Jnteger—..?。…。<机,舶,j。CARDMUMS凯Ungcha。舶。。…c。LNAMEUngchara二cte。0delflagBooleanI口*巧WCD<Und础ne:oFREEZEaAGBooleanI…g—.-如IJSHlieSGROIPSES.目U!SESIO!N|0LISTIDLonimeerI_gg0NAMELoncharacters;?g□,j\ ̄-‘0BANK_IDIntegerSYSUSERrGROUP"—。RDNtJM化RUmg说ancte皮9^。;〇|〇<Un舶"d>二ne、色〇〇‘iea:心L^^MECUENTToG0NALongcharactersR|oCEATETIME<Undefined>0<f>_IDUndeined|LISTIDTEN〇PERA了巧(Undefined,_0CONT<Undefined>f__^0LOGTIME<Undefined>8j.00巧RAT巧<Undeftn^i^滿:嫩"BU;GO!化规IDU沈RRiPPRTVI让化S、…———^^INPOSBUSESSESS->LU(jra0LiSTDLon&_Jginter#ge’〇;〇<Undeted>&〇in0S化Une10<Undefined>BUESSDg佈erJg|?NAMELongcharade巧0POSIDLong础araclsoCONTENT<Undefined>巧i一— ̄-^—-巡一^REMARK<Unde1lned>0LOG<Und机ned>|择基………BOSSINFOB姑庵晶1巧谎0瓜<Unded>〇!〇<Und8finecfme0i们巧FACEADDRESSLo如sra0CO们ENT<Un触加如—巧0LOGTME<Ulmed>oCONNECT<Undeftn?cinde_…0OPE^TEF!<Undg)med>,4--图10系统数据库ER图-系统数据库中关键数据表的描述如表41所示。-表41系统数据库关键数据表描化表明描述USER系统用户表,主要存储手机在线支付系统的用户信息USERGROUP系统用户组表,保存系统用户组的描述信息CLIENTINFO客户信息表,保存客户基本描述信息BUS,INESSE幻商户信息表保存商户基本描述信息NFOPRIVILEGE系统权限表,保存对系统不同功能模块的操作权限信息LOG系统个日志表,保存系统给运行过程中的操作记录信息BOSSINFOBOSS系统个信息表,保存与BOSS系统的通信接口描述信息28 4手机移动支付系统设计4.6本章小结通过对手机在线系统用例和非功能性需求的分析,确定系统设计原则和系统总体结构,并且在对系统用例分析的基础上,确定系统的功能结构,W及对系统各种存储交易信息、用户信息的关系型数据库的设计进行研究。29 基于android手机的支付系统设计与实现5手机移动支付系统实现5.1用户管理功能实现5丄1用户账户管理功能用户账户管理功能主要是实现客户的开户、销户、密码修改、余额査询、账5-1户设置等功能。,其中手机支付用户的开户流程如凰所示开户申请用户运香巧营业巧银行/用户准备\?陆古m\/,■2、巷业斤扭里I1、巧免化务巧巧戶申宙并度斌^^身?巧申巧巧及SIM卡巧宿&I户KI^巧户i\3、51认用户倩思分法性,巧定別K与術:巧片’4、向^巧II定III用户资料(恆籍.々巧证、银仔卡>???号,巧求与巧行卡遥绑定III^I巧用户巧至7、巧运巧餐爱6、W认盾巧用II巧巧反巧。化,户巧巧卡獲巧巧^并巧存在玄巧平巧满定?巧巧果台苗中反馈^巧巧IIII''^巧巧户化务申^^()V____y图5-1用户开户申请流程图30 5手机移动支付系统实现5-1如图所示IM幻,当移动运营商在接收到用户对手机支付的申请之后,获取、编号IM:通过手机NFC,并且记录用户的归属地手机号等信息,完成S卡的认证芯片和SIM卡的连接,手机操作系统会自动访问手机的幻M巧片,并且将幻M芯NFC巧一片的信息传输个片,完成用户唯标识的识别,通过与银行网关的;最后通信,实现用户银行卡和幻M卡的绑定。移动运营商向商业银行提交银行卡绑定申请,并且将用户的银行卡号、身份证号等信息发送给银行迸行核实,根据核实SIM、NFC苍片和银行卡的绑定结果,完成手机卡手机、。用户注册实现的关键代码如下所示:/抑*开产盤务流穫*§1燃ramcus始妨CT靖户傭&*trs幽mi运巧结榮幸/publicStringonAccoimtCCostoinercustomer)pe{'/VS滞用户德,穀占bo站巧成巧agchecked(c腿to沉er);化!打礎H//验证失殿驚鹽纔娛權息"re!turn用户愼A燕误,谱綾寒.正騎的用户權您^)//鷄定SIM卡黯NFC避掉fa5=birlgundmg(ctstomc);撃a){g//瓣定炎败避授I猎i愛禱黨?*r-retuiiSIM衫鷄定爽緣:!;}八運过巧户構息获得银巧接口满葱棘Messaems=etMessae(custoni^r)gg;gg的{八獨彌sockctXft发送權息熟j擴雜接Pfa=SoctUrem/mslgketilj(g);巧沿agM//银巧驗姬失敕返撼错误倍截?rc姑ra银觀验证失败!}'/V验证处薇雖成癖裸碟羯户数据dao.savc(customer);//操作成功遽國签字符率"。return;catehlOExcetone}(pi){?.!oeixorr发送繼息异常,;g)""return银巧验证失敕!:))5.1.2业务变更功能业务变更功能主要包括用户身份信息的更改、用户账户信息的更改、用户密31 基于皿droid手机的支付系统设计与实现钥信息的修改,修改后的数据保存在手机移动支付的数据库中,用于新支付信息的核对和新身份的认证-2。业务变更功能实现流程设汁如图5所示。业务变更用户运营商营並厅银行/用产准8"\巧础倚巧\/满户按11I11品、《户化穿置巧的頭底巧妃巧产拍义性IKi^又巧巧巧裤>tI■..4、梢卢堪与終II鼓供息,化採yi_3、巧求用户巧.*'^i:^l4添巧巧改俯患統Jl^成蜜化巧f(-I巧巧卡与!I4、接巧用户滞'姐巧巧孩4、向稷巧鉛巧II''贫随户茫'值如Y爾户辩料(槪拱■^讀]\巧,巧求与银巧語括淡渚!卡I*''乂、/XN^、VJ7、!6巧巧妳巧巧、输化巧钟馈银巧巧巧巧底!I,户巧巧卡渚巧巧.^拌化奋巧交村半换满巧,稱錄巧台巧巧媒中孩巧想這巧涵 ̄Er'-'N山巧巧户巧思)(、’y图5-2业务变更功能流程图5-2如图所示,在移动运营商接收到用户的业务变更申请止呕,首先需要对用户的身份进行认定;然后在判断用户申请的业务更改功能是否会涉及到银行卡业务的变更,如果不涉及到银行卡业务的更改,那么就只需要更改本地数据库即IM可;第H步是实现银斤网关实现用户银行卡和S卡的绑定,移动运营商向银行网关提供银行卡绑定申请,并且将银行卡和用户身份证号发送到银行网关核实,32 5手机移动支付系统实现并且将核实的结果返回给移动运营商。业务变更功能实现的关键代码如下所示。絲/*账户信愚变更化务方法*taram'pcusto曲er变愛桐用户梧息*freturn变觅结果半/publicStrinmodifAccountCustomercustomergy(){//验证用户数撼有效性booleanfla=isValidcustomerg();即fkg){//验证失败返回错误信慰"!return用户信息有误,请提交正确的用户信息}//S数据库验证新信息麗巧更改了娘巧卡信息=fladao.chaneBankAccouiitcustomerg;g()化fla)(g{//遁过用户信息获得银斤接口消息体Messaems=etMessaecustomergg;gg()的{ocket/,/调巧s王具发送信息到指定搂口fla=Socke.t肌lse化ng斯巧);if!fla(g){//银巧验征失赎返岡错误惰應"<return银巧验证失败!;}cachlOEti}t(xcepone){’log.error厂发送消息异常。);"’return!锻巧驗证失败;}}//验证处理完成隔叟新用户数据过ao.update(cu巧omer);'//操作成功返回空字符串return;}5.2交易管理功能实现交易管理功能主要包括面向消费者的移动支付功能和面向商户的周期结算功能。33 基于android手机的支付系统设计与实现5.2.1移动支付功能移动支付功能是整个支付系统的核也内容,根据用户的安全标志,并且而采用SET安全协议和Socket通信协议来保证移动给在线支付的安全性,交易交互-3的信息采用密码加密方式进行传递。在线支付流程设计如图5所示。移动支付用户商家支衬平台银行/\<:巧拓>\/I巧户巧巧金巧 ̄II2.I村常巧T^^「—L―京、册确巧敵4、糊浙i处蹄诚ir录朽軒滯f!络端铅放巧上k片煤收巧户IMS巧、受安J用户僻忿盾一—^.I^-支仍蘇辕入《巧^巧钥及《巧金漠蒋思说SI的有?法性I,帘妈,彝t度镑艾巧平台mmI人/、—城甜户合法[宽易爽巧>户、^、、 ̄、/、Sf丫rximlWIi栏鶴总巧对对滋用户豁巧卡_>巧平!’导、策码、支讨讯户卡弓、荣巧II金巧发送給银巧!及余雑巧巧猿化!8、栽巧抽误联站卡弓巧密巧^二> ̄人r'^9、余巧不化y,<mm‘11wlll.XItal’苗"赖帶交沒成巧*巧泣巧适回挣4}贸回、记/妃井将义岛厂觀驗’—IMf's双乌坦库.—I图5-3在线支付流程图-3所示如图5,用户在选购好商品之后,用户使用手机支付系统进入付款流程。首先,用户在移动智能手机终端,放到商家POS机感应区,然后由商家POS34 5手机移动支付系统实现机读取用户智能手机的NFC巧片,然后将信息发送给移动支付系统,通过系统中的姓名、银行卡号进行认证,向银行网关提交交易申请,运营商BOSS系统进行用户认证。在线支付功能实现关键代码如下所示。/**''-''%没籍麵电tparamf坦rm褒懸翁#鑛?/町I时1尼¥0垃transac社凸nTransiCtktnFoimferm)f{W邏iSr燃觀i;綾来《變户I眠I号《齋顯擬機客庐儀慈Cust白mcreustamcr=da曰.技ndCustocmcrBylm峭拉no■龄嘶;"磯欄戶翁》宙odtara。=isV出d(cus仿助*ST)巧;MesisagcosMsg=null;pK(1化轨//嫌瞄觀i;麵齡数穂猶餐懸丽鑛敵纏磯縣變餘《家齡媛Wgg*—pmiM嗦=醉tPasMc邸啤5脚nn,客户懷SW機.!;;的{//鑽逝蕾髓鑛麗麵麵m姑etoUtiL糾曲i(osM:絕p}latoh(to应tceptismC){cr1。舊.rnp燃turn;}//邏触錫fLbfIiJ徽墨获顧徽掉提u乂M消遽体Mess技嗦ciHJ=餐幻Tr江脈acticmM傑saGfbm〇嚷g(;try!//機itssekstX爲徽靈鑛息麵遞變機口0ag=SbekciUtilJi;Bimsg()^师喊{■//现滅?0邑桃±#?数??變經厕飾魏*藥變殺输廳家》揉《德疆 ̄'osMsi=etPosM班sscno交縣爽败!》pgfjg脚,;*^}{"iWjosfLt#?敷携觀變靈國齡数樣觀縣发鑛廳*鏡疑鑛僞戀35 基于android手机的支付系统设计与实现**o泌!=化sMessaeformp巧g货g(,巧場成功1);"交瘍成功.傑#交疑记聚dao^ave(fomi};}//发遞孩鑛德息Socke似姆osMsg;);eateblOBxceptione}()floicrrorr发淺消,敎#常g。}}5.2.2周期结算业务为了简化用户支付流程,提高用户支付效率,在手化在线支付系统中只是记录了用户交易的明细记录,但是并不进行实施结算,而是在后期定期向银行发起结算请求5 ̄4,周期结算业务流程设计如图所示。36 5手机移动支付系统实现周期结算商家支付平台银行1^1、支付平合定I期发起结第工作II2、从数据库中I读故该商户交磊明巧3、开结该閣户!II1收入总金额、,并4银巧接收到连同椅户澄记账?支付系统转账申号姓名发送洽银诸社I*I,‘'"6^言化到银?厂U吿掉酪極II'I7、商家接化到.宛成操作通知,_/I结算通知并孩实并将结果及明细l知iS支Z付t系统%发iS额户IIII对账人X对账<)\JVI\完成结算!V图5"4周期结算业务流程图首先,有手机在线支付平台发起周期结算时间,后台服务器会从个数据库中读取该用户的交易名洗记录,并且对照分析用户的收入金额,通知银行将相应的金额转入到商户所绑定的银行卡中,在确认无误之后,将转账结果返回给手机支。付系统,完成本次周期结算5.3安全管理功能在本文的研究中主要通过对传输数据的加密和使用SET网络协议来保证手机在线支付系统的安全。37 基于android手机的支付系统设计与实现5.3.1数据传输安全控制对在网络中传输的交易数据进行加密是保证交易数据安全最基本的操作。在很多情况,对网络中传输的交易数据进行加密处理,是保障交易数据不会被窃听和篡改的唯一方法。加密算法是对交易数据进行加密的方法,目前的数据加密算法主要包括DES、RSA。RSA且是算法算法,W及这两种算法的变形其中算法的安全性较高,而一种公开密钥加密算法,因此在电子商务中的应用非常广泛。RSA数据加密算法基于安全大素数搜索策略,可W大幅度提高数据加密的安全性。但是,由于RSA加密算法是基于大素数搜寻策略的,因此其对数据加密的效率较低。特别是在移动支付系统中,,由于移动终端的处理能力较弱,因此在实际应用中需要根据实际情况来进行改进,才能够提高RSA加密算法的实用性。RSA算法的具体编码实现流程如下所示:(1)素性检测在如上对RSA数据加密算法的分析过程中,可W看出大素数搜索策略是RSA数据加密算法安全性的基础,为此,在RSA算法实现过程中,首先需要对所选择一的数据进行素性检测,W确保所选择的数据为个素数。数据属性检测的实现关键代码如下所示:ii&llonRabnunsnednoncntg(g,g){//数据素性检测函数f=<++orinti0iTab.lenthi(;pg化W小素数检验,0==Tab巧n%p川)一//Tab中包含了些较小的实数,如果n能够被这些小数整除,表明{p不是素数,返回0return0:}}=0<++foriliintioo;p;)(//对n执行loop次循环素数检测,从而使得n不是素数,但是为检测出来的{bw(U5概率为loo巧n,但是未被检测出来的概率为,如果p,则不是素数5=0’250,0()()9765625可W保证循环,从而基本上5次W上所得到的素数都是真实的素数。if!Rabinn1((,))38 5手机移动支付系统实现{return0;}}}(2)密钥生成模块在通过素性检测,最终得到合适的大素数之后,就可W根据所得到的大素数来获得RSA加密的公巧和私钥。例如,在RSA加密过程中,通过素性检测,最=x终得到了两个大素数,分别表示为P和q,并且根据P和q来计算乘积为npq,3RSA加密一d最终将(,n)作为算法的公开在网络上的公钥,并选取个,使得3d=--1mod11d。RSApq,并将作为不公开在网络上的私钥进行保存加密算法()()的密钥获取的流程如图5-5所示:随机选取两个素数P和q▼=计算npq?得到公钥(3,n)I求d,使得=--3dlraodplq1()()5得到私钥d5-图5密钥生成流程(3)数据加密实现在电子商务交易过程中,数据发送方首先将公钥公布不出去,然后在发送数。据时,首先使用数据接收方在网络上公布的数据加密公钥对数据进行加密例如,在买家向卖家提交购物交易清单时,在买家客户端就会对其所发送的购物交易清-。RSA5。单数据采用私钥进行加密在算法中,数据加密实现流程如图6所示I39 基于android手机的支付系统设计与实现网上交易系统=T1〇h(l+log2t)/3带签消息M賣署IisigM=MC=Mdn()||tll%odn密文%o出(1)]I消息(ChTsigM),,()-图56数据签名流程(4)数据解密实现在电子交易过程中,当数据接收方在接收到发送端发送的加密数据之后,由于加密数据时采巧接收方公布在网络上的公钥进行加密的,所W需要使用数据接5-7。收方的私锅对加密数据进行解密,数据解密的流程如图所示40 5手机移动支付系统实现接收到密文信息Sec利用公钥解密得到明文S信息是否无>否是息是否否交易失败qX<fl编码信息否iJ交易成功图5-7交易验证流程5.3.2SET网络交易协议实现在用户查询理财产品管理系统中的理财产品描述信息时,用户终端需要建立SSL单向通道检验系统证书,即检验系统服务器身份。而在用户购买理财产产品进行转账支付时,需要与服务器建立SSL双向信道,不仅用户需要检验服务器的证书,同时服务器也需要检验终端用户证书,W保证用户操作的合法性。为此,在系统WEB服务器中分别生成两个域名为192.1192168.12.化8.1和..,并且文"eans"^件名分别为searchserverkestoitrferserver.kestoie的kestoie文件。_y和_yy在查询理财产品信息,终端客户与服务器建立单向SSL信道时,只需要服务器导入searchserver.kestore证书库,就能够为与之连接的终端客户发送服务器_y证书立服务器与客户端之间的单向SSL安全信道其结果如图5-8,建,所示。41 基于android手机的支付系统没计与实现*-口图5-8单向服务器数字证书生成在用户选定了理财产品,并且进行转账支付时,不仅需要服务器导入"searchserver.kestoietransfe「se.k,rverestore,_y同时客户端还需要导入_y实现客户端与服务器的相互验证,建立双向SSL安全信道,客户端导入t旧nsferse-rver.kes化巧证,9所示。_y书库建立双向SSL安全信道的示意图如图5图5-9双向数字证书生成在本文所研究的商业银行理财产品信息管理系统的研究中,通过Tomcat服务.xmlL的配置l器的server配置文件进行SS,在serverxm文件中,对服务器证书的路径、服务器端口、密码、是否需要请求用户端证书验证等进行配置,其配置的主要内容如下所示。42 5手机移动支付系统实现<--—1DefineaSSLHTTP/1.1Connectoronport8443>""""<Connec=8=torport443inaxH"pHeaderSize8192""""""二扣二二max!虹eads1日0inSareThreads2日maxarelhrad巧pSpes""""=fa二enab1eL0okupslsedisab1eUp1oadTimeouttrue""""""acceptCount二100scheme=htssecure二truetp""""clien1:Au1:h=falsesslProtocol=TLS""二keystoreFi1eG;toiricatcDnfsearchserver.kestore\—y\\""es二ktorePasss町orypasd""二trustStoreFi1eG:\tomcat\conf\searchserver.keystore_""=tPsworrustst日reasspdas/>"-m510所示的Tomcatservicel配置巧ce标签如图.x中,ui标示是否请求用户""""端证书,即是否需要建立双向SSL安全信道,true为建立双向SSLfalse为只建立单向SSL;巧IProtocol为SSL的连接协议;keys化re円le为服务端证书的存放路径;keysto巧Pas为服务器的证书密码。本文所研究的商业银行理财产品管理系统采用B/SH层结构,用户采用浏览器对系统进行操作。为此,客户端证书即浏览器证书,为了能够保证客户端的证书能够顺利导入到客户端浏览器中,客户端的证书格式采用PKCS12进行设计,c-li飢t.12文件中10证书内容存入到旧p,如图5所示。_5-图10客户端证书生成在客户端浏览器内,浏览器无法直接导入客户端证书库,而应该通过安装A州veX控件来支持证书库的导入。ActiveX插件中包含获得证书列表、获取指定证书和使用指定证书签名H个方法,其具体的分别实现如下所示;(1)获得证书列表A州veX中,客户端获得个人存储区内的证书列表实现代码如下所示。一/巧法存储区的数宇证书憬fIBSTRCPKi^BpControlCtrl::GetUserL^ist0nr?CertGetNameStri(tConteict沈民TMMESIMPLEDISPLA?TYPE0NULLszNameString128)gpCe,____,,,pj,null结戲織患^6了麻。{口1^兩答可厳1订证书内容的指针。*/i^?£〇|2£jj43 基于android手机的支付系统设计与实现(2)获得列表中的指定的数字证书在获得个人存储区数据证书列表之后iveX,Act中从列表中获得指定数字证书的具体实现如下所示。/巧法二:根据证书名称获得MSE64编巧的证书*BSTRCPKICorrtrcilCl::PCTSTRU^pl:rGetUsw:Cert(Lsse:rName)"?//打开系结rr存情区■=tSto:reCertOpenStoreVW0TST0邸PENEXISTI肌化AG化ERT_ST0邸_PRO_WSTEK—,0,,CER臨铁.p?'""TSS时—SYfTEM—ST0跑_CURRE历JJSE良LK);"山迪玉忘窗区曲盒指定患翻城去巧容^****^?,fVVWvN%VvWWVW/sv<V?产‘洗RTFI姐S地JECT口R,sreUserNam息化L0结ysS化in忘0,抓LL);(3)数据签名在获得了指定的数字证书之后,就可W利用该数字证书对需要提交给服务器的数据进行数据签名,W保证数据的安全性和不可否认性。/.席法H:对数据进行签名Base64,返回编码的郎綱格式的签名帮据BSTRCPKICici1lCtl::SDaiLPCTSTRsUsNLPCTSTRsfti4n:ror4:a(erainaaToS)?..Bp.-?T--_gn-■?gj■..??????W??f??????????//??????^(CryptDestroyHash(hH"a^^sh);free(pKeyProvInfoT?CryptReleaseContexthPro0(^);CertFreeCertificateContextCertContext;(p)CertCloseStorehCertStore0(j);returnstr民esult.AllocSysStringO:在终端用户查询么前,只需要通过用户名、密码认证来验证自身身份,并且通过服务器证书来认证服务器的合法性,用户终端对服务器端证书进行验证的结--11果如图5.所示。您乌樣站遍巧换的慎悬不会被赏她人查若或更巧。滔巧茲原#齡最金证弔巧柯廢。贫谣巧全证书由您没巧逸定宿巧的公司麵发,巧说蓉巷征书臥潭确定您這否信裡谅验证沉构。该安全征书的日期窗巧,^#一m该安全征书巧个鸟您试图查呑的网巧名称励5的荐W效名碌,蟲識续?。C遲從r’;。C:::靈'類cDj羣悬通书1…’I5-图11客户端的服务器证书验证而当用户需要支付转账时,为了保障用户账户安全,不仅用户需要保证服务器的安全性,需要验证服务器证书,服务器也需要保证用户操作其账户的合法性,44 5手机移动支付系统实现需要对用户证书进行验证,从而建立双向SSL安全信道。用户端证书的选择实现5-如图12所示。-身微验进一?您要登春的网站要求禄识。巧逸择证书?名捂雜发為^IBclientIBclient——取妻--'巧细悟息触…査窜征巧处品jI…'' ̄'…''.'苗岩取接!15-图12客户端的客户证书选择5.4后台管理功能实现5.4.1用户权限管理用户权限管理是指对系统内的用户、用户组成员访问系统功能权限的指派和配置。在本文的研究中,使用基于角色的权限管理方式来对系统中的用户权限进""行管理。在这种基于角色的权限管理方式中,使用角色的方式来对系统中具""有相同角色属性的用户进行管理。用户必须要通过角色来建立对系统功能的-访问关系,访问权限功能模块的类图设计如图513所示。UserUserGroup*,UserActionUseK;ro"pA"ion]'三,t,T11—.I'UstrCro‘Servce叩iUserSer.ic?|]SLscrPaoUserGroupDao-图513访问权限功能控制类图45 基于android手机的支付系统设计与实现其中,UserA州on和Use巧roupA加on是对用户角色和用户角色功能请求进行相应操作的管理类,Use巧ervice和UserGroupService是用于处理用户和或者用户组业务的逻辑类;UserDao和UserGroupDao是对数据库中用户角色和用户角色组进行操作的持久化类,主要负责对数据库中相关数据的操作。5.4.2系统日志管理系统日志管理功能主要为系统管理员提供日志记录和日志查询的功能。其中,曰志记录是对系统中的功能模块被调用后所记录的当时的系统模块运行情况;而日志査询是为系统管理员来分析系统是巧正常运行所提供帮助的。系统日志管理5-14模块的类图设计如图所示。JLoActionLrOg^rgi,TI1IIJU^ServiceJLo煤erDao'f--—―I1jLogl>ao5-图14系统日志管理模块类图5.5本章小结基于手机在线支付系统的功能结构,对系统中的用户管理功能、交易管理功能、安全管理功能和后台管理功能等手机在线支付系统具体业务功能的详细设计和实现进行研究。46 6总结与展望6总结与展望随着社会的发展,商品交换和交易过程的发生,随之出现了支付现象。而随着社会信用水平和商品社会的发展,在商品购买过程中的商品购买和支付分离,从而使得商品交易过程中的支付出现了新的特点,随着。同时信息化技术的不断发展和完善,W及客户需求的不断增加,电汇、邮汇、支票、现金等传统给支付方式在跨时空、便捷、安全和效率等方面都存在许多弊端和局限,从而也促使了第H方支付服务组织的出现,W及形式的不断发展和演变。6.1工作总结无论是支票交易还是网络在线支付,虽然可W免除人们携带现金的繁琐步骤,但是无法做到随时随地支付。而随着移动信息技术和智能手机终端技术发展而来的移动支付,却可W让人们通过智能移动终端和无处不在的移动网络,实现随时随地的在线支付。在本文的研究中,主要基于软件工程的设计思想,从系统需求分析、系统设计和系统实现H个步骤来对基于Android的手机在线支付系统进行研究。(1)系统分析通过对手机在线系统基本模式的分析,了解手机在线支付系统的基本需求。并且通过移动支付流程的分析,了解移动支付过程中的相关用户,从而认为手机在线系统功能需求的分析确定基础。同时从系统性能和数据安全两个角度对手机在线支付系统的非功能性需求进行分析。(2)系统设计通过对手机在线系统用例和非功能性需求的分析,确定系统设计原则和系统总体结构,,并且在对系统用例分析的基础上确定系统的功能结构,W及对系统各种存储交易信息、用户信息的关系型数据库的设计进行研究。(3)系统实现、基于手机在线支付系统的功能结构,对系统中的用户管理功能交易管理功能、安全管理功能和后台管理功能等手机在线支付系统具体业务功能的详细设计和实现进行研究。6.2不足与展望在本课题的研究中主要从手机支付功能业务和系统安全性防范两个方面来对手机在线支付系统进行研究一个完备的,但是在实际应用中,手机支付系统作为47 基于android手机的支付系统设计与实现功能性系统,其功能并不仅限于网上支付功能送么简单,还有理财产品的推荐和、购买信用卡还卡管理等诸多衍生出来的业务功能,为此本文的研究在研究的宽一一一度方面仍然存在些不足,需要作者在下步的工作和学习中进行进步的完善。48 参考文献参考文献1许翠苹.手机支付的现状与未来机.中国防伪报道201201[],()2武洒乐.基于射频识别技术的手机支付实现分析J].移动通信201312[][,()口]李菁.手机支付在我国移动电子商务中的应用[N].电脑与电信,2012(0巧-4杨蜂.移动支付国外典型案例研究[可通信世界201338:5054,[],),(5张湘东张文安谢云-.移动支付空中圈存技术研究.电信20142:1016.[],,口]科学,,(句62014117:6王丽君.移动支付系统平台研究阴.中兴通讯技术.[],,()[7]楽瑞鹏,廖建新.移动支付平台与多银行联网的安全策略方案[J].中国无线电20-155式629,,8陈媛媛-.国内在线支付的发展状况与存在问题的分析.商场现代化20136466[],,9经济师200632-毒西昌.浅谈电子商务网上支付.33[],,—10哈尹龙.网络金融初论网络银行与电子货币的发展及其影响.西南财经大学[]出版社20-13101104,,-[1刘洋刘维林.手机小额支付障碍研究分析.时代经贸,20128081叫:12郝文江武捷手机支付安全性分析及技术保障研究[A第26次全国计算机安全[],,,]一学术交流会公安部第研究所2011年,,程震,王凤英,王军波,WPKI在移动电子商务安全中的应用[A],中国管理信息化2008年,14郝江文保障重要信息系统信息内容安全的几点建议饥警察技术20131[],,,()1HiinsKevin民..Anevaluatio打oftheerformanceanddatabaseaccessstrateies[,引ggpgof-t-Javaobectrelationalmainframeworks.UniversiofKansas2007:6567jppgy,16JanHaiinemannreorKiczales.DesinaternimlementationinJavaand[],GggppasectJ.ConferenceonObectOrientedProramminSstemsLanuaesandpjggyggA-lications2012:4447pp,t-t17AilamakiAnastassia.Archi化cureconsciousdaabasesstems.TheUniversitof[],yy—20-WisconsinMadison13:3542,t18HiinsKevi打民..Anevaluationoftheerformanceanddatabaseaccesssrateies[]gg,pgof--Javaobectrelationalmainframeworks.UniversitofKansas2013:6567ppy,jg9莫佳..2^.基于移动支付的电子商务安全研究m商场现代化014^1.])20吴迪李慧云?移动支付系统.20105.,叮先进技术硏究通报[][()Android移动终端数据同步技术研究与应用1:阴.广东通信技术.201514口。蔡菁,()-1418.一22王知明.杨科华.种改进的SyncML消息分割传输策略.微型计算机.20142.[](巧49 基于android手机的支付系统设计与实现23段秀平张雷.张志琴.基于SSL和Kerberos的SyncML安全性改进方案研究.科[],技创新导报.20121.()24陈云,彭春山,邓亚平.Kerberos认证协议的研充和改进化计算机技术.[]20-13281037:巧.,()2陈启安,陈永健.基于kerberos协议的SyncML安全性改进町科技创新导报.[引2015.01:10,()一-26.1卿斯汉李改成.公平交换协议的个形式化模型叫中国科学2014.35:61170[,],[27]李先贤,怀进鹏.公平的非否认密码协议及其形式分析与应用机.软件学报,-2014:.1116281635国华曾致中.更安全的数字签名装置J.电子商务2013.5:脚]崔,[],9熊前兴.电子商务中不可抵赖性研究化小型微型计算机系统口]孟博,,20-11.3:604605-0卿斯汉.14:17411口.安全协议20年研究进展J.软件学报2014^4][],3aha-lom协议的安全性分析及其改进方法阴.微机发展2011.4:9697[U国民Y一[32]徐小平.种改进的楠圆曲线算法及在电子商务中的应用m.微电子学与计算20-机11.4:7478,一3蒋志雄.种改进的安全电子交易协议J.2013.3口,洪帆电子商务,][]34张国印施勇.楠圆曲线密码体制在SET协议中的应用微型机与应,[][可用式0555-571.6:J职业学院学报20-刘捷:3.浅析中国发展电子商务的瓶颈.迁宁商务13.11516[引[],[36]吴小强,刘晶,朱世朋等.基于可信第兰方的安全支付认证模型及其应用m.计算-机集成制造系统.2014.5:691697[37]王震.基于SET协议的在线支付分析[J.河北软件职业技术学院院报.2014.]-2:676938王成武.SET交.,王英伟基于易过程的研究与增强加密的实现的计算机管理与[]-9应用.2011.5:891-39杨兴凯.J.2013.62930基于SET的电子商务安全技术研究.电脑学习:[][]20-4別刘开国.电子商务中商业秘密的技术保护14.11:201203[机观代情化4-何化电子商务中安全支付协议的对比及应用机.2011.2:230.计算机时代9[U204-42易珊张学哲:11].电子商务安全策略分析.科技情报开发与经济[可1.58991[,420113张科伟..计算机应用研究..[],唐晓波带有时间戳的安全电子交易协议机5-:1681724420-141常晓燕.J...:巧62[],崔泽永安全电子支付系统探析[]现代计算机2045燕萍.SET..13.4[],侯整风协议分析及改进的方案机计算机时代50 参考文献[46]张清华卫CC密码体制在电子商务中的应用[可计算机工程与应用.2013.9 ̄enrcana47YaoShue,FenGfU,。沮巧hunia?011,Emiilalsisoftheeficienc[]gCq口)pyyj’-ofChinasinvestmentbanks.Eco凸omicResearch2011568Bein,(巧^,jg48TachibanaR.Audiowatermarkinforliveperfbrmance[C.Securitand[]g]y-e-WatrmarkinofMultimediaContentsV,2003;3243.g,pp4TibcoIncoorationIntemal.TibcoSusine化WorksConcets.TibcoBusiness[^p()pWorkIntallatiMnualPDFDocumt.ssonaen,201150TarJDAtomieitinElectronicCCommerce.In:roceedinsofthe15thArauxal[]ygy[]pgo-ACMSympsiumo凸PrinciplesofDistributedComputing2006:826,51

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭