基于混沌映射的图像加密

基于秘密共享的混沌图像加密

摘要

本文提出了一种基于秘密共享和耦合映射格子的安全数字图像加密方案。在该方案中,秘密图像在共享阶段之前基于混沌映射格子生成的密钥序列进行加密。实验结果与分析表明,所提出的方案具有更好的安全性,并且能够同时在阴影图像中轻松地保护机密性和容损性。

关键词 :图像加密,耦合映射格子,机密性,鲁棒性

引言

在不安全信道上传输过程中保护秘密图像对于鲁棒图像加密至关重要,因此我们引入由混沌映射格子生成的密钥序列,以实现机密性和容损性。基于Shamir的 (k, n)阈值方法的图像加密阶段[1]已被研究[1‐6], ,该方法被称为秘密图像共享。通过这些方法生成的n个影子图像中,任意k个均可重构原始秘密图像,因此最多可容忍n‐k个影子图像故障或丢失,从而保证了容损特性。机密性通常通过密码学技术实现,例如在共享阶段前利用Shamir多项式中由常数[1‐4]定义的变量X对原始图像进行置换,或使用RSA算法[4],生成的变量进行处理,但这些方法既不高效也不安全。因此,提出一种新的阶段以同时保护机密性和容损性仍需进一步研究。

本文中,我们首先提出一种新方案,利用单向耦合映射格子和多个混沌系统对秘密图像进行加密,然后再进行共享,从而在通过不安全信道共享图像时同时保障机密性和容损性。

2. 提出的方法

在本节中,我们提出了一种基于Shamir多项式和混沌映射格子的图像加密方法。所提出的方案中使用的多项式如公式(1)所示,其中Ri j 是用于计算的随机数, fj(X i j) 表示第j节中的第i个共享。

$$
f_j (X_{ij})= P_{1j} + P_{2j} \times X_{ij} + … + P_{kj} \times X_{ij}^{k-1} + R_{ij} \mod 251 \tag{1}
$$

其中 $P_{lj}$,$X_{ij}$,$R_{ij} \in [0, 250]$,$l \in [1, k]$, $i \in [1, n]$, $j \in [1, M \times N / k]$。

示意图0

提出的方法如图1所示。图像共享阶段的实现与[8]中的相同。有两个不同的密钥用于加密像素值,一个密钥是$X_{ij}$,另一个是$R_{ij}$。两者之间的区别在于本文提出的方法与方法[8]的不同之处在于第二个密钥$R_{ij}$,该密钥有助于生成秘密影子图像。$R_{ij}$是基于格形式的混沌逻辑映射生成的。$X_{ij}$的生成方式与方法[8]中相同,而生成 $R_{ij}$的步骤几乎与方法[8]中生成$X_{ij}$的步骤相同,只是步骤1和步骤2不同。在提出的方法的步骤1和步骤2中,$R_{ij}$是通过单向耦合映射格子[5]按照公式(5‐6)计算得出,而不是公式(2‐4)。

Logistic-Tent map:

$$
T(x_n) =
\begin{cases}
((1 - x_n)(4r)/2) \mod 1 + 0.5 & x_n \leq 0.5 \
((1 - x_n)(4r)(1 - x_n)/2) \mod 1 + 0.5 & x_n \geq 0.5
\end{cases}, \quad r \in [0, 2] \tag{2}
$$

$$
x_m = T(x_{m-1}), \quad x_t \in [0, 1] \tag{3}
$$

$$
X_{ij} = \text{Round}(x_m \times 250) \tag{4}
$$

Coupled map lattice:

$$
y_m = (1 - \epsilon) \times r \times y_{m-1} \times (1 - y_{m-1}) + \epsilon \times r \times (1 - y_{m-1}) \times (1 - (y_{m-1} + 1)), \quad y_t \in [0, 1], r \in [0, 4], \epsilon = 0.02 \tag{5}
$$

$$
R_{ij} = \text{Round}(y_m \times 250) \tag{6}
$$

根据生成 $R_{ij}$ 的步骤,它保证为每个第 $j$ 节中的所有 $n$ 个共享生成不同的 $R_{1j}、R_{2j}、…、R_{nj}$,因此在所有 $n$ 个共享中至多有一个等于零,例如 $R_{ij}=0$。考虑第1节中讨论的相同情况,即从第1节到第s节的相邻图像区域为黑色区域。即使像素值 $P_{11} = P_{21} = … = P_{k1} = … = P_{1s} = P_{2s} = … = P_{ks} = 0$,由于在第 $j$ 节中每个共享 $i$ 的多项式中添加了不同的随机数 $R_{ij}$,至多只有一个值 $f_j(X_{ij})=0$ 对于所有 $n$ 个共享成立。因此,将获得不同的共享值 $S_{1j},…, S_{ij},…, S_{nj}$,且仅在第 $j$ 节中 $S_{ij} = 0$。此外,如图2所示,在同一阴影图像中 $S_{i1} = S_{11} = … = S_{k1} = $ 出现的概率很低。因此,它不会泄露关于具有大面积相邻黑色区域的秘密图像的任何信息。

