安企神电脑监控软件 在线试用
扫码咨询客服
安企神电脑监控软件、局域网监控软件
首页
功能对比
下载中心
购买咨询
客户列表
关于安企神

基于SPIHT编码过程的图像选择加密算法

更新时间:2022-10-28 15:45:45


本文简介:随着多媒体技术和网络通信技术的快速发展,图像数据的安全问题越来越受到人们的关注。由于图像具有数据量大、冗余度高、要求实时传输等特点,采用普通的文本加密效果不理想。图像压缩技术成熟之后出现了更加安全高效的加密方案:基于压缩编码的加密方式能够同时完成加密和压缩的功能,加密效率高、格式兼容性好;选择加密是针对多媒体信息特点的加密方案,它选取多媒体信息中的重要部分进行加密,有效地减少了加密数据量。目前,选

基于SPIHT编码过程的图像选择加密算法

随着多媒体技术和网络通信技术的快速发展,图像数据的安全问题越来越受到人们的关注。由于图像具有数据量大、冗余度高、要求实时传输等特点,采用普通的文本加密效果不理想。图像压缩技术成熟之后出现了更加安全高效的加密方案:基于压缩编码的加密方式能够同时完成加密和压缩的功能,加密效率高、格式兼容性好;选择加密是针对多媒体信息特点的加密方案,它选取多媒体信息中的重要部分进行加密,有效地减少了加密数据量。目前,选择加密和基于压缩编码的加密技术已经成为了研究热点。

SPIHT编码作为一种优越的嵌入式小波编码,在各种图像压缩中应用广泛。它能够支持图像渐进传输、压缩效率高,比特流按照重要性排序并且能够随时结束编码,允许达到一个目标比特率或失真。该算法充分挖掘了小波图像不同子带之间的相似性,是公认的一种高效图像压缩编码,因此研究SPIHT编码并更好地利用它是非常必要的。提出了只加密SPIHT压缩编码前两层数据的灰度图像部分加密方法;基于SPIHT提出了一种彩色图像的部分加密算法,基于SPIHT提出了一种灰度图像部分加密算法。与编码过程相结合的加密方案能够在编码的同时完成加密,提高了效率,并且能够满足格式兼容性,适应网络实时传输。该算法的实质类似于将码流中的某些关键数据用随机比特替换,容易受到已知明文攻击和选择明文攻击。因此在设计此类加密算法时要考虑如何提高这方面的安全性。

本文研究了SPIHT压缩编码的4种数据类型,分析了不同类型编码数据对图像重建的作用,确定了其中的重要数据类型,并将其用流密码进行了加密。其次,改变加密层数K控制加密强度,进一步减少了加密数据量。此外,本文在对LIS扫描过程中引入了混乱机制,降低了码流相关性,从而使得算法更加安全。仿真实验结果表明,本文方法在保障了图像加密安全性的同时进一步减少了加密数据量,满足格式兼容性要求并且能够适应网络实时传输。

二、SPIHT编码原理概述

1、编码过程

SPIHT算法是一种嵌入式编码,将待编码的比特流按重要性的不同进行排序根据目标码率或失真度大小要求随时结束编码。它具有良好的渐进传输特性,利用集合划分以及有序的位平面传输,优先传输重要系数,优先传输重要系数的重要比特位,其主要步骤如下:

1)初始化:对图像进行小波分解,用固定比特位数表示变换后的系数Ci,j,输出n=|log2 (max(i,j)){|ci,i|}到信道;

2)排序过程:输出满足条件2n≤|ci,j|<2n+1的系数Ci,j的个数Z,以及对应系数的Z对坐标和Z个符号位;

3)细化过程:对于所有满足|ci,j|≥2n+1系数,输出第n位的值;

4)迭代:如需迭代,则n-1转到2)。

2、排序过程

