浅论手机彩信签名研究
作者:佚名; 更新时间:2014-12-05
论文关键词:手机彩信通信;数字签名;彩信认证;双向认证;J2ME
论文摘要: 本文探讨一种基于非对称密码体制、单向散列函数、数字证书和数字签名的手机彩信通信接入双向认证方案。在本方案中,认证服务器无需存储和查找客户端公钥,且移动运营商具有自签名的顶级证书服务器,无需借助第三方颁发证书。最后对本方案做了简要的性能分析。
1 引言
移动通信技术发展日新月异,3G,E3G,4G这些标志通信技术里程碑的名词。通过手机彩信功能,现在可以传输文字,图片,音乐和视频等多媒体信息。彩信丰富了我们的日常生活,与此同时彩信中夹杂病毒和一些不良信息的现象不段出现。通信安全问题已成为制约移动网络应用的一个瓶颈,并且随着移动通信网络的迅猛发展,日益变得突出。借鉴互联网领域的数字签名技术,本文探讨通过非对称密钥体制来实现手机彩信的通信安全。
2 非对称密钥体制
有对称和非对称两种密钥体制。在对称密钥系统中,加密和解密采用相同的密钥。因为加解密钥相同,需要通信的双方必须选择和保存他们共同的密钥,各方必须信任对方不会将密钥泄密出去,这样就可以实现数据的机密性和完整性。对于具有n个用户的网络,需要n(n-1)/2个密钥,在用户群不是很大的情况下,对称密钥系统是有效的。但是对于大型网络,当用户群很大,分布很广时,密钥的分配和保存就成了问题。因此在移动通信中不可以采取对称密钥体制。
非对称密钥体制的基本思想是加密密钥和解密密钥不相同,由其中一个密钥推导另一个密钥在计算上是不可行的。一对彼此独立、但又在数学上彼此相关的密钥KP、KS总是一起生成,其中KP公开,称为公钥,KS保密,称为私钥。加密算法E和解密算法D是分开的。非对称密码体制的特点如下:
(1)用公钥加密的数据,只能由与其对应的私钥解密,而不能用原公钥解密;反之,用私钥加密的数据,只能由与其对应的公钥解密,而不能由原私钥解密。即,设加密算法为E,解密算法为D,KP是公钥,KS是KP对应的与私钥,明文为X,则有:Dkp[Eks(X)]可以得出明文X,而Dks[Eks(X)]则无法得出明文X。
(2)非对称钥体制不存在对称秘钥体制中的密钥分配问题和保存问题。M个用户之间相互通信只需要2M个密钥即可完成。
(3)非对称秘钥体制支持以下功能:
(4)机密性(Confidentiality):保证非授权人员不能非法获取信息;
(5)确认(Authentication):保证对方属于所声称的实体;
(6)数据完整性(Data integrity):保证信息内容不被篡改;
(7)不可抵赖性(Non-repudiation):发送者不能事后否认他发送过消息。
3 一种双向认证的方案:
首先需要在移动运营商架设一台证书服务器。证书服务器有自己的公钥KCP和私钥KCS,同时证书服务器也有一张自签名的顶级证书,以防止它的公钥被黑客替换。在用户申请开通服务时,证书服务器为用户颁发一张数字证书,并对证书进行数字签名,以防止证书内容被篡改。颁发证书的时候为用户创建了公钥KUP、私钥KUS ,其中KUS由用户保存且保密,KUP公开。
移动运营商架设一台或多台AAA Server(Authentication, Authorization, Accounting, 认证、授权、计费服务器),它负责认证、授权和计费。AAA Server有自己的私钥KSS 、公钥KSP和加密算法D、解密算法E。同时,它也拥有一张证书服务器颁发的数字证书。
用户开机或者请求某种业务时,发起相应的认证过程,即向AAA Server发送认证开始请求。AAA Server收到请求后,向用户发送证书请求,要求用户出示数字证书。然后用户将自己的数字证书发送给AAA Server。
AAA Server收到证书后,有三件事情需要证明:
(1)该数字证书是移动运营商数字证书服务器所颁发;
(2)该数字证书未被篡改过;
(3)该证书确实为出示证书者所有。
对于前面两项,AAA Server只需验证数字证书上证书服务器的数字签名即可得到证明。具体方法是用证书服务器的公钥KCP解密数字签名,然后再用公开的单向散列函数求证书的散列值,并比较二者,如果相同,验证通过,不相同,验证失败。
为了证明该证书确实为证书出示者所有,AAA Server生成一个大的随机数R,并使用用户的公钥KUP(数字证书中包含KUP ,因此服务器无需预先存储用户公钥,也无需查找数据库,这有利于加快处理速度)将R加密,得到EKup(R)。为了防止R在传输过程中被黑客截获并修改,使得合法用户得不到正确的认证。AAA Server先使用一个公开的单向散列函数H作用于R,得到H(R),然后用服务器的私钥KSS对H(R)进行加密(数字签名)。最后将 Ekup(R)+Ekss[H(R)]发送给用户。客户收到Ekup(R)+Ekss[H(r)]后,首先应该验证R在传输过程中是否被篡改过。方法如下:首先,客户端使用AAA Server的公钥KSP解开Ekss[H(R)],即:DKsp(Ekss[H(r)])=H(R)
论文摘要: 本文探讨一种基于非对称密码体制、单向散列函数、数字证书和数字签名的手机彩信通信接入双向认证方案。在本方案中,认证服务器无需存储和查找客户端公钥,且移动运营商具有自签名的顶级证书服务器,无需借助第三方颁发证书。最后对本方案做了简要的性能分析。
1 引言
移动通信技术发展日新月异,3G,E3G,4G这些标志通信技术里程碑的名词。通过手机彩信功能,现在可以传输文字,图片,音乐和视频等多媒体信息。彩信丰富了我们的日常生活,与此同时彩信中夹杂病毒和一些不良信息的现象不段出现。通信安全问题已成为制约移动网络应用的一个瓶颈,并且随着移动通信网络的迅猛发展,日益变得突出。借鉴互联网领域的数字签名技术,本文探讨通过非对称密钥体制来实现手机彩信的通信安全。
2 非对称密钥体制
有对称和非对称两种密钥体制。在对称密钥系统中,加密和解密采用相同的密钥。因为加解密钥相同,需要通信的双方必须选择和保存他们共同的密钥,各方必须信任对方不会将密钥泄密出去,这样就可以实现数据的机密性和完整性。对于具有n个用户的网络,需要n(n-1)/2个密钥,在用户群不是很大的情况下,对称密钥系统是有效的。但是对于大型网络,当用户群很大,分布很广时,密钥的分配和保存就成了问题。因此在移动通信中不可以采取对称密钥体制。
非对称密钥体制的基本思想是加密密钥和解密密钥不相同,由其中一个密钥推导另一个密钥在计算上是不可行的。一对彼此独立、但又在数学上彼此相关的密钥KP、KS总是一起生成,其中KP公开,称为公钥,KS保密,称为私钥。加密算法E和解密算法D是分开的。非对称密码体制的特点如下:
(1)用公钥加密的数据,只能由与其对应的私钥解密,而不能用原公钥解密;反之,用私钥加密的数据,只能由与其对应的公钥解密,而不能由原私钥解密。即,设加密算法为E,解密算法为D,KP是公钥,KS是KP对应的与私钥,明文为X,则有:Dkp[Eks(X)]可以得出明文X,而Dks[Eks(X)]则无法得出明文X。
(2)非对称钥体制不存在对称秘钥体制中的密钥分配问题和保存问题。M个用户之间相互通信只需要2M个密钥即可完成。
(3)非对称秘钥体制支持以下功能:
(4)机密性(Confidentiality):保证非授权人员不能非法获取信息;
(5)确认(Authentication):保证对方属于所声称的实体;
(6)数据完整性(Data integrity):保证信息内容不被篡改;
(7)不可抵赖性(Non-repudiation):发送者不能事后否认他发送过消息。
3 一种双向认证的方案:
首先需要在移动运营商架设一台证书服务器。证书服务器有自己的公钥KCP和私钥KCS,同时证书服务器也有一张自签名的顶级证书,以防止它的公钥被黑客替换。在用户申请开通服务时,证书服务器为用户颁发一张数字证书,并对证书进行数字签名,以防止证书内容被篡改。颁发证书的时候为用户创建了公钥KUP、私钥KUS ,其中KUS由用户保存且保密,KUP公开。
移动运营商架设一台或多台AAA Server(Authentication, Authorization, Accounting, 认证、授权、计费服务器),它负责认证、授权和计费。AAA Server有自己的私钥KSS 、公钥KSP和加密算法D、解密算法E。同时,它也拥有一张证书服务器颁发的数字证书。
用户开机或者请求某种业务时,发起相应的认证过程,即向AAA Server发送认证开始请求。AAA Server收到请求后,向用户发送证书请求,要求用户出示数字证书。然后用户将自己的数字证书发送给AAA Server。
AAA Server收到证书后,有三件事情需要证明:
(1)该数字证书是移动运营商数字证书服务器所颁发;
(2)该数字证书未被篡改过;
(3)该证书确实为出示证书者所有。
对于前面两项,AAA Server只需验证数字证书上证书服务器的数字签名即可得到证明。具体方法是用证书服务器的公钥KCP解密数字签名,然后再用公开的单向散列函数求证书的散列值,并比较二者,如果相同,验证通过,不相同,验证失败。
为了证明该证书确实为证书出示者所有,AAA Server生成一个大的随机数R,并使用用户的公钥KUP(数字证书中包含KUP ,因此服务器无需预先存储用户公钥,也无需查找数据库,这有利于加快处理速度)将R加密,得到EKup(R)。为了防止R在传输过程中被黑客截获并修改,使得合法用户得不到正确的认证。AAA Server先使用一个公开的单向散列函数H作用于R,得到H(R),然后用服务器的私钥KSS对H(R)进行加密(数字签名)。最后将 Ekup(R)+Ekss[H(R)]发送给用户。客户收到Ekup(R)+Ekss[H(r)]后,首先应该验证R在传输过程中是否被篡改过。方法如下:首先,客户端使用AAA Server的公钥KSP解开Ekss[H(R)],即:DKsp(Ekss[H(r)])=H(R)
上一篇:论计算机辅助教学与化学教学现代化
下一篇:齿轮传动多轴头设计
热门论文