图像隐写术抵御各种攻击的最佳实践是什么? [关闭]

2024-01-10

我对此真的很好奇,因为现在每个频道都可以以某种方式修改或压缩图像,这可以被视为对隐写术的攻击。

我们可以将隐写术分为两种基本类型,第一种在图像的空间域上操作,第二种在某种变换域上操作。

我对以下类型的攻击感兴趣,因为它在我们周围无处不在(如果你想在 Facebook 上保存图像,或者如果你想创建图像的缩略图,或者如果你打算将图像保存在移动平台上,等等) :

  1. 图像的压缩或重新压缩 - 主要针对 JPEG 图像或 带有 alpha 预乘的 PNG 图像。
  2. 调整图像大小或缩放以及几何操作 - 我的意思是 除了压缩之外的图像转换,例如的旋转 图像,改变比例等。

我想问一下:

  1. 你们认为保护嵌入式的最佳方法是什么 像 JPEG 那样压缩图像中的消息? “无限”呢 用隐写术嵌入消息后重新压缩图像 机制?消息仍然可读吗?
  2. 与此相关的嵌入消息的阈值在哪里? 调整图像大小(如果有)?在我看来,隐写术是 对图像大小的调整比压缩或压缩更敏感 旋转或向图像添加噪声。最好的方法是什么 隐写术无法阻止您调整图像大小?我的意思是有 总是一个我们不能在不丢失信息的情况下走的边缘,但是 应该有一定的门槛。
  3. 通过first 和 进行图像处理的组合怎么样? 第二点?

我读了很多关于抗压缩图像隐写术的论文,基本上他们总是使用纠错码和汉明距离来获得我们能够隐藏而不丢失信息的阈值(或者如何在有损通道中获取信息)。那么第一步是使用汉明距离将我们的消息冗余地隐藏到空间域。对于 RGB 图像,我们将选择一个三元组作为一位载体,并修改我们的三元组颜色,这是汉明距离位于边缘“中心”的一种方式。我们可以将其作为重复纠错码或任何其他代码(最佳实践是 F5 中的汉明码)。

这背后的想法是,我们在 JPEG 压缩图像上计算汉明距离的纠错代码将确保嵌入的信息在多次 JPEG 压缩应用后仍然存在。当然,所有这些都是以牺牲图像容量为代价的,同时我们通过纠错码使用冗余。

该方法的示例链接如下:http://www.cs.unibo.it/babaoglu/courses/security/resources/documents/Steganography.pdf http://www.cs.unibo.it/babaoglu/courses/security/resources/documents/Steganography.pdf

我对数字图像上的水印技术了解不多,但也许我们可以找到有关该主题的指南,因为水印的目的几乎与隐写术相同。我们试图保留数字图像中的版权信息,或者我们试图在上述各种情况下保护图像中隐藏的信息。

我想讨论并向您询问当今通过隐写术保护数字图像中的信息的机制。我们可以分享我们的想法或示例代码,让世界变得更美好。


  1. 您的第一个问题与消除图像中的“噪声”(当然是隐藏位)的有损方法有关。您可能必须通过冗余来分散它。 LSB 可能无法工作,并且位的位置必须被分配。这意味着,这些位可能必须重复位于位的各个部分,这样,即使其他副本损坏,您也可以恢复消息。您可能希望添加哈希值以确保消息不被损坏(尽管哈希值本身的概率可能会被损坏)。但冗余和更广泛的分布可能会给你一个很好的机会生存下来。

  2. 一个想法可能是使用经过验证的加密方法,如 AES 或 ECC(密钥管理将是另一个主题)。这将使您的数据位“像噪音”。位置索引也可以通过类似的方式确定。其原理是创建均匀分布,以阻止数据和位位置的可预测性或粘贴相关性。

我希望这可以为您的隐写设计注意事项提供一些指导。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

