
Stegano、純粋なPythonステガノグラフィモジュール。
ステガノグラフィは、送信者と意図された受信者以外の誰もメッセージの存在を疑わないように隠しメッセージを書き込む技術であり、隠蔽によるセキュリティの一種です。したがって、Steganoが提供する機能はメッセージを隠すだけで、暗号化は行いません。ステガノグラフィは暗号化と組み合わせて使用されることがよくあります。
$ poetry install stegano
これで、PythonプログラムでSteganoを使用できるようになります。
Steganoをコマンドラインツールとしてのみインストールしたい場合:
$ pipx install stegano
pipxは、Pythonパッケージが提供するスクリプト(システム全体で利用可能)を、システムや他のパッケージから隔離するために別々のvirtualenvにインストールします。
チュートリアルが利用可能です。
PythonプログラムでSteganoを使用するには、適切なステガノグラフィ技術をインポートするだけです。例:
>>> from stegano import lsb
>>> secret = lsb.hide("./tests/sample-files/Lenna.png", "Hello World")
>>> secret.save("./Lenna-secret.png")
>>>
>>> clear_message = lsb.reveal("./Lenna-secret.png")
可逆的データ隠蔽(メッセージ抽出後に元のカバーを完全に復元できる)には、ヒストグラムシフト技術を使用します:
>>> from stegano import rdh
>>> secret = rdh.hide("./tests/sample-files/Lenna-grayscale.png", "Hello World")
>>> secret.save("./Lenna-secret.png")
>>>
>>> clear_message = rdh.reveal("./Lenna-secret.png")
>>> cover = rdh.recover("./Lenna-secret.png") # 元の画像を復元
$ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m "Secret Message" -o Lena1.png
$ stegano-lsb reveal -i Lena1.png
Secret Message
$ stegano-rdh hide -i ./tests/sample-files/Lenna-grayscale.png -m "Secret Message" -o stego.png
$ stegano-rdh reveal -i stego.png
Secret Message
$ stegano-rdh recover -i stego.png -o cover.png # cover.png == 元の画像
$ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m 'Secret Message' --generator eratosthenes -o Lena2.png
メッセージは、エラトステネスの篩によって記述される集合に従って画像内に分散されます。他の集合も利用可能です。独自のジェネレータを使用することもできます。
これにより、ステガノ分析がより困難になります。
$ python -m unittest discover -v
静的型チェッカーの実行:
$ mypy stegano
貢献を歓迎します。Steganoに貢献したい場合は、poetryを使用してPython仮想環境にインストールすることを強くお勧めします。
もしご希望で、Steganoが気に入ったなら、GitHub Sponsorsを通じて寄付できます:
または、以下のアドレスにビットコインで: bc1q56u6sj7cvlwu58v5lemljcvkh7v2gc3tv8mj0e
ありがとうございます!
このソフトウェアはGNU General Public License バージョン3の下でライセンスされています。
Copyright (C) 2010-2026 Cédric Bonhomme
詳細については、著者と貢献者のリストが利用可能です。