一种基于混沌加密的互联网图片透明安全传输方法技术

技术编号:9408566 阅读:133 留言:0更新日期:2013-12-05 06:53
一种基于混沌加密的互联网图片透明安全传输方法。本发明专利技术提出一种支持混沌密钥自动生成的、对互联网用户操作完全透明的混沌数字图像加密传输解决方案。浏览器客户端根据互联网合法用户输入的用户名和口令Hash值等信息,利用JavaScript程序自动映射计算获取两个关键的Logistic混沌密钥参数,实现对用户待上传图片的安全透明加密与传输;服务器端则可根据登录用户名查询用户数据库获得该用户口令的Hash值,获得相同的混沌随机序列,最终即可解密用户上传的加密图片。反之,当用户合法登录后请求服务器图片时,JavaScript程序可在浏览器端自动运行混沌密钥参数计算和混沌解密操作。本方案可有效解决互联网图片传输的安全性、加密效率、密钥管理等之间的平衡问题。

【技术实现步骤摘要】
一种基于混沌加密的互联网图片透明安全传输方法(一)
本专利技术属于图像加密和互联网安全通信
(二)
技术介绍
随着互联网的日益完善,越来越多传统的业务都移植到基于互联网的电子实现,大量的信息内容都以网络为媒介来传输,传输的信息包括简单的文本数据,也包括声音、图片和视频等多媒体数据。特别地,对于个人隐私照片、商业图纸、军用图像数据库等电子图像数据,通过互联网存储和传输的可靠性和安全性至关重要。安全加密是保证图片在传输过程中不被恶意截获、修改的关键技术。当前,对于数字图像的保密传输,主要有三种解决方案:一种是直接使用基于数字证书的SSL通用安全协议,对通信的数据通道加密,即使遭到攻击者窃听,攻击者也只能获得密文;第二种是使用基于对称加密的的图像保密方案,使用一个相同的密钥来完成图像文件的加密和解密;第三种则使用基于非传统的混沌加密技术来实现图像文件的保密传输。基于SSL协议的方案采用高强度的RSA公钥算法,例如互联网常用的HTTPS即采用SSL协议,它是目前一种较常用的网络协议加密方案,但存在公钥证书的管理繁琐、成本高、效率低等不足,且面临中间人攻击等黑客攻击考验;采用对称加密的图像保密方案的优点是计算量较小、加密效率高,但是通信双方必须使用相同的密钥完成加密和解密,密钥管理面临难题,尤其是网络用户数量增加时对称密钥的分配面临更严重的效率和安全问题;基于混沌的加密技术可以构建具有混沌特性的伪随机字节流,将其应用于数字图像的灰度值替代进而实现加密传输,具有加密计算代价小、安全强度高等特点,但当前数字图像的混沌加密技术研究大多聚焦在加密算法的创新,而尚未出现面向互联网图片安全加密的有效的混沌映射参数协商等混沌密钥管理应用解决方案。本专利技术提出一种支持混沌密钥参数管理的、对用户操作透明的随机混沌流密码方案,可应用于互联网数字图像的高效加密和安全传输,且合法用户无需额外的操作,只需用户登录后点击图片上传即可完成图片的自动加密,可以有效保障数字图像存储传输的可靠性和安全性。(三)
技术实现思路
为了克服现有技术安全性不高、运算效率差、密钥管理复杂等缺点,本专利技术给出一种互联网环境下对合法登录用户完全透明的数字图像混沌加密安全传输方法。本专利技术的技术方案如下:一种基于混沌加密的互联网图片安全透明传输方法,主要包括如下步骤:(1)Web注册用户输入用户名(username)和口令(password)安全登录Web服务器;JavaScript脚本在浏览器客户端计算获得username+SHA1(password),这里的+表示两个字符串的串联,例如”ab”+”cd”即”abcd”,SHA1(password)表示采用公知的Hash算法SHA1对password实施计算的Hash值,而服务器也可通过用户数据库获得该用户的username和SHA1(password);(2)当用户合法登录以后需上传图片时,浏览器JavaScript程序自动将username+SHA1(password)通过Hash函数等运算方式映射成为Logistic混沌映射的控制参数c和混沌迭代初值X0(即通常所说的混沌密钥参数);具体步骤如下:(2.1)计算用户名及其口令Hash值的Hash值,得到字节数组inputsha1=SHA1(userName+SHA1(password)),(2.2)将20个字节的inputsha1映射成8个字节的byteArray。具体地,将20个字节的inputsha1先分成left-1和right-1两段各10个字节,计算left-1和right-1两个10字节相异或的值仍可得到10个字节的输出array-1,再将array-1的首部填充6个字节的0x00,扩展成16个字节的array-2,继续将16个字节的array-2先分成left-2和right-2两段各8个字节,计算left-2和right-2两个8字节相异或的值最后得到8个字节的输出byteArray,(2.3)使用byteArray得到占相同存储空间的无符号64位整数,整数除以0xFFFFFFFFFFFF(无符号64位整数能表示的最大值)得到小数floatNum∈[0,1],(2.4)字符串通常有两种编码方式:ANSI和Unicode,相同的字符串在两种编码方式下计算得到的消息Hash值是不同的,即上述步骤(2.3)可以分别得到两个取值范围在[0,1]的不同小数floatNum1和floatNum2,计算3.7+0.3*floatNum1和0.3+0.6*floatNum2的值即可作为控制参数c和混沌迭代初值X0,(3)用户利用上述步骤(2)所述的混沌序列产生的随机密钥序列,对上传的图片实施灰度值加密;这里所述的基于混沌的数字图像灰度值加密,是把过滤头信息以后的图像文件看成比特流来进行处理,具体的处理步骤如下:(3.1)打开图像文件并过滤它的头信息;(3.2)从图像文件中读入一位的图像比特值d;(3.3)由混沌的小数序列得到一位混沌比特值h;(3.4)通过异或运算:r=dXORh,获得加密后的比特值r;(3.5)将r写入加密后的图像文件中。(4)服务器接收到加密的图片时,可利用与上述步骤(1)、(2)、(3)所述的客户端同样的操作将相同的username+SHA1(password)映射成为Logistic混沌密钥参数,再利用该Logistic产生的同样的混沌密钥流解密获得原始图片。在本专利技术方案中,混沌解密过程与混沌加密过程完全一致,下面给出图像文件解密的步骤:(4.1)打开加密的图像文件并过滤它的头信息;(4.2)从图像文件中读入一位的图像比特值r;(4.3)由混沌的小数序列得到一位混沌比特值h;(4.4)通过异或运算:d=rXORh,获得解密后的比特值d;(4.5)将d写入解密后的图像文件中。(5)当用户合法登录后,请求服务器上的图片时,类似上述步骤(1)-(4)所述的方法,由服务器先获得登录用户的用户名及其口令的Hash值,并通过步骤(2)所述的方式计算获得Logistic混沌映射的密钥参数,再基于Logistic混沌随机密钥流实施对图片的混沌加密,客户端由JavaScript程序通过同样的方式产生同样的Logistic混沌随机密钥流,最终为用户自动解密图片,所有解密运算对用户来说完全透明。进一步,步骤(3)所述的加密处理通常以字节为单位,因此把图像文件看成字节流来处理可提高效率:每个字节包含8个比特,因此一个混沌字节值由8次混沌迭代的结果来确定,该字节中的每一位二进制值通过如下方式确定:即迭代值不大于0.5时取0,大于0.5时取1;得到混沌字节值chaosByte以后,再和对应的原始图像字节值进行异或运算,每一位的加密按上述步骤(3.4)所述的运算方式,得到加密后的字节值输出到新文件,处理结束后的新文件即是加密后的图像。进一步,上述步骤(4)所述的解密,若加密时采用的是上述步骤(3)中所述的基于混沌字节值chaosByte的操作,那么服务器通过同样的方式获得chaosByte混沌字节流后,对密文图像字节值进行异或运算,每一位的解密按上述步骤(4.4)所述的运算方式,得到解密后的字节值输出到新文件,处理结束后的新文件即是加密前的原始图片。本发本文档来自技高网
...
一种基于混沌加密的互联网图片透明安全传输方法

