基于des、rsa加密算法及脆弱数字水印的通信数据加解密方法

文档序号:7803924阅读:191来源:国知局
基于des、rsa加密算法及脆弱数字水印的通信数据加解密方法
【专利摘要】本发明公开了一种基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,其步骤为:1)获取待加密发送的数据;2)将待发送的数据进行第一次加密,即进行分组DES加密;3)对完成第一次加密的数据嵌入脆弱数字水印;4)利用接收端提供的RSA加密公钥对含有脆弱数字水印的数据进行加密;5)发送密文;6)接收端接收密文并利用自身的RSA私钥对密文进行第一次解密;7)对接收到的数据进行身份检测认证;8)对完成身份认证的数据进行DES解密,读取数据内容。本发明利用三种技术的不同特点,在发送以及接收数据时分通过DES、RSA加解密以及数字水印身份验证机制,使得数据更加安全,并且可以防止因为恶意篡改数据带来的危害。
【专利说明】基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法
【技术领域】
[0001]本发明涉及移动终端收发数据的加解密流程的【技术领域】,尤其是指一种基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法。
【背景技术】
[0002]随着社会的发展,终端设备的功能越来越强悍,各种公司企业提供的业务也越来越多种多样,大大地方便了人们的生活。但是,伴随而来的就是信息安全的问题。例如现在人们会通过手机来传送账号密码等信息,有许多的不法之徒就会采用恶意攻击等手段来截获用户的有用信息以求牟利。本发明提出的终端的加解密流程是基于以下三种现有的技术:
[0003]DES加密算法:DES算法是一种分组加密算法。该算法将要加密的数据按64位进行分组,使用的密钥也是64位,但因为每8位作为一个奇偶校验位,所以实际上只有56位密钥。使用DES加密首先将64位明文进行初始变换,然后用64位的初始密钥产生16组子密钥,对初始变换后的明文进行16层的加密变换,产生64位输出,然后进行逆初始变换产生64位密文。
[0004]RSA加密算法:RSA是一种非对称加密算法,即有公钥和私钥两种密钥。发送端利用接收端提供的公共密钥来对数据加密,接收端就用自己拥有的私钥对信息进行解密。因为公钥和私钥是一一对应的,所以只有拥有私钥的接收端才能解密用它提供的公钥加密的数据。并且RSA算法是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”安全体制,这也保证了加密数据的安全性。
[0005]数字水印技术:根据使用数字水印的目的不同,可以将数字水印分为健壮性的数字水印和脆弱性(以及半脆弱性)的数字水印。健壮性的数字水印主要是用于版权保护,即在即使作品被做过修改的情况下也可以提取出完整的数字水印以证明该作品的归属。而脆弱性的数字水印则相反,主要是用于检测篡改,即在满足一定健壮性的条件下,又对于各种恶意篡改具有敏感性,能够识别出作品是否被篡改。
[0006]目前按照实现方法的不同,脆弱性数字水印技术主要分为空间域方法和变换域方法,现在已经存在有许多的算法用于这些实现。为了安全考虑,在水印嵌入和检测认证时还需要加上密钥,这正是本发明所利用的。

【发明内容】

