xor-cipher


Namexor-cipher JSON
Version 4.0.0 PyPI version JSON
download
home_pagehttps://github.com/xor-cipher/xor-cipher
SummarySimple, reusable and optimized XOR ciphers in Python.
upload_time2024-03-04 12:50:19
maintainer
docs_urlNone
authornekitdev
requires_python>=3.8
licenseMIT
keywords python xor cipher
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # `xor-cipher`

[![License][License Badge]][License]
[![Version][Version Badge]][Package]
[![Downloads][Downloads Badge]][Package]

[![Documentation][Documentation Badge]][Documentation]
[![Check][Check Badge]][Actions]
[![Test][Test Badge]][Actions]
[![Coverage][Coverage Badge]][Coverage]

> *Simple, reusable and optimized XOR ciphers in Python.*

`xor-cipher` is a fast implementation of the XOR cipher written using Cython.
Our tests show that it can be `1000x` faster than pure Python implementations.
It has been optimized to breeze through datasets of any size.

## Installing

**Python 3.8 or above is required.**

### pip

Installing the library with `pip` is quite simple:

```console
$ pip install xor-cipher
```

Alternatively, the library can be installed from source:

```console
$ git clone https://github.com/xor-cipher/xor-cipher.git
$ cd xor-cipher
$ python -m pip install .
```

### poetry

You can add `xor-cipher` as a dependency with the following command:

```console
$ poetry add xor-cipher
```

Or by directly specifying it in the configuration like so:

```toml
[tool.poetry.dependencies]
xor-cipher = "^4.0.0"
```

Alternatively, you can add it directly from the source:

```toml
[tool.poetry.dependencies.xor-cipher]
git = "https://github.com/xor-cipher/xor-cipher.git"
```

## Examples

### Simple Cipher

Use the `xor` function to perform the simple XOR cipher:

```python
>>> from xor_cipher import xor
>>> xor(b"Hello, world!", 0x42)
b"\n'..-nb5-0.&c"
```

### Cyclic Cipher

Use the `cyclic_xor` function to perform the cyclic XOR variation:

```python
>>> from xor_cipher import cyclic_xor
>>> cyclic_xor(b"Hello, world!", b"BLOB")
b"\n)#.-`o5->#&c"
```

### In-Place Cipher

There are functions to perform the XOR cipher in-place, on `bytearray` instances:

```python
>>> from xor_cipher import xor_in_place
>>> data = bytearray(b"Hello, world!")
>>> xor_in_place(data, 0x42)
>>> data
bytearray(b"\n'..-nb5-0.&c")
```

## Documentation

You can find the documentation [here][Documentation].

## Support

If you need support with the library, you can send an [email][Email].

## Changelog

You can find the changelog [here][Changelog].

## Security Policy

You can find the Security Policy of `xor-cipher` [here][Security].

## Contributing

If you are interested in contributing to `xor-cipher`, make sure to take a look at the
[Contributing Guide][Contributing Guide], as well as the [Code of Conduct][Code of Conduct].

## License

`xor-cipher` is licensed under the MIT License terms. See [License][License] for details.

[Email]: mailto:support@xor-cipher.org

[Actions]: https://github.com/xor-cipher/xor-cipher/actions

[Changelog]: https://github.com/xor-cipher/xor-cipher/blob/main/CHANGELOG.md
[Code of Conduct]: https://github.com/xor-cipher/xor-cipher/blob/main/CODE_OF_CONDUCT.md
[Contributing Guide]: https://github.com/xor-cipher/xor-cipher/blob/main/CONTRIBUTING.md
[Security]: https://github.com/xor-cipher/xor-cipher/blob/main/SECURITY.md

[License]: https://github.com/xor-cipher/xor-cipher/blob/main/LICENSE

[Package]: https://pypi.org/project/xor-cipher
[Coverage]: https://codecov.io/gh/xor-cipher/xor-cipher
[Documentation]: https://docs.xor-cipher.org/

[License Badge]: https://img.shields.io/pypi/l/xor-cipher
[Version Badge]: https://img.shields.io/pypi/v/xor-cipher
[Downloads Badge]: https://img.shields.io/pypi/dm/xor-cipher

[Documentation Badge]: https://github.com/xor-cipher/xor-cipher/workflows/docs/badge.svg
[Check Badge]: https://github.com/xor-cipher/xor-cipher/workflows/check/badge.svg
[Test Badge]: https://github.com/xor-cipher/xor-cipher/workflows/test/badge.svg
[Coverage Badge]: https://codecov.io/gh/xor-cipher/xor-cipher/branch/main/graph/badge.svg

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/xor-cipher/xor-cipher",
    "name": "xor-cipher",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "python,xor,cipher",
    "author": "nekitdev",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/21/ff/afe28d0fd3a23d7d6a45941d08f6f18e0168219f19bff34f6e72100d0479/xor_cipher-4.0.0.tar.gz",
    "platform": null,
    "description": "# `xor-cipher`\n\n[![License][License Badge]][License]\n[![Version][Version Badge]][Package]\n[![Downloads][Downloads Badge]][Package]\n\n[![Documentation][Documentation Badge]][Documentation]\n[![Check][Check Badge]][Actions]\n[![Test][Test Badge]][Actions]\n[![Coverage][Coverage Badge]][Coverage]\n\n> *Simple, reusable and optimized XOR ciphers in Python.*\n\n`xor-cipher` is a fast implementation of the XOR cipher written using Cython.\nOur tests show that it can be `1000x` faster than pure Python implementations.\nIt has been optimized to breeze through datasets of any size.\n\n## Installing\n\n**Python 3.8 or above is required.**\n\n### pip\n\nInstalling the library with `pip` is quite simple:\n\n```console\n$ pip install xor-cipher\n```\n\nAlternatively, the library can be installed from source:\n\n```console\n$ git clone https://github.com/xor-cipher/xor-cipher.git\n$ cd xor-cipher\n$ python -m pip install .\n```\n\n### poetry\n\nYou can add `xor-cipher` as a dependency with the following command:\n\n```console\n$ poetry add xor-cipher\n```\n\nOr by directly specifying it in the configuration like so:\n\n```toml\n[tool.poetry.dependencies]\nxor-cipher = \"^4.0.0\"\n```\n\nAlternatively, you can add it directly from the source:\n\n```toml\n[tool.poetry.dependencies.xor-cipher]\ngit = \"https://github.com/xor-cipher/xor-cipher.git\"\n```\n\n## Examples\n\n### Simple Cipher\n\nUse the `xor` function to perform the simple XOR cipher:\n\n```python\n>>> from xor_cipher import xor\n>>> xor(b\"Hello, world!\", 0x42)\nb\"\\n'..-nb5-0.&c\"\n```\n\n### Cyclic Cipher\n\nUse the `cyclic_xor` function to perform the cyclic XOR variation:\n\n```python\n>>> from xor_cipher import cyclic_xor\n>>> cyclic_xor(b\"Hello, world!\", b\"BLOB\")\nb\"\\n)#.-`o5->#&c\"\n```\n\n### In-Place Cipher\n\nThere are functions to perform the XOR cipher in-place, on `bytearray` instances:\n\n```python\n>>> from xor_cipher import xor_in_place\n>>> data = bytearray(b\"Hello, world!\")\n>>> xor_in_place(data, 0x42)\n>>> data\nbytearray(b\"\\n'..-nb5-0.&c\")\n```\n\n## Documentation\n\nYou can find the documentation [here][Documentation].\n\n## Support\n\nIf you need support with the library, you can send an [email][Email].\n\n## Changelog\n\nYou can find the changelog [here][Changelog].\n\n## Security Policy\n\nYou can find the Security Policy of `xor-cipher` [here][Security].\n\n## Contributing\n\nIf you are interested in contributing to `xor-cipher`, make sure to take a look at the\n[Contributing Guide][Contributing Guide], as well as the [Code of Conduct][Code of Conduct].\n\n## License\n\n`xor-cipher` is licensed under the MIT License terms. See [License][License] for details.\n\n[Email]: mailto:support@xor-cipher.org\n\n[Actions]: https://github.com/xor-cipher/xor-cipher/actions\n\n[Changelog]: https://github.com/xor-cipher/xor-cipher/blob/main/CHANGELOG.md\n[Code of Conduct]: https://github.com/xor-cipher/xor-cipher/blob/main/CODE_OF_CONDUCT.md\n[Contributing Guide]: https://github.com/xor-cipher/xor-cipher/blob/main/CONTRIBUTING.md\n[Security]: https://github.com/xor-cipher/xor-cipher/blob/main/SECURITY.md\n\n[License]: https://github.com/xor-cipher/xor-cipher/blob/main/LICENSE\n\n[Package]: https://pypi.org/project/xor-cipher\n[Coverage]: https://codecov.io/gh/xor-cipher/xor-cipher\n[Documentation]: https://docs.xor-cipher.org/\n\n[License Badge]: https://img.shields.io/pypi/l/xor-cipher\n[Version Badge]: https://img.shields.io/pypi/v/xor-cipher\n[Downloads Badge]: https://img.shields.io/pypi/dm/xor-cipher\n\n[Documentation Badge]: https://github.com/xor-cipher/xor-cipher/workflows/docs/badge.svg\n[Check Badge]: https://github.com/xor-cipher/xor-cipher/workflows/check/badge.svg\n[Test Badge]: https://github.com/xor-cipher/xor-cipher/workflows/test/badge.svg\n[Coverage Badge]: https://codecov.io/gh/xor-cipher/xor-cipher/branch/main/graph/badge.svg\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Simple, reusable and optimized XOR ciphers in Python.",
    "version": "4.0.0",
    "project_urls": {
        "Documentation": "https://docs.xor-cipher.org/",
        "Homepage": "https://github.com/xor-cipher/xor-cipher",
        "Issues": "https://github.com/xor-cipher/xor-cipher/issues",
        "Repository": "https://github.com/xor-cipher/xor-cipher"
    },
    "split_keywords": [
        "python",
        "xor",
        "cipher"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "232aafb2125e7a736e9f5411e3373acb4548474806e37e2829ec0af6bb0769ed",
                "md5": "ae6121371b95b7dda473e2a71f67dc0e",
                "sha256": "fe2ff06397ddca118adc3311d1e6c936e3ea6b9e6871be3aad310e22f33523b2"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp310-cp310-macosx_12_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ae6121371b95b7dda473e2a71f67dc0e",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 25458,
            "upload_time": "2024-03-04T12:50:32",
            "upload_time_iso_8601": "2024-03-04T12:50:32.574453Z",
            "url": "https://files.pythonhosted.org/packages/23/2a/afb2125e7a736e9f5411e3373acb4548474806e37e2829ec0af6bb0769ed/xor_cipher-4.0.0-cp310-cp310-macosx_12_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "217df351896a49e5dcea1740fe1a28e507c1377bd881101f1e018509c369d4b3",
                "md5": "987d31db30873f86dd5d657d6cda2d92",
                "sha256": "94e0f4da320984acaf1ece49fd65e7ec6fe3ca386a56535794a0fd4769a87918"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp310-cp310-manylinux_2_35_x86_64.whl",
            "has_sig": false,
            "md5_digest": "987d31db30873f86dd5d657d6cda2d92",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 112675,
            "upload_time": "2024-03-04T12:50:17",
            "upload_time_iso_8601": "2024-03-04T12:50:17.487030Z",
            "url": "https://files.pythonhosted.org/packages/21/7d/f351896a49e5dcea1740fe1a28e507c1377bd881101f1e018509c369d4b3/xor_cipher-4.0.0-cp310-cp310-manylinux_2_35_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2667629e73f00a8fc51484b37ae0443f8a6b574818ca9c7aed9d6f852201b12c",
                "md5": "cf24284bfc059f62ba8c96317b445464",
                "sha256": "77421c8c1582c99836999dd31842e55b7def7d71624c7c1f3120b011a5553a5d"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "cf24284bfc059f62ba8c96317b445464",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 25752,
            "upload_time": "2024-03-04T12:51:01",
            "upload_time_iso_8601": "2024-03-04T12:51:01.629328Z",
            "url": "https://files.pythonhosted.org/packages/26/67/629e73f00a8fc51484b37ae0443f8a6b574818ca9c7aed9d6f852201b12c/xor_cipher-4.0.0-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "45f6e233992a950d5eb4025198a2cceebb878cb33afc3d1d93d114a7d40794d5",
                "md5": "e45a9082ecf9cab109b28d7c7e7c4f90",
                "sha256": "359cb39e7df09a106f382ad74dda15158676504eb105966805abdaef06063bd8"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp311-cp311-macosx_12_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e45a9082ecf9cab109b28d7c7e7c4f90",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 44478,
            "upload_time": "2024-03-04T12:50:29",
            "upload_time_iso_8601": "2024-03-04T12:50:29.602124Z",
            "url": "https://files.pythonhosted.org/packages/45/f6/e233992a950d5eb4025198a2cceebb878cb33afc3d1d93d114a7d40794d5/xor_cipher-4.0.0-cp311-cp311-macosx_12_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "29a2630dda58bf709288c4aafceed8a9372af2338e00729aa575e674359027de",
                "md5": "13e5d4900665beca2b324f201e53e87c",
                "sha256": "8eda07193ab34341e6f049efa0ec88d886836b9e33dda586b891970abff0c783"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp311-cp311-manylinux_2_35_x86_64.whl",
            "has_sig": false,
            "md5_digest": "13e5d4900665beca2b324f201e53e87c",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 127707,
            "upload_time": "2024-03-04T12:50:34",
            "upload_time_iso_8601": "2024-03-04T12:50:34.070390Z",
            "url": "https://files.pythonhosted.org/packages/29/a2/630dda58bf709288c4aafceed8a9372af2338e00729aa575e674359027de/xor_cipher-4.0.0-cp311-cp311-manylinux_2_35_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5a6577073c6ea00f672f87dd3f8ae458f2e244431fd91dc833b543210f3766ab",
                "md5": "259b730d85325a58d24974d55fed5e04",
                "sha256": "de854f6e5d3a1e56f6af4ef9c2c24a9f09400c7429e77028ca11e91f48b1edb5"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "259b730d85325a58d24974d55fed5e04",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 25775,
            "upload_time": "2024-03-04T12:51:14",
            "upload_time_iso_8601": "2024-03-04T12:51:14.099176Z",
            "url": "https://files.pythonhosted.org/packages/5a/65/77073c6ea00f672f87dd3f8ae458f2e244431fd91dc833b543210f3766ab/xor_cipher-4.0.0-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ddb0185d1981ac2c4796db07a2b20ebd4f6e6dee4b76a43bc42153c55f30a088",
                "md5": "7c0817895b4a17dffed3542f17e4030b",
                "sha256": "ee5ae52d57895faa2f7e4a09497db21ade3bb6ea8824d866da27612b5308ce0d"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp312-cp312-macosx_12_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "7c0817895b4a17dffed3542f17e4030b",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 45057,
            "upload_time": "2024-03-04T12:50:48",
            "upload_time_iso_8601": "2024-03-04T12:50:48.372454Z",
            "url": "https://files.pythonhosted.org/packages/dd/b0/185d1981ac2c4796db07a2b20ebd4f6e6dee4b76a43bc42153c55f30a088/xor_cipher-4.0.0-cp312-cp312-macosx_12_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "54e26020afe36f802a76e3f5f24e8355558ac2a09d2718a30919228295293362",
                "md5": "838602981b908d8dff582f304f25fcd7",
                "sha256": "b7fea91072332879e1e7f6897a7dc63fa02a4cae6ad7cf6027c8f026603ecb5c"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp312-cp312-manylinux_2_35_x86_64.whl",
            "has_sig": false,
            "md5_digest": "838602981b908d8dff582f304f25fcd7",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 136277,
            "upload_time": "2024-03-04T12:50:17",
            "upload_time_iso_8601": "2024-03-04T12:50:17.275139Z",
            "url": "https://files.pythonhosted.org/packages/54/e2/6020afe36f802a76e3f5f24e8355558ac2a09d2718a30919228295293362/xor_cipher-4.0.0-cp312-cp312-manylinux_2_35_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fe86d9fa0a8cd2507d952590d077eaee48ff574f7cfb3b86341c951d205e2b76",
                "md5": "30bd501b7f1e8be6c841d1b5fdf4d143",
                "sha256": "c47deb7dba6e9d48ec590deb69119405a6f2aabbaa3a82d69c8f17f60100177a"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "30bd501b7f1e8be6c841d1b5fdf4d143",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 25933,
            "upload_time": "2024-03-04T12:51:32",
            "upload_time_iso_8601": "2024-03-04T12:51:32.848451Z",
            "url": "https://files.pythonhosted.org/packages/fe/86/d9fa0a8cd2507d952590d077eaee48ff574f7cfb3b86341c951d205e2b76/xor_cipher-4.0.0-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8238c6ce61955ff6f85119d3625f73e5bd537770f6a25204265914288f656c80",
                "md5": "0c6c5fe1454a4b2e0dac88aa0350dd5a",
                "sha256": "8cc62bbe2e4f1a00d9cbbe0213f0094e5afcb2719efc79f93b6bffd3a0f1fb14"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp38-cp38-macosx_12_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "0c6c5fe1454a4b2e0dac88aa0350dd5a",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 25449,
            "upload_time": "2024-03-04T12:50:26",
            "upload_time_iso_8601": "2024-03-04T12:50:26.086779Z",
            "url": "https://files.pythonhosted.org/packages/82/38/c6ce61955ff6f85119d3625f73e5bd537770f6a25204265914288f656c80/xor_cipher-4.0.0-cp38-cp38-macosx_12_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "50a5eec3e5e24042369ab33ddc3475893c85d1b4857113760e769ab0a632e489",
                "md5": "4b923f53a5657073b92bbfb58e5cfce3",
                "sha256": "cfc45d444092c026b442d4c201626923169404e0cbaa244c4e66b500753edf07"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp38-cp38-manylinux_2_35_x86_64.whl",
            "has_sig": false,
            "md5_digest": "4b923f53a5657073b92bbfb58e5cfce3",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 112090,
            "upload_time": "2024-03-04T12:50:28",
            "upload_time_iso_8601": "2024-03-04T12:50:28.109586Z",
            "url": "https://files.pythonhosted.org/packages/50/a5/eec3e5e24042369ab33ddc3475893c85d1b4857113760e769ab0a632e489/xor_cipher-4.0.0-cp38-cp38-manylinux_2_35_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b48796069ac38ffb3673aa7d8620c07ca5f0c296c7d3547ed47a7e4f5976a85f",
                "md5": "b31accaff589542991dc1c84c4928c59",
                "sha256": "4be0b216846f76a4b62f868301581431b16b2dee4d1328b2274356196498bffc"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "b31accaff589542991dc1c84c4928c59",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 25772,
            "upload_time": "2024-03-04T12:51:01",
            "upload_time_iso_8601": "2024-03-04T12:51:01.631467Z",
            "url": "https://files.pythonhosted.org/packages/b4/87/96069ac38ffb3673aa7d8620c07ca5f0c296c7d3547ed47a7e4f5976a85f/xor_cipher-4.0.0-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b3a2971c52d00e8622e9d72e9555c8a3217b8e553131cd3915faee0be50c9fc3",
                "md5": "d181d57b06af01f1c4885100b28f0221",
                "sha256": "f6fde2aa2870b51bfe4c8992e8ac9b415c531e8f6d22cc5ba1938c0c8cab5bcc"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp39-cp39-macosx_12_0_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d181d57b06af01f1c4885100b28f0221",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 25450,
            "upload_time": "2024-03-04T12:50:46",
            "upload_time_iso_8601": "2024-03-04T12:50:46.951521Z",
            "url": "https://files.pythonhosted.org/packages/b3/a2/971c52d00e8622e9d72e9555c8a3217b8e553131cd3915faee0be50c9fc3/xor_cipher-4.0.0-cp39-cp39-macosx_12_0_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "712014e2544a7bdc62bd4972bc565c867c6bc18a920d02c8805fba6905363085",
                "md5": "8ca88ac23eb604b9981be7f57d3e45b9",
                "sha256": "49966808a2b62c5e63a6bab0a8f36a8dd16a5806f9be729e6d193a5338f00c27"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp39-cp39-manylinux_2_35_x86_64.whl",
            "has_sig": false,
            "md5_digest": "8ca88ac23eb604b9981be7f57d3e45b9",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 112297,
            "upload_time": "2024-03-04T12:50:21",
            "upload_time_iso_8601": "2024-03-04T12:50:21.912552Z",
            "url": "https://files.pythonhosted.org/packages/71/20/14e2544a7bdc62bd4972bc565c867c6bc18a920d02c8805fba6905363085/xor_cipher-4.0.0-cp39-cp39-manylinux_2_35_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "44715a2b7d1c232a7bed7ca265d9e692b77a6656262fe6dc91b7ee4076b012c4",
                "md5": "92cd71cd8af50f10131f6f71b3b247fe",
                "sha256": "aa5def2a1d9cd13124c4b7ed4ecaadd57087e457b7e8a8cdeed9abe3239bd83e"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "92cd71cd8af50f10131f6f71b3b247fe",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 25755,
            "upload_time": "2024-03-04T12:51:17",
            "upload_time_iso_8601": "2024-03-04T12:51:17.603025Z",
            "url": "https://files.pythonhosted.org/packages/44/71/5a2b7d1c232a7bed7ca265d9e692b77a6656262fe6dc91b7ee4076b012c4/xor_cipher-4.0.0-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "21ffafe28d0fd3a23d7d6a45941d08f6f18e0168219f19bff34f6e72100d0479",
                "md5": "696da182c299326e1098518de1b99d8a",
                "sha256": "f8755c9ab5a8ffc850e264ec87e64a108c1108a25a9d3035e5e3062c461999a1"
            },
            "downloads": -1,
            "filename": "xor_cipher-4.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "696da182c299326e1098518de1b99d8a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 6240,
            "upload_time": "2024-03-04T12:50:19",
            "upload_time_iso_8601": "2024-03-04T12:50:19.081741Z",
            "url": "https://files.pythonhosted.org/packages/21/ff/afe28d0fd3a23d7d6a45941d08f6f18e0168219f19bff34f6e72100d0479/xor_cipher-4.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-04 12:50:19",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "xor-cipher",
    "github_project": "xor-cipher",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "xor-cipher"
}
        
Elapsed time: 0.21777s