论文阅读 | 一种基于潜在向量优化的可证明安全的图像隐写方法(TMM 2023)

  • TMM 2023 中国科学技术大学
  • 针对现有的可证明安全的图像隐写不能抵抗有损图像操作,而现有的生成图像隐写不能证明安全问题,提出一种基于潜在向量优化的可证明安全的图像隐写方法(名为PARIS),该方法受到逆采样器和噪声层的启发。

Z. Yang, K. Chen, K. Zeng, W. Zhang and N. Yu, "Provably Secure Robust Image Steganography," in IEEE Transactions on Multimedia, vol. 26, pp. 5040-5053, 2024, doi: 10.1109/TMM.2023.3330098.


一、摘要

本文提出一种基于生成对抗网络(GAN)的可证明安全的鲁棒图像隐写术方法,名为PARIS。具体来说,发送方将遵循均匀分布的秘密信息通过逆变换采样映射到遵循标准高斯分布的潜在向量。然后,将这个潜在向量输入到生成器中,合成相应的隐写图像。隐写图像随后通过公共渠道(例如Facebook)传输给接收方,在传输过程中可能会发生有损图像操作。接收方采用梯度下降方法优化初始化的潜在向量,直到相应的合成图像与隐写图像几乎相同。为了考虑有损操作,我们使用一个可微分的噪声模块来模拟可能涉及的操作。这个噪声模块附加到生成器上,使接收方能够准确地提取秘密信息。所提出方法的安全性已经得到了理论上的证明。我们还在不同的生成器架构、有损图像操作和容量上进行了广泛的实验。结果验证了所提方法在安全性和鲁棒性方面的表现。此外,我们还在实践中部署了该方法,并在Facebook和LinkedIn上传输秘密信息。

主要贡献总结如下:

  • 提出了一种基于GAN的可证明安全的鲁棒图像隐写术方法,其中消息被映射到由可证明安全的映射规则引导的潜在向量中。
  • 设计了一个附加到生成器的噪声层模块,以模拟有损图像操作,这显著地促进了方法的鲁棒性。
  • 广泛的实验验证了所提方法在不同的有损图像操作、生成器架构和数据集方面的安全性和鲁棒性。还进行了消融研究,以显示噪声层模块的重要性。

二、现存问题

现有的可证明安全的图像隐写不能抵抗有损图像操作,而现有的生成图像隐写不能证明安全。

1、可证明安全隐写术现存问题

基于隐写安全定义,提出了可证明安全性的隐写算法(详细介绍见上篇:可证安全隐写),存在一些问题,分别针对基于拒绝采样(Rejection Sampling)、逆变换采样(Inverse Sampling)、以及基于生成模型(Generative Models)的隐写算法详细概述:

(1)拒绝采样方法

  • 容量限制 :拒绝采样方法通常需要从载体分布中不断采样,直到找到满足特定条件的样本。这种方法直观但容量有限,因为生成有效隐写载体的概率可能很低,导致需要大量无效计算。
  • 完美采样器的挑战:为了实现有效的拒绝采样,需要一个能够完美模拟覆盖分布的采样器,这在实践中很难实现,尤其是在复杂的图像数据上。

(2)逆变换采样方法

  • 分布建模困难逆变换采样依赖于已知的特定数据分布,这要求能够精确建模载体介质(如图像、视频)的分布,这在实际应用中往往是一个挑战。
  • 压缩与解压的局限性 :虽然理论上可以通过数据压缩实现逆变换采样,但实际应用中,完美压缩器的设计和实现难度较大,且对数据的微小扰动可能导致信息的丢失

(3)基于生成模型的方法

  • 安全性问题 :许多基于生成模型的隐写方法,如使用GAN或VAE,虽然在实证研究中显示出较强的隐蔽性,但缺乏理论支持来证明其在统计意义上的安全性。
  • 对抗性训练的挑战 :在训练过程中引入对抗性网络(如判别器)来增强隐写图像的隐蔽性,但这种方法通常需要复杂的训练过程,并且其安全性往往依赖于训练的充分性和判别器的设计
  • 对有损操作的敏感性 :生成的隐写图像可能对有损操作(如压缩、滤波)敏感,这限制了它们在实际传输环境中的鲁棒性。

