0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

采用混合加密算法实现可高额交易手机支付系统的应用方案

电子设计 来源:电子技术应用 作者:杨小东,王彪,张 2021-06-19 17:48 次阅读

作者:杨小东,王彪,张贵仓,魏伟一,陆洪文

手机支付是近几年才发展起来的支付方式。它有着与信用卡同样的方便性,同时又避免了在交易过程中使用多种信用卡以及商家是否支持这些信用卡结算的麻烦。消费者只需一部手机,就可以完成整个交易过程,深受消费者,尤其是年轻人的推崇。手机支付将会有非常大的商业前景,而且将会引领移动电子商务和无线金融的发展,成为人们生活中购物方式的一种潮流。随着手机支付业务的不断扩大,手机支付系统面临的主要问题之一就是系统的安全问题。而当前,我国关于手机支付安全性方面的研究几乎一片空白。针对手机自身的特点,基于椭圆曲线加密体制和AES加密算法的混合加密算法,设计了一种可以处理高额交易的手机支付模型。成功地实现了用户的银行帐号与手机号码的绑定,在银行帐号和手机号码之间建立了一对一或多对一的对应关系。该模型采用双重认证的方式进行认证,无线运营商对手机号码进行认证,银行对银行帐号进行认证。目前国内的支付系统都要求在交易过程中传送用户的银行帐号密码,而在本文的支付系统中,用户的银行帐号密码不需传送。

1 手机支付和混合加密算法

手机支付,又称移动支付。它是利用STK技术在SIM卡上开发的通过手机进行消费的功能。主要基于银行帐号和手机号码的惟一性,将银行账户和手机号码进行绑定,使用户可以通过手机短信息、语音、WAP、GPRS等多种方式对自己的银行帐户进行操作,实现查询、转帐、缴费、消费等功能,并可以通过短信息等方式得到交易结果和帐户变化通知。

用椭圆曲线加密体制生成对称加密算法AES的随机会话密钥K,使用随机会话密钥K和AES加密算法来加密消息。这样构造的混合密码体制可以获得较快的加密速度和较大的加密强度。选择基于椭圆曲线的数字签名,通常是一个二维向量,记为(r,s)。

2 手机支付系统模型

帐户管理是银行的强项,如果没有银行的参与,则不能处理高额支付。本文的支付模型是手机用户、银行、商家及无线运营商四者都参与的系统,与参考文献的支付模型相比,具有较强的实用性。整个交易过程按系统模型中的标号顺序依次进行,如图l所示。

3 参与者的初始设置

商家S通过椭圆曲线密码体制,选定IDS作为自己的身份标识,密钥对是(ds,Qs),其中ds是私钥,Qs是公钥,保留ds,公开Qs和IDs。与商家的初始设置过程一样,无线运营商T的身份标识是IDT。密胡对是(dT,QT);银行B的身份标识是IDB,密钥对是(dB,QB)。通过椭圆曲线密码体制选择(d1,Q1)作为与商家通信时的密钥对。选择同无线运营商通信时的密钥对(d2,Q2);将Q2与手机开户的消息(包括手机充值)发送给无线运营商;无线运营商进行物理鉴定(包括身份证等)并验证用户提交的消息后,生成用户的手机号码IDU发送给用户,同时在手机帐号的数据库中储存新用户(IDU,Q2)。选择同银行通信时的密钥对(d3,Q3);将Q3、IDU及初始存款的相关消息递交给银行;银行进行物理鉴定(包括身份证等)以确信手机号码IDU的合法性后,生成用户的银行帐号IDBU发送给用户,同时在银行帐号的数据库中储存新用户(IDBU,IDU,Q3)。

4 手机支付系统的设计与实现

(1)手机用户生成购买指令m1(包含购买物品的名称、数量及转帐银行的名称等),用密钥d1生成m1的签名(r1,s1);生成核实手机权限的指令m2(不涉及交易的具体细节),用密钥d2生成m2的签名(r2,s2);用同商家通信时的会话密钥,对m1、r1和s1进行加密处理得到密文c1;用同无线运营商通信时的会话密钥,对m2、r2、s2和IDS进行加密处理得到密文c2,将c1和c2合并后发送给商家。