【技术保护点】
一种基于混沌加密的互联网图片安全透明传输方法,主要包括如下步骤:(1)Web注册用户输入用户名(username)和口令(password)安全登录Web服务器;JavaScript脚本在浏览器客户端计算获得username+SHA1(password),这里的+表示两个字符串的串联,例如”ab”+”cd”即”abcd”,SHA1(password)表示采用公知的Hash算法SHA1对password实施计算的Hash值,而服务器也可通过用户数据库获得该用户的userame和SHA1(password);(2)当用户合法登录以后需上传图片时,浏览器JavaScript程序自动将username+SHA1(password)通过Hash函数等运算方式映射成为Logistic混沌映射的控制参数c和混沌迭代初值X0(即通常所说的混沌密钥参数);具体步骤如下:(2.1)计算用户名及其口令Hash值的Hash值,得到字节数组inputsha1=SHA1(userName+SHA1(password)),(2.2)将20个字节的inputsha1映射成8个字节的byteArray。具体地,将20个字节的inputsha1先分成left?1和right?1两段各10个字节,计算left?1和right?1两个10字节相异或的值仍可得到10个字节的输出array?1,再将array?1的首部填充6个字节的0x00,扩展成16个字节的array?2,继续将16个字节的array?2先分成left?2和right?2两段各8个字节,计算left?2和right?2两个8字节相异或的值最后得到8个字节的输出byteArray,(2.3)使用byteArray得到占相同存储空间的无符号64位整数,整数除以0xFFFFFFFFFFFF(无符号64位整数能表示的最大值)得到小数floatNum∈[0,1],(2.4)字符串通常有两种编码方式:ANSI和Unicode,相同的字符串在两种编码方式下计算得到的消息Hash值是不同的,即上述步骤(2.3)可以分别得到两个取值范围在[0,1]的不同小数floatNum1和floatNum2,计算3.7+0.3*floatNum1和0.3+0.6*floatNum2的值即可作为控制参数c和状态初值X0,(3)用户利用上述步骤(2)所述的混沌序列产生的随机密钥序列,对上传的图片实施灰度值加密;这里所述的基于混沌的数字图像灰度值加密,是把过滤头信息以后的图像文件看成比特流来进行处理,具体的处理步骤如下:(3.1)打开图像文件并过滤它的头信息;(3.2)从图像文件中读入一位的图像比特值d;(3.3)由混沌的小数序列得到一位混沌比特值h;(3.4)通过异或运算:r=d?XOR?h,获得加密后的比特值r;(3.5)将r写入加密后的图像文件中。(4)服务器接收到加密的图片时,可利用与上述步骤(1)、(2)、(3)所述的客户端同样的操作将相同的username+SHA1(password)映射成为Logistic混沌密钥参数,再利用该Logistic产生的同样的混沌密钥流解密获得原始图片。在本专利技术方案中,混沌解密过程与混沌加密过程完全一致,下面给出图像文件解密的步骤:(4.1)打开加密的图像文件并过滤它的头信息;(4.2)从图像文件中读入一位的图像比特值r;(4.3)由混沌的小数序列得到一位混沌比特值h;(4.4)通过异或运算:d=r?XOR?h,获得解密后的比特值d;(4.5)将d写入解密后的图像文件中。(5)当用户合法登录后,请求服务器上的图片时,类似上述步骤(1)?(4)所述的方法,由服务器先获得登录用户的用户名及其口令的Hash值,并通过权利要求1中步骤(2)所述的方式计算获得Logistic混沌映射的密钥参数,再基于Logistic混沌随机密钥流实施对图片的混沌加密,客户端由JavaScript程序通过同样的方式产生同样的Logistic混沌随机密钥流,最终为用户自动解密图片,所有解密运算对用户来说完全透明。...

