suspycious


Namesuspycious JSON
Version 0.1.2a0 PyPI version JSON
download
home_pagehttps://github.com/romirk/suspycious
SummaryPython client library for the Sus protocol
upload_time2023-11-25 20:12:11
maintainer
docs_urlNone
authorRomir Kulshrestha
requires_python>=3.6
license
keywords
VCS
bugtrack_url
requirements cryptography blake3 poetry
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Suspycious

Suspycious is a Python implementation of the Sus protocol. It is a
secure, asynchronous, and easy to use protocol for sending messages
between two parties.

!!! warning "Pre-alpha software"
Suspycious is currently in an early stage of development and
should not be used in production.

## Installation

Suspycious is available on PyPI and can be installed with pip:

```bash
pip install suspycious
```

## Usage

The following example shows how to create a simple Sus network with
a client and a server. The client sends a message to the server and
the server responds with a message.

```python3
import asyncio

from sus import SusServer
from sus.common.util import Address

server = SusServer(('localhost', 5000), b"my secret key.".hex())


async def message_handler(addr: Address, p_id: int, message: bytes):
    print(f"Received message from {addr}: {message.decode()}")
    server.send(addr, b"Hello from the server!")


asyncio.run(server.start([message_handler]))
```

```python3
import asyncio

from sus import SusClient

client = SusClient(('localhost', 5000), b"server public key".hex(),
                   b"my protocol ID")
asyncio.run(client.start())
client.send(b"Hello from the client!")
```

## Documentation

The documentation is available [here](https://romirk.github.io/suspycious/).



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/romirk/suspycious",
    "name": "suspycious",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "",
    "author": "Romir Kulshrestha",
    "author_email": "romir.kulshrestha@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/03/82/469e39e58251df4613664011f3b8842273920686c9a545d5bee6fee98eaf/suspycious-0.1.2a0.tar.gz",
    "platform": null,
    "description": "# Suspycious\n\nSuspycious is a Python implementation of the Sus protocol. It is a\nsecure, asynchronous, and easy to use protocol for sending messages\nbetween two parties.\n\n!!! warning \"Pre-alpha software\"\nSuspycious is currently in an early stage of development and\nshould not be used in production.\n\n## Installation\n\nSuspycious is available on PyPI and can be installed with pip:\n\n```bash\npip install suspycious\n```\n\n## Usage\n\nThe following example shows how to create a simple Sus network with\na client and a server. The client sends a message to the server and\nthe server responds with a message.\n\n```python3\nimport asyncio\n\nfrom sus import SusServer\nfrom sus.common.util import Address\n\nserver = SusServer(('localhost', 5000), b\"my secret key.\".hex())\n\n\nasync def message_handler(addr: Address, p_id: int, message: bytes):\n    print(f\"Received message from {addr}: {message.decode()}\")\n    server.send(addr, b\"Hello from the server!\")\n\n\nasyncio.run(server.start([message_handler]))\n```\n\n```python3\nimport asyncio\n\nfrom sus import SusClient\n\nclient = SusClient(('localhost', 5000), b\"server public key\".hex(),\n                   b\"my protocol ID\")\nasyncio.run(client.start())\nclient.send(b\"Hello from the client!\")\n```\n\n## Documentation\n\nThe documentation is available [here](https://romirk.github.io/suspycious/).\n\n\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "Python client library for the Sus protocol",
    "version": "0.1.2a0",
    "project_urls": {
        "Bug Tracker": "https://github.com/romirk/suspycious/issues",
        "Homepage": "https://github.com/romirk/suspycious",
        "Repository": "https://github.com/romirk/suspycious"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f4baeebb79752913ef97419f1888cb59ae378ba4f8e6150e3692a4dbc59abe3f",
                "md5": "8b6e7aa49a2447a45dfbb085bbb1a909",
                "sha256": "44acdd3d6765a0ff75a48082287c5aad1b633128951cc0b2b489eb59655af029"
            },
            "downloads": -1,
            "filename": "suspycious-0.1.2a0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8b6e7aa49a2447a45dfbb085bbb1a909",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 28460,
            "upload_time": "2023-11-25T20:12:10",
            "upload_time_iso_8601": "2023-11-25T20:12:10.032688Z",
            "url": "https://files.pythonhosted.org/packages/f4/ba/eebb79752913ef97419f1888cb59ae378ba4f8e6150e3692a4dbc59abe3f/suspycious-0.1.2a0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0382469e39e58251df4613664011f3b8842273920686c9a545d5bee6fee98eaf",
                "md5": "d962f8f433cc3fdf72d96a855428d8d3",
                "sha256": "8c37db48a057d89b24f3ebc0428d7fbb35d0071d9ecac9963d5c2c9ec34e4ed4"
            },
            "downloads": -1,
            "filename": "suspycious-0.1.2a0.tar.gz",
            "has_sig": false,
            "md5_digest": "d962f8f433cc3fdf72d96a855428d8d3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 24015,
            "upload_time": "2023-11-25T20:12:11",
            "upload_time_iso_8601": "2023-11-25T20:12:11.129121Z",
            "url": "https://files.pythonhosted.org/packages/03/82/469e39e58251df4613664011f3b8842273920686c9a545d5bee6fee98eaf/suspycious-0.1.2a0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-11-25 20:12:11",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "romirk",
    "github_project": "suspycious",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "cryptography",
            "specs": [
                [
                    "~=",
                    "41.0.5"
                ]
            ]
        },
        {
            "name": "blake3",
            "specs": [
                [
                    "~=",
                    "0.3.3"
                ]
            ]
        },
        {
            "name": "poetry",
            "specs": [
                [
                    "==",
                    "1.7.1"
                ]
            ]
        }
    ],
    "lcname": "suspycious"
}
        
Elapsed time: 0.24051s