(2)商家开启用户递交的指令c1,如果用户的数字签名是错误的,则交易过程到此结束。否则生成验证手机权限的指令m3,用私钥dS生成m3的签名(r3,s3);将m3、r1、s3和IDU进行加密处理得到密文c3,将c3和c2合并后发送给无线运营商。

(3)无线运营商开启商家递交的指令c3和c2,如果下面四种情况中有一种存在,则通知商家本次交易是非法的:①商家或用户的数字签名是错误的;②根据IDU查找不到用户在无线运营商处的记录Q2;③比较用户和商家递交的指令后,发现两组指令中的IDS,和IDU不相同;④查找用户的信用记录后,发现用户的信用度很低。否则通知商家用户拥有手机号码IDU的使用权限,交易可以继续下去。生成指令m4将验证的结果反馈给商家,用私钥dT生成m4的签名(r4,s4),将m4和签名加密后发送给商家。

(4)如果反馈的消息表明本次交易是非法的,则交易过程到此结束。否则商家生成请求转帐指令m5,用私钥ds生成m5的签名(r5,s5),money表示交易所付金额,nnm为交易序列号,IDBS是商家的银行帐号,将m5、r5、s5、money、num、IDU:和IDBS加密处理后递交给银行。

(5)银行开启商家递交的指令,如果下面三种情况中有一种存在,则交易过程到此结束:①商家的数字签名是错误的;②根据IDU查找不到用户在银行的记录仉和IDBU;③用户的银行帐户上余额不足(小于交易所需的金额money)。否则生成确认购买指令m6,用私钥dB生成m6的签名(r6,s6),将num、m6和(r6,s6)加密处理后发送给用户。

(6)如果用户认为本次交易是非法的,则拒绝给银行回复消息;否则生成回复指令m7.用私钥d3生成m7的签名(r7,s7),将m7及签名(r7,s7)加密处理后递交给银行。

(7)如果银行没有得到用户的回复指令,则购买过程到此终止;否则验证用户的数字签名的合法性,进行转帐缴费操作,并作相应的转帐记录。生成转帐成功的指令m8,用私钥dB生成m8的签名(r8,s8),将m8及(r8,s8)加密处理后发送给商家;生成用户的信用记录消息m9,用私钥dB生成m9的签名(r9,s9),将m9及(r9,s9)加密处理后发送给无线运营商。

(8)商家验证银行的数字签名合法后,将产品或服务交付给用户,并保留交易记录。

(9)无线运营商验证银行的数字签名合法后,增加手机用户IDU的信用度。

5 系统的安全性和有效性分析

系统的安全性主要基于有限域上椭圆曲线加法群的离散对数问题和AES加密算法的安全强度。银行在进行转帐前,必须给用户发送确认购买指令。若商家或无线运营商企图对同一订单向银行发送两次转帐指令,银行便向用户发送两次确认购买指令,用户根据交易序列号num等信息很容易得知商家或无线运营商有一方在进行重复消费。当有人冒充用户进行支付时,由于私钥d2和d3是未知的,所以无法通过无线运营商和银行的验证。每次传送指令时都进行了加密处理,如果攻击者选择攻击密文c,则需直接攻击128位的AES,这在现有的技术条件下是极其困难的;若选择攻击会话密钥K,则面临棘手的ECDLP数学难题,且会话密钥K只使用一次,此后不再有效,即使得到密钥K也没有多大的实用价值。当双方发生争执时,任何第三方都可以用通常的方式验证签名。手机用户发送两次指令便可完成整个交易。基于椭圆曲线加密体制和AES加密算法的混合加密算法,大大减少了计算和通信的负荷,所以本系统运算量小,易于在计算机的硬件和软件上实现。

用户通过手机支付交易时,无需使用现金,即可实现轻松购物。随着手机的日益普及,手机支付将有很大的市场潜力和良好的发展前景。本文结合混合加密体制的理论和手机通信的的特点,设计了一个可以处理高额交易的手机支付系统,整个系统具有较高的安全性和实用性。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 手机
    +关注

    关注

    34

    文章

    6721

    浏览量

    156047
  • 无线
    +关注

    关注

    31

    文章

    5341

    浏览量

    171950
  • GPRS
    +关注

    关注

    21

    文章

    983

    浏览量

    128876
