gpt4 book ai didi

language-agnostic - 应用程序中的 "watermarking"如何工作?

转载 作者:行者123 更新时间:2023-12-04 16:37:57 25 4
gpt4 key购买 nike

水印我的意思是:
以某种方式集成到 .exe/.dll 文件中的字节数组,可以搜索该文件。
许多反盗版/反逆向工程程序包括一个称为“水印”的系统作为特征。例如 VMProtect。

这是如何运作的?
如果有人破解和/或复制 protected 二进制文件,究竟是什么阻止了他删除水印。
这个想法是,作为软件的创建者,您可以下载自己程序的盗版副本,然后您可以查看究竟是谁泄露/上传了此副本。
究竟是什么阻止了攻击者扫描水印并删除它们?

这个问题的第二部分:
据说水印在二进制文件中的不同随机位置被(或应该)包含多次。
显然它们不是完全随机的。因为这会以与有缺陷的硬盘驱动器相同的方式损坏二进制文件。
该程序不能只是用水印覆盖二进制文件中的代码,这是肯定的。
保护程序如何在二进制文件的不同(和随机)位置包含水印?
这些地点是如何选择的?

第三方:
假设我有一个带水印的二进制文件。
保护程序稍后将如何扫描水印。它是如何再次找到水印的?

另外,水印中怎么会有信息(一个小字符串,标识副本的原始所有者)?信息是否以某种方式加密到水印中?

最佳答案

我不知道你的目标是什么,但是:

  • 水印就像您描述的那样将一些独特的字节序列放入二进制
  • 必须小心插入字节序列,以免使二进制文件无法使用(取决于二进制文件的类型 - 即 .NET 或 .jar 或 native .EXE 等)
  • 字节序列必须使不熟悉此特定水印系统的人难以识别(例如,您可以使用某种 http://en.wikipedia.org/wiki/Steganography )
  • 这一切使得破解软件时很难去除水印
  • 保护程序可以扫描水印,因为它知道用于加水印的算法和 key
  • 您可以在水印中包含任何内容(取决于算法)......水印软件应该在将其放入水印之前以某种方式对其进行加密(它甚至可以将散列放入二进制文件而不是真实信息中,并且仍然能够识别)
  • 关于language-agnostic - 应用程序中的 "watermarking"如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6797653/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com