示意图1

从生成 $X_{ij}$ 和 $R_{ij}$ 的步骤可以看出,在不同节中具有相同共享编号 $i$ 的 $X_{ij}$ 和 $R_{ij}$ 是使用相同的迭代次数 $m$ 但不同的初始值生成的,即 $x_0, x_0+ \delta_1, …, x_0+ t_1\times \delta_1, …, x_{max}$ 和 $y_0, y_0+ \delta_2, …, y_0+ t_2\times \delta_2, …, y_{max}$。这意味着每个阴影图像中像素值的分布受到值 $x_0, t, \delta_1, x_{max}$ 和 $y_0, t_1, \delta_2, y_{max}$ 的约束。如果 $x_t= x_0+ t_1\times \delta > x_{max}, x_{t1}= x_0$。$y_{t2}$ 的情况也相同。初始值计算中的值 $t_1$ 和 $t_2$ 反映出经过 $t_1$ 和 $t_2$ 次后将重复初始值 $x_0$ 和 $y_0$,它们影响反映在阴影图像中的 $X_{ij}$ 和 $R_{ij}$。对于具有小面积黑像素的图像,由于 $f_j(X_{ij})$ 由 $P_{lj}、X_{ij}$ 和 $R_{ij}$ 决定,因此 $t_1$ 和 $t_2$ 对阴影图像的随机性影响较小。

即使第 $j$ 节中的 $X_{ij}$ 和 $R_{ij}$ 与第 $q$ 节中的相同,$P_{lj}$ 和 $P_{lq}$ 也不同且非零,因此 $f_j(X_{ij})$ 不等于 $f_q(X_{iq})$。但对于具有大面积黑像素(在多个节中具有零像素值)的图像则不同。在所有像素值均为零的节中,公式(2) 退化为 公式(7)。

$$
f_j(X_{ij}) = R_{ij} \mod 251 \tag{7}
$$

阴影图像中的对应像素值 $f_j(X_{ij})$ 仅由 $R_{ij}$ 定义。在这种情况下,如果 $t_2$ 较小,则像素值 $f_j(X_{ij})$ 将在较小的图像区域内重复,从而导致块效应且缺乏随机性。因此,$t_2$ 应足够大,以确保在同一阴影图像中只有在较大的图像区域后才会重复之前的像素值。对于不等式 $y_0+ t_2\times \delta_2 > y_{max}$,在 $y_0$ 和 $y_{max}$ 确定的情况下,如果 $t_2$ 较大,则 $\delta_2$ 较小。因此,增量 $\delta_2$ 应该较小。

3. 实验结果

我们对四种大小为256×256的标准灰度图像应用了我们提出的方法,即在实验中采用了 Pepper、Table、Houses和Girl图像,如图3至图6所示。并且我们使用了(2, 4)门限方案,每个阴影图像的大小为128×256。我们实施了三组测试,以比较方法[8]与提出的方法之间的性能。表 1包含了每种混沌映射的初始参数。方法[8]仅使用混沌帐篷映射来生成$X_{ij}$,而我们提出的方法则使用单向耦合映射格子和Logistic‐Tent映射分别生成$X_{ij}$和$R_{ij}$。图7(a‐e)、图8(a‐e)、图9(a‐e)、图10(a‐e)表示使用任意两张共享图像对原始图像图3、图4、图5、图6进行加密后得到的阴影图像以及恢复图像。我们提出的方法与方法[8]具有相同的机密性,因为提出的方法首先使用 Logistic‐Tent映射进行加密,然后在共享阶段使用单向耦合映射格子。相比之下,图11(a‐d)至图14(a‐d)显示了使用提出的方法结合单向耦合映射格子参数$r = 3.999$、$x_0= 0.01$、$m_0= 100$和$\delta= 0.01$时具有更好的机密性。相反,图19(a‐d)至图20(a‐d)使用方法[8]显示出比我们提出的方法更低的机密性。但我们可以通过另一组实验进一步明确结果,该组实验在其他图像上使用单向耦合映射格子参数$r = 3.999$、$x_0= 0.001$、$m_0= 100$和$\delta= 0.01$,如图15(a‐d)至图16(a‐d)所示。通过最后一组实验,当参数$r$、$x_0$、$m_0$和$\delta$取特定值时,我们在图像图17(a‐d)、图18(a‐d)上获得了最佳性能。实验表明,提出的方法结合Logistic‐Tent映射和单向耦合映射格子能够从人眼视觉上实现高安全性和更高的机密性。