排序过程是SPIHl编码过程中最重要的部分,它采用集合分裂过程来决定码流如何按照重要性进行排序。集合的分割过程是不断将一个集合分为4个子集,然后分别对各个子集进行重要性测试,若该集合是不重要的,则用一个符号表示,反之,则继续将集合进行分割并进行重要性测试。集合的结构如图1所示,其中:H,空间方向树的所有树根的坐标集合(最高层);D(i,j),结点(i,j)的所有直接后代结点的坐标集合;O(i,J),结点(i,J)的直接后继(儿子)的坐标集合。L(i,J)=D(i,J)-O(i,J),结点(i,j)直接后继外所有后继的坐标集合。

基于SPIHT编码过程的图像选择加密算法

集合分裂规则可以简单地表示。

1)将图像初始化为单一元素集合{(i,j)}和它们的后代D(i,j),所有的(i,j)∈H;

2)如果D(i,j)是重要的,把它分裂为L(i,j)和四个单元素集合,每个集合元素(k,j)∈O(i,j);

3)如果三(i胡是重要的,把它分裂为四个集合D(i,j),其中(k,j')∈O(i,J)直图像进行离散小波变换后,将小波系数根据一定规则划分为空间方向树SOT,在编码过程中需要维持三个链表,不重要系数链表LIP,不重要集合链表LIS和重要系数链表LSP,并用小波系数矩阵中LL层的小波系数初始化LIP,用所有的SOT初始化LIS,初始化LSP为空集。

SPIHT编码由扫描3个链表完成。当阈值为Tk,k∈(0,K),时,扫描过程如下:

1)LIP扫描:将不重要系数保留在UP中,重要系数移入LSP,并输出表示系数重要性判定值Sk,LIP-sig和系数符号Sk,LIP-sig;

2)LIS扫描:扫描LIS中所有的集合D(i,j),如果集合中不包括重要系数(即集合不重要)将其保留在LIS中;反之,则将它分裂为4个直接后代和更小的子集,将小的集合加入到LIS链尾,并判断4个直接后代系数的重要性,不重要系数放入LIP中,重要系数放入LSP。同时,输出集合重要性判定值Sk,LIP-sig、集合中重要系数判定值与符号Sk,LIP-sig、Sk,LIP-sig;

3)细化过程:输出LSP中每个系数第n(n=lgTk)个位平面的比特skq。到压缩数据中。至此一个循环扫描完成,改变阈值T= T/2进入下一次扫描。如此迭代,直到输出数据达到要求的压缩率为止。

二、基于SPIHT编码的选择加密算法

SPIHT压缩码流包含了多种类型数据,它们对于解码所起的作用也各不相同。有些重要系数对解码起着非常关键的作用,如果把这部分数据加密也许能够起到很好的保护作用。

1、SPIHT压缩码流数据分析

根据前面对编码过程的分析,SPIHT算法在编码过程中需要维持三个链表:LIP、LIS、和LSP,算法过程分为排序过程和精化过程,具体的编码过程是对上述三个链表扫描并产生比特的过程,如图2所示。

基于SPIHT编码过程的图像选择加密算法

将码流分解为四个部分:系数重要性判定值pixel-sig,系数符号pixel-sgn,集合重要性判定值set-sig,细化值value。这四类数据的意义不同,对图像重构起着不同的作用,下面将结合实验对这四个部分的重要性进行分析。

采用一组随机比特分别替换这4部分码流,利用码流重构图像,分别研究各部分数据对解码的影响。图像重构情况如图3所示。

基于SPIHT编码过程的图像选择加密算法

通过前面的分析和实验,我们得出:系数重要性判定值和集合重要性判定值对解码和获得重构图像具有非常显著的影响。

系数重要性判定值的改变将会直接影响后续比特的类型和意义,最终会影响解码后的重构图像。由于SPIHT的编码过程是对集合的划分过程:如果集合是重要的,则将该集合分裂成四个单独节点与剩余后代,然后继续对各个节点与集合进行判断;反之,则用一个符号对该集合进行编码。由此可见,集合重要性判定对后续节点的划分非常重要,会产生连锁反应,这部分数据能否正确解码对于图像重构至关重要。

基于SPIHT编码过程的图像选择加密算法

 

 2、选择加密方案