收藏 人收藏

    评论

    相关推荐

    关于几种常用加密算法比较

    AES加密算法是密码学中的高级加密标准,该加密算法采用对称分组密码体制,密钥长度的最少支持为128、192、256,分组长度128位,算法
    的头像 发表于 03-19 09:21 5689次阅读
    关于几种常用<b class='flag-5'>加密算法</b>比较

    RC4加密算法的FPGA设计与实现

    ,它的局限性也逐渐暴露出来.在很多计算机信息安全系统中,硬件加密手段被应用到设备中来提高密码运算速度和系统的安全性. 给出了一种RC4加密算法的FPGA
    发表于 08-11 11:48

    如何去实现DES加密算法

    DES算法的简单原理是什么?如何去实现DES加密算法
    发表于 04-26 07:14

    如何设计一个基于FPGA的DES加密算法系统

    为了克服传统DES加密算法流水线的FPGA实现的子密钥需先后串级计算,密钥不能动态刷新的缺点,提出一种新的加密算法,提高DES FPGA实现系统
    发表于 04-30 06:29

    基于混合加密体制的手机支付系统该如何去设计?

    基于混合加密体制的手机支付系统该如何去设计?
    发表于 05-26 06:44

    DES加密算法是什么

    ,是要被加密或解密的数据,DES采用16轮运算,每轮产生一个轮密钥参与到运算中,密钥与明文运算时采用按位异或的方法(不仅仅是与密钥异或),但每一位存放的数据只有0或1,因此,DES的密钥空间仅仅只有2^56。2、3DES
    发表于 07-22 09:13

    对称加密算法是什么

    对称加密算法也叫私钥加密算法,其特征是收信方和发信方使用相同的密钥,即加密密钥和解密密钥是相同或等价的。非对称加密算法也叫公钥加密算法。其特
    发表于 07-22 07:09

    最强加密算法?AES加密算法的Matlab和Verilog实现 精选资料推荐

    目录背景AES加密的几种模式基本运算AES加密原理Matlab实现Verilog实现Testbench此文重点讲述了AES加密算法
    发表于 07-28 07:34

    快速硬盘加密算法的设计与实现

    针对硬盘加密的特定应用场景,设计并实现了快速硬盘加密算法FastDiskEnc。该算法是一种扰乱的硬盘
    发表于 03-31 10:33 11次下载

    地图数据网络分发的混合加密算法

    分析并比较对称加密算法DES, AES和非对称加密算法RSA,结合地图数据网络分发的实际应用,提出散列组合加密算法。该算法具有AES算法的高
    发表于 04-16 09:48 32次下载

    基于c/s结构的公安综合移动警务系统混合加密方案

    为了实现基于c/s结构的公安综合移动警务系统信息的加密传输.设计并实现了一种基于AES算法和Morii—Kasahara
    发表于 07-16 14:15 26次下载

    采用对称加密算法的机制 GB1584.2-1997

    采用对称加密算法的机制 GB1584.2-1997 本标准规定了用对称加密算法实现的实体鉴别机制,它适合于我国使用。
    发表于 04-17 14:51 15次下载

    采用多种加密算法的文件加密方法

    针对传统文件加密系统加密算法单一、加密文件格式简单、安全性相对较低的问题,本内容提出了采用多种加密算法
    发表于 05-26 15:35 0次下载
    <b class='flag-5'>采用</b>多种<b class='flag-5'>加密算法</b>的文件<b class='flag-5'>加密</b>方法

    XXTEA加密算法的KEIL C实现

    本内容提供了XXTEA加密算法的KEIL C实现,详细列出了程序共大家学习
    发表于 08-25 17:57 3170次阅读

    云存储中的混合加密算法研究

    针对云存储服务中数据传输和存储过程对数据的保密性、完整性和不可抵赖性等安全需求,根据云存储的特点,结合AES和RSA传统加密算法特性,提出一种具有身份认证的带干扰混合加密算法。从多个角度对算法
    发表于 11-15 14:37 10次下载
    云存储中的<b class='flag-5'>混合</b><b class='flag-5'>加密算法</b>研究