基于弹载遥测图像加密域的可逆信息隐藏算法*

2022-01-26 03:02洪文鹏卫俊杰
飞控与探测 2021年6期

张 伟,宋 畅,洪文鹏,毕 盛,卫俊杰

(1.陆军装备部驻南京地区军代局驻上海地区第三军代室·上海·201109;2.上海航天控制技术研究所·上海·201109)

0 引 言

近年来,随着我国导弹技术的不断发展,弹载遥测技术也得到了突飞猛进的发展。弹载遥测系统是导弹飞行试验中的重要测量手段,用于获取各个分系统的状态参数,在飞行性能评定、飞行试验的事后数据分析、飞行过程问题查找中起着至关重要的作用。导弹系统要求弹载遥测单元在尽量小的空间中尽可能采集和传输更多的系统参数,以提高试验的效率,降低系统的研制成本。在成像弹的弹载遥测系统中,传输数据不仅包括各分系统中的遥测数据,如导引信号、飞控信号、引信信号、舵机信号、电源信号等,往往还有红外探测器获得的相对直观的红外图像信息。在理想情况下,下传的红外遥测图像与遥测数据必须与数据采集端保持一致。

针对遥测图像信息量大与有限的信道带宽之间的矛盾问题,利用压缩算法对遥测图像进行一定压缩比的压缩,可以满足遥测图像数据传输带宽的需要,但会在一定程度上造成图像内容的失真,且对关键信息的丢失是不可控的;另一方面,相对于红外图像信息而言,遥测数据的数据量非常小,单独的信道传输会造成信道的浪费,将低频少量的遥测数据与遥测图像进行混合处理、融合传输的方法,可以在一定程度上节省传输信道,但在常见的混合传输方法中,时分复用会增加信道的通信时长,基本的调制方式会带来频谱资源的浪费。

遥测数据中包含大量的飞行状态信息,尤其是靶场遥测数据中包含大量的武器相关信息,图像作为信息表达最直观的方式,在遥测传输系统中有着举足轻重的地位。在现代电子战的环境下,为防止第三方非法获取敏感军事目标信息与飞行数据,有必要对遥测图像进行加密传输,在确保图像信息不可直接获取的同时,还要经得起“穷举搜索法”攻击与“密文”攻击。此外,加解密算法还要保证简单与即时性。

针对以上几个问题,本文提出了一种基于加法对称加密的弹载红外遥测图像可逆信息隐藏算法。首先将红外遥测图像拆分为若干个标准灰度图,将灰度图像利用方形模板划分为若干个子块,在经过加法对称加密系统后,利用适配加密算法的差值直方图,以及相邻像素点间灰度的相关性进行遥测数据的嵌入。在这一过程中既避免了信道浪费,又保证了遥测数据与图像的不可感知性。而且本文加法加密算法的安全性依赖于通过RC4算法生成的加密密钥流,在当前的密码破解技术支持下,当密钥长度达到128bit时,通过暴力搜索的方法进行破解是几乎不可能的。另外,秘密信息的嵌入位置都是基于图像的纹理特征内容及差值直方图决定的,不能依据统计特性获得,保证了遥测信息的安全性。在遥测图像接收端,利用加密系统的对称性,加密密钥拥有者能够对图像进行解密,并按照嵌入规则获得嵌入数据。实验结果证实了整体算法的可逆性,保证了遥测图像与遥测数据的无损恢复。

1 加密域可逆信息隐藏技术简介

可逆信息隐藏算法发展于传统信息隐藏算法之上。信息隐藏技术利用图像载体的冗余空间进行秘密信息的嵌入与传递,嵌入秘密信息的载体在外观上和原始图像并没有很大的区别,肉眼在一定程度上并不能察觉出秘密信息的存在,具有很强的不可感知性,从而实现安全通信。传统信息隐藏技术在提取秘密信息的过程中会在一定程度上对载体产生不可恢复的破坏,而在一些特殊的应用场景下,例如法庭认证、医学图像处理、军事通信、遥感成像等对数据认证要求较高的场景,这样的不可逆损坏是不被允许的,必须保证载体数据的完整性与一致性,由此,可逆信息隐藏技术应运而生。