1)加密重要数据

根据上节的分析可知,系数重要性判定值和集合重要性判定值在SPIHT编码中是重要值,这两类数据直接影响其他类型数据的意义。仅仅对这两部分数据进行加密就能够使得重构图像失去可读性,从而达到保密的目的和要求。此外,SPIHT编码属于嵌入式编码,按位平面从高到低进行编码,压缩码流越向前,包含的信息量越大。因此可以只加密前M次扫描码流中的重要部分,进一步减少所需加密的数据量。

2)选择加密安全性分析

基于SPIHT的选择加密算法虽然具有较高的加密效率,能满足编码格式的兼容性要求,但仍然存在缺陷。该加密算法实质上是用01比特替换部分码流数据,替换的比例越小则密文码流与明文码流的相关度越高。码流的相关性比较大,可能会给攻击者提供一些重要的分析信息,攻击者可能会采用一些图像处理方法基于图像相关性进行恢复,存在不安全隐患。因此,需要增强码流的混乱程度来克服这个缺点。

3)引入置乱机制

原始图像经小波变换后得到系数矩阵,系数可看成一棵四叉树。如果在编码前直接对四叉树结构进行整体置乱的话会改变多分辨率小波系数的特性,会对压缩性能造成很大的影响。因此,最佳的方法是在压缩过程中引入混乱。

SPIHT编码过程中会将重要集合进行进一步分解,并将后代中的四个集合加入LIS以便于继续扫描判断。因此LIS中的数据不断增长,并决定了对后续节点的扫描顺序。若LIS的元素代表D(i,j)则定义为A类,若代表L(i,j)则定义为B类,并且同一类型的节点在四叉树中的高度是一致的。因此本文提出了置乱方案:对LIS中相同类型的节点进行置乱,这样等价于将重要四又树中同一高度的节点进行置乱。与整体之乱相比,这种方案不仅能够与压缩过程相结合,更重要的是能减少对系数分布的影响,依旧能够满足渐进传输的要求。

4)选择加密方案设计

采用RC4算法生成的密钥序列为K;加密前m次扫描码流中的系数重要性判定值和集合重要性判定值。在对LIS的扫描过程中,若当前节点为A类并且下一个节点为B类,统计当前节点之后有几个连续的B类节点并对它们进行置乱;若当前节点为B类并且下一个节点为A类,统计当前节点之后有几个连续的A类节点并对它们进行置乱。其中,置乱的方式借鉴RC4的算法原理。假设需要置乱的序列为S[n],密钥长度为n,算法过程为:

