(通信与信息系统专业论文)基于短签名的电子银行支付认证系统设计与实现.pdf_第1页
(通信与信息系统专业论文)基于短签名的电子银行支付认证系统设计与实现.pdf_第2页
(通信与信息系统专业论文)基于短签名的电子银行支付认证系统设计与实现.pdf_第3页
(通信与信息系统专业论文)基于短签名的电子银行支付认证系统设计与实现.pdf_第4页
(通信与信息系统专业论文)基于短签名的电子银行支付认证系统设计与实现.pdf_第5页
已阅读5页,还剩71页未读 继续免费阅读

(通信与信息系统专业论文)基于短签名的电子银行支付认证系统设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 随着互联网的日益普及和电子商务的快速发展,电子银行已经成为影响电子 商务发展的一个关键组成部分。安全问题越来越突出,尤其是电子银行支付认证 过程中的安全性,已经成为了一个亟需解决的问题。 本文首先介绍了一种基于双线性对的无证书短签名方案,该方案解决了基于 证书的传统公钥密码系统下的证书产生、管理、运输、验证等过程中不仅复杂而 且代价很高等问题;在该方案中,密钥生成中心( k g c ) 负责存储系统参数与生 成用户的部分私钥,在用户自己确定了秘密值之后,用户的秘密值与k g c 给用户 生成的部分私钥共同组成用户的私钥,同时根据用户秘密值与用户身份生成用户 的公钥,根据这样的密钥生成方法,用户的整体私钥不会被用户之外的任何人所 获取,保证了用户私钥的机密性。 根据提出的短签名算法,本文再提出了一种基于短签名的电子银行支付认证 系统架构,主要包含w e b 服务器、电子银行业务网关、w e b 网关、手机客户端四 个主要模块。主要流程为:步骤一,w e b 服务器将用户提交的交易表单数据发送给 电子银行业务网关:步骤二,电子银行业务网关对交易数据进行散列值计算得到 h a s h 值;步骤三,经w e b 网关对交易信息与h a s h 值进行可扩展标记语言( x m l ) 封装后以客户端t c p i p 推送( c l i e n tt c p i pp u s h ,c t p ) 的方式发送到用户手机客 户端;步骤四,用户确认了交易中的数据之后,在手机端利用存储在用户安全数码 卡( s d 卡) 中的私钥进行短签名计算,得到短签名:步骤五,用户将短签名结果 手动输入到浏览器,通过w e b 服务器将短签名提交到电子银行业务网关;步骤六, 在银行安全认证服务器验证短签名正确后,再完成交易,并将结果在浏览器页面 显示给用户。在本方案中,使用到了s d 卡密钥( s d k e y ) 私钥存储技术以及移 动终端进行短签名的方法,使得在用户私钥被机密保存的前提下,在手机端对用 户的交易信息进行了签名,使得用户能够对所进行的每一笔交易信息都能够完全 确认,同时使得交易具有不可抵赖性,电子银行交易的安全性也得到提高。 本文对最后对提出的短签名输入到浏览器的方案进行了改进,提出了使用双 音多频( d t m f ) 进行短签名输入的方案,使用户能够更容易的对短签名进行提交, 提高用户体验。 关键宇:电子银行支付认证短签名双线性对s i - - k e yd t m f a b s t r a c t w i t ht h ei n c r e a s i n gp o p u l a r i t yo ft h ei n t e r n e ta n dt h er a p i dd e v e l o p m e n to f e - c o m m e r c e ,e - b a n k i n gh a sb e e n ak e yc o m p o n e n to fe - c o m m e r c ed e v e l o p m e n t s e c u r i t yi sg e t t i n gi n c r e a s i n g l yp r o m i n e n tt h a tn e e d su r g e n ts e t t l e m e n te s p e c i a l l yi nt h e a u t h e n t i c a t i o no f e - b a n kp a y m e n t 1 1 1 i sp a p e rf i r s t l yi n t r o d u c e sn o n - c e r t i f i c a t i o ns h o r ts i g n a t u r es c h e m eb a s e do n b i l i n e a rp a i r i n g t h i ss c h e m ec a ns o l v et h ec o m p l e x i t ya n dh i g hc o s tr e s u l t i n gf r o mt h e g e n e r a t i o n ,m a n a g e m e n t , t r a n s p o r t a t i o na n dv e r i f i c a t i o no fc e r t i f i c a t i o n ,w h i c hi si nt h e t r a d i t i o n a lp u b l i ck e yc r y p t o g r a p h ys y s t e mb a s e do nc e r t i f i c a t i o n i nt h i ss c h e m e , k g c ( k e yg e n e r a t i o nc e n t e r ) i sr e s p o n s i b l e f o rs t o r i n gs y s t e mp a r a m e t e r sa n d g e n e r a t i n gp a r t i a lp r i v a t ek e yf o ru s e r , a n dt h ep r i v a t ek e y c o n s i s t so ft h ep a r t i a lp r i v a t e k e ya n du s e r - d e t e r m i n e ds e c r e tv a l u e ( a f t e ri ti sd e t e r m i n e db yt h eu s e rh i m s e l f ) m e a n w h i l e ,u s e r ss e c r e tv a l u ea n dt h eu s e ri dc a r lg e n e r a t et o g e t h e rt h eu s e d sp u b l i c k e y a c c o r d i n gt ot h i sm e t h o do fk e yg e n e r a t i o n ,t h eu s e r sw h o l ep r i v a t ek e yc a n n o tb e o b t a i n e db yo t h e r s ,w h i c he n s u r e si t sc o n f i d e n t i a l i t y a c c o r d i n gt ot h ep r o p o s e ds h o r ts i g n a t u r ea l g o r i t h m ,t h i sp a p e ra l s op r e s e n t sa p a y m e n t a u t h e n t i c a t i o na r c h i t e c t u r eo fe b a n kb a s e do ns h o r ts i g n a t u r e 1 1 1 ea r c h i t e c t u r e c o n s i s t so ff o u rm o d u l e s :w e bs e r v e r , e - b a n ks e r v i c eg a t e w a y ,w e bg a t e w a ya n dm o b i l e c l i e n t t h em a i np r o c e s si sd e s c r i b e da sf o l l o w s :i ns t e p l ,w e bs e w e rt r a n s p o r t s t r a n s a c t i o nd a t as u b m i t t e db yt h eu s e rt ot h ee - b a n ks e r v i c eg a t e w a y ;i ns t e p2 ,t h e e - b a n ks e r v i c eg a t e w a yc a l c u l a t e st h eh a s hv a l u eo ft h et r a n s a c t i o nd a t a ;i ns t e p 3 ,t h e w e bg a t e w a ym o d u l ep a c k a g e st h et r a n s a c t i o nd a t aa n di t sh a s hv a l u ei nt h ef o r mo f x m l ( e x t e n s i b l em a r k u pl a n g u a g e ) ,a n dt r a n s m i t st h ex m ld a t at ot h em o b i l ec l i e n t t h r o u g hc t p ( c l i e n tt c p i pp u s h ) ;i ns t e p4 ,a f t e rt h eu s e r h a sc o n f i r m e dt h e t r a n s a c t i o nd a t a , t h es h o r ts i g n a t u r ei sg e n e r a t e db yt h ep r i v a t ek e yi nt h es dc a r do ft h e u s e r sm o b i l ep h o n e ;i ns t e p5 ,t h eu s e rm a n u a l l ye n t e r st h es h o r ts i g n a t u r er e s u l ti n t o w e bb r o w s e r , w h i c hw i l ls u b m i tt h es h o r ts i g n a t u r et ot h ee - b a n ks e r v i c eg a t e w a y ;i n s t e p6 ,t h et r a n s a c t i o nw i l lb ec o m p l e t e da f t e rt h es h o r ts i g n a t u r ei sc o r r e c t l yv e r i f i e db y t h es e c u r i t ya u t h e n t i c a t i o ns e r v e r , a n dt h er e s u l ti sd i s p l a y e di nw e bp a g ef o ru s e r i n t h i ss c h e m e ,w eu s et h es d k e ys t o r a g et e c h n o l o g ya n dm o b i l et e r m i n a lt og e n e r a t ea s h o ns i g n a t u r e ,s ow ec a r ls i g nu s e r st r a n s a c t i o nd a t at h r o u g hm o b i l ec l i e n ts e c u r i n g t h ec o n f i d e n t i a l i t yo fu s e r sp r i v a t ek e y t h e r e b y ,u s e r sc a nf u l l yc o n f i r me v e r yo n g o i n g t r a n s a c t i o nd a t aa n de n s u r et h en o n - r e p u d i a t i o n ,w h i c hr e s u l t si ni m p r o v e ds e c u r i t yo f e - b a n k i nt h ef i n a ls e c t i o n ,t h i s p a p e rp r o p o s e s as h o r ts i g n a t u r ee n t r y u s i n g d t m f ( d u a l t o n e m u l t i - f r e q u e n c y ) ,w h i c hi m p r o v e st h ep r o p o s e d s h o r ts i g n a t u r e s c h e m eo nw e bb r o w s e r t h en e ws c h e m es i m p l i f i e st h es u b m i tp r o c e s so fs h o r t s i g n a t u r ea n dd e e p e n su s e re x p e r i e n c e k e yw o r d s :e b a n k , p a y m e n ta u t h e n t i c a t i o n ,s h o r ts i g n a t u r e ,b i l i n e a rp a i r i n g , s d - k e y ,d t m f 第一章绪论 第一章绪论 1 1 引言 随着互联网越来越普及,同时计算机技术迅猛发展,电子商务这种新兴的商 务模式已经渐渐成为了一种大众化的购物方式。从2 0 0 8 年到2 0 1 0 年,电子商务 的交易额成明显递增趋势,从2 0 0 8 年的电子商务交易额3 1 万亿,到2 0 0 9 年的 3 8 万亿,再到2 0 1 0 年的4 5 万亿,同时,网上零售交易额也从1 2 5 7 亿增长到2 5 8 6 亿,再到2 0 1 0 年的5 1 3 1 亿,发展速度相当迅猛【3 7 】。网上银行也以低成本、高服 务质量、较宽的业务领域的优势,呈现出强劲的生命力。 然而,技术的发展使得不法分子对计算机金融犯罪表现出浓厚的兴趣,而且 计算机犯罪案件侦破难度很大,通常被侦破的计算机案件只有1 左右,所以,网 上银行的安全问题已经成为了一个影响电子商务发展,甚至影响整个金融行业发 展的亟需解决的问题。 1 2 电子银行支付手段发展现状 目前,各大银行主要采用支付密码卡和u 盾作为对用户身份信息认证的电子 银行安全介质。 支付密码卡是一张大小、形状与银行卡相似的卡片,俗称刮刮卡,每张卡片 上覆盖有多个不同的密码。如图1 1 所示,用户在使用电子银行时,先向服务器提 交客户端证书,服务器对客户端证书验证通过后提示用户输入交易密码,此时用 户按顺序输入刮刮卡上的一个密码即可,每个密码只能使用一次。支付密码采用 一次一密的方式,不需客户设置,记忆,每次都使用新的密码,克服了静态密码 的缺点,有效解决了一些不法分子利用“木马”病毒窃取网上银行密码的问题。 图1 1 支付密码卡 2基于短签名的电子银行支付认证系统设计与实现 u 盾是一种基于“u s bk e y ”身份认证方式的通用串行总线( u n i v o r s a i s e r i a l b u s ;以下简称:u s b ) 设备,内置单片机或智能芯片,形状类似于u 盘。单片机 或智能芯片具有存储空间,用于存储用户的密钥或个人数字证书。用户在网上交 易时,先向服务器提交客户端证书,服务器对客户端证书验证通过后提示用户接 入u 盾,用户将u 盾插入个人计算机的u s b 接口,u 盾内置的1 0 2 4 位非对称密 钥算法便对数据进行由加密、解密和数字签名,从而保证了用户认证的安全性。 图1 2u 盾 但是支付密码卡和u 盾存在如下缺陷:对于使用支付密码卡或u 盾的用户来 说,在进行电子交易时,必须随身携带支付密码卡或u 盾;并且支付密码卡或u 盾还需要与客户端证书同时使用,否则无法进行电子交易。因而,对于用户而言, 不能随时随地的进行电子交易,限制了用户进行电子交易的应用环境。 1 3 电子银行支付认证手段发展趋势 无线通信技术的发展,使手机成为了人们日常生活必不可少的电子设备,尤 其是近几年来,智能手机的发展尤为迅猛。未来的电子银行支付的发展方向必然 是基于手机的各种电子银行支付手段。 基于时钟的动态密保就是现在各大安全厂商开发的一种安全的电子银行支付 手段。这种动态密码的原理在于:它通过特定的计算方式,在用户的令牌中产生 一个随机变化的密码,用户需要使用这个密码登录网银,然后进行下一步操作。 但是现有的基于事件的动态密码是基本上均为6 0 秒变换一次,因为这个动态口令 在6 0 秒内使用都是有效的,所以不法分子就设置了“钓鱼网站”,当该行的网银 用户进入“钓鱼网站”输入动态口令时,动态口令就会被截取,只要不法分子在 6 0 秒内使用这个动态口令,就能轻而易举操作该行网银用户的账户,从而达到转 账的目的。所以,在此前发生的案件中,犯罪分子也确实是在短短几十秒内完成 的转账。“一分钟时间,足够操作熟练的人完成整个犯罪过程,动态口令这种安 全工具本身就存在漏洞。”p 8 】 为了应对各种网络黑客的攻击基于挑战应答、随机数的动态密码支付手段也 被各大安全厂商提上了日程。 第一章绪论 3 1 4 课题研究背景与论文选题 从1 9 9 5 年美国第一个网上银行的创立至今,网上银行已经有了长足的发展, 一直在进步,但仍然在技术以及协议中存在着各种安全缺陷,导致网上银行以及 网上交易的安全等级收到了严重制约。而且,因为互联网的普及,越来越多对计 算机体系和计算机技术知识薄弱的人群成为了网络的主要使用者,安全意识也相 对薄弱,很容易被网络不法分子利用,观察近几年的网上银行盗窃案,很容易发 现,攻击者都是基于网上银行中某种协议或技术所存在的安全漏洞进行分析,攻 击其薄弱环节,尤其是从客户端的身份认证方面着手,通过截取用户的用户名密 码,或者利用数字证书冒充用户的身份,得到用户的利益。 在网上银行系统的实施过程中,主要存在以下几种安全威胁: 1 信息的机密性。客户端与网上银行服务器之间进行敏感信息交互,以及交 易数据传递过程中,应避免信息被非法用户窃听、截获,主要是银行账号、网银 登录密码、网银交易密码等机密数据。 2 信息的完整性。在客户端与网上银行服务器之间进行数据交互过程中,要 避免交易数据被篡改,使得交易金额以及交易内容发生变化,导致用户、银行、 第三方之间数据不一致,造成用户的经济损失。 3 身份认证。身份认证包含了信息安全四大要素中的不可否认性和可认证性。 对于传统的登录方式“用户名+ 密码”的认证方式比较弱,不法分子可以通过伪造 身份认证来冒充合法用户。钓鱼网站通常是用来获取用户用户名和密码的最佳途 径,因为利用网络技术,创建和官网相似度极高的网站是很容易的事情,所以也 让“用户名+ 口令”这种方式变得很不安全。身份认证性,主要是通过签名,使得 交易信息具有不可抵赖性,同时可以被再次认证。 分析现有主要的支付认证方式,它们存在如下弊端: 1 u 盾。 随着木马技术越来越猖獗,p c 端的安全是很难在当前的杀毒软件下保证的, 而且u 盾进行签名的都涉及到转账交易,其重要性更不容忽视。在用户使用u 盾 进行签名过程中,因为所签交易内容不可显示给用户,所以,在用户浏览器调用u 盾的过程中,木马是存在机会更改签名的交易内容的,因此在安全方面存在较大 风险。 手机端相对p c 端拥有更安全的环境,且对于要进行签名的交易,能够将交易 信息显示给用户,在用户确认交易之后进行签名,保证了每一笔交易签名都真实 可靠,从而保证电子银行支付认证系统的安全性。 2 支付密码卡 4基于短签名的电子银行支付认证系统设计与实现 支付密码卡在支付过程中使用一次一密的方式,随机选取支付密码卡中的密码 进行交易,虽然克服了使用静态交易密码带来的安全隐患,但是此方式对于交易 内容没有签名,所以其不具有不可抵赖性,相对有签名的支付认证方式安全性较 低。 3 动态口令 动态口令是和支付密码卡类似的一种安全认证技术,在进行交易的确认时,电 子银行认证服务器发送动态e l 令到手机端,由用户输入手机端的动态口令到浏览 器,完成交易。此方式存在的不足也很明显,对于交易没有进行签名,所以使得 交易同样存在可抵赖性的弱点。攻击者在非法获取了用户的动态口令后,可以使 用动态口令进行其他交易。 针对电子银行实施过程中的三种威胁以及以上三种支付认证方式中的安全隐 患,本文提出了基于短签名的电子银行支付认证系统,在该系统中,手机作为进 行签名的载体,能够对用户所进行的每一笔交易进行核实,待用户确认后进行短 签名,克服了u 盾的交易信息不可完全确认的问题;同时,该方案中使用了短签 名算法,使得最终所得到的签名长度只有8 字节,进行十六进制转换后依然只有 1 6 字节,远小于r s a 签名算法得到的签名长度,所以在保证了对交易信息签名的 前提下,1 6 字节的短签名同样可做为动态口令来使用,在用户浏览器端即可完成 签名的输入,回送到服务器进行签名验证,以保证交易的不可抵赖性,并且认证信 息与交易内容关联,在兼容现有动态口令运行模式的同时,安全级别高于动态口 令。手机端进行签名同时还具有使用更方便的优点,不需考虑浏览器所在环境的 安全问题,使用户能够随时随地方便的进行交易。本方案从各个角度加强了网上 银行的防御能力,减少攻击者的威胁。 1 5 论文的组织及结构 第一章主要介绍了论文的研究背景,简单阐述了电子银行安全现状、电子银 行支付手段发展趋势以及本课题的主要研究方向,最后叙述了论文的组织结构, 为后文进行铺垫。 第二章主要介绍了本文中所提出的数字短签名算法的数学知识基础、密码学 知识基础、以及用于电子银行身份认证中的几种典型数字签名方法,其中介绍到 得s m 3 哈希算法是之后短签名中使用到的哈希算法: 第三章着重介绍了一种基于双线性对的短签名算法以及其实现方案,并对这 个短签名算法进行了安全性分析以及效率分析; 第四章基于第三章所提出的短签名算法以及s d k e y 密钥存储方法,结合移 动互联网技术与智能手机客户端开发,提出了一种基于短签名的电子银行支付认 证系统,之后对该系统进行了详细的设计描述以及实现过程描述,证实了其实用 第一章绪论5 性,并且较现在电子银行支付认证系统中所使用的r s a 等数字签名技术有很大的 安全性改善。 第五章主要针对第四章所提出的数字短签名从智能手机客户端输入到用户浏 览器的这个过程中所存在的短签名不容易输入的问题提出了一种改进方案,将智 能手机客户端产生的数字短签名通过d t m f 音频传输方式传输到用户的p c 中, 然后由p c 中的音频解码软件进行解码得到数字短签名之后输入到用户浏览器之 中。 第六章对本文所研究的内容进行了总结,提出了其中的不足之处以及可以改 进的方向。 6基于短签名的电子银行支付认证系统设计与实现 第二章理论基础 7 第二章理论基础 关于短签名算法涉及到了很多数学知识,不仅仅是数论和有限域理论,还包 含许多其他分支基础知识,如复杂性理论、编码理论和代数几何等。本章将介绍 公钥密码学中用到的一些基础知识,为之后的短签名算法做理论基础铺垫。 2 1 相关数学知识 在密码学领域中,为了满足系统安全的要求,通常会用到许多计算难题假设。 并且在安全假设上,要在多项式时间内求解这些难题的概率是可以忽略不计的。 本节主要介绍之后章节中用到的一些数学难题和一些基础知识。 2 1 1 大整数的素因子分解问题 对给定两个大素数p 和q ,计算乘机r = p q 很容易;但已知大整数玎可以分解 成两个大素数的乘机,求疗的两个素因子p 和q ,使得p q = r 非常困难。 经过长期的实践研究,还没有发现分解大整数的一个有效算法,这正是设计 一些有效的数字签名的基础。例如经典的r s a 体制签名方案就是基于此问题提出 的,为了抵抗攻击,当前使用的r s a 体制一般建议的采用1 0 2 4 b i t 的模长。 2 1 2 有限域上的离散对数及d h 问题 定义2 1 有限域上的离散对数问题( d l p ) 【1j :给定一个阶为大素数p 的循环群 g ,geg 为g 的生成元,h 为g 中任一元素,求解整数x c 。,使得g 。m o d p = h 。 当选取的素数p 比较大时求解整数x 是非常困难的。目前基于有限域上的离散对数 困难问题的公钥密码协议建议使用5 1 2 6 打的模长。 定义2 2 计算o i f f i 争h e l i m 问题【2 1 ( c d h p ) :口,bec 为未知数,给定 g ,g 。,9 6 g ,求解g 曲g 。 定义2 3 计算d i f f i e h e l l m a n 逆阀题( 伽一c d h p ) :t ec 为未知数,给定 g ,矿g ,求解g ,g 。 定义2 4 判定d i f f i e - h e l l m , l 6 j 题( d d h p ) ,口,b , cec 为未知数,给定 g ,矿,矿,矿g ,判断g 曲e g 。是否成立。 8基于短签名的电子银行支付认证系统设计与实现 定义2 5 g a pd f f i e h e # m a n 问题( g d 艘) :这是一类c h d 问题困难而剃 问题容易的问题。 2 1 3 有限域上的椭圆曲线 定义2 6 设9 3 是一素数,有限域c 上的椭圆曲线【3 1 是一个被称为无穷远点的 特殊点f 和满足同余方程: ,暑,+ a x + b ( m o d q ) 的点似j ,) x 组成的集合e ,其中口,6 ,订+ 2 7 6 2 ;t o ( m o d q ) 一般在实际密码应用中,有限域( 窖为大于2 1 6 0 的素数) 上的椭圆曲线及有限 域凡( 坍1 6 0 ) 上的椭圆曲线尤其受青睐。 椭圆曲线e 上的加法运算定义如下: 假设p ( x a ,乃) e ,9 ,儿) e ,如果五= x 2 且月= y 2 则p + g = 善:否则 p + q = ( x 3 ,儿) ,其中 为= 如一而一毛,乃= 五“一x 3 ) - y l 且 ,i ( 奶- y l x x :- x 1 ) - 1p q 【( 3 x 2 + a x 2 y 1 ) 。1p 屯 最后,对于所有的p ee ,定义户+ 孝= 善+ p - t 。如果记2 p = f , 3 p ;p + p + p ,尸:p + + 尸,则称舻为椭圆曲线e 上的点乘运算; 如果存在最小整数刀,使得r i p = 善,则称刀是点尸的阶。 定义2 7 椭圆曲线上的离散对数问题:。me 为未知数,群以) 是基于有限 域上的椭圆曲线,给定只,舻以) ,求解掰。 当q 比较大时,求解m 是比较困难的。在目前技术条件下,基于椭圆曲线上 的离散对数困难问题的公钥密码协议只需1 6 0 b i t 的模长就能保证安全性。因而基 于椭圆曲线上的公钥密码体制备受人们青睐。 定义2 8 椭圆曲线群:密码学中使用的椭圆曲线是定义在有限域这样的有限代 数结构上,椭圆曲线上的全部点和无穷远点善在上述加法运算下构成一个阿贝尔 群,此群被称为椭圆曲线群。无穷远点f 为其零元。 第二章理论基础 9 2 1 4 双线性对 定义2 9 双线性对【4 】:设g l 是由p 生成的循环加群1 7 1 ,其阶为素数g ,+ g 2 是一 个阶为g 的循环乘群。双线性对是指具有下面性质的映射e :g l xg i g 2 : ( 1 ) 双线性:对于任意s q r q ,总存在e ( 鼬g 肛e ( s 固d9 和 e ( s ,r + 9 = e ( s ,o ) e ( s ,尺) ; ( 2 ) 非退化性:总存在s ,9 g ,满足e ( s ,q ) l g : ( 3 ) 可计算性:存在有效的算法来计算e ( s ,q ) ,v s ,q eg l 。 定义2 1 0 双线性计算d i f f i e h e l l m a n 问题( b c d h p ) :a , b , c c 为未知数, 给定尸,口尸 圮印q ,计算p ( 尸,尸) 出g 2 。 定义2 1 1 双线性判定d i f f i e - - - h e l l m a ni h - 题, ( b d d h p ) 口 b ,ce 为未知数, 给定只口尸,6 尸c p g l ,h w eg 2 ,其中j i ,:( p ,p ) g 2 ,判定办:;( p ,尸) 咖是否成立。 , 2 2 相关密码学知识 2 2 1 公钥密码算法 在私钥密码系统中,加密密钥和解密密钥是相同的或者解密密钥很容易从加 密密钥中推出。因此,加密密钥的泄露将使密码系统变的不安全。私钥密码系统 的另一个缺点是需要一个绝对安全的信道预先传送密钥,这一点在实际操作中将 占用很多资源。 公钥密码系统解决了这些问题。在公钥密码系统中【5 】,加密密钥和解密密钥是 不同的,或者说从加密密钥很难推出解密密钥;并且,通信双方不必要预先传送 密钥。 1 9 7 6 年斯坦福大学的赫尔曼( m e h e l l m a n ) ,迪菲( w d i f f i e ) 和默克尔 ( r m e r k l e ) 联合发表了密码学的新方向一文,首次提出了公开密钥体制的思 想。这一原创性的思想给密码学带来了重大的变革。 1 9 7 7 年马萨诸塞理工学院里夫斯特( r l r i v e s t ) ,沙米尔( a s h a m i r ) ,艾德 勒曼化a d l e m a n ) 研究出的一种利用素因数分解的困难性而设计的一种公钥密码 算法。他们的研究成果在1 9 7 7 年4 月以“数字签名和公开密钥密码体制”为题公 开发表,并受到高度评价。这就是著名的r s a 密码算法。 随后,密码学家基于类似的非多项式计算问题,提出了大批的公钥密码算法: e 1 g a m a l 算法,r a b i n 算法,m e r k e - - - h e l l m a n 背包算法,m c e ii e c e 算法,二次剩 余算法和椭圆曲线算法等。 l o基于短签名的电子银行支付认证系统设计与实现 d i f f i e 和h e l l m a n 建议利用n p 问题设计加密算法。他们推测如果把信息通过 编码加密在一个n p 问题中,那么破译这个问题等同于n p 问题。那么,这类算法 不可能在多项式时间算法内得到解决。为了构造这样的密码,秘密的陷门信息必 须被嵌入在一个涉及单向函数求逆的计算难问题上。一个函数厂,如果对它的定 义域上的任意工都易于计算厂( 力,而对于厂的值域中的几乎所有的y ,即使当厂己 知时,要计算厂1 ( x ) 也是不可行的,我们称这样的厂( x ) 是单向函数。这一辅助信 息就是秘密的解密密钥。这就是设计公钥密码体制的基本原理。这类密码的强度 取决于它所依据的问题的计算复杂度。然而,计算上的困难性问题不一定会产生 一个强密码系统。这是因为:1 复杂性理论处理的一般是一个问题的独立情况, 而密码分析常常处理大量的有联系的问题;2 复杂性一般是用最坏情况或平均情 况来度量,而一个密码算法要求几乎在所有情况下都是难解的;3 要保证密码难 破解,得保证只有通过陷门信息才能对单向函数反向求值。 需要注意的是: ( 1 ) 公钥密码系统的安全性是计算安全的,而不是无条件安全的;因为它基于 n p 问题并不是不可解的,而是难解的: ( 2 ) 单向函数在密码学中很重要,但是目前使用的单向函数都未能被证明是单 向的,只是被广泛认为是单向的。 2 2 2 h a s h 函数 h a s h 函数也称杂凑函数或杂凑算法1 4 】;它是一种把任意长的输入消息串变成 固定长的输出串的一种函数。这个输出的消息串称为杂凑值或消息摘要。单向h a s h 函数是现代密码学中的一个重要概念。密码学上的h a s h 函数可以为数据完整性提 供保障。h a s h 函数通常用来为数据提供短的“指纹”,一旦数据发生改变,指纹 就不再正确。这样即使数据被放在不安全的地方,我们可以用事先确定的h a s h 函 数来对数据进行计算以得到指纹,并检验指纹是否被改变。这样就能检测数据的 完整性。当然,单向h a s h 函数根据输入值必须要能很容易就可以计算出其消息摘 要,但是要产生一个输入以使其消息摘要等于一个特殊的值是很困难的。 这里我们用一个直观的例子来说明h a s h 函数的作用机制。设h 是一个h a s h 函数,x 是数据。我们不妨设x 是任意长度的二元字符串。则相应的指纹为y = j l ,( x ) 。 一个典型的消息摘要是相对短的二元串。假定工存在不安全的地方,被恶意的篡改 为xe 。则我们希望以前的消息摘要y 不能为现在的消息摘要y = 揪) 。这样才能 通过计算y - 以x - ) 并验证y 也) ,是否相等,就可以很容易发现x 是否被篡改。 单向h a s h 函数主要有两类:带密钥的单向h a s h 函数和不带密钥的h a s h 函数。 上面的例子是不带密钥的,下面介绍一下带密钥的。 第二章理论基础 1 1 一个带密钥的h a s h 函数通常被用来作为消息认证码,即m a c 。假定a l i c e 和 b o b 共享密钥k 。该密钥可以确定一个h a s h 函数吃。对于消息z ,a l i c e 和b o b 都能够计算对应的消息摘要y = ( x ) 。这样a l i c e 就可以将( 五y ) 从不安全的信道 上传给b o b 。当b o b 接收到( 五y ) 后,可以验证是否有y = k ( x ) 。如果等式成立, b o b 就可以确信x 和y 都没有被对手篡改过。特别的能确信工确实是来自于a l i c e 。 不带密钥的h a s h 函数和带密钥的h a s h 函数各自提供的数据完整性保障是有 区别的。用不带密钥的h a s h 函数时,消息摘要必须被秘密的传输。而如果a l i c e 和b o b 用密钥k 来最终确定所选用的h a s h 函数,那么他们就可以在不安全的信道 中传输数据和认证的消息摘要。 h a s h 函数还可以分为弱h a s h 函数和强h a s h 函数。 对于一个h a s h 函数h ,任意取定一个消息x ,若要找一个消息x ,使得 以x ) = h ( x ) 。在多项式时间内是不可行的。我们就称这个h a s h 函数为弱h a s h 函 数。 对于一个h a s h 函数h ,寻找两个消息毛、j c 2 ,使得j l ,( 而) = 以而) 在多项式时间 内是不可行的。我们就称这个h a s h 函数为强h a s h 函数。如果有这样的x m 、x 2 , 使得版五) = 坂暑) ,我们就称发生了碰撞。 一个安全的h a s h 函数至少要满足下面的几个条件: 1 输入长度是任意的。 2 输出长度是固定的。根据目前的计算技术应该至少取1 2 8 比特长,以抵抗 生日攻击。在安全h a s h 标准中,输出长度选为1 6 0 比特也是出于这个考虑。 3 对于给定的输入,要能够很容易的计算出消息摘要。 4 应该是弱h a s h 函数或者强h a s h 函数。 2 2 3s m 3 密码杂凑算法 s m 3 密码杂凑算法1 6 1 适用于中国商用密码应用中的数字签名和验证、消息认 证码的生成与验证以及随机数的生成,可满足多种密码应用的安全需求。 术语与定义 比特串b i t s t r i n g 由0 和l 组成的二进制数字序列 大端 b i g - e n d i a n 数据在内存中的一种表示格式,规定左边为高有效位,右边为低有效位。数的 高阶字节放在存储器的低地址,数的低阶字节放在存储器的高地址。 消息m e s s a g e 任何有限长度的比特串。作为杂凑算法的输入数据。 杂凑值h a s hv a l u e 1 2 基于短签名的电子银行支付认证系统设计与实现 杂凑算法作用于消息后输出的特定长度的比特串。本方法中的杂凑值长度为 2 5 6 b i t 。 字w o r d 长度为3 2 的比特串 符号 下列符号适用于本s m 3 杂凑算法。 a b c d e f g h :8 个字寄存器或他们的值的串联; :第j 个消息分组; c f :压缩函数; r p , :布尔函数,随,的变化取不同的值: g g ,:布尔函数,随_ ,的变化取不同的值; i v :初始值,用于确定压缩函数寄存器的初态: 只:压缩函数中的置换函数; 异:消息扩展中的置换函数: l :常量,随,的变化取不同的值: 所:消息; 所:填充后的消息; m o d :模运算: :3 2 比特与运算; v :3 2 比特或运算; o :3 2 比特异或运算; 1 :3 2 比特非运算; + :m o d 2 3 2 算数加运算; ( ( 七:循环左移k 比特运算 i :左移赋值运算符 常数与函数 初始值: i v = 7 3 8 016 6 f 4 914 b 2 6 9l7 2 4 4 2 d 7d a 8 a 0 6 0 0a 9 6 f 3 0 b c16 3l3 8 a ae 3 8 d e e 4 db o f b o e 4 e 常量: 个1 7 9 c c 4 5 1 9o s j 1 5 j 一、 【7 a 8 7 9 d s a1 6 j 6 3 布尔函数: f f , c 置l 刁- z 鬣石卿。m 裟 第二章理论基础 吗( x , y , z 卜 ( x n v ( z ) 1 6 。j - 6 3 式中zy ,z 为字。 置换函数: 昂( a d = x o ( x :, 9 ) o ( x “ 1 7 ) 曰( = x o ( x 1 5 ) o ( x 2 3 ) 算法描述 对长度为l ( 1 2 “) 比特的消息m ,s m 3 杂凑算法经过填充和迭代压缩,生成 杂凑值,杂凑值长度为2 5 6 比特。 s t e p l ,填充。假设消息m 长度为,比特。受限将比特“l ”添加到消息末尾, 再添加k 个“0 ”,k 是满足,嬲+ l + 七:4 4 8 m o d s l 2 的最小的非负证书。然后再添 加一个“位比特串,该比特串是长度为,的二进制表示。填充后的消息册的比特 长度为5 1 2 的倍数。 例如:对消息0 11 0 0 0 0 10 11 0 0 0 1 00 11 0 0 0 1l ,其长度,:2 4 ,经填充得到比特 串: 4 2 3 比特6 4 比特 ,、 ,。、_ _ _ _ _ _ 、 o i1 0 0 0 0 1o l1 0 0 0 1 0o l1 0 0 0 1l1 0 0 0 0 q q = q ! ! q q q l 的二进制表示 s t e p 2 ,迭代。将填充后的消息脚按5 1 2 比特进行分组:m 利0 n ”, 其中刀= ( ,+ 七+ 6 5 ) 5 1 2 。 对埘按下列方式迭代: f o rf = 0t o 疗一l “1 ) = c h n ,) e n d f o r 其中c f 是压缩函数,y ( o 为2 5 6 比特初始值,y ,d 为填充后的消息分组, 迭代压缩的结果为矿扣) 。 s t e p 3 ,消息扩展。将消息分组n 按一下方法扩展生成1 3 2 个字 ,嘶,睨,甄峨,肼,用于压缩函数c f : a ) 将消息分组b 划分为1 6 个字,嘶,嘶,。 b ) f o r j = 1 6 t 0 6 7 嘭卜毋( 6 0 ,o ( 彬- 3 1 5 ) ) o ( - 3 7 ) o _ 6 e n df o r c 、f 0 r j 式t 0 6 3 嘭= 形o + e n df o r 1 4基于短签名的电子银行支付认证系统设计与实现 s t e p 4 ,压缩函数。令彳,b ,c , d , e , f ,g 日为字寄存器,s s i ,s s 2 ,刀l ,m 为中 间变量,压缩函数v m = c f ( n ,7 ) ,0 f n - l 。计算过程描述如下: a b c d e 8 g h 七一p n f o r j = o t 0 6 3 s s i 卜( ( 彳“ 1 2 ) + e + ( t j “ _ ,) ) “7 鼹2 6 - - 鼹1 0 ( 彳 “1 2 ) 玎l - 眄( 彳,b ,c ) + d + 鼹2 + 彤 m 卜g 6 1 ,( e e g ) + + 鼹l + 彬 d 卜c c 4 - - - b :, 9 口卜彳 彳卜7 丁l h 卜g g 卜f 1 9 f4 - - - e e 4 - - p o ( t t 2 ) e n df o r 一彳厨丑涎同6 1 h o 。) 其中,字的存储为大端( b i g e n d i a n ) 格式。 s t e p 5 ,杂凑值。 a b c d e d f g h 卜“ 输出2 5 6 比特的杂凑值y = a b c d e f g h 。 2 3 典型数字签名算法 在文件上手写签名长期以来被用作作者身份的证明,或表明签名者同意文件 的内容。实际上,签名体现了以下几个方面的保证: ( 1 ) 签名是可信的。签名使文件的接收者相信签名者是慎重地在文件上签名 的。 ( 2 ) 签名是不可伪造的。签名证明是签字者而不是其他的人在文件上签字。 ( 3 ) 签名不可重用。签名是文件的一部分,不可能将签名移动到不同的文件上。 ( 4 ) 签名后的文件是不可变的。在文件签名以后,文件就不能改变。 ( 5 ) 签名是不可抵赖的。签名和文件是不可分离的,签名者事后不能声称他没 有签过这个文件。 而在计算机上进行数字签名并使这些保证能够继续有效则还存在一些问题。 第二章理论基础

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论