# TeleCrypto
> [!NOTE]
> The project is now longer maintained or supported. Thanks for appreciating it.
> [!NOTE]
> The implementations of the algorithms presented in this repository are to be considered for educational purposes only.
> Fast and Portable Cryptography Extension Library for Pyrogram
**TeleCrypto** is a Cryptography Library written in C as a Python extension. It is designed to be portable, fast,
easy to install and use. TgCrypto is intended for [Pyrolink](https://github.com/venombolteop/pyrolink) and implements the
cryptographic algorithms Telegram requires, namely:
- **`AES-256-IGE`** - used in [MTProto v2.0](https://core.telegram.org/mtproto).
- **`AES-256-CTR`** - used for [CDN encrypted files](https://core.telegram.org/cdn).
- **`AES-256-CBC`** - used for [encrypted passport credentials](https://core.telegram.org/passport).
## Requirements
- Python 3.7 or higher.
## Installation
``` bash
$ pip3 install -U telecrypto
```
## API
TeleCrypto API consists of these six methods:
```python
def ige256_encrypt(data: bytes, key: bytes, iv: bytes) -> bytes: ...
def ige256_decrypt(data: bytes, key: bytes, iv: bytes) -> bytes: ...
def ctr256_encrypt(data: bytes, key: bytes, iv: bytes, state: bytes) -> bytes: ...
def ctr256_decrypt(data: bytes, key: bytes, iv: bytes, state: bytes) -> bytes: ...
def cbc256_encrypt(data: bytes, key: bytes, iv: bytes) -> bytes: ...
def cbc256_decrypt(data: bytes, key: bytes, iv: bytes) -> bytes: ...
```
## Usage
### IGE Mode
**Note**: Data must be padded to match a multiple of the block size (16 bytes).
``` python
import os
import tgcrypto
data = os.urandom(10 * 1024 * 1024 + 7) # 10 MB of random data + 7 bytes to show padding
key = os.urandom(32) # Random Key
iv = os.urandom(32) # Random IV
# Pad with zeroes: -7 % 16 = 9
data += bytes(-len(data) % 16)
ige_encrypted = tgcrypto.ige256_encrypt(data, key, iv)
ige_decrypted = tgcrypto.ige256_decrypt(ige_encrypted, key, iv)
print(data == ige_decrypted) # True
```
### CTR Mode (single chunk)
``` python
import os
import tgcrypto
data = os.urandom(10 * 1024 * 1024) # 10 MB of random data
key = os.urandom(32) # Random Key
enc_iv = bytearray(os.urandom(16)) # Random IV
dec_iv = enc_iv.copy() # Keep a copy for decryption
ctr_encrypted = tgcrypto.ctr256_encrypt(data, key, enc_iv, bytes(1))
ctr_decrypted = tgcrypto.ctr256_decrypt(ctr_encrypted, key, dec_iv, bytes(1))
print(data == ctr_decrypted) # True
```
### CTR Mode (stream)
``` python
import os
from io import BytesIO
import tgcrypto
data = BytesIO(os.urandom(10 * 1024 * 1024)) # 10 MB of random data
key = os.urandom(32) # Random Key
enc_iv = bytearray(os.urandom(16)) # Random IV
dec_iv = enc_iv.copy() # Keep a copy for decryption
enc_state = bytes(1) # Encryption state, starts from 0
dec_state = bytes(1) # Decryption state, starts from 0
encrypted_data = BytesIO() # Encrypted data buffer
decrypted_data = BytesIO() # Decrypted data buffer
while True:
chunk = data.read(1024)
if not chunk:
break
# Write 1K encrypted bytes into the encrypted data buffer
encrypted_data.write(tgcrypto.ctr256_encrypt(chunk, key, enc_iv, enc_state))
# Reset position. We need to read it now
encrypted_data.seek(0)
while True:
chunk = encrypted_data.read(1024)
if not chunk:
break
# Write 1K decrypted bytes into the decrypted data buffer
decrypted_data.write(tgcrypto.ctr256_decrypt(chunk, key, dec_iv, dec_state))
print(data.getvalue() == decrypted_data.getvalue()) # True
```
### CBC Mode
**Note**: Data must be padded to match a multiple of the block size (16 bytes).
``` python
import os
import tgcrypto
data = os.urandom(10 * 1024 * 1024 + 7) # 10 MB of random data + 7 bytes to show padding
key = os.urandom(32) # Random Key
enc_iv = bytearray(os.urandom(16)) # Random IV
dec_iv = enc_iv.copy() # Keep a copy for decryption
# Pad with zeroes: -7 % 16 = 9
data += bytes(-len(data) % 16)
cbc_encrypted = tgcrypto.cbc256_encrypt(data, key, enc_iv)
cbc_decrypted = tgcrypto.cbc256_decrypt(cbc_encrypted, key, dec_iv)
print(data == cbc_decrypted) # True
```
## Testing
1. Clone this repository: `git clone https://github.com/venombolteop/telecrypto`.
2. Enter the directory: `cd tgcrypto`.
3. Install `tox`: `pip3 install tox`
4. Run tests: `tox`.
## License
[LGPLv3+](COPYING.lesser) © 2017-present [Dan](https://github.com/delivrance)
Raw data
{
"_id": null,
"home_page": "https://github.com/venombolteop",
"name": "Telecrypto",
"maintainer": null,
"docs_url": null,
"requires_python": "~=3.7",
"maintainer_email": null,
"keywords": "pyrolink telegram crypto cryptography encryption mtproto extension library aes",
"author": "venombolteop",
"author_email": "venombolteop@gmail.com",
"download_url": "https://github.com/venombolteop/telecrypto/releases/latest",
"platform": null,
"description": "# TeleCrypto\n\n> [!NOTE]\n> The project is now longer maintained or supported. Thanks for appreciating it.\n\n> [!NOTE]\n> The implementations of the algorithms presented in this repository are to be considered for educational purposes only.\n\n> Fast and Portable Cryptography Extension Library for Pyrogram\n\n**TeleCrypto** is a Cryptography Library written in C as a Python extension. It is designed to be portable, fast,\neasy to install and use. TgCrypto is intended for [Pyrolink](https://github.com/venombolteop/pyrolink) and implements the\ncryptographic algorithms Telegram requires, namely:\n\n- **`AES-256-IGE`** - used in [MTProto v2.0](https://core.telegram.org/mtproto).\n- **`AES-256-CTR`** - used for [CDN encrypted files](https://core.telegram.org/cdn).\n- **`AES-256-CBC`** - used for [encrypted passport credentials](https://core.telegram.org/passport).\n\n## Requirements\n\n- Python 3.7 or higher.\n\n## Installation\n\n``` bash\n$ pip3 install -U telecrypto\n```\n\n## API\n\nTeleCrypto API consists of these six methods:\n\n```python\ndef ige256_encrypt(data: bytes, key: bytes, iv: bytes) -> bytes: ...\ndef ige256_decrypt(data: bytes, key: bytes, iv: bytes) -> bytes: ...\n\ndef ctr256_encrypt(data: bytes, key: bytes, iv: bytes, state: bytes) -> bytes: ...\ndef ctr256_decrypt(data: bytes, key: bytes, iv: bytes, state: bytes) -> bytes: ...\n\ndef cbc256_encrypt(data: bytes, key: bytes, iv: bytes) -> bytes: ...\ndef cbc256_decrypt(data: bytes, key: bytes, iv: bytes) -> bytes: ...\n```\n\n## Usage\n\n### IGE Mode\n\n**Note**: Data must be padded to match a multiple of the block size (16 bytes).\n\n``` python\nimport os\n\nimport tgcrypto\n\ndata = os.urandom(10 * 1024 * 1024 + 7) # 10 MB of random data + 7 bytes to show padding\nkey = os.urandom(32) # Random Key\niv = os.urandom(32) # Random IV\n\n# Pad with zeroes: -7 % 16 = 9\ndata += bytes(-len(data) % 16)\n\nige_encrypted = tgcrypto.ige256_encrypt(data, key, iv)\nige_decrypted = tgcrypto.ige256_decrypt(ige_encrypted, key, iv)\n\nprint(data == ige_decrypted) # True\n```\n \n### CTR Mode (single chunk)\n\n``` python\nimport os\n\nimport tgcrypto\n\ndata = os.urandom(10 * 1024 * 1024) # 10 MB of random data\n\nkey = os.urandom(32) # Random Key\n\nenc_iv = bytearray(os.urandom(16)) # Random IV\ndec_iv = enc_iv.copy() # Keep a copy for decryption\n\nctr_encrypted = tgcrypto.ctr256_encrypt(data, key, enc_iv, bytes(1))\nctr_decrypted = tgcrypto.ctr256_decrypt(ctr_encrypted, key, dec_iv, bytes(1))\n\nprint(data == ctr_decrypted) # True\n```\n\n### CTR Mode (stream)\n\n``` python\nimport os\nfrom io import BytesIO\n\nimport tgcrypto\n\ndata = BytesIO(os.urandom(10 * 1024 * 1024)) # 10 MB of random data\n\nkey = os.urandom(32) # Random Key\n\nenc_iv = bytearray(os.urandom(16)) # Random IV\ndec_iv = enc_iv.copy() # Keep a copy for decryption\n\nenc_state = bytes(1) # Encryption state, starts from 0\ndec_state = bytes(1) # Decryption state, starts from 0\n\nencrypted_data = BytesIO() # Encrypted data buffer\ndecrypted_data = BytesIO() # Decrypted data buffer\n\nwhile True:\n chunk = data.read(1024)\n\n if not chunk:\n break\n\n # Write 1K encrypted bytes into the encrypted data buffer\n encrypted_data.write(tgcrypto.ctr256_encrypt(chunk, key, enc_iv, enc_state))\n\n# Reset position. We need to read it now\nencrypted_data.seek(0)\n\nwhile True:\n chunk = encrypted_data.read(1024)\n\n if not chunk:\n break\n\n # Write 1K decrypted bytes into the decrypted data buffer\n decrypted_data.write(tgcrypto.ctr256_decrypt(chunk, key, dec_iv, dec_state))\n\nprint(data.getvalue() == decrypted_data.getvalue()) # True\n```\n\n### CBC Mode\n\n**Note**: Data must be padded to match a multiple of the block size (16 bytes).\n\n``` python\nimport os\n\nimport tgcrypto\n\ndata = os.urandom(10 * 1024 * 1024 + 7) # 10 MB of random data + 7 bytes to show padding\nkey = os.urandom(32) # Random Key\n\nenc_iv = bytearray(os.urandom(16)) # Random IV\ndec_iv = enc_iv.copy() # Keep a copy for decryption\n\n# Pad with zeroes: -7 % 16 = 9\ndata += bytes(-len(data) % 16)\n\ncbc_encrypted = tgcrypto.cbc256_encrypt(data, key, enc_iv)\ncbc_decrypted = tgcrypto.cbc256_decrypt(cbc_encrypted, key, dec_iv)\n\nprint(data == cbc_decrypted) # True\n```\n\n## Testing\n\n1. Clone this repository: `git clone https://github.com/venombolteop/telecrypto`.\n2. Enter the directory: `cd tgcrypto`.\n3. Install `tox`: `pip3 install tox`\n4. Run tests: `tox`.\n\n## License\n\n[LGPLv3+](COPYING.lesser) \u00a9 2017-present [Dan](https://github.com/delivrance)\n",
"bugtrack_url": null,
"license": "LGPLv3+",
"summary": "Fast and Portable Cryptography Extension Library for Pyrogram",
"version": "1.2.6",
"project_urls": {
"Community": "https://t.me/pyrolink",
"Documentation": "https://docs.pyrogram.org",
"Download": "https://github.com/venombolteop/telecrypto/releases/latest",
"Homepage": "https://github.com/venombolteop",
"Source": "https://github.com/venombolteop/telecrypto",
"Tracker": "https://github.com/venombolteop/telecrypto/issues"
},
"split_keywords": [
"pyrolink",
"telegram",
"crypto",
"cryptography",
"encryption",
"mtproto",
"extension",
"library",
"aes"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "d566f2b1e2b8161a695789dae4345992875fc888ced582723699a7a4cdad3e00",
"md5": "f0fb5bb197f2af01a90e37bab91bf894",
"sha256": "f1cfb6d274b46aae466d888ee574fe94e0ea7bf1bab7d8ca4f54bf6e4f1a3d69"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "f0fb5bb197f2af01a90e37bab91bf894",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "~=3.7",
"size": 59950,
"upload_time": "2024-12-27T08:02:21",
"upload_time_iso_8601": "2024-12-27T08:02:21.624942Z",
"url": "https://files.pythonhosted.org/packages/d5/66/f2b1e2b8161a695789dae4345992875fc888ced582723699a7a4cdad3e00/Telecrypto-1.2.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "27c4b8623ab659306cf2d035b527335b15732c7619c5daa13bd9ea6d03a2e8ab",
"md5": "9ceffb97040fde41e14c8d43986c3f80",
"sha256": "647111bb96184663b2bd520a6c94e8928e9dbfb2934bc52eeb7c3b7f93074f15"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "9ceffb97040fde41e14c8d43986c3f80",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "~=3.7",
"size": 59739,
"upload_time": "2024-12-27T08:02:25",
"upload_time_iso_8601": "2024-12-27T08:02:25.242890Z",
"url": "https://files.pythonhosted.org/packages/27/c4/b8623ab659306cf2d035b527335b15732c7619c5daa13bd9ea6d03a2e8ab/Telecrypto-1.2.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6f5a3b38b2baed9811648fc044dd6d5150edbfab897b0dc0f6c7dd7419c6cc7f",
"md5": "a6f8b73e6df98d2206d1d04fdde339d4",
"sha256": "12c64807001c5dfdda1e5e4b89769f712491f783772dbffb1d2a6acee5529505"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp310-cp310-musllinux_1_2_i686.whl",
"has_sig": false,
"md5_digest": "a6f8b73e6df98d2206d1d04fdde339d4",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "~=3.7",
"size": 58000,
"upload_time": "2024-12-27T08:02:26",
"upload_time_iso_8601": "2024-12-27T08:02:26.931141Z",
"url": "https://files.pythonhosted.org/packages/6f/5a/3b38b2baed9811648fc044dd6d5150edbfab897b0dc0f6c7dd7419c6cc7f/Telecrypto-1.2.6-cp310-cp310-musllinux_1_2_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0e40de1dcae086b6aeb7d3564627c9e30907d70b339f842f78638044ba7d785c",
"md5": "c35461f280cf1d0d9cf782ff09cf2f47",
"sha256": "9e4aeba5d8827a7e91a2db694bacdb5af7e693061f1cdb144f64e98b4b7a1f65"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp310-cp310-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "c35461f280cf1d0d9cf782ff09cf2f47",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": "~=3.7",
"size": 59620,
"upload_time": "2024-12-27T08:02:28",
"upload_time_iso_8601": "2024-12-27T08:02:28.557512Z",
"url": "https://files.pythonhosted.org/packages/0e/40/de1dcae086b6aeb7d3564627c9e30907d70b339f842f78638044ba7d785c/Telecrypto-1.2.6-cp310-cp310-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f80606d7839bee7e404cafea99c249759e7cd65777ac9e8847d219060316df48",
"md5": "118d694ed34615ab6e35fa0b08aaf7ee",
"sha256": "dc169cd91edbb7aa401f2600c9df18a8c9a22d953e7a562919af177a940a3c5c"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "118d694ed34615ab6e35fa0b08aaf7ee",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "~=3.7",
"size": 60758,
"upload_time": "2024-12-27T08:02:30",
"upload_time_iso_8601": "2024-12-27T08:02:30.058379Z",
"url": "https://files.pythonhosted.org/packages/f8/06/06d7839bee7e404cafea99c249759e7cd65777ac9e8847d219060316df48/Telecrypto-1.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "bbf151fe34e99eca75ff6a336f53e722375283b9388a86c2234a79321cb5e8bb",
"md5": "653bace8601b778d389845db5389d61c",
"sha256": "17e08146f0f875f41b2d33b952e30012f2cea923a2b0082eaa01497a9dabdfd4"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "653bace8601b778d389845db5389d61c",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "~=3.7",
"size": 60466,
"upload_time": "2024-12-27T08:02:32",
"upload_time_iso_8601": "2024-12-27T08:02:32.948565Z",
"url": "https://files.pythonhosted.org/packages/bb/f1/51fe34e99eca75ff6a336f53e722375283b9388a86c2234a79321cb5e8bb/Telecrypto-1.2.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7e919460f8e338a4ebd1238d2b64228d924eab434f94a8cdeb36173f579ebc5d",
"md5": "dcd9704dfd45b92059849454a059f059",
"sha256": "8f9f391ae8edeaa61331b51079a17dc6a249ffc447d7d615b18a7cebfddc9438"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp311-cp311-musllinux_1_2_i686.whl",
"has_sig": false,
"md5_digest": "dcd9704dfd45b92059849454a059f059",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "~=3.7",
"size": 58765,
"upload_time": "2024-12-27T08:02:35",
"upload_time_iso_8601": "2024-12-27T08:02:35.899002Z",
"url": "https://files.pythonhosted.org/packages/7e/91/9460f8e338a4ebd1238d2b64228d924eab434f94a8cdeb36173f579ebc5d/Telecrypto-1.2.6-cp311-cp311-musllinux_1_2_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8b6546b60f0c1f75b638ca277d621aa88d65d8baa5449bc89c522d84de414436",
"md5": "da0b241006e8cb4f4b0155df99a6296e",
"sha256": "bb4865f1103dd47d427ede799fdf69e8d894d70dc0b9f4df756bc6125a85893c"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp311-cp311-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "da0b241006e8cb4f4b0155df99a6296e",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": "~=3.7",
"size": 60414,
"upload_time": "2024-12-27T08:02:38",
"upload_time_iso_8601": "2024-12-27T08:02:38.724204Z",
"url": "https://files.pythonhosted.org/packages/8b/65/46b60f0c1f75b638ca277d621aa88d65d8baa5449bc89c522d84de414436/Telecrypto-1.2.6-cp311-cp311-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b66687eb358f80308a46a6c20eb4913acaf3025d7d4d0e98d2a8bc3067596330",
"md5": "21a72d3f7c0f96e92b498b03807627ac",
"sha256": "d1666c2cd889120ee9dda844b29ff09bbf09ae993178f17eab2749bbe09c2f6b"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "21a72d3f7c0f96e92b498b03807627ac",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "~=3.7",
"size": 60375,
"upload_time": "2024-12-27T08:02:41",
"upload_time_iso_8601": "2024-12-27T08:02:41.743234Z",
"url": "https://files.pythonhosted.org/packages/b6/66/87eb358f80308a46a6c20eb4913acaf3025d7d4d0e98d2a8bc3067596330/Telecrypto-1.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5be2ba9921c819b71ff75a346b895140dd8b6cda545a010c45406bc56d4b908c",
"md5": "644b97bdc3c0fd0886c44fdb8907e5cf",
"sha256": "0e44a376ce70ca3626832a80ad9613c40d32ca2184fff843216c3464eafdfbf1"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "644b97bdc3c0fd0886c44fdb8907e5cf",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "~=3.7",
"size": 60114,
"upload_time": "2024-12-27T08:02:44",
"upload_time_iso_8601": "2024-12-27T08:02:44.471146Z",
"url": "https://files.pythonhosted.org/packages/5b/e2/ba9921c819b71ff75a346b895140dd8b6cda545a010c45406bc56d4b908c/Telecrypto-1.2.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "98dc4ce8c85568cd825140f5ff9c82d1fa96180ed03a58509c66c5897a208d71",
"md5": "c8a063de2744846051fa6370fd6a3d4b",
"sha256": "030f6f57a5adffe1df555ec54b792fa29ea5e5093793b8bd11b6fef2c38f965b"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp312-cp312-musllinux_1_2_i686.whl",
"has_sig": false,
"md5_digest": "c8a063de2744846051fa6370fd6a3d4b",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "~=3.7",
"size": 58371,
"upload_time": "2024-12-27T08:02:46",
"upload_time_iso_8601": "2024-12-27T08:02:46.139613Z",
"url": "https://files.pythonhosted.org/packages/98/dc/4ce8c85568cd825140f5ff9c82d1fa96180ed03a58509c66c5897a208d71/Telecrypto-1.2.6-cp312-cp312-musllinux_1_2_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "57448afcb2d5c1e099ca4062de153ba69e8f87fb91dfc6b43fea09c3e9ce1631",
"md5": "5a60668234813690a4538550754692c1",
"sha256": "cce16dd860f9f5a98950f7855b2039551b5d20885e88d8560fcbed627280fdd6"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp312-cp312-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "5a60668234813690a4538550754692c1",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "~=3.7",
"size": 60068,
"upload_time": "2024-12-27T08:02:47",
"upload_time_iso_8601": "2024-12-27T08:02:47.674976Z",
"url": "https://files.pythonhosted.org/packages/57/44/8afcb2d5c1e099ca4062de153ba69e8f87fb91dfc6b43fea09c3e9ce1631/Telecrypto-1.2.6-cp312-cp312-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6c4382d54e352fbdfec11e6b714d44e2f7b30caa018b819dcbc7e9f2532f328f",
"md5": "f5d56341147edca33ff2d708487af1c6",
"sha256": "c518528f8db7434b6f121e18a5a4a2fc390a8e41c5acc6f4edbb618fd6bcd7f4"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "f5d56341147edca33ff2d708487af1c6",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "~=3.7",
"size": 60286,
"upload_time": "2024-12-27T08:02:50",
"upload_time_iso_8601": "2024-12-27T08:02:50.540890Z",
"url": "https://files.pythonhosted.org/packages/6c/43/82d54e352fbdfec11e6b714d44e2f7b30caa018b819dcbc7e9f2532f328f/Telecrypto-1.2.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "80f57036b381a6be77d97081e319736aab79fefd8233c6c42acf256afb27cb8e",
"md5": "f4b8537ff37bf1d8c1402866bc9abe44",
"sha256": "fb982f73b4b686ea4a1b11faef99d152d0f8c59244d147541e70746f9008a42f"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "f4b8537ff37bf1d8c1402866bc9abe44",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "~=3.7",
"size": 60044,
"upload_time": "2024-12-27T08:02:52",
"upload_time_iso_8601": "2024-12-27T08:02:52.242914Z",
"url": "https://files.pythonhosted.org/packages/80/f5/7036b381a6be77d97081e319736aab79fefd8233c6c42acf256afb27cb8e/Telecrypto-1.2.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "256ab48b117b7fa3ea82cbffcda54233223b40f27b02f124de8937f354a34131",
"md5": "615fa65c23369d7c3f6c2a4a60f137d1",
"sha256": "daed77d266ca4690ad4469ae3a295a008e71c4fedb27fc8dcad8efadbf45734b"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp313-cp313-musllinux_1_2_i686.whl",
"has_sig": false,
"md5_digest": "615fa65c23369d7c3f6c2a4a60f137d1",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "~=3.7",
"size": 58424,
"upload_time": "2024-12-27T08:02:55",
"upload_time_iso_8601": "2024-12-27T08:02:55.029934Z",
"url": "https://files.pythonhosted.org/packages/25/6a/b48b117b7fa3ea82cbffcda54233223b40f27b02f124de8937f354a34131/Telecrypto-1.2.6-cp313-cp313-musllinux_1_2_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "441dcafce2ff9d069f1daf3e409ba9933fde9b1d454ae95e802e9a70f6b37a10",
"md5": "3bfefa7c0287f0a485bbf1286748e572",
"sha256": "ec5e1eb558d454d4aad63a385987b56c9ac5798790c2c76d0ce492c82f4cbb99"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp313-cp313-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "3bfefa7c0287f0a485bbf1286748e572",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "~=3.7",
"size": 60129,
"upload_time": "2024-12-27T08:02:57",
"upload_time_iso_8601": "2024-12-27T08:02:57.809324Z",
"url": "https://files.pythonhosted.org/packages/44/1d/cafce2ff9d069f1daf3e409ba9933fde9b1d454ae95e802e9a70f6b37a10/Telecrypto-1.2.6-cp313-cp313-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b44690da7eb6066c63d705f041812373458a4ac277a375b93e28f5bfd55f80af",
"md5": "d468b250a1c34ac9f498105cf8f5d21e",
"sha256": "8a91047f0a923323f06fe5984fc84bd95773078e1eedb118c334fe13d81ca0ef"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "d468b250a1c34ac9f498105cf8f5d21e",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": "~=3.7",
"size": 61493,
"upload_time": "2024-12-27T08:02:59",
"upload_time_iso_8601": "2024-12-27T08:02:59.348751Z",
"url": "https://files.pythonhosted.org/packages/b4/46/90da7eb6066c63d705f041812373458a4ac277a375b93e28f5bfd55f80af/Telecrypto-1.2.6-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "32a2e9f42590a0e58dc3d31ad375ea190ff53a4ad22569e8386239f3d1fdf3ae",
"md5": "de4802c2fe5b4aed0b60896f1f60cd8b",
"sha256": "3f4598f42256ab479ccb02b28e2fd1cbdae3dee8da9c81197befb2858f18b5e6"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "de4802c2fe5b4aed0b60896f1f60cd8b",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": "~=3.7",
"size": 61233,
"upload_time": "2024-12-27T08:03:02",
"upload_time_iso_8601": "2024-12-27T08:03:02.148467Z",
"url": "https://files.pythonhosted.org/packages/32/a2/e9f42590a0e58dc3d31ad375ea190ff53a4ad22569e8386239f3d1fdf3ae/Telecrypto-1.2.6-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2d58ad8c835e82dcc9fbc33e209d6c21954dd8e2ff7d8e9fd92a83669660cc46",
"md5": "3ff525e3e30942ae73122b0da30af3ba",
"sha256": "a66c92941fa645cb566c23ae3e335c0021270b01d9e98ce82ca36f48a4bce55e"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp37-cp37m-musllinux_1_2_i686.whl",
"has_sig": false,
"md5_digest": "3ff525e3e30942ae73122b0da30af3ba",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": "~=3.7",
"size": 58979,
"upload_time": "2024-12-27T08:03:03",
"upload_time_iso_8601": "2024-12-27T08:03:03.670961Z",
"url": "https://files.pythonhosted.org/packages/2d/58/ad8c835e82dcc9fbc33e209d6c21954dd8e2ff7d8e9fd92a83669660cc46/Telecrypto-1.2.6-cp37-cp37m-musllinux_1_2_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8dcf4c2572d6b09339f8ad67c6d41cfff8317d20682c0bc7a02fcecff99ad39a",
"md5": "b950e4defb8c3f44c66bcff00ddcc690",
"sha256": "ddcd059fd302e3678de72593e25959d5462fe7cbc9ea54bc0c1dffc12a8e22c0"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp37-cp37m-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "b950e4defb8c3f44c66bcff00ddcc690",
"packagetype": "bdist_wheel",
"python_version": "cp37",
"requires_python": "~=3.7",
"size": 60615,
"upload_time": "2024-12-27T08:03:06",
"upload_time_iso_8601": "2024-12-27T08:03:06.624053Z",
"url": "https://files.pythonhosted.org/packages/8d/cf/4c2572d6b09339f8ad67c6d41cfff8317d20682c0bc7a02fcecff99ad39a/Telecrypto-1.2.6-cp37-cp37m-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3782b64fc377b498d42a9445b813de11d8f2ca43cfeaa653d959847b027ceb90",
"md5": "b5de355d6aab357ec48e1c3c96c5b61c",
"sha256": "020bdf87aca28b3c6da7a21409640bddc64e40e9c6201d1bda2b4dff719d9486"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "b5de355d6aab357ec48e1c3c96c5b61c",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": "~=3.7",
"size": 60295,
"upload_time": "2024-12-27T08:03:08",
"upload_time_iso_8601": "2024-12-27T08:03:08.187473Z",
"url": "https://files.pythonhosted.org/packages/37/82/b64fc377b498d42a9445b813de11d8f2ca43cfeaa653d959847b027ceb90/Telecrypto-1.2.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "aca0bd11966bba304f232be3ad8c97ed0f1b7f941febcb2394badb8c70425b0f",
"md5": "4df033a6c2a32ed087d14e920bd0eb83",
"sha256": "003e958531f2ab4994d9c1957bb0cfa6e3162782f3b4a3b31f819dd8fcda28f4"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "4df033a6c2a32ed087d14e920bd0eb83",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": "~=3.7",
"size": 60079,
"upload_time": "2024-12-27T08:03:09",
"upload_time_iso_8601": "2024-12-27T08:03:09.742024Z",
"url": "https://files.pythonhosted.org/packages/ac/a0/bd11966bba304f232be3ad8c97ed0f1b7f941febcb2394badb8c70425b0f/Telecrypto-1.2.6-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e9a6ef86f542badff12de79c0c68f75ad6ed2d9674c2b21c8b974a90923640c2",
"md5": "c744fba3978d67f441f228b421c74a35",
"sha256": "17faded086f7e375e9cf2f39904382012645815cf4e0bc4f07233957b1cae9b4"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp38-cp38-musllinux_1_2_i686.whl",
"has_sig": false,
"md5_digest": "c744fba3978d67f441f228b421c74a35",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": "~=3.7",
"size": 57808,
"upload_time": "2024-12-27T08:03:12",
"upload_time_iso_8601": "2024-12-27T08:03:12.572969Z",
"url": "https://files.pythonhosted.org/packages/e9/a6/ef86f542badff12de79c0c68f75ad6ed2d9674c2b21c8b974a90923640c2/Telecrypto-1.2.6-cp38-cp38-musllinux_1_2_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "96721062e4b7e3384cafe6be6a8a7d474ea11f64edab5e3aaf5009d734035fce",
"md5": "2d1aaba88c2d9f25772e6694285fde62",
"sha256": "ddfae282210124fa7e473c93ffc2ee8e96b3047b2a18e9fc5046a37830881025"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp38-cp38-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "2d1aaba88c2d9f25772e6694285fde62",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": "~=3.7",
"size": 59436,
"upload_time": "2024-12-27T08:03:15",
"upload_time_iso_8601": "2024-12-27T08:03:15.471352Z",
"url": "https://files.pythonhosted.org/packages/96/72/1062e4b7e3384cafe6be6a8a7d474ea11f64edab5e3aaf5009d734035fce/Telecrypto-1.2.6-cp38-cp38-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "043a0ed829f1e6d39f1f3cda7673ac7fb017842301df82512736242b7c4ab51f",
"md5": "31692780e4282fe5d36b24eb3c02ad80",
"sha256": "330ec2e31b77adfb706c96e84e9165331c9dbb4dfcd0ad169f298e8e1254a9ac"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "31692780e4282fe5d36b24eb3c02ad80",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "~=3.7",
"size": 59744,
"upload_time": "2024-12-27T08:03:17",
"upload_time_iso_8601": "2024-12-27T08:03:17.638558Z",
"url": "https://files.pythonhosted.org/packages/04/3a/0ed829f1e6d39f1f3cda7673ac7fb017842301df82512736242b7c4ab51f/Telecrypto-1.2.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7bd07b180373458d5a3eee2de300494b42372ed01f6622dafb7f7935e96c526e",
"md5": "01b575942a164db603cd217d6160856c",
"sha256": "75fb1280aa1c6e93cf97b8e39f00ad0e1e400633134c93eab268b5801aa18f83"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "01b575942a164db603cd217d6160856c",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "~=3.7",
"size": 59543,
"upload_time": "2024-12-27T08:03:19",
"upload_time_iso_8601": "2024-12-27T08:03:19.593141Z",
"url": "https://files.pythonhosted.org/packages/7b/d0/7b180373458d5a3eee2de300494b42372ed01f6622dafb7f7935e96c526e/Telecrypto-1.2.6-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "797db873cfa895a59c1e6b356aac3780e6c1ede38100b57259405bcb78f20fbb",
"md5": "9717c27ba9ad84c35ebc718ff6dab0a4",
"sha256": "8f17b2e58852ff5a039b0609e65859ccda6f4bae0c70352db6c98e388ade2977"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp39-cp39-musllinux_1_2_i686.whl",
"has_sig": false,
"md5_digest": "9717c27ba9ad84c35ebc718ff6dab0a4",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "~=3.7",
"size": 57784,
"upload_time": "2024-12-27T08:03:22",
"upload_time_iso_8601": "2024-12-27T08:03:22.455409Z",
"url": "https://files.pythonhosted.org/packages/79/7d/b873cfa895a59c1e6b356aac3780e6c1ede38100b57259405bcb78f20fbb/Telecrypto-1.2.6-cp39-cp39-musllinux_1_2_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c9586c91a3dc19674927c9359860d199406c341e99a944e3755e1d61501a44a3",
"md5": "96b5b5ab46ba16063b786f1f014c6813",
"sha256": "7cb459d70b3b89a78eb1232ff69a5bd67fa6c448438aff047d323e27da12850a"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-cp39-cp39-musllinux_1_2_x86_64.whl",
"has_sig": false,
"md5_digest": "96b5b5ab46ba16063b786f1f014c6813",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": "~=3.7",
"size": 59431,
"upload_time": "2024-12-27T08:03:24",
"upload_time_iso_8601": "2024-12-27T08:03:24.021379Z",
"url": "https://files.pythonhosted.org/packages/c9/58/6c91a3dc19674927c9359860d199406c341e99a944e3755e1d61501a44a3/Telecrypto-1.2.6-cp39-cp39-musllinux_1_2_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2d7810afa48ebd55eb22ad6723c164ce6bb19126f94a1addf21b17f7ecd08772",
"md5": "2a51c2600aada4f2687ed8c0b719a78f",
"sha256": "84ab5bc97ca497a8d38791e5302486ff4d64002d0d30f10ee5b3078099c6b67b"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "2a51c2600aada4f2687ed8c0b719a78f",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": "~=3.7",
"size": 43321,
"upload_time": "2024-12-27T08:03:25",
"upload_time_iso_8601": "2024-12-27T08:03:25.351076Z",
"url": "https://files.pythonhosted.org/packages/2d/78/10afa48ebd55eb22ad6723c164ce6bb19126f94a1addf21b17f7ecd08772/Telecrypto-1.2.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a25c63cffef28e2835a93915e48b27321278b2f3c4d7421cb82baf78eac722fd",
"md5": "c091f5581c3ab3bd0b28bfa5902d02d7",
"sha256": "109a3f697a381b4e0f9f0bddcc22e59744424628b015976319d1b8dd00b287ba"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "c091f5581c3ab3bd0b28bfa5902d02d7",
"packagetype": "bdist_wheel",
"python_version": "pp310",
"requires_python": "~=3.7",
"size": 43941,
"upload_time": "2024-12-27T08:03:27",
"upload_time_iso_8601": "2024-12-27T08:03:27.507345Z",
"url": "https://files.pythonhosted.org/packages/a2/5c/63cffef28e2835a93915e48b27321278b2f3c4d7421cb82baf78eac722fd/Telecrypto-1.2.6-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a15f38a01d2aaaac425fb5d000355324a3dc46177a36fc7a0bb2b2a5cf9d42c6",
"md5": "d402ae7489a82517660fa2b9b55c98a5",
"sha256": "81de704f0a391ef0bf78caa20b70f36865caae8fd13aad9829c34faf74a36977"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "d402ae7489a82517660fa2b9b55c98a5",
"packagetype": "bdist_wheel",
"python_version": "pp37",
"requires_python": "~=3.7",
"size": 43454,
"upload_time": "2024-12-27T08:03:30",
"upload_time_iso_8601": "2024-12-27T08:03:30.264447Z",
"url": "https://files.pythonhosted.org/packages/a1/5f/38a01d2aaaac425fb5d000355324a3dc46177a36fc7a0bb2b2a5cf9d42c6/Telecrypto-1.2.6-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "84e62f0bf7180c1f0dc6e2386599c4e9cf2281911fa4c729791f75c30865d006",
"md5": "ac5ca284fb69c45ffcd6fb16e8bea0de",
"sha256": "e2cca8d6f804b0b1e0b1a680d9bc630989f9da25d5d455a06b369507e0d3cc70"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "ac5ca284fb69c45ffcd6fb16e8bea0de",
"packagetype": "bdist_wheel",
"python_version": "pp37",
"requires_python": "~=3.7",
"size": 44073,
"upload_time": "2024-12-27T08:03:33",
"upload_time_iso_8601": "2024-12-27T08:03:33.410077Z",
"url": "https://files.pythonhosted.org/packages/84/e6/2f0bf7180c1f0dc6e2386599c4e9cf2281911fa4c729791f75c30865d006/Telecrypto-1.2.6-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2371cac382f8ee5e4b763849850deab238361fbc3b187bfd3413f641435d547b",
"md5": "373f940e7bc867400a049aeaf00e95b8",
"sha256": "3da8365d7d4b65d637f09bec734f02851efc1c29a27e6f33679e09afb0436733"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "373f940e7bc867400a049aeaf00e95b8",
"packagetype": "bdist_wheel",
"python_version": "pp38",
"requires_python": "~=3.7",
"size": 43317,
"upload_time": "2024-12-27T08:03:36",
"upload_time_iso_8601": "2024-12-27T08:03:36.231661Z",
"url": "https://files.pythonhosted.org/packages/23/71/cac382f8ee5e4b763849850deab238361fbc3b187bfd3413f641435d547b/Telecrypto-1.2.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "500a8a20cfef48123c446b1325531ad637e8dfebcdef83f3f59071d77e09c28d",
"md5": "77d0a253a9cd0117bfe7885739dae52d",
"sha256": "ebca029e5a0395429f107d33fcc5389c140a9e5cee78f8e62f8b146ae068dd02"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "77d0a253a9cd0117bfe7885739dae52d",
"packagetype": "bdist_wheel",
"python_version": "pp38",
"requires_python": "~=3.7",
"size": 43934,
"upload_time": "2024-12-27T08:03:37",
"upload_time_iso_8601": "2024-12-27T08:03:37.773215Z",
"url": "https://files.pythonhosted.org/packages/50/0a/8a20cfef48123c446b1325531ad637e8dfebcdef83f3f59071d77e09c28d/Telecrypto-1.2.6-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "256d4d26c57fd6a5710a88e7ad674816229b1e5e8cfc7b72c6be7d9934ff3706",
"md5": "64e76ab562ce98f37761dee4255bcae5",
"sha256": "b19f384e5f6d70e0a1817ac82663f342f9c883dba06738f4efde351aa05f4c4b"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "64e76ab562ce98f37761dee4255bcae5",
"packagetype": "bdist_wheel",
"python_version": "pp39",
"requires_python": "~=3.7",
"size": 43316,
"upload_time": "2024-12-27T08:03:40",
"upload_time_iso_8601": "2024-12-27T08:03:40.579929Z",
"url": "https://files.pythonhosted.org/packages/25/6d/4d26c57fd6a5710a88e7ad674816229b1e5e8cfc7b72c6be7d9934ff3706/Telecrypto-1.2.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "cb0ff09d4895a8ce6e49fe6ef5241b53e45e2558bf8409a773f5e7880e210396",
"md5": "31a0c428f35150a22400b0fb3193bb7e",
"sha256": "4dddff4a685b7b9216c6e83c2e3a637772ba5ae2d25162b0834adee6b186c6bc"
},
"downloads": -1,
"filename": "Telecrypto-1.2.6-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"has_sig": false,
"md5_digest": "31a0c428f35150a22400b0fb3193bb7e",
"packagetype": "bdist_wheel",
"python_version": "pp39",
"requires_python": "~=3.7",
"size": 43936,
"upload_time": "2024-12-27T08:03:42",
"upload_time_iso_8601": "2024-12-27T08:03:42.133225Z",
"url": "https://files.pythonhosted.org/packages/cb/0f/f09d4895a8ce6e49fe6ef5241b53e45e2558bf8409a773f5e7880e210396/Telecrypto-1.2.6-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-27 08:02:21",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "venombolteop",
"github_project": "telecrypto",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "telecrypto"
}