【技术特征摘要】
1.一种基于混沌加密的互联网图片安全透明传输方法,主要包括如下步骤:(1)Web注册用户输入用户名(username)和口令(password)安全登录Web服务器;JavaScript脚本在浏览器客户端计算获得username+SHA1(password),这里的+表示两个字符串的串联,SHA1(password)表示采用公知的Hash算法SHA1对password实施计算的Hash值,而服务器也可通过用户数据库获得该用户的username和SHA1(password);(2)当用户合法登录以后需上传图片时,浏览器JavaScript程序自动将username+SHA1(password)通过Hash函数运算方式映射成为Logistic混沌映射的控制参数c和混沌迭代初值X0,即通常所说的混沌密钥参数;具体步骤如下:(2.1)计算用户名及其口令Hash值的Hash值,得到字节数组inputsha1=SHA1(userName+SHA1(password)),(2.2)将20个字节的inputsha1映射成8个字节的byteArray;具体地,将20个字节的inputsha1先分成left-1和right-1两段各10个字节,计算left-1和right-1两个10字节相异或的值仍可得到10个字节的输出array-1,再将array-1的首部填充6个字节的0x00,扩展成16个字节的array-2,继续将16个字节的array-2先分成left-2和right-2两段各8个字节,计算left-2和right-2两个8字节相异或的值最后得到8个字节的输出byteArray,(2.3)使用byteArray得到占相同存储空间的无符号64位整数,整数除以0xFFFFFFFFFFFF(无符号64位整数能表示的最大值)得到小数floatNum∈[0,1],(2.4)字符串通常有两种编码方式:ANSI和Unicode,相同的字符串在两种编码方式下计算得到的消息Hash值是不同的,即上述步骤(2.3)可以分别得到两个取值范围在[0,1]的不同小数floatNum1和floatNum2,计算3.7+0.3*floatNum1和0.3+0.6*floatNum2的值即可作为控制参数c和混沌迭代初值X0,(3)用户利用上述步骤(2)的混沌序列产生的随机密钥序列,对上传的图片实施灰度值加密;基于混...

【专利技术属性】
技术研发人员:陈铁明诸伟
申请(专利权)人:浙江工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1