示意图2
示意图3
示意图4
示意图5

示意图6
示意图7
示意图8
示意图9

示意图10
示意图11
示意图12
示意图13

示意图14
示意图15
示意图16
示意图17

示意图18
示意图19

4. 安全分析与相关方案的比较

4.1 安全分析:

a) 暴力攻击 :$X_{ij}$ 和 $R_{ij}$ 的可能取值为 $P(251,k)=251×250×…×(251−k+1)$。总共有 $(P(251, k))^2$ 种可能取值。

b) 合谋攻击 :

b.1) 最佳情况 :K of ($R_{1j},…, R_{nj}$ 和 $X_{1j},…, X_{nj}$) 在每一节中都相同;总共 $2K + 1$ 个变量对应 K 个方程。因此它有无穷多解。$P_{lj}$ 在所有节中的成功概率为 $(1/251)^{M×N/k}$。

b.2) 最坏情况 :在每一节中,$R_{1j},…, R_{nj}$ 和 $X_{1j},…, X_{nj}$ 的 K 值均不同;总共有 $k + 2K$ 个变量对应 K 个方程。该情况也有无穷多解。所有节的成功概率为 $(1/251)^{k×(M×N/k)} = (1/251)^{M×N}$。共谋者仅能在 $(1/251)^{M×N}$ 到 $(1/251)^{M×N/k}$ 之间的低概率范围内成功。

4.2 与相关方案的比较:

Li 等人的方案 [8] 所提出的方案
概率到恢复原始图像 $1 / P(251, k)^{(2×M×N/k)}$ $1 / P(251, k)^{(2×M×N/k)}$
混沌系统 used 帐篷和逻辑混沌 map 单向耦合映射格子和 Logistic‐Tent 映射
强度 随机序列 长周期较低,通过使用两个混沌系统 通过使用单向耦合映射格子,长周期性能较高 耦合映射格子方式和 Logistic‐Tent 映射

5. 结论

本文提出了一种基于Shamir多项式和混沌映射格子的秘密图像共享图像加密方案。所提出的方案在Shamir多项式方程中采用单向耦合映射格子作为加密的密钥流。实验结果和安全性分析表明,所提出的方案在秘密图像共享方面具有良好的安全性和性能,例如机密性和抗丢失能力。

关于 阿里云盘CLI。仿 Linux shell 文件处理命令的阿里云盘命令行客户端,支持JavaScript插件,支持同步备份功能,支持相册批量下载。 特色 多平台支持, 支持 Windows, macOS, linux(x86/x64/arm), android, iOS 等 阿里云盘多用户支持 支持备份盘,资源库无缝切换 下载网盘内文件, 支持多个文件或目录下载, 支持断点续传和单文件并行下载。支持软链接(符号链接)文件。 上传本地文件, 支持多个文件或目录上传,支持排除指定文件夹/文件(正则表达式)功能。支持软链接(符号链接)文件。 同步备份功能支持备份本地文件到云盘,备份云盘文件到本地,双向同步备份保持本地文件和网盘文件同步。常用于嵌入式或者NAS等设备,支持docker镜像部署。 命令和文件路径输入支持Tab键自动补全,路径支持通配符匹配模式 支持JavaScript插件,你可以按照自己的需要定制上传/下载中关键步骤的行为,最大程度满足自己的个化需求 支持共享相册的相关操作,支持批量下载相册所有普通照片、实况照片文件到本地 支持多用户联合下载功能,对下载速度有极致追求的用户可以尝试使用该选项。详情请查看文档多用户联合下载 如果大家有打算开通阿里云盘VIP会员,可以使用阿里云盘APP扫描下面的优惠推荐码进行开通。 注意:您需要开通【三方应用权益包】,这样使用本程序下载才能加速,否则下载无法提速。 Windows不第二步打开aliyunpan命令行程序,任何云盘命令都有类似如下日志输出 如何登出和下线客户端 阿里云盘单账户最多只允许同时登录 10 台设备 当出现这个提示:你账号已超出最大登录设备数量,请先下线一台设备,然后重启本应用,才可以继续使用 说明你的账号登录客户端已经超过数量,你需要先登出其他客户端才能继续使用,如下所示
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值