人工智能
AI生成内容的加密水印研究
生成式AI正在改变我们的生活方式,但也带来了一些意想不到的后果。加密水印技术或许能解决这些问题,确保AI生成内容的来源可追溯。
人工智能生成的内容正在迅速融入我们的日常生活,从工作、学习到娱乐和社交,无处不在。然而,随着AI技术的普及,一些潜在的风险也逐渐显现。在这篇文章中,我们将探讨一种新兴的技术——加密水印,它有望为AI生成内容的安全性提供更强的保障。
生成式AI已经能够创造出高质量的文本、代码、图像、音频和视频,这些内容有时甚至连机器都难以辨别真伪。这种高度仿真的能力带来了一系列挑战:一方面,AI模型的训练者和部署者需要识别并过滤掉网络上的AI生成内容,以避免污染训练数据;另一方面,这些内容的来源可能被故意误导,给社会带来诸多问题。
水印技术或许是解决这些问题的关键。通过在训练或推理过程中嵌入一些标识信息,我们可以追溯AI生成内容的来源。这样,无论是模型操作者还是内容消费者,都能通过检测水印来确认内容的真实性。
水印技术与C2PA(联合内容真实性联盟)的目标有很多相似之处。C2PA致力于为各种媒体提供来源追溯,类似于一条数字签名链,每个链条对应一次内容修改。例如,Cloudflare的客户可以选择保留C2PA标签,即使在图像被压缩后,这些标签仍然有效。
然而,C2PA的方法需要每个环节的参与者都配合,而水印技术则可以在内容被未经授权修改后仍然保留来源信息。与C2PA将签名编码在图像的元数据中不同,水印直接嵌入在图像的像素中。
在这篇文章中,我们将探讨一种基于加密技术的新型水印方法。这种方法旨在提供严格的质量保证和抗修改能力。虽然这一领域尚处于起步阶段,但我们相信它具有很大的潜力,值得进一步研究。
加密技术在安全领域具有不可替代的作用。它通过一些基本假设,如密钥的保密性或计算难题的难度,提供数学上的安全保障。对于水印技术来说,加密技术可以确保三个关键目标:
1. 鲁棒性:用户无法轻易篡改内容的来源,即使内容经过一定程度的修改,水印仍然可验证。
2. 不可检测性:水印不会显著影响模型输出的质量,水印内容与非水印内容无法区分。
3. 不可伪造性:只有模型操作者能生成带有水印的内容,其他人无法伪造。
目前,一些先进的水印技术,如Google的SynthID和Meta的Video Seal,基于深度学习。这些方法通过训练机器学习模型,将签名编码到内容中,并通过一系列已知攻击来测试模型的鲁棒性。然而,这种方法存在一个问题:新的攻击手段可能会绕过现有的防护措施,导致不断的“猫鼠游戏”。
加密技术的优势在于,它可以减少攻击面,使攻击者难以找到漏洞。通过将攻击者的注意力集中在一些狭窄的、易于理解的系统特性上,加密技术可以提供更强的安全保障。
2022年夏天,Scott Aaronson在OpenAI工作期间提出了第一个加密AI水印方案。这个方案专门针对聊天机器人,具有不可检测性和不可伪造性,但在鲁棒性方面存在一些问题。随后,其他研究者提出了不同的加密水印方案,试图在这三个目标之间找到平衡。
2024年,Miranda Christ和Sam Gunn在CRYPTO会议上发表了一篇论文,提出了一个新的框架,可以同时实现这三个目标。他们的方法基于一种称为伪随机码的技术,这种码在编码时需要使用一个秘密密钥,使得攻击者难以伪造。
生成式AI模型通常需要一些随机输入来生成内容。对于许多模型,我们可以通过“逆向运行”模型,从生成的内容中恢复出初始的随机输入。这一特性对于水印技术非常重要。
Christ-Gunn-2024的方法从一种称为纠错码的数学工具开始。纠错码通常用于在噪声环境中传输信息,广泛应用于光纤、卫星和量子计算等领域。通过将信息编码为码字,纠错码可以容忍一定比例的比特翻转。
我们可以利用纠错码来实现一个简单的水印方案:首先生成初始随机输入,然后将码字嵌入到这些随机输入中,最后运行模型生成内容。要验证水印,我们只需“逆向运行”模型,提取出码字,并检查其是否正确。
这种方法的优势在于,即使攻击者对内容进行了一定程度的修改,我们仍然可以通过纠错码恢复出正确的码字。然而,这种方法也存在一些问题:嵌入码字会改变随机输入的分布,使得水印内容与非水印内容存在差异。此外,由于编码算法是公开的,攻击者可以伪造水印。
为了解决这些问题,Christ-Gunn-2024提出了伪随机码的概念。伪随机码需要满足两个条件:首先,码字看起来是随机的;其次,生成码字需要使用一个秘密密钥。这样,攻击者即使知道编码算法,也无法伪造水印。
伪随机码由三个算法组成:密钥生成算法、编码算法和解码算法。密钥生成算法生成一个秘密密钥,编码算法将信息编码为码字,解码算法则从码字中提取出信息。通过选择合适的参数,我们可以确保码字难以与随机比特串区分开来。
要使用伪随机码进行水印,模型操作者首先生成一个秘密密钥,然后在每次生成内容时,将码字嵌入到初始随机输入中。要验证水印,操作者只需“逆向运行”模型,提取出码字,并检查其是否正确。
为了确保水印的不可检测性,我们需要选择一种嵌入码字的方法,使其不会改变初始随机输入的分布。具体的嵌入方法取决于模型的特性。以Stable Diffusion为例,我们可以通过设置初始随机输入的符号来嵌入码字。
Stable Diffusion是一种用于图像生成的模型,它使用用户提供的提示词对初始随机输入进行多次“去噪”处理,最终生成图像。我们可以通过“逆向运行”模型,从生成的图像中恢复出初始随机输入,这一过程称为扩散反演。
扩散反演是一种迭代过程,通过反向运行生成图像的采样过程,恢复出初始随机输入。由于水印基于伪随机码,可以容忍一定的错误,因此我们可以使用一种称为DDIM反演的技术,它计算速度快,但精度较低。
在实验中,我们使用预训练的Stable Diffusion模型生成图像,并通过DDIM反演恢复出初始随机输入。然后,我们将码字嵌入到这些随机输入中,并验证水印的鲁棒性。结果显示,DDIM反演生成的初始随机输入与原始输入的相似度较高,足以保证水印的鲁棒性。
然而,DDIM反演也存在一些局限性,无法完全恢复出初始随机输入。因此,我们需要进一步研究更精确的反演方法,以提高水印的鲁棒性。
伪随机码的构建方法有很多种,目前已有几种候选方案。其中一种方法是将纠错码与加密原语结合,使得码字具有伪随机性。例如,我们可以使用AES-GCM-SIV加密算法对信息进行加密,然后再应用纠错码。然而,这种方法存在一些问题,无法同时满足鲁棒性和不可检测性的要求。
Christ-Gunn-2024提出了一种基于LDPC码的伪随机码构建方法。LDPC码是一种广泛使用的纠错码,具有较高的容错能力。通过调整LDPC码的参数,我们可以使其生成的码字具有伪随机性,从而实现水印的不可检测性。
然而,这种方法的安全性依赖于一些较强的计算假设,目前尚不清楚其在实际应用中的安全性。此外,LDPC码的容错能力与其参数密切相关,过于稀疏或稠密的参数都会影响其性能。
另一种构建伪随机码的方法是基于伪随机函数(PRF)。PRF是一种常见的加密原语,可以生成伪随机比特串。通过将PRF与纠错码结合,我们可以构建一种具有较高鲁棒性的伪随机码。然而,这种方法的容错能力较低,难以抵御大量比特翻转的攻击。
总的来说,伪随机码在AI水印技术中具有很大的潜力,但目前仍面临一些挑战。我们需要进一步研究不同的构建方法,找到在鲁棒性、不可检测性和不可伪造性之间的平衡点。此外,我们还需要研究更精确的初始随机输入恢复方法,以提高水印的鲁棒性。
我们相信,伪随机码有望成为AI水印技术的重要组成部分,为生成式AI的安全性提供更强的保障。通过加密技术与AI技术的结合,我们可以实现更高效、更可靠的水印方案,确保AI生成内容的来源可追溯。
本文译自 cloudflare,由 BALI 编辑发布。