图像隐写术抵御各种攻击的最佳实践是什么? [关闭] 的相关文章

  • 创建图像列表框?

    如何在 Winforms 应用程序上创建一个 ListBox 控件 该控件以有序的方式包含图像 就像它包含文本一样 I d like the images to appear like this 也许我什至不需要使用列表框 也许有更好的控制
  • JPEG 颜色在不同浏览器中呈现不一致

    我正在使用的徽标在不同浏览器中的呈现方式有所不同 具体图片可查here https pbs twimg com profile images 741262755236356096 BqpBjB8R jpg and on 这个推特页面 htt
  • 寻找 jQuery 效果来逐渐显示隐藏的 DIV/图像

    可能我错过了一些明显的东西 但我无法弄清楚如何慢慢地显示隐藏的图像 DIV 以便它从上到下显示 如果你看一下这个 jsfiddle 你会看到我试图在 jQuery 中使用 show 来显示的图像 http jsfiddle net nick
  • 在客户端将大文件(> 2GB)压缩为 ZIP

    我使用构建上传工具node js and socket io 因为他们通常会上传令人难以置信的巨大文件 而普通的上传表单将无法工作 问题是他们想在发送之前将文件压缩成zip 以提高传输效率 我一直在研究压缩方法 例如JSZip http s
  • JQuery 可拖动图像并保存位置

    好吧 这变得很尴尬 已经搜索并尝试了大约 5 个小时 但我只是在兜圈子 场景很简单 它是用户个人资料的标题图像 可以将其拖动到某个位置 然后将图像的顶部位置保存到数据库中 感谢 Beetroot Beetroot 的 遏制 父级 我开始关注
  • asp.net 保护图像免受其他用户的静态请求?

    我在一个为每个特定用户生成动态图像的网站上工作 有时这些图像包含非常敏感数据的描述 最近 我们开始看到对属于不同用户的图像的请求 其形式为 http myapp images someuid image1 jpg http myapp im
  • 图像增强 - 从书写中清除给定图像

    我需要清理这张照片 删除 清理我 的字样并使其变亮 作为图像处理课程作业的一部分 我可能会使用 matlab 函数 ginput 来查找图像中的特定点 当然 在脚本中您应该对所需的坐标进行硬编码 您可以使用 conv2 fft2 ifft2
  • 我可以在 Android 上使用带有文本视图的列表视图和图像图标吗

    我需要一个像下面的 Android 应用程序那样的列表视图 由于我无法发布图片 所以应该是这样的 图片在这里 一些自由文本 用户名等 这是你的任务 任务1 gt 任务2 gt 任务 1 和任务 2 是将从数据库动态获取的列表 我试图拥有一个
  • 我认为 *.DDS 文件应该能够快速加载?

    好的 所以我正在尝试权衡使用各种不同纹理压缩技术的利弊 我 99 999 的时间都在使用 DirectX 为 Windows 机器编写 2D 精灵游戏 到目前为止 我已经研究了带有 alpha 修剪的纹理打包 SpriteSheets 这似
  • 加载一张随机 flickr 图像并附加到 div

    我基本上试图加载从特定用户和特定集合中获取的随机 flickr 图像 然后将其显示在 ID 为 flickr wrap 的 div 中 我正在尝试操纵此 JSON 代码来执行我想要的操作 但不知道从哪里开始 这段代码当前加载了很多图像 我只
  • Facebook 时间线墙贴图像在点赞后被裁剪

    我的网站上有一个 Facebook Like 按钮 已经半年了 使用 OG 标签来可视化类似内容 一切都经过彻底测试 一切都在 基本 墙上 时间线 墙上以及新闻提要中显示良好 但突然间 当有人喜欢该页面时 该图像就会被裁剪在时间轴墙上 原始
  • 使用 JavaScript 将图像上传到 Web 服务

    我需要从 javascript 将图像上传到网络服务 我必须发送一个 json 字符串和一个文件 图像 在java中我们有MultipartEntity 我在java中有以下代码 HttpPost post new HttpPost aWe
  • 将图像文件存储在猫鼬模式的二进制数据中并以html形式显示图像

    我正在使用 Express Node js 和 Mongodb 创建上传和显示图像文件的网页 我使用 schema 将图像的二进制文件保存在 mongodb 中 这是我在index js和db js中的一点代码 var Post mongo
  • 从 url 加载图像并绘制到 HTML5 Canvas

    我在从 javascript 中的 url 加载图像时遇到问题 下面的代码可以工作 但我不想从 html 加载图像 我想使用纯 JavaScript 从 url 加载图像 var c document getElementById myCa
  • http压缩和url压缩有什么区别?

    查看 Web config 中的节点 我发现它允许 httpCompression 和 urlCompression 元素 两者有什么区别 我只想执行标准 gzip 我应该使用哪一个 url压缩指定what压缩和http压缩表示how进行压
  • img 标签如何通过 cors 标头获取内容

    为什么当我使用 fetch 从禁用响应 CORS 标头的服务器加载数据时 我预期会收到错误 Failed to load http www imgworlds com wp content uploads 2015 12 18 CONTAC
  • 如何在 Angular JS 中显示以字节数组形式接收的图像

    我有一个将返回图像的服务器端应用程序 这些是响应标头 Content Disposition attachment filename 8822a009 944e 43f4 999b d297198d302a 1 0 low res Cont
  • 图像上的 JQuery 加载事件

    我想在加载图像时将图像父级的大小调整为与图像相同的大小 此时我正在使用这段代码 window load function image principale each function this parent css height this
  • CSS - 将文本保留在图像下方

    我正在尝试创建一个简单的图片库 有人告诉我使用 float left 但是当我这样做时 页脚中的所有文本都会射到第一张图像 我已经搜索了大约一个小时试图找到解决方案 但我找不到任何东西 我尝试过使用边距 边框 不同的对齐方式和各种不同的小东
  • 如何使用 Misc.imread 将图像分割为红色、绿色和蓝色通道

    我正在尝试将图像切片为 RGB 但在绘制这些图像时遇到问题 我使用此函数从某个文件夹获取所有图像 def get images path image type image list for filename in glob glob pat

