stegano


Namestegano JSON
Version 0.11.4 PyPI version JSON
download
home_pagehttps://github.com/cedricbonhomme/Stegano
SummaryA pure Python Steganography module.
upload_time2024-09-07 21:56:58
maintainerNone
docs_urlNone
authorCédric Bonhomme
requires_python<3.13,>=3.10
licenseGPL-3.0-or-later
keywords steganography security stegano
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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://github.com/cedricbonhomme/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.


## 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.


## Donations

If you wish and if you like Stegano, you can donate:

[![GitHub Sponsors](https://img.shields.io/github/sponsors/cedricbonhomme)](https://github.com/sponsors/cedricbonhomme)

Thank you !


## License

This software is licensed under
[GNU General Public License version 3](https://www.gnu.org/licenses/gpl-3.0.html)

Copyright (C) 2010-2024 [Cédric Bonhomme](https://www.cedricbonhomme.org)

For more information, [the list of authors and contributors](CONTRIBUTORS.md) is available.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/cedricbonhomme/Stegano",
    "name": "stegano",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.13,>=3.10",
    "maintainer_email": null,
    "keywords": "steganography, security, stegano",
    "author": "C\u00e9dric Bonhomme",
    "author_email": "cedric@cedricbonhomme.org",
    "download_url": "https://files.pythonhosted.org/packages/45/d0/e6a603dd9ca9d74386445af856c6e55a21e3e7a8dc45c06797795af72409/stegano-0.11.4.tar.gz",
    "platform": null,
    "description": "# Stegano\n\n[![builds.sr.ht status](https://builds.sr.ht/~cedric/stegano.svg)](https://builds.sr.ht/~cedric/stegano)\n[![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)\n\n[Stegano](https://github.com/cedricbonhomme/Stegano), a pure Python Steganography\nmodule.\n\nSteganography is the art and science of writing hidden messages in such a way\nthat no one, apart from the sender and intended recipient, suspects the\nexistence of the message, a form of security through obscurity. Consequently,\nfunctions provided by Stegano only hide messages, without encryption.\nSteganography is often used with cryptography.\n\n\n## Installation\n\n\n```bash\n$ poetry install stegano\n```\n\nYou will be able to use Stegano in your Python programs.\n\nIf you only want to install Stegano as a command line tool:\n\n```bash\n$ pipx install stegano\n```\n\npipx installs scripts (system wide available) provided by Python packages into\nseparate virtualenvs to shield them from your system and each other.\n\n\n## Usage\n\nA [tutorial](https://stegano.readthedocs.io) is available.\n\n\n## Use Stegano as a library in your Python program\n\nIf you want to use Stegano in your Python program you just have to import the\nappropriate steganography technique. For example:\n\n```python\n>>> from stegano import lsb\n>>> secret = lsb.hide(\"./tests/sample-files/Lenna.png\", \"Hello World\")\n>>> secret.save(\"./Lenna-secret.png\")\n>>>\n>>> clear_message = lsb.reveal(\"./Lenna-secret.png\")\n```\n\n\n## Use Stegano as a command line tool\n\n### Hide and reveal a message\n\n```bash\n$ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m \"Secret Message\" -o Lena1.png\n$ stegano-lsb reveal -i Lena1.png\nSecret Message\n```\n\n\n### Hide the message with the Sieve of Eratosthenes\n\n```bash\n$ stegano-lsb hide -i ./tests/sample-files/Lenna.png -m 'Secret Message' --generator eratosthenes -o Lena2.png\n```\n\nThe message will be scattered in the picture, following a set described by the\nSieve of Eratosthenes. Other sets are available. You can also use your own\ngenerators.\n\nThis will make a steganalysis more complicated.\n\n\n## Running the tests\n\n```bash\n$ python -m unittest discover -v\n```\n\nRunning the static type checker:\n\n```bash\n$ mypy stegano\n```\n\n\n## Contributions\n\nContributions are welcome. If you want to contribute to Stegano I highly\nrecommend you to install it in a Python virtual environment with poetry.\n\n\n## Donations\n\nIf you wish and if you like Stegano, you can donate:\n\n[![GitHub Sponsors](https://img.shields.io/github/sponsors/cedricbonhomme)](https://github.com/sponsors/cedricbonhomme)\n\nThank you !\n\n\n## License\n\nThis software is licensed under\n[GNU General Public License version 3](https://www.gnu.org/licenses/gpl-3.0.html)\n\nCopyright (C) 2010-2024 [C\u00e9dric Bonhomme](https://www.cedricbonhomme.org)\n\nFor more information, [the list of authors and contributors](CONTRIBUTORS.md) is available.\n",
    "bugtrack_url": null,
    "license": "GPL-3.0-or-later",
    "summary": "A pure Python Steganography module.",
    "version": "0.11.4",
    "project_urls": {
        "Documentation": "https://stegano.readthedocs.io",
        "Homepage": "https://github.com/cedricbonhomme/Stegano",
        "Repository": "https://github.com/cedricbonhomme/Stegano"
    },
    "split_keywords": [
        "steganography",
        " security",
        " stegano"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ac06a002f4fac95b3b2e3f3b002707f73f8f1548ebcb527359322db046974993",
                "md5": "3f6867895b4d689a8e41b06c40e24e91",
                "sha256": "694ef47d4c9fc18bf7ad407e1b9f359d67817d5bb4c0d60fd03b57c65dfc9901"
            },
            "downloads": -1,
            "filename": "stegano-0.11.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3f6867895b4d689a8e41b06c40e24e91",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.13,>=3.10",
            "size": 61697,
            "upload_time": "2024-09-07T21:56:56",
            "upload_time_iso_8601": "2024-09-07T21:56:56.340641Z",
            "url": "https://files.pythonhosted.org/packages/ac/06/a002f4fac95b3b2e3f3b002707f73f8f1548ebcb527359322db046974993/stegano-0.11.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "45d0e6a603dd9ca9d74386445af856c6e55a21e3e7a8dc45c06797795af72409",
                "md5": "ead65b308c58d6c0749b0a440788ebb8",
                "sha256": "51b57050f1e278ce76d4881f101d934bd50648c2e9097bd11c57c799cdf9a0a1"
            },
            "downloads": -1,
            "filename": "stegano-0.11.4.tar.gz",
            "has_sig": false,
            "md5_digest": "ead65b308c58d6c0749b0a440788ebb8",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.13,>=3.10",
            "size": 36680,
            "upload_time": "2024-09-07T21:56:58",
            "upload_time_iso_8601": "2024-09-07T21:56:58.099771Z",
            "url": "https://files.pythonhosted.org/packages/45/d0/e6a603dd9ca9d74386445af856c6e55a21e3e7a8dc45c06797795af72409/stegano-0.11.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-07 21:56:58",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "cedricbonhomme",
    "github_project": "Stegano",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "stegano"
}
        
Elapsed time: 0.28287s