[0007]本发明的目的在于克服现有技术的不足与缺陷,提供一种基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,不但使得终端传输的加密数据更加安全,而且实现了身份认证,使得数据更具有不可篡改性。
[0008]为实现上述目的,本发明所提供的技术方案为:基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,包括以下步骤:[0009]I)获取待加密发送的数据;
[0010]2)将待发送的数据进行第一次加密,即进行分组DES加密;
[0011]3)对完成第一次加密的数据嵌入脆弱数字水印;
[0012]4)利用接收端提供的RSA加密公钥对含有脆弱数字水印的数据进行加密;
[0013]5)发送密文;
[0014]6)接收端接收密文并利用自身的RSA私钥对密文进行第一次解密;
[0015]7)对接收到的数据进行身份检测认证;
[0016]8)对完成身份认证的数据进行DES解密,读取数据内容。
[0017]在步骤3)中,通过提取宿主数据的特征或者自定义,如图像标志或序列号,来产生水印信息,然后结合密钥I,利用水印嵌入算法,将水印嵌入到原始数据中,产生含有脆弱数字水印的数据。
[0018]在步骤4)中,在进行RSA加密前,先查看发送端是否有接收端的含有RSA加密公钥的数字证书,有则进行RSA加密,否则,则暂停加密,而改为向接收端发送数字证书请求消息。
[0019]在步骤7)中,对收到的数据进行检测认证的过程为:首先查看接受端是否有发送端的有效数字证书,否则暂停认证,转而向发送端请求数字证书,然后从数字证书中解密出密钥I,然后结合密钥从含水印数据中提取出水印进行身份认证。
[0020]在步骤8)中,进行DES解密前,先查看接收端是否有发送端的有效数字证书,否则暂停解密,转而向发送端发送数字证书请求,然后从数字证书中解密出DES密钥来完成解
LU O
[0021]所述数字证书包含用户ID、RSA公钥对、DES密钥、密钥1、证书启用时间、证书停用时间,其中,所述RSA公钥对存放的是用户自身的公钥对,而证书启用时间及停用时间规定了数字证书的有效时限;所述DES密钥存放的是发送端自身的DES密钥,其本身与密钥I都是经过SHA-1身份认证加密以及使用接收端中所存储的RSA公钥对进行RSA加密。
[0022]所述SHA-1身份认证过程为:首先利用SHA-1算法对输入的报文经过一种不可逆的散列运算产生一组160位即20字节的报文摘要,然后将要传送的明文和报文摘要一起发送给接收端,接收端利用收到的明文产生相应的报文摘要,最后将产生的报文摘要与接收到的报文摘要进行比较,如果相同则说明明文没有被篡改,否则就是中间被人篡改了。
[0023]本发明与现有技术相比,具有如下优点与有益效果:
[0024]1、对于一般的数据加密,基本都是只进行分组加密或者非对称加密中的一种,而本发明则同时使用了分组加密和非对称加密这两种形式的加密方法,所以使得数据具有更高的安全性;
[0025]2、对数据进行加密的同时,本发明还进行了检测认证,这样在对数据加密的同时,也保证了能够识别对数据的篡改,也不会因为篡改的信息而遭受损失。
【专利附图】