for ('i=O;i<n;i++)

{

s[i]=i;

}

for (i=0;i<n;i++)

{

j=(j+s[i]+k[i])%256;

swap( s[i],s[j]);

}

在算法的过程中,密钥的主要功能是将S[n]搅乱,i确保S[n]的每个元素都得到处理,j保证S[n]的搅乱是随机的。

三、实验结果与性能分析

本算法基于VS2008平台采用MFC编程进行数据仿真实验,选用RC4算法生成加密密钥,实验参数设置为:8位密钥12345678,小波分解级数为4,比特率为1.0。本文对uscSIPI标准测试图库中的灰度图像进行了仿真实验,对前6次扫描产生码流中的重要部分进行加密,并置乱LIS中的同类集合,当码流长度为65 536 bit时结束编码。

1、实验结果

加解密图像如图5所示。从图中可以看出图像加密后失去了原始明文的信息,密文直方图分布均匀,能够有效地抵抗统计分析。

基于SPIHT编码过程的图像选择加密算法

2、性能分析

(1)安全性分析

SPIHT算法中要精准地确定数据类型非常困难,如果加密的数据量非常庞大,更是难上加难。如果一副256*256大小的图像有5%的数据被加密,约有3276比特的数据被加密。穷举攻击的计算量为23276,可以保证数据的安全性。

(2)密钥敏感性分析

对于一个优秀的加密系统而言,明文应具备密钥敏感性。即使密钥发生微小的改变也会使得密文千差万别。在对lena的密文图像进行解密时,将原始密钥由12345678改为12345679,其余参数不变,对应的解密结果如图6所示。解密图像呈现随机分布,其直方图很均匀。

基于SPIHT编码过程的图像选择加密算法

为了进一步验证密钥敏感性,我们随机生成3 000个密钥(只有其中一个是正确的)分别对密文图像进行解密并计算重构图像与原始图像的PSNR,结果如图7所示。从图中可以看出,只有用正确的密钥解密才能得到理想的PSNR(约为35.94 dB),其余的均为10dB左右。即使加密密钥和解密密钥有微小的差别也不能正确解密,说明该算法能够抵抗各种基于密钥敏感性的攻击。

基于SPIHT编码过程的图像选择加密算法

(3)格式兼容性分析

传统的加密算法将图像看成二进制流,加密后破坏了文件结构。因此,如果没有正确的密钥便无法正常解码。本文提出的加密算法与压缩编码相结合,遵从SPIHT的编码格式通过加密重要的编码控制信息从而改变输出码流。因此,本文算法加密效率高并且能够满足SPIHT标准的格式兼容性,即使密钥错误,解码端的处理仍然能够正常进行,但无法获得原始图像的正确信息。

(4)相关性分析

相关系数,是衡量两个随机变量之间线性相关程度的指标。如果明文与密文相关系数显著,可能会泄露明文信息从而为攻击者提供线索,存在安全隐患。因此,本文在对USCSIPI标准测试图库中的图像加密后,分别统计了码流相关性与图像相关性。码流相关性指的是加密码流与原始码流的相关系数;图像相关性指的是从分别从图像的水平、垂直以及对角方向分别抽取一定数量的像素对(这里取1024对)并分别计算相关系数,统计结果如表1所示。从表中可以看出:采用本文提出的选择加密算法加密后,码流相关性和图像相关性很小,达到了理想的标准,起到了很好的置乱效果。

基于SPIHT编码过程的图像选择加密算法

(5)压缩性能与效率分析

本文提出的加密算法与压缩编码相结合,没有改变编码前的数据分布,对编码性能影响很小。此外,在选择加密的基础上引入了置乱机制,降低了码流相关性从而使得加密更加安全,仅需加密前6轮扫描编码中的系数重要性判定值和集合重要性判定值便可以保证图像的安全性。表2分析了USC-SIPI标准测试图库加密和解密后的PSNR,并统计了每幅图像所需要加密的数据量,平均比例约为原图数据量的2.28%。

基于SPIHT编码过程的图像选择加密算法

3、几种加密算法性能对比

表3对几种加密算法的时间效率进行了对比(这里统计的时仅仅是压缩编码时间,不包括小波变换部分)。对比的算法分别为:1)采用SPIHT对图像编码(不加密);2)采用RC4加密前两层压缩码流;,3)采用Arnold算法对前2层码流进行置乱;4)采用本文提出的选择加密算法。从表中可以看出,本文提出的选择加密算法具有很高的加密效率。

基于SPIHT编码过程的图像选择加密算法

小知识之LIS

LIS全称Laboratory Information Management System,是专为医院检验科设计的一套实验室信息管理系统,能将实验仪器与计算机组成网络,使病人样品登录、实验数据存取、报告审核、打印分发,实验数据统计分析等繁杂的操作过程实现了智能化、自动化和规范化管理。有助于提高实验室的整体管理水平,减少漏洞,提高检验质量。

立即下载试用

基于动态信任的内生安全架构

动态信任是一种新型的信息安全架构,近年来随着物联网、云计算和移动化等技术的发展而逐渐受到关注。传统的信息安全架构往往是建立在固定的信任模型之上,而动态信任则更加灵活和自适应,可以根据实际情况动态调整信任度,从而提高整个系统的安全性。本文将从以下几个方面来探讨基于动态信任的内生安全架构,包括动态信任的概念、功能特点、应用场景、实现方法等。

一、动态信任的概念

