%global _empty_manifest_terminate_build 0 Name: python-stegano Version: 0.11.1 Release: 1 Summary: A pure Python Steganography module. License: GPL-3.0-or-later URL: https://sr.ht/~cedric/stegano Source0: https://mirrors.nju.edu.cn/pypi/web/packages/4e/ca/49024ce0871c906d81d6352a2282f2b860ba41c63727e0b7049665654fcd/stegano-0.11.1.tar.gz BuildArch: noarch Requires: python3-pillow Requires: python3-piexif Requires: python3-crayons Requires: python3-opencv-python %description # Stegano [![builds.sr.ht status](https://builds.sr.ht/~cedric/stegano.svg)](https://builds.sr.ht/~cedric/stegano) [![Workflow](https://github.com/cedricbonhomme/Stegano/workflows/Python%20application/badge.svg?style=flat-square)](https://github.com/cedricbonhomme/Stegano/actions?query=workflow%3A%22Python+application%22) [Stegano](https://sr.ht/~cedric/stegano), a pure Python Steganography module. Steganography is the art and science of writing hidden messages in such a way that no one, apart from the sender and intended recipient, suspects the existence of the message, a form of security through obscurity. Consequently, functions provided by Stegano only hide messages, without encryption. Steganography is often used with cryptography. For reporting issues, visit the tracker here: https://todo.sr.ht/~cedric/stegano ## Installation ```bash $ poetry install stegano ``` You will be able to use Stegano in your Python programs. If you only want to install Stegano as a command line tool: ```bash $ pipx install stegano ``` pipx installs scripts (system wide available) provided by Python packages into separate virtualenvs to shield them from your system and each other. ## Usage A [tutorial](https://stegano.readthedocs.io) is available. ## Use Stegano as a library in your Python program If you want to use Stegano in your Python program you just have to import the appropriate steganography technique. For example: ```python >>> 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") ``` ## Use Stegano as a command line tool ### Hide and reveal a message ```bash $ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m "Secret Message" -o Lena1.png $ stegano-lsb reveal -i Lena1.png Secret Message ``` ### Hide the message with the Sieve of Eratosthenes ```bash $ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m 'Secret Message' --generator eratosthenes -o Lena2.png ``` The message will be scattered in the picture, following a set described by the Sieve of Eratosthenes. Other sets are available. You can also use your own generators. This will make a steganalysis more complicated. ## Running the tests ```bash $ python -m unittest discover -v ``` Running the static type checker: ```bash $ mypy stegano ``` ## Contributions Contributions are welcome. If you want to contribute to Stegano I highly recommend you to install it in a Python virtual environment with poetry. ## License This software is licensed under [GNU General Public License version 3](https://www.gnu.org/licenses/gpl-3.0.html) Copyright (C) 2010-2022 [Cédric Bonhomme](https://www.cedricbonhomme.org) For more information, [the list of authors and contributors](CONTRIBUTORS.md) is available. %package -n python3-stegano Summary: A pure Python Steganography module. Provides: python-stegano BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-stegano # Stegano [![builds.sr.ht status](https://builds.sr.ht/~cedric/stegano.svg)](https://builds.sr.ht/~cedric/stegano) [![Workflow](https://github.com/cedricbonhomme/Stegano/workflows/Python%20application/badge.svg?style=flat-square)](https://github.com/cedricbonhomme/Stegano/actions?query=workflow%3A%22Python+application%22) [Stegano](https://sr.ht/~cedric/stegano), a pure Python Steganography module. Steganography is the art and science of writing hidden messages in such a way that no one, apart from the sender and intended recipient, suspects the existence of the message, a form of security through obscurity. Consequently, functions provided by Stegano only hide messages, without encryption. Steganography is often used with cryptography. For reporting issues, visit the tracker here: https://todo.sr.ht/~cedric/stegano ## Installation ```bash $ poetry install stegano ``` You will be able to use Stegano in your Python programs. If you only want to install Stegano as a command line tool: ```bash $ pipx install stegano ``` pipx installs scripts (system wide available) provided by Python packages into separate virtualenvs to shield them from your system and each other. ## Usage A [tutorial](https://stegano.readthedocs.io) is available. ## Use Stegano as a library in your Python program If you want to use Stegano in your Python program you just have to import the appropriate steganography technique. For example: ```python >>> 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") ``` ## Use Stegano as a command line tool ### Hide and reveal a message ```bash $ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m "Secret Message" -o Lena1.png $ stegano-lsb reveal -i Lena1.png Secret Message ``` ### Hide the message with the Sieve of Eratosthenes ```bash $ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m 'Secret Message' --generator eratosthenes -o Lena2.png ``` The message will be scattered in the picture, following a set described by the Sieve of Eratosthenes. Other sets are available. You can also use your own generators. This will make a steganalysis more complicated. ## Running the tests ```bash $ python -m unittest discover -v ``` Running the static type checker: ```bash $ mypy stegano ``` ## Contributions Contributions are welcome. If you want to contribute to Stegano I highly recommend you to install it in a Python virtual environment with poetry. ## License This software is licensed under [GNU General Public License version 3](https://www.gnu.org/licenses/gpl-3.0.html) Copyright (C) 2010-2022 [Cédric Bonhomme](https://www.cedricbonhomme.org) For more information, [the list of authors and contributors](CONTRIBUTORS.md) is available. %package help Summary: Development documents and examples for stegano Provides: python3-stegano-doc %description help # Stegano [![builds.sr.ht status](https://builds.sr.ht/~cedric/stegano.svg)](https://builds.sr.ht/~cedric/stegano) [![Workflow](https://github.com/cedricbonhomme/Stegano/workflows/Python%20application/badge.svg?style=flat-square)](https://github.com/cedricbonhomme/Stegano/actions?query=workflow%3A%22Python+application%22) [Stegano](https://sr.ht/~cedric/stegano), a pure Python Steganography module. Steganography is the art and science of writing hidden messages in such a way that no one, apart from the sender and intended recipient, suspects the existence of the message, a form of security through obscurity. Consequently, functions provided by Stegano only hide messages, without encryption. Steganography is often used with cryptography. For reporting issues, visit the tracker here: https://todo.sr.ht/~cedric/stegano ## Installation ```bash $ poetry install stegano ``` You will be able to use Stegano in your Python programs. If you only want to install Stegano as a command line tool: ```bash $ pipx install stegano ``` pipx installs scripts (system wide available) provided by Python packages into separate virtualenvs to shield them from your system and each other. ## Usage A [tutorial](https://stegano.readthedocs.io) is available. ## Use Stegano as a library in your Python program If you want to use Stegano in your Python program you just have to import the appropriate steganography technique. For example: ```python >>> 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") ``` ## Use Stegano as a command line tool ### Hide and reveal a message ```bash $ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m "Secret Message" -o Lena1.png $ stegano-lsb reveal -i Lena1.png Secret Message ``` ### Hide the message with the Sieve of Eratosthenes ```bash $ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m 'Secret Message' --generator eratosthenes -o Lena2.png ``` The message will be scattered in the picture, following a set described by the Sieve of Eratosthenes. Other sets are available. You can also use your own generators. This will make a steganalysis more complicated. ## Running the tests ```bash $ python -m unittest discover -v ``` Running the static type checker: ```bash $ mypy stegano ``` ## Contributions Contributions are welcome. If you want to contribute to Stegano I highly recommend you to install it in a Python virtual environment with poetry. ## License This software is licensed under [GNU General Public License version 3](https://www.gnu.org/licenses/gpl-3.0.html) Copyright (C) 2010-2022 [Cédric Bonhomme](https://www.cedricbonhomme.org) For more information, [the list of authors and contributors](CONTRIBUTORS.md) is available. %prep %autosetup -n stegano-0.11.1 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-stegano -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Mon Apr 10 2023 Python_Bot - 0.11.1-1 - Package Spec generated