【附图说明】
[0026]图1为脆弱性数字水印用于防篡改检测的大致框图。
[0027]图2为本发明在加密阶段的流程图。
[0028]图3为本发明在解密阶段的流程图。【具体实施方式】
[0029]下面结合具体实施例对本发明作进一步说明。
[0030]本实施例所述的基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,其具体情况如下:
[0031]I)获取待加密发送的数据;
[0032]2)将待 发送的数据进行第一次加密,即进行分组DES加密;
[0033]3)对完成第一次加密的数据嵌入脆弱数字水印;
[0034]4)利用接收端提供的RSA加密公钥对含有脆弱数字水印的数据进行加密;
[0035]5)发送密文;
[0036]6)接收端接收密文并利用自身的RSA私钥对密文进行第一次解密;
[0037]7)对接收到的数据进行身份检测认证;
[0038]8)对完成身份认证的数据进行DES解密,读取数据内容。
[0039]本发明利用的数字水印技术是脆弱性数字水印。而脆弱性数字水印用于防篡改检测的大致框图具体如图1所示。
[0040]在步骤3)中,通过提取宿主数据的特征或者自定义(如图像标志或序列号),来产生水印信息,然后结合密钥I,利用水印嵌入算法,将水印嵌入到原始数据中,产生含有脆弱数字水印的数据。
[0041]在步骤4)中,在进行RSA加密前,先查看发送端是否有接收端的含有RSA加密公钥的数字证书,有则进行RSA加密,否则,则暂停加密,而改为向接收端发送数字证书请求消息。
[0042]在步骤7)中,对收到的数据进行检测认证的过程为:首先查看接受端是否有发送端的有效数字证书,否则暂停认证,转而向发送端请求数字证书,然后从数字证书中解密出密钥I,然后结合密钥从含水印数据中提取出水印进行身份认证。
[0043]在步骤8)中,进行DES解密前,先查看接收端是否有发送端的有效数字证书,否则暂停解密,转而向发送端发送数字证书请求,然后从数字证书中解密出DES密钥来完成解
LU O
[0044]由于本发明同时采用了 DES加密和RSA加密两种方式,涉及到密钥的传送问题,这
里提出了一种新的数字证书内容,如下表所示:
[0045]
用户 RSA公钥I DES密I密钥J I证书启用I证书停用 ID I对I钥 I时间时间
[0046]其中,RSA公钥对存放的是用户自身的公钥对,而证书启用时间及停用时间规定了数字证书的有效时限。DES密钥存放的是发送端自身的DES密钥。数字证书中存储的DES密钥并非直接的DES密钥而是经过了 SHA-1身份认证加密以及使用接收端数字证书中所存储的RSA公钥对进行了 RSA加密,这样就保证了 DES密钥的安全。所以接收端要使用DES密钥时,必须先用自身的RSA密钥进行解密以及身份验证后才可以使用。同样的,密钥I也是经过了和DES密钥相同的处理,即也是经过SHA-1身份认证加密以及使用接收端中所存储的RSA公钥对进行RSA加密。
[0047]在此说明下这里所提到的SHA-1身份认证的过程为:首先SHA-1算法对输入的报文经过一种不可逆的散列运算产生一组160位(20字节)的报文摘要。由于SHA-1的散列算法有不可逆性和良好的雪崩效应,所以不可能从散列结果推导出任何的原始数据,并且原始数据任何的改变,哪怕一位,都会造成散列结果的差异。然后将要传送的明文和报文摘要一起发送给接收端,接收端利用收到的明文产生相应的报文摘要,最后将产生的报文摘要与接收到的报文摘要进行比较,如果相同说明明文没有被篡改,否则就是中间被人篡改了。
[0048]本实施例所述的发送端包括有加密模块、密钥存储模块、发送模块,所述的接收端包括有数据获取模块、显示模块、缓存模块、接收模块。其中,所述密钥存储模块里存放着用于DES加密的密钥,用于RSA解密的自身私钥对,用于数字水印嵌入的密钥I,以及自身和其他终端的数字证书。
[0049]如图2所示,在加密阶段,数据获取模块得到数据后,首先将明文数据分组成若干组的64位明文组,如若最后不足64位,则按照DES算法的要求填充成64位,从密钥存储模块得到64位密钥,对数据进行DES加密,每个分组得到的密文结果先缓存在缓存模块中,最终得到一个关于整个明文的密文。然后根据密文结果提取出水印信息或者自定义一个水印信息,利用密钥I以及水印嵌入算法,将水印信息嵌入到密文数据中,得到含有脆弱数字水印的数据。
[0050]含有脆弱数字水印的数据进入RSA加密,在进行RSA加密前,发送端先检查自己的密钥存储模块是否有接收端的数字证书以及数字证书是否过期,如果有且在使用期内,则继续进行,如果没有所需数字证书或者已经过期,则把密文和摘要放到缓存模块中,转而向接收端发送数字证书请求消息。得到接收端的数字证书,利用其中的RSA加密公钥对,对经过一轮加密的密文和摘要进行RSA加密,得到最终的密文,然后从发送模块发送出去。
[0051]如图3所示,在解密阶段,接收模块接受到密文后,首先对其进行RSA解密。进行RSA解密时,接收端调用自己RSA私钥对,只有和发送端使用的公钥对是适配的私钥对才可以正确地对密文进行解密。
[0052]完成RSA解密的数据是一种含有数字水印的数据,在这一阶段就是对收到的数据进行检测认证,检查数据是否被篡改过。首先接收端检测自己的密钥存储模块是否有发送端的数字证书并且是否在有效使用期内,如果没有则暂停检测认证,转而向发送端发出数字证书请求消息。得到发送端的数字证书后,解密出其中的密钥I。然后利用该密钥I提取出水印的相关信息,用于检测收到的数据是否被篡改。根据实现算法的不同,检测认证有的是需要原始水印消息,有的则不需要,在本发明中鼓励使用的是不需要原始水印消息的认证方法。
[0053]完成身份认证的数据将进行最后的DES解密。由于在检测认证阶段,接收端已经保证了拥有发送端的有效数字证书,所以只需从发送端的数字证书中解密出DES密钥,就可以直接进行DES解密了,最终得到最后的明文。
[0054]综上所述,本发明方法主要是基于DES与RSA算法以及数字水印技术。利用三种技术的不同特点,在发送以及接收数据时分通过DES、RSA加解密以及数字水印身份验证机制,使得数据更加安全,并且可以防止因为恶意篡改数据带来的危害,从而能有效确保通信系统中发送、接收数据时的加解密过程的准确、安全、可靠,值得推广。
[0055]以上所述之实施例子只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
【权利要求】
1.基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,其特征在于,包括以下步骤: 1)获取待加密发送的数据; 2)将待发送的数据进行第一次加密,即进行分组DES加密; 3)对完成第一次加密的数据嵌入脆弱数字水印; 4)利用接收端提供的RSA加密公钥对含有脆弱数字水印的数据进行加密; 5)发送密文; 6)接收端接收密文并利用自身的RSA私钥对密文进行第一次解密; 7)对接收到的数据进行身份检测认证; 8)对完成身份认证的数据进行DES解密,读取数据内容。
2.根据权利要求1所述的基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,其特征在于:在步骤3)中,通过提取宿主数据的特征或者自定义,如图像标志或序列号,来产生水印信息,然后结合密钥I,利用水印嵌入算法,将水印嵌入到原始数据中,产生含有脆弱数字水印的数据。
3.根据权利要求1所述的基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,其特征在于:在步骤4)中,在进行RSA加密前,先查看发送端是否有接收端的含有RSA加密公钥的数字证书,有则进行RSA加密,否则,则暂停加密,而改为向接收端发送数字证书请求消息。
4.根据权利要求1所述的基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,其特征在于:在步骤7)中,对收到的数据进行检测认证的过程为:首先查看接受端是否有发送端的有效数字证书,否则暂停认证,转而向发送端请求数字证书,然后从数字证书中解密出密钥I,然后结合密钥从含水印数据中提取出水印进行身份认证。
5.根据权利要求1所述的基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,其特征在于:在步骤8)中,进行DES解密前,先查看接收端是否有发送端的有效数字证书,否则暂停解密,转而向发送端发送数字证书请求,然后从数字证书中解密出DES密钥来完成解S。
6.根据权利要求3或4或5所述的基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,其特征在于:所述数字证书包含用户ID、RSA公钥对、DES密钥、密钥1、证书启用时间、证书停用时间,其中,所述RSA公钥对存放的是用户自身的公钥对,而证书启用时间及停用时间规定了数字证书的有效时限;所述DES密钥存放的是发送端自身的DES密钥,其本身与密钥I都是经过SHA-1身份认证加密以及使用接收端中所存储的RSA公钥对进行RSA加密。
7.根据权利要求6所述的基于DES、RSA加密算法及脆弱数字水印的通信数据加解密方法,其特征在于,所述SHA-1身份认证过程为:首先利用SHA-1算法对输入的报文经过一种不可逆的散列运算产生一组160位即20字节的报文摘要,然后将要传送的明文和报文摘要一起发送给接收端,接收端利用收到的明文产生相应的报文摘要,最后将产生的报文摘要与接收到的报文摘要进行比较,如果相同则说明明文没有被篡改,否则就是中间被人篡改了。
【文档编号】H04L9/06GK104009842SQ201410206592
【公开日】2014年8月27日 申请日期:2014年5月15日 优先权日:2014年5月15日
【发明者】谢宗伯, 冯久超 申请人:华南理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1