2

http://github.com/anirudhsamaを使用して画像にテキスト ファイルを隠していますが、正常に動作し、プログラムでテキスト ファイルを再度抽出することができました。

しかし、Facebook、Twitter、および電子メールでプログラムで画像を共有すると、その共有画像が適切にデコードされないため、ファイルを取得できません。

次のように画像を取得します。

UIImage *finalImageWithStegno = [UIImage imageWithContentsOfFile:fileName]; 
4

2 に答える 2

5

疑わしいのは、サイトにアップロードするときの画像圧縮です。これを確認する簡単な方法は、カバー画像でメッセージを非表示にすることです (ステゴ画像を取得します)。Web サイトに画像をアップロードしてダウンロードします。元の stego イメージとダウンロードしたイメージを比較します。それらが(バイトごとに)異なる場合は、問題があります。

コードをざっと見てみると、アプリはデータを空間ドメインに隠しているように見えますが、これは堅牢ではありません。メッセージは画像のピクセルに直接隠されているため、(非可逆圧縮、ぼかしなどにより) ピクセルが変化すると、メッセージは失われます。これに対する解決策は、周波数ドメインでデータを非表示にすることです。別の解決策は、圧縮されないファイルタイプで画像をアップロードすることでしょうか? サイトが画像をどのように扱っているのかよくわからないので、2 番目の提案は不可能かもしれません。

いずれにせよ、サイトにアップロードすると画像が歪む場合は、自分でコーディングできない限り、役立つ可能性のある別のアプリを探してください. 次に、詳細に入ることができます。:)

于 2013-04-19T23:59:35.133 に答える