动态信任是指基于多方交互和数据分析,根据实时风险评估结果自适应调整信任度的一种信任模型。它与传统的访问控制模型不同,传统模型是基于身份验证和访问授权来限制访问权限的,而动态信任则更加注重实时风险评估和动态调整信任度。动态信任由于其灵活性和自适应性被广泛应用于物联网、云计算和移动化等领域,成为一种新型的内生安全框架。

二、动态信任的功能特点

1、实时风险评估
动态信任的核心是实时风险评估,通过对多方交互数据的分析、模型预测和机器学习等方法,从而实现对用户、设备、应用以及网络等方面的风险评估。同时,动态信任支持多种评估方法,可以根据实际情况选择不同的评估方法来评估系统的安全性。

2、动态调整信任度
动态信任可以根据实时风险评估结果自适应调整信任度,从而提高整个系统的安全性。例如,对于一个新的设备或应用,由于缺少足够的信任度,系统可以限制其访问权限,等到其表现良好后再逐步增加信任度。另外,在不同的应用场景中,可以根据不同的容错需求设置不同的信任阈值,从而更加灵活地调整系统的安全性。

3、安全事件的自适应响应
基于动态信任的内生安全框架可以根据实时风险评估结果自适应响应安全事件,例如实时阻断异常访问或异常信任行为等,从而保护整个系统的安全。另外,动态信任还可以实现安全威胁预警和安全日志审计等功能,为后续的安全事件响应提供支持。

三、动态信任的应用场景

基于动态信任的内生安全框架适用于物联网、云计算和移动化等领域,可以提高系统的安全性和稳定性。具体应用场景如下:

1、物联网领域
对于物联网场景,动态信任可以实现对设备、应用、用户等的实时风险评估和动态信任管理,从而保护整个物联网系统的安全。例如,可以基于设备的行为、属性等数据进行风险评估,判断设备是否存在安全风险,并进行相应的防御措施。

2、云计算领域
对于云计算场景,动态信任可以实现对用户、应用、网络等的实时风险评估和自适应调整信任度,从而提高整个云计算系统的安全性和稳定性。例如,可以根据用户的访问情况和应用的行为数据等进行风险评估,判断用户和应用是否存在安全风险,并相应的限制其访问权限。

3、移动化场景
对于移动应用场景,动态信任可以实现对应用、用户等的实时风险评估和自适应调整信任度,从而保护整个移动应用系统的安全。例如,可以根据应用的行为数据、用户的位置信息等进行风险评估,判断应用和用户是否存在安全风险,并相应的限制其访问权限。

四、动态信任的实现方法

基于动态信任的内生安全框架的实现方法主要包括以下几个方面:

1、机器学习技术
机器学习技术可以实现对多方交互数据的分析和预测,进而实现实时风险评估和动态信任管理。例如,可以使用支持向量机、神经网络、朴素贝叶斯等算法对数据进行分类和预测,从而实现安全风险评估。

2、分布式计算技术
分布式计算技术可以实现对大规模数据的分析和处理,多种评估方法的实现和系统的扩展性等。例如,可以使用MapReduce等分布式计算技术来实现大规模数据的分析和处理,从而提高系统的效率和准确性。

3、安全日志管理技术
安全日志管理技术可以实现对安全事件的记录、分析和响应等功能,从而提高系统的安全性和稳定性。例如,可以使用SIEM技术来实现安全事件的实时监测、分析和响应,从而提供相应的安全保障。

总之,基于动态信任的内生安全框架是一种新型的信息安全架构,其具有灵活性和自适应性等特点,可以根据实际情况动态调整信任度,提高整个系统的安全性。在物联网、云计算和移动化等领域具有广泛的应用前景,同时也面临着各种技术挑战和安全威胁。因此,我们需要进一步探索动态信任技术的研究和应用,并积极探索基于动态信任的内生安全框架的实现方法和应用策略,从而实现网络信息安全的可靠保障。

本文为收集整理,文章部分观点不代表本站观点,如有侵权或其它问题请反馈客服。https://www.wgj7.com/cjwt/16428.html