可逆信息隐藏技术不仅能保证秘密信息的嵌入与不可感知,同时满足秘密信息的可逆提取与载体数据的可逆恢复。伴随着大数据时代的到来,越来越多的多媒体图像存储在云端,与之相关的一系列信息安全问题也随之产生。信息拥有者将自己的多媒体产品加密后上传到云端,保护了自己的隐私不被泄露;信息管理者为了实现数据管理、版权验证,通常需要在加密后的多媒体载体中嵌入附加信息。在这一过程中,图像加密域可逆信息隐藏技术将结合图像加密技术和可逆信息隐藏技术,在对图像内容进行保护的同时,保证了图像内容的完整性与真实性。

其实不仅是在云存储中,图像加密域可逆信息隐藏技术在其他领域也发挥着很大的作用。例如在医学图像传递过程中,图像内容的细微差别也有可能对最后的诊断结果产生影响,因此必须保证图像内容的一致性。同时出于对病人健康状况的隐私保护,为了防止病人病情的泄露,必须对医学图像进行加密处理。为了使加密图像与病人档案一一对应,又需要在加密图像中嵌入相关信息,例如病人的个人信息、图像采集日期等等。再例如在军事领域中,军事图像属于国家机密,通过图像加密对图像内容进行保护显得尤为重要。为了图像传送和接收双方的信息对称性,图像内容不容篡改;同时双方通过比较嵌入信息的一致性也可以验证军事图像的真伪。

图像加密域可逆信息隐藏算法的核心思想在于向密文空间中嵌入额外信息,并且保证载体与额外信息的无失真恢复。在本文的算法设计中,以红外遥测图像作为嵌入载体,一方面可以将遥测数据嵌入到遥测图像中节省传输带宽,另一方面又可以保证遥测图像内容传输的安全性。

2 算法流程

假设红外遥测图像

I

的大小为

M

×

N

,图像位深度为

D

,一般来说,mod(

D

,8)=0。首先将图像拆分为

Q

个位深度为8的标准灰度图像,一方面是为了限定直方图的取值区间为[0,255],节省运算时间;另一方面,由高比特组成的标准灰度图像的直方图较平滑,能够增加算法的嵌入容量。则原始图像

I

Q

个标准灰度图像

I

(

q

=1,2,…,

Q

)在图像坐标为(

i

,

j

)位置上的像素值满足

(1)

生成的

Q

幅8bit灰度图像是相互独立的。具体的算法流程图如图1所示。以下介绍的算法流程中,加密图像生成、密文域信息嵌入、信息提取与图像恢复都是对每幅8bit灰度图分别进行操作的。

(a)发送端算法流程

2.1 加密图像生成

对第

q

个灰度图像(

q

=1,2,…,

Q

),以3×3大小的方形模板(如图2所示)进行划分,则模板的中心像素点的坐标

i

,

j

满足

图2 方形模板示意图Fig.2 Sketch of square template

i

mod 3=2,

j

mod 3=2

(2)

其中,

i

∈[1,

M

],

j

∈[1,

N

],其余8个像素点称为中心像素点的参考像素点。对图像进行区域划分之后,在图像加密过程中,属于同一个模板的像素点共享同一个加密密钥。首先利用随机种子

s

生成长度为

K

的密码序列,其中

K

等于整幅图像中模板的数量。按照从上到下、从左到右的顺序搜索各个十字模板的中心像素点,以加密密钥

k

(流密码序列的第

p

个数)匹配第

p

个模板的中心像素点。与此同时,对模板中心像素点的8个参考像素匹配相同的加密密钥

k

。图像外圈不在任何模板内的剩余像素点同样可以匹配自己的加密密钥。在构建完加密参数之后,整幅图像经过加法对称加密系统进行加密,具体的加密形式为

