信息隐藏:隐写术与隐写分析
1. 矩阵编码与隐写嵌入
1.1 矩阵编码解码过程
在解码端,通过计算 $x = f (a)$ 从 $n$ 位载体块 $a$ 中获取 $k$ 位消息块 $x$。例如,设 $x = 101$,$a = 1001101$,则 $f (1001101) = 001 ⊕100 ⊕101 ⊕111 = 111$,接着 $s = 101 ⊕111 = 010$,$a′ = 1101101$,即翻转第二位得到 $f (a′) = f (1101101) = 101$。
矩阵编码的嵌入率为 $k/n ≡k/(2k - 1)$,嵌入效率为 $k2^k/(2k - 1)$,更改率为 $1/(n + 1) ≡2^{-k}$(对于任何 $(n = 2k - 1)$ 位载体块,有 $n$ 个匹配的 $k$ 位码字和一个不匹配的)。当使用 JPEG 系数嵌入消息时,这些数值会有所变化。
1.2 利用值对进行嵌入
该方法利用光栅数据中感知上相似的值对(PoVs),并修改它们以嵌入隐写数据。PoVs 分为偶数和奇数元素,嵌入通过修改选定的光栅数据以匹配消息,有以下四种情况:
1. 光栅符号是某个 PoV $(s_0, s_1)$ 的偶数元素 $s_0$,且消息位为 0:保持 $s_0$ 不变。
2. 光栅符号是某个 PoV $(s_0, s_1)$ 的偶数元素 $s_0$,且消息位为 1:用 $s_1$ 替换 $s_0$。
3. 光栅符号是某个 PoV $(s_0, s_1)$ 的奇数元素 $s_1$,且消息位为 0:用 $s_0$ 替换 $s_1$。
4. 光栅符号是某个 PoV $(s_0, s_1)$
超级会员免费看
订阅专栏 解锁全文
45

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