随机推荐

  • Play Framework @routes.Assets.at 编译错误

    我正在使用 Play 2 4 0 并且我一直在尝试按照主页上的教程进行操作 https playframework com https playframework com 这是针对 Play 2 3 的 在解决了有关 Ebean ORM 从
  • 如何使用 openpyxl 读取 Excel 单元格值而不是计算它的公式?

    我在用openpyxl读取单元格值 Excel addin webservice 更新了此列 我用过data only True但它不显示当前单元格值 而是显示 Excel 上次读取工作表时存储的值 wbFile openpyxl load
  • 使用 DateInterval 计算两个日期之间的月份,而不在一年内换行

    我知道这个话题已经很累了 但显然还不够 temp d1 new DateTime date Y m d fromTime 2012 01 01 temp d2 new DateTime date Y m d endTime 2013 02
  • 在 C 中实现 SB 型 riscv 指令

    我遇到了一些问题 我尝试将 32 位二进制解码为 RISCV 架构集中的 SB 类型指令 我已经移动了操作码 imm rs1 rs2 和 rd 值 但未能获得正确的 IMM 值 例如对于以下 32 位二进制 1111111000000111
  • 运行时获取注解信息

    我想知道有没有什么方法可以在运行时获取类的注释信息 因为我想获取具体注释的属性 Example class TestMain Field store Store NO private String name private String p
  • CSS :nth-of-type() 和 :not() 选择器?

    我并排浮动了 25 宽的文章 我正在添加一个clear both每四个元素之后 但是我需要在元素之间插入图形分节符 它必须在 ul 为了有效 我将 分节符 下面示例中的第一个 li 项 包装成 li 以及 ul li class year
  • ValueError:预期的 2D 或 3D 输入(获得 1D 输入)PyTorch

    class VAE torch nn Module def init self input size hidden sizes batch size super VAE self init self input size input siz
  • cspack 行为与 msbuild 不同

    使用 Visual Studio 2012 Azure SDK 2 1 我试图找出创建 csx 文件夹以在 azure 模拟器中运行的最佳方法 我的理解是 在打包 Azure 项目之前 不会创建 csx 文件夹 我可以从 Visual St
  • 无法在 iOS 上使用自定义 @protocol

    注意 以下是使用启用了自动引用计数 ARC 的 iOS 我认为 ARC 可能与它不起作用有很大关系 因为这是根据我通过谷歌找到的示例设置的 我正在尝试创建一个协议来通知委托用户从 UITableView 选择的文件名 文件列表视图控制器 h
  • 离子搜索栏搜索不适用于 cypress {enter}

    我有一个 Ionic 6 应用程序 我正在使用 cypress 9 3 1 对其进行测试 在我的应用程序中 我使用像这样的离子搜索栏
  • 插入...值(SELECT ... FROM ...)

    我在尝试着INSERT INTO使用另一个表的输入的表 尽管这对于许多数据库引擎来说是完全可行的 但我似乎总是很难记住正确的语法SQL当天的发动机 MySQL http en wikipedia org wiki MySQL Oracle
  • WPF DPI 问题

    我开发了一个应用程序 在我的计算机上看起来很棒 但当我将其安装到具有不同分辨率和 DPI 设置的其他计算机上时 它看起来很糟糕 控件相互重叠 这真是太痛苦了 有人对如何避免这种情况有什么建议吗 Windows 无法知道屏幕的本机 DPI 每
  • Python3 - 无法读取 docx、odt 文件 - UnicodeDecodeError:“utf-8”编解码器无法解码位置 10 中的字节 0xea:无效的连续字节

    我正在尝试将大 docx 文件拆分为小文件 为此 当读取文件时python3 6使用以下代码 with open h docx r as f a f read 它抛出这个错误 Traceback most recent call last
  • Linux 中的沙箱

    我想创建一个 Web 应用程序 允许用户上传一些 C 代码 并查看其执行结果 代码将在服务器上编译 用户不受信任 这显然会带来巨大的安全隐患 所以我需要为应用程序创建某种沙箱 在最基本的层面上 我想将对文件系统的访问限制为某些指定的目录 我
  • Spring JPA 中的 @Entity 是什么?

    具体来说 我指的是javax persistence Entity 根据我将鼠标悬停在上面时显示的文档 在 VS Code 中它指出 指定该类是一个实体 该注解适用于 实体类 对于 Spring JPA 来说 类是实体意味着什么 Entit
  • GetComInterfaceForObject 是否固定对象?

    使用 GetComInterfaceForObject 并将返回的 IntPtr 传递给非托管代码是否会阻止托管对象在内存中移动 或者 clr 是否以某种方式维护该 ptr 请注意 非托管代码将在程序的生命周期内使用它 并且我需要确保托管对
  • 在单个测试类中测试接口的多个实现

    我需要通过班级级别的测试数据但是Theory and InlineData属性只能用在方法上 public class ContainerTests TestFixture private IContainer container publ
  • 在 GPU 上预加载整个数据集以训练 Keras 模型

    我有一个特定的情况 其中网络相对较小 为了收敛和泛化问题 我应该保持较小的批量大小 例如 256 这导致每个时期要处理数百个批量 不幸的是 在这种情况下 批量 加载和损失计算成为瓶颈 如timeline工具告诉我 在 TensorFlow
  • spring可以支持多应用共享成员资格吗?

    spring 框架是否支持共享公共用户群的多个应用程序 例如2 个独立的 Web 应用程序以某种方式连接到单个数据库以获取用户相关信息 用户名 密码 甚至角色 这个想法是这样的 类似于ASP NET 会员资格 http msdn micro
  • 图像隐写术抵御各种攻击的最佳实践是什么? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我对此真的很好奇 因为现在每个频道都可以以某种方式修改或压缩图像 这可以被视为对隐写术的攻击 我们可以将隐写术分为两种基本类型 第一种在图像的空