c

=

E

(

m

,

k

)=(

m

+

k

)mod 256

(3)

其中,

m

为原始图像中明文像素值;

k

为其对应分配的加密密钥, 在本文中,

k

是由利用RC4算法和随机种子

s

生成的密码流中的元素;设置模256的操作是为了使得加密后图像的像素值不会发生溢出的情况,即保证

c

∈[0,255]。

2.2 密文域信息嵌入

根据同一模板中共享同一个加密密钥

k

的特点,利用式(4)进行8个像素间差值

d

(

n

=1,2,…,8)的计算

d

=(

x

-

r

)mod 256

(4)

其中,

x

代表第

n

个参考像素点的加密域像素值;

r

代表中心像素点的加密域像素值。它描述了在一个模板中,中心像素点与各个方向上的参考像素点像素值之间的差值进行模256操作的结果。由于只有位置相近的2个像素值参与计算差值,则差值更多分布于0附近,模256之后分布于0和255附近。对这8个差值各自生成差值直方图,并对每一个直方图进行两对极值点的直方图平移与遥测数据嵌入操作,具体如下:(1)

d

∈[0,127]若

d

=0:这部分直方图不进行改变,则加密域中参考像素值

x

和中心像素值

r

都保持不变。若

d

∈[1,127]:将这部分的直方图向右平移1个单位,那么可证明此时对加密域参考点像素值等价于进行(

x

+1)mod 256的操作,此时加密域中该模板中的参考像素值

x

变为

x

=(

x

+1)mod 256,中心像素值

r

保持不变。

d

=((

x

+1)mod 256-

r

)mod 256
=(

x

-

r

+1)mod 256
=((

x

-

r

)mod 256+1)mod 256
=(

d

+1)mod 256

(5)

(2)

d

∈[128,255]若

d

=255:这部分直方图不进行改变,则加密域中参考像素值

x

和中心像素值

r

都保持不变。若

d

∈[128,254]:将这部分的直方图向左平移1个单位,那么可证明此时对加密域参考像素值等价于进行(

x

-1)mod 256的操作,此时加密域中该模板中的参考像素值

x

变为

x

=(

x

-1)mod 256,中心像素值

r

保持不变。

d

=((

x

-1)mod 256-

r

)mod 256
=(

x

-

r

-1)mod 256
=((

x

-

r

)mod 256-1)mod 256
=(

d

-1)mod 256

(6)

在平移操作中会产生相同像素值的混淆情况,即

d

∈[127,128],这2个差值有来自上述2个区间的可能性。此时通过创建辅助二进制序列

Aux

进行记录,若

d

∈[0,127]且

d

∈[127,128],记当前比特为1;若

d

∈[128,254]且

d

∈[127,128],记当前比特为0,同时也生成辅助信息长度的二进制序列,与辅助信息随待嵌入信息一同嵌入图像中。完成平移操作后,利用差值直方图

d

∈{0,255}位置,在经过直方图平移后创造的冗余空间进行信息的嵌入。待嵌入信息包含遥测数据

m

和辅助信息序列

Aux

。此时每个直方图中都有一对嵌入信息对即{0,255}。假设

b

为待嵌入比特,当

b

=0时,

d

={0,255}通过向右平移1个单位变为

d

={1,0},此时加密域中该模板中的参考像素值

x

变为

x

=(

x

+1)mod 256,中心像素值

r

保持不变;当

b

=1时,

d

={0,255}通过向左平移1个单位变为

d

={255,254},此时加密域中该模板中的参考像素值

x

变为

x

=(

x

-1)mod 256,中心像素值

r

保持不变。至此全部完成了第

q

个灰度图像的秘密信息嵌入工作,在此过程中主要通过将设计的加密方式及差值生成方式进行巧妙的结合来实现信息的嵌入,信息嵌入过程如图3所示。

图3 差值直方图信息嵌入操作示意图Fig.3 Sketch of embedding operation in difference histogram

Q