2、生成式隐写现存问题

  1. 容量限制 :基于语义映射的SSS-GAN方法尽管通过生成多幅图像来增加容量,但总体容量仍然很低。这限制了可以隐藏的信息量,对于需要传输大量数据的应用场景不适用。

  2. 消息提取精度DCGAN-based 方法:Hu等人提出的方法中,需要训练一个提取器来从隐写图像中恢复潜在向量,再从潜在向量中提取消息。这一过程的精度并不总是令人满意,尤其是在图像经过有损压缩或其他处理后。

  3. 计算开销WGAN-GP-based 方法:Li等人提出的方法中,提取器和生成器需要同步训练,这不仅增加了训练的复杂性,还显著提高了计算资源的需求。

  4. 泛化能力不足:训练的提取器可能在不同的图像处理操作下表现不佳,如JPEG压缩、图像滤波等,这限制了隐写方法在多变的实际环境中的适用性。

  5. 对隐写分析的脆弱性:现有方法可能没有充分利用通道知识,例如对有损图像操作的抵抗能力,导致隐写图像容易被现有的隐写分析方法检测出来。

  6. 潜在向量分布的破坏:一些方法采用的映射规则可能会破坏潜在向量的分布,使得隐写图像与正常生成图像在统计上可区分,从而容易被隐写分析工具识别。

三、提出的方法---PARIS

**现有的可证明安全的图像隐写不能抵抗有损图像操作,而现有的生成图像隐写不能证明安全。**为了解决这些局限性,提出了一种基于潜在向量优化的可证明安全的图像隐写方法,该方法受到逆采样器和噪声层的启发。方法如图1所示,包括三个阶段:准备阶段、消息嵌入阶段和消息提取阶段。

1、准备阶段

准备阶段的目标是训练一个能够生成高质量、逼真图像的生成器,为后续的隐写信息嵌入提供基础。

(1)目标函数

目标函数: 训练涉及生成器G和判别器D之间的对抗过程,生成器生成逼真数据,判别器区分真假数据。GAN的目标函数,用于优化生成器和判别器。该函数由两部分组成:**一部分是判别器对真实数据的判断,另一部分是判别器对生成器生成数据的判断。**具体如下:

(2)映射关系

注:潜在向量 z从标准高斯分布中抽取,用于生成数据。这个向量是生成器的输入,决定了生成数据的多样性和质量。

(3)过程描述

a. 输入
  • 潜在向量 z:这是生成器的直接输入,通常从标准高斯分布中随机抽取。潜在向量是生成数据的基础,其维度由 nz​ 表示。

  • 训练数据 x:这些是用于训练判别器的真实图像数据,从已知的数据分布 Pdata中获取。训练数据用于帮助判别器学习区分真实图像与生成器生成的图像。

b. 输出
  • 生成的数据 x:生成器 G 的输出是生成的数据,这些数据是从潜在向量 z通过生成器转换而来,旨在模仿真实数据的分布。

  • 概率判断

    • 判别器 D对真实数据 x的输出:判别器输出一个概率值,表示输入数据是真实数据的概率。
    • 判别器 D对生成数据 G(z)的输出:判别器同样输出一个概率值,表示输入数据是生成器生成的数据的概率。
c. 过程描述
  • 生成器 G:将高维空间中的潜在向量 z转换成数据空间中的图像 x,目的是生成尽可能接近真实数据分布的图像。
  • 判别器 D:接收来自生成器的图像 G(z) 和真实世界图像 x 作为输入,并尝试区分它们。它输出一个介于 0 到 1 之间的值,表示输入图像是真实图像的概率。

这一过程是迭代的,生成器和判别器通过不断的对抗学习来提高各自的性能,直到生成器能够产生足够以假乱真的图像,而判别器则尽可能准确地分类图像。

2、消息嵌入阶段

信息嵌入阶段(Message Embedding Phase),涉及将秘密信息编码到潜在向量 zz 中,并使用这些向量生成隐写图像。以下是该阶段的具体细节:

(1)映射规则(Mapping Rule)

  • 加密消息:首先,明文消息被加密转换为密文,以确保安全性。
  • 均匀分布的密文 :密文消息 m被视为一个在区间 [0,−1]内均匀分布的整数 y,其中 l是嵌入的比特数。
  • 高斯分布的潜在向量 :潜在向量 z遵循标准高斯分布,其中I是单位矩阵。
  • 逆变换采样 :消息 y通过逆变换采样映射到潜在向量 z。这个过程涉及使用高斯分布的分位数函数(),确保映射后的向量 z精确符合高斯分布。

(2)消息映射(条件分布和全概率公式)

①条件分布:给定消息 y=i时,潜在向量 z的条件分布 p(z∣y=i) 定义为在两个分位数之间的高斯密度函数值乘以一个常数,否则为零。

②全概率公式 :全概率公式用于确保潜在向量 z 在经过消息映射后,其分布仍然精确地符合标准高斯分布。这对于隐写系统的安全性和有效性至关重要,因为任何偏离都可能被隐写分析方法检测到。 【简言之,此全概率公式用来确保信息嵌入过程不会破坏潜在向量的统计特性,从而保持隐写图像的隐蔽性和对隐写分析的抵抗力。】

(3)可逆映射(累积分布函数和逆变换采样)

这部分内容展示了如何使用累积分布函数CDF和逆变换采样技术在隐写术中实现消息到潜在向量的可逆映射,这对于确保信息的安全性和可恢复性至关重要。通过这种方式,可以将加密后的消息嵌入到图像中,同时保证在提取阶段能够准确地恢复信息。


(4)隐写图像生成(Stego Generation)

3、消息提取阶段

在消息提取阶段(Message Extracting Phase),接收方需要从接收到的隐写图像中恢复出原始的加密消息。这一阶段主要涉及以下几个步骤,其中关键是通过梯度下降和噪声层的引入,确保即使在图像传输过程中受到噪声干扰,也能准确地从隐写图像中恢复出隐藏的消息。

(1)预处理隐写图像

  • STEP1:扩展范围 :原始像素值乘以2,从 [0, 255] 映射到 [0, 510]。这样做是因为在归一化过程中,我们需要将像素值线性地映射到 [-1, 1] 的范围,而这个范围是对称的。如果直接将 [0, 255] 映射到 [0, 1],然后扩展到 [-1, 1],那么这个映射可能不会充分利用 [-1, 1] 范围内的所有可能值。特别是,较小的像素值(接近0的值)在映射过程中可能会过于集中,导致信息损失。

  • STEP2:归一化 :将乘以2后的值除以255,得到 [0, 2] 的范围,这是一个归一化步骤,将像素值转换为相对于最大值的比例。**这么做目的是为了确保在将像素值从 [0, 255] 映射到 [-1, 1] 时,整个范围被均匀地拉伸并覆盖。**如果不乘以 2,直接从 [0, 255] 映射到 [-1, 1],那么在 [0, 127.5] 的范围内的值在映射后会集中在 [-1, 0] 的区间,这可能导致信息的不均匀分布和部分信息的丢失。

  • STEP3:中心化 :最后,通过减去1,将范围从 [0, 2] 转换到 [ -1, 1],使得数据以0为中心,这与训练GAN时使用的归一化方法一致。减去 1 的步骤是为了将数据从以 0 为中心的正数范围转换为以 0 为中心的对称范围,即包括正数和负数的范围。

(2)损失函数设计

  • 最小化像素级差异可以确保生成的图像在视觉上与目标图像尽可能相似,这对于隐写术来说至关重要,因为任何明显的偏差都可能暴露隐写内容
  • LPIPS(Learned Perceptual Image Patch Similarity)是一种常用的特征级损失,它通过比较图像在感知空间中的相似度来评估图像质量。特征级损失(如LPIPS)在评估图像质量时,不仅仅关注像素值之间的直接差异,而是更深入地考虑了图像内容在视觉感知上的差异。 人眼对某些类型的图像失真比对其他类型的失真更敏感,而传统的像素级损失(如L2损失)可能无法充分捕捉到这些感知上的差异。

