基于秘密共享的混沌图像加密
摘要
本文提出了一种基于秘密共享和耦合映射格子的安全数字图像加密方案。在该方案中,秘密图像在共享阶段之前基于混沌映射格子生成的密钥序列进行加密。实验结果与分析表明,所提出的方案具有更好的安全性,并且能够同时在阴影图像中轻松地保护机密性和容损性。
关键词 :图像加密,耦合映射格子,机密性,鲁棒性
引言
在不安全信道上传输过程中保护秘密图像对于鲁棒图像加密至关重要,因此我们引入由混沌映射格子生成的密钥序列,以实现机密性和容损性。基于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]$。
提出的方法如图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} = $ 出现的概率很低。因此,它不会泄露关于具有大面积相邻黑色区域的秘密图像的任何信息。
从生成 $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映射和单向耦合映射格子能够从人眼视觉上实现高安全性和更高的机密性。
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多项式方程中采用单向耦合映射格子作为加密的密钥流。实验结果和安全性分析表明,所提出的方案在秘密图像共享方面具有良好的安全性和性能,例如机密性和抗丢失能力。
1158

被折叠的 条评论
为什么被折叠?