幅灰度图像都完成图像加密和信息嵌入后,将这

Q

幅灰度图像利用式(7)恢复为位深度为

D

的图像进行传输。

(7)

2.3 信息提取与图像恢复

在信息提取与图像恢复过程中,首先将图像按式(1)的方式拆分为

Q

幅8bit灰度图像,对每一幅灰度图像分别进行解密与信息提取。当拥有加密密钥时,在一幅灰度图像中,对同一个3×3模板使用对应的加密密钥

k

按照式(8)进行图像解密。

m

=

D

(

c

,

k

)=(

c

-

k

)mod 256

(8)

通过

d

=(

x

-

r

)mod 256,

n

=1,2,…,8(9)

得到8个差值直方图,其与嵌入过程中平移过后的8个直方图完全一致。对每个差值直方图进行信息提取:

1)若

d

∈{0,1}:根据嵌入规则,提取秘密信息

b

=1,将

x

恢复为(

x

-1)mod 256;2)若

d

∈{254,255}:根据嵌入规则,提取秘密信息

b

=0,将

x

恢复为(

x

+1)mod 256。同时根据提取出来的辅助信息

Aux

和直方图平移规则进行图像恢复,图像恢复规则为:1)若

d

∈[2,126],将

x

恢复为(

x

-1)mod 256;2)若

d

∈[129,253],将

x

恢复为(

x

+1)mod 256;3)若

d

∈[127,128],根据辅助信息

Aux

,若当前二进制序列码为0,将

x

恢复为(

x

+1)mod 256,若当前二进制序列码为1,将

x

恢复为(

x

-1)mod 256。按顺序完成

Q

幅图像的信息提取与图像恢复,拼接

Q

幅灰度图像中提取的嵌入信息即为原始红外遥测图像中的嵌入信息,按照式(1)恢复原始红外遥测图像,至此,完成了遥测图像与遥测数据的可逆恢复,保证了其一致性。

3 仿真实验及结果分析

实验中采用图像尺寸为128×128的位深度为16bit的红外遥测图像为载体进行加密与信息嵌入。则每幅红外遥测图像可分为高八位灰度图像与低八位灰度图像,分别进行信息嵌入。图4展示了4幅红外遥测图像在算法的不同流程中所得到的图像。其中图4(d)即为经过加密,嵌入隐藏信息的遥测传输图像,可以看到图像的真实内容被完全隐藏,保护了传输过程中图像内容的安全。图4(e)为在接收端经过图像恢复的红外遥测图像,经过验证,和发送端的原始采集图像完全一致,实现了遥测图像的零失真,且完成了嵌入数据的无损恢复。

图4 实验结果Fig.4 Experimental results

4幅图像的嵌入容量如表1所示,总嵌入容量由高八位图像与低八位图像的嵌入容量去除为了可逆恢复而生成的辅助信息长度。可以看到,由于高八位图像的像素值比较接近,一方面,差值直方图的峰值点较高,可嵌入容量较大,另一方面,差值为127或者128的点较少,辅助信息占用比特位较少;整体图像的平均嵌入容量达到了15205bit,即可在红外遥测图像中嵌入约1900字节的数据,可以节省接近2M的单独传输遥测数据带宽,可以满足弹载遥测数据的总量需求。

表1 4幅红外遥测图像嵌入容量Tab.1 Embedding capacity of four telemetry images

4 结 论

本文研究了基于红外遥测图像加密域的可逆信息隐藏算法,利用红外图像的冗余空间将遥测数据嵌入到图像中,同时对遥测图像进行加密,既避免了传输信道的浪费,又保护了其图像内容在传输过程中的不可感知性,实验结果验证了该算法的可逆恢复与大嵌入容量的特点。后续将基于弹载红外遥测图像的特点进行更有针对性的可逆信息隐藏算法设计,提高图像冗余空间的利用,进一步增加图像的嵌入能力,从向图像中嵌入图像的角度节省传输带宽,使算法能够在产品中应用。