私は、ユーザーの画像とファイルを1つのソースから配布するクライアントを管理しています。私のバックグラウンドはセキュリティではなく開発に深く関わっています。もちろん、開発側をくすぐるいくつかのトリック(MD5など)には精通していますが、深刻なことや優れた方法はありません。したがって、質問:
ユーザーのグループの画像にタグを付ける最良の方法は何ですか?1人のユーザーが情報を漏らした場合、誰が最初に情報を漏らしたかを知ることができます(誰かがダウンロードしたときに生成されるある種の一意のユーザータグ)?
手動配布はオプションではありません。さらに、私たちのクライアントのサービスは名誉システムに基づいているため、安全なビューアもオプションではありません。リークをさかのぼって見つけたいと思っています。とにかく、この場合、ユーザーの不便なしにリークを完全に防ぐことは不可能です。
前もって感謝します!
あなたが探しているのは「ステガノグラフィ」と呼ばれ、秘密のコンテンツを一目で隠すプロセスです。
どのテクニックまたはライブラリがあなたにとって最も有用であるかは、あなたが何を保護しようとしているのか、そしてあなたが何から保護しようとしているのかによって異なります。これは、exifメタデータで遊ぶような単純なものでも、Digimarcのような画像コンテンツを変更するものでもかまいません。少し調べてみると、プロセスを動的に実行するためにサーバー側に持ち込むことができる適切なオープンソースツールがおそらくいくつかあります。
さまざまな種類のメディアには、さまざまな手法があります。 Google Scholarで簡単に検索すると、電子透かしなどの多くの手法が明らかになります。多くの人が、聞き取れないだけでなく、再エンコードやピッチ/テンポの合理的な変更に耐性があると主張しています(たとえば、オリジナルにあまり精通していない場合、1.1倍速で音楽を再生することはそれほど迷惑ではありませんが、透かしもそれを乗り越えます)。
ジェームズ・スネルが彼らの答えで述べたように、ステガノグラフィーはあなたが探している技術です。一般的な形式は最下位ビットを使用してデータをエンコードすることですが、誰かが努力すればこれはかなり簡単に削除でき、誰かがJPEGのような不可逆形式を使用すると失われます。メタデータに識別情報を埋め込むのは少し簡単ですが、多くの写真編集者(初心者が使用可能)はこれを変更できます。
使用する手法を決定するときは、データを疑似非正規化する必要があることに注意してください。誰かが実際の人にさかのぼる可能性のある名前やユーザーIDを埋め込む代わりに、暗号化された形式の名前またはユーザーIDを埋め込むことができます。仮名は依然としてPIIに該当するため、匿名であるほど良くはありませんが、ユーザーデータを保護するための合理的な努力をするために、これを行うことをお勧めします。
画像をリクエストしたユーザーを識別するウォーターマークを動的に埋め込む必要があります。意味:ユーザーが画像をリクエスト/ダウンロードする場合は、元の画像を取得し、ユーザーを識別する透かしを画像に埋め込む必要があります。