(3)潜在向量优化

(4)噪声层引入

论文中设计了一个可微分的噪声层 ,**能够在训练过程中通过梯度下降法进行优化。**这个噪声层模拟了图像在传输过程中可能遇到的噪声,使得模型能够在存在噪声的情况下进行有效的训练。

4、潜在向量起的作用

(1)信息嵌入的载体

潜在向量是将秘密信息嵌入到图像中的媒介。通过将加密后的消息映射到潜在向量,再由生成器基于这些向量生成隐写图像,实现了信息的隐藏。这一过程是可逆的,确保了信息可以从生成的图像中准确地恢复。

(2)生成控制

**潜在向量直接控制生成器输出图像的内容。**生成器网络(通常是GAN的一部分)接收潜在向量作为输入,并生成相应的图像。改变潜在向量会导致生成图像的变化,这为信息嵌入提供了可能。

(3)逆变换采样

论文中使用了逆变换采样技术,将**均匀分布的消息映射到遵循标准高斯分布的潜在向量。**这一步骤确保了信息嵌入过程的随机性和不可预测性,增加了隐写系统的安全性。

(4) 抵抗噪声和有损操作

在消息提取阶段,通过**优化潜在向量以最小化生成图像与接收图像之间的差异,潜在向量帮助系统抵抗了图像在传输过程中可能遇到的噪声和有损操作。**优化过程考虑了噪声层,进一步提高了系统的鲁棒性。

(5) 实现高维数据的有效表示

潜在向量提供了一种有效的方式来表示高维数据(如图像)。通过在潜在空间中编码信息,可以生成具有丰富变化和高度逼真的图像,这对于隐写术来说至关重要。

(6)支持梯度下降优化

**在消息提取阶段,潜在向量的优化是通过梯度下降方法实现的。**这一方法允许系统通过迭代过程调整潜在向量,以最小化损失函数,从而准确地恢复出原始的加密消息。

四、安全体现在哪?

1、非忽略优势

隐写术的安全性,主要关注于隐写图像(stego image)与普通图像(cover image)之间的区别是否能够被对手(adversary)区分。用公式体现:

2、隐写图像与普通图像的生成

隐写图像是通过将加密后的秘密信息通过生成器 生成的,而普通图像则是从标准正态分布中随机采样得到的。如果对手无法区分这两种生成方式,那么隐写术就是安全的。

3、序列驱动的采样(Sequence-driven Sampling)

隐写术中,秘密信息 m 通过序列驱动的采样 S(⋅)来生成隐写图像。如果这个过程与随机采样过程无法区分,那么隐写术就是安全的。

这些公式的核心是评估隐写术的安全性,即对手区分隐写图像和普通图像的能力。**如果对手无法有效地区分这两种图像,那么隐写术被认为是安全的。**这些公式通过数学方式量化了隐写术的安全性,确保即使在强大的对手面前,隐写图像也能保持其隐蔽性。


实验部分,后续实现时再补充

相关推荐
2301_8152551816 分钟前
Thinkphp5x远程命令执⾏及getshell
安全·webshell
天下是个小趴菜31 分钟前
php-cgi漏洞利用
安全·web安全·php
shangan_337 分钟前
JAVA随机排名
java·算法·排序算法
威哥爱编程1 小时前
除了递归算法,要如何优化实现文件搜索功能
java·算法·递归·memoization
程序员波特1 小时前
基础数据结构之链表
java·数据结构·算法
乐大师1 小时前
腾讯云负载均衡ssl漏洞(CVE-201602183)解决
网络·安全·腾讯云
Kenneth風车1 小时前
【第十二章:Sentosa_DSML社区版-机器学习之回归】
人工智能·算法·低代码·机器学习·数据挖掘·数据分析·回归
鱼跃鹰飞1 小时前
Leetcode面试经典150题-172.阶乘后的零
java·算法·leetcode·面试·职场和发展
tan77º1 小时前
【AcWing】基础算法
数据结构·c++·算法
迪小莫学AI1 小时前
k均值算法 聚类算法 k-means
算法·均值算法·聚类