ウォーターマークの意味: 何らかの形で.exe/.dllファイルに統合され、検索可能なバイト配列です。 多くの著作権侵害防止/反リバースエンジニアプログラムには、フィーチャとして「透かし」と呼ばれるシステムが含まれています。たとえば、VMProtect。アプリケーションで「透かし」はどのように機能しますか?
これはどのように機能しますか? 誰かが保護されたバイナリをクラックしたりコピーしたりしていた場合、透かしの削除だけを防ぐことができます。 あなたのソフトウェアの作成者は、あなた自身のプログラムの海賊版コピーをダウンロードでき、このコピーを正確に流出/アップロードした人を確認することができます。 攻撃者が透かしをスキャンして削除するだけの正確な方法はありますか?
この質問の第2部分: バイナリの異なるランダムな位置にウォーターマークが何度も含まれている(または含まれる)と言われています。明らかにそれらは完全にランダムではありません。これは、欠陥のあるハードドライブと同じ方法でバイナリを破損するためです。 バイナリのコードをウォーターマークで上書きすることはできません。それは確かです。 保護プログラムは、バイナリの異なる(ランダムな)場所にウォーターマークを含めるにはどうすればよいですか? これらの場所はどのように選択されていますか?
第三部: 私は透かし入りのバイナリを持っていると仮定。 保護プログラムは、後でどのように透かしをスキャンしますか?もう一度透かしを見つけるのですか?
また、透かしに含まれる情報(小さな文字列、コピーの元の所有者を特定する)はどのようにすることができますか?情報は何とか透かしに暗号化されていますか?