バイナリ ファイルを PNG イメージに変換し、復号化してバイナリに戻します。
バイナリ ファイルの各バイトは数値 (0 ~ 255) に変換され、ピクセル カラーが定義されます。各バイトは、最終的な PNG 画像のグレースケール ピクセルになります。 PNG 画像には、バイナリ ファイルのバイト数より多くのピクセルを含めることができます。余分なピクセルは RGB(255, 0, 0) カラー (赤) になり、ファイルを復号化するときに無視されます。
PNG ファイルを復号化して対応するバイナリ ファイルを作成するときに、画像の各ピクセルを取得してその色を取得します。 R と G の色が異なる場合は、このピクセルをスキップします。グレースケールではないため、余分なピクセルが存在します。グレースケールの場合は、R の色番号を取得し、それをバイナリ表現に変換します。すべてのピクセルの復号化されたバイナリ データを使用して unsigned char 配列を構築し、それをバイナリ ファイルに保存し直します。
exe ファイルはここから直接ダウンロードできます: https://github.com/leeroybrun/Bin2PNG/releases/download/v1.1/Bin2PNG.exe
または、Visual Studio またはその他の C コンパイラーを使用してビルドすることもできます。
次に、変換するバイナリ ファイルをBin2PNG.exe
ファイルと同じフォルダーに配置し、名前をin.exe
に変更します。
その後、それを PNG 画像に暗号化できます。
Bin2PNG.exe 暗号化
成功すると、 image.png
ファイルが生成されます。
次に、このファイルを次のように復号化してバイナリに戻すことができます。
Bin2PNG.exe の復号化
image.png
ファイルを復号化し、新しいバイナリout.exe
を作成します。
パラメータを追加してバイナリ ファイルとイメージ ファイルの名前を定義します
バイトを数値に変換するより良い方法を見つけるかもしれません
復号化された exe が元の exe より少し大きい理由を調べます
(MITライセンス)
著作権 (C) 2013 Leeroy Brun、www.leeroy.me
本ソフトウェアおよび関連ドキュメント ファイル (以下「ソフトウェア」) のコピーを入手した人には、使用、コピー、変更、マージする権利を含むがこれらに限定されない、制限なくソフトウェアを取り扱う許可が、ここに無償で与えられます。 、以下の条件を条件として、本ソフトウェアのコピーを出版、配布、サブライセンス、および/または販売すること、および本ソフトウェアが提供される人物にそれを許可すること。
上記の著作権表示およびこの許可通知は、ソフトウェアのすべてのコピーまたは主要部分に含まれるものとします。
ソフトウェアは「現状のまま」提供され、明示的か黙示的かを問わず、商品性、特定目的への適合性、および非侵害の保証を含むがこれらに限定されない、いかなる種類の保証も行われません。いかなる場合においても、作者または著作権所有者は、契約行為、不法行為、またはその他の行為であるかどうかにかかわらず、ソフトウェアまたはソフトウェアの使用またはその他の取引に起因または関連して生じる、いかなる請求、損害、またはその他の責任に対しても責任を負わないものとします。ソフトウェア。