Skip to main content

TgCrypto2

Fast and Portable Cryptography Extension Library for Pyrogram

About this fork

TgCrypto2 is a maintained fork of the original pyrogram/tgcrypto project, which was archived in December 2024. The cryptographic core is preserved from upstream; this fork adds modern packaging, newer Python support, and bug fixes (such as a CTR buffer cleanup leak in the C bindings).

As noted in the upstream repository, the algorithm implementations are intended for educational purposes.

TgCrypto2 is a Cryptography Library written in C as a Python extension. It is designed to be portable, fast, easy to install and use. TgCrypto2 is intended for Pyrogram and implements the cryptographic algorithms Telegram requires, namely:

Requirements

  • Python 3.9 or higher.

Installation

$ pip3 install -U tgcrypto2

The PyPI package name is tgcrypto2, but the import name remains tgcrypto for drop-in compatibility with Pyrogram.

API

TgCrypto2 API consists of these six methods:

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

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)

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)

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

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/tboy1337/tgcrypto2.
  2. Enter the directory: cd tgcrypto2.
  3. Install tox: pip3 install tox
  4. Run tests: tox.

License

LGPLv3+ © 2017-present Dan

Release files for tgcrypto2 1.3.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for tgcrypto2 1.3.6
File
tgcrypto2-1.3.6-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
tgcrypto2-1.3.6-cp314-cp314-win32.whl CPython 3.14 CPython 3.14 Windows x86-32 Details
tgcrypto2-1.3.6-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details
tgcrypto2-1.3.6-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
tgcrypto2-1.3.6-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
tgcrypto2-1.3.6-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
tgcrypto2-1.3.6-cp314-cp314-macosx_10_15_universal2.whl CPython 3.14 CPython 3.14 macOS 10.15+ universal2 (ARM64, x86-64) Details
tgcrypto2-1.3.6-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
tgcrypto2-1.3.6-cp313-cp313-win32.whl CPython 3.13 CPython 3.13 Windows x86-32 Details
tgcrypto2-1.3.6-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
tgcrypto2-1.3.6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
tgcrypto2-1.3.6-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
tgcrypto2-1.3.6-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
tgcrypto2-1.3.6-cp313-cp313-macosx_10_13_universal2.whl CPython 3.13 CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64) Details
tgcrypto2-1.3.6-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
tgcrypto2-1.3.6-cp312-cp312-win32.whl CPython 3.12 CPython 3.12 Windows x86-32 Details
tgcrypto2-1.3.6-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
tgcrypto2-1.3.6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
tgcrypto2-1.3.6-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
tgcrypto2-1.3.6-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
tgcrypto2-1.3.6-cp312-cp312-macosx_10_13_universal2.whl CPython 3.12 CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64) Details
tgcrypto2-1.3.6-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
tgcrypto2-1.3.6-cp311-cp311-win32.whl CPython 3.11 CPython 3.11 Windows x86-32 Details
tgcrypto2-1.3.6-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
tgcrypto2-1.3.6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
tgcrypto2-1.3.6-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
tgcrypto2-1.3.6-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
tgcrypto2-1.3.6-cp311-cp311-macosx_10_9_universal2.whl CPython 3.11 CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64) Details
tgcrypto2-1.3.6-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
tgcrypto2-1.3.6-cp310-cp310-win32.whl CPython 3.10 CPython 3.10 Windows x86-32 Details
tgcrypto2-1.3.6-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
tgcrypto2-1.3.6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
tgcrypto2-1.3.6-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
tgcrypto2-1.3.6-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details
tgcrypto2-1.3.6-cp310-cp310-macosx_10_9_universal2.whl CPython 3.10 CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64) Details
tgcrypto2-1.3.6-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
tgcrypto2-1.3.6-cp39-cp39-win32.whl CPython 3.9 CPython 3.9 Windows x86-32 Details
tgcrypto2-1.3.6-cp39-cp39-musllinux_1_2_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ x86-64 Details
tgcrypto2-1.3.6-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
tgcrypto2-1.3.6-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
tgcrypto2-1.3.6-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details
tgcrypto2-1.3.6-cp39-cp39-macosx_10_9_universal2.whl CPython 3.9 CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64) Details

Total release size: 1.8 MB

Release files / tgcrypto2-1.3.6-cp314-cp314-win_amd64.whl

Download URL tgcrypto2-1.3.6-cp314-cp314-win_amd64.whl
Size 38.6 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
ca4fcb182be3fd934dfe58760b7b7a07674204cae128cb7a1280e17f81d40489
BLAKE2b-256 checksum
How to use checksums
27b548e19d08158f55aad3b5f56408bc775199e61ce500247d86ed6685827487
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp314-cp314-win32.whl

Download URL tgcrypto2-1.3.6-cp314-cp314-win32.whl
Size 38.0 kB
Tags CPython 3.14 Windows x86-32
SHA-256 checksum
How to use checksums
b9436f2a5da4d413035de4b32a5a5a59562de7efd2be74c69cdcd708bf6cb37d
BLAKE2b-256 checksum
How to use checksums
aa21fc798642a0b5f72911c7a1713be7472c4e0ecb493937710ab3546a6dde87
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL tgcrypto2-1.3.6-cp314-cp314-musllinux_1_2_x86_64.whl
Size 52.1 kB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
0deec6bc48c9ffb120343317d7288f61b500e04d20e7ec4d0d4e3c3cfe225537
BLAKE2b-256 checksum
How to use checksums
3fabf6a514e7bcda1e875a0eb16d3c9482b9a1454e42e3145a4c1aae523cae2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL tgcrypto2-1.3.6-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 52.0 kB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
71f55b7f1d8f16cf046ecca80f4a54666e0eaee0c3c9c0c38458f7b9af3b5a00
BLAKE2b-256 checksum
How to use checksums
3d881c15e41ce5fe34d5c17587dc16678476f390a708e91d61547dfa3a8b7b77
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp314-cp314-macosx_11_0_arm64.whl

Download URL tgcrypto2-1.3.6-cp314-cp314-macosx_11_0_arm64.whl
Size 35.5 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5717a50524045419022a8cf7982f33b407352cbe47580ea25347673efd17d5e9
BLAKE2b-256 checksum
How to use checksums
d94dde76af9a74a4a5684cc8fd44736aa00dd3044f2f57d8063db7fa1df1d48f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp314-cp314-macosx_10_15_x86_64.whl

Download URL tgcrypto2-1.3.6-cp314-cp314-macosx_10_15_x86_64.whl
Size 35.5 kB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
08ce54bb3ef0fb82eb4e2112f215b9476b1901ddf1b3bc80301a6be83aad44bc
BLAKE2b-256 checksum
How to use checksums
87694ca9e23d5a448e80a8a1ef08739e66250bc16ef17e62ec77f5cdbc62b395
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp314-cp314-macosx_10_15_universal2.whl

Download URL tgcrypto2-1.3.6-cp314-cp314-macosx_10_15_universal2.whl
Size 51.1 kB
Tags CPython 3.14 macOS 10.15+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
9048a6bec70bd9f79c4f96f0d864538fc74760b0427c446c877b1ec56ffa0d24
BLAKE2b-256 checksum
How to use checksums
a8c2185ff37601a1f3efd88d28502f6384fac70f078b22937e1cbaef853c692d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp313-cp313-win_amd64.whl

Download URL tgcrypto2-1.3.6-cp313-cp313-win_amd64.whl
Size 36.7 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
583bceefdc0516bd76ce93433bce4f2e759b646a5ab100503b8f559a13a808bc
BLAKE2b-256 checksum
How to use checksums
f9b654b46aaff59ccabc01888d36ccccc52b820d90ab08f3bca685cc6de90681
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp313-cp313-win32.whl

Download URL tgcrypto2-1.3.6-cp313-cp313-win32.whl
Size 36.1 kB
Tags CPython 3.13 Windows x86-32
SHA-256 checksum
How to use checksums
923e1711a4c3ea2924bc69408441cb352c26a9d73eb016cd8fc8ff1b3f8f7d00
BLAKE2b-256 checksum
How to use checksums
5094dc4f4ddf92c89cdc34a012dc130718fce802b742eb0ae7eadc25358d8613
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL tgcrypto2-1.3.6-cp313-cp313-musllinux_1_2_x86_64.whl
Size 52.0 kB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
c5e8fd4627c54ab3c240a8c1f926166b990c439500320a087af3b82cf0d32f27
BLAKE2b-256 checksum
How to use checksums
c47bc9f2dc0eb245cda6bfac138b381a7fe4efc2cb564631286b65a700f3a0d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL tgcrypto2-1.3.6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 51.8 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
2a0c58acdb81982533820e4e1924cbbe4a40129b8d6a3e62cfb80adae2311cb6
BLAKE2b-256 checksum
How to use checksums
c0e53452e8709e1afe09cb52c1b30ac70f2005a18495fa6861805a7ff7e27749
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp313-cp313-macosx_11_0_arm64.whl

Download URL tgcrypto2-1.3.6-cp313-cp313-macosx_11_0_arm64.whl
Size 35.5 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e1c2b6d489e4c060adc14d04456bc37b89734a8664d686e6f7719655944336ec
BLAKE2b-256 checksum
How to use checksums
287e47a0f7f950afd76545b9549051d253fafd6036cba5e89c345c42179e598d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp313-cp313-macosx_10_13_x86_64.whl

Download URL tgcrypto2-1.3.6-cp313-cp313-macosx_10_13_x86_64.whl
Size 35.4 kB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
4b19e1f2b94ae1bf7bfb60b9603b2ccbd31253e26da9d20cf9627ed22d8be0b2
BLAKE2b-256 checksum
How to use checksums
2347d81abea071bb54efbbce9a9a05a703f9688b4925ab484651f4457342672a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp313-cp313-macosx_10_13_universal2.whl

Download URL tgcrypto2-1.3.6-cp313-cp313-macosx_10_13_universal2.whl
Size 51.1 kB
Tags CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
41f0daf525798ea85f7d7b8ad051604ae1f99d0d24d664eccaf9c145af3785d3
BLAKE2b-256 checksum
How to use checksums
fffd5b1dd0f2a7d45a8a4d84010a8249036a3f5e6d4ca7551c160f0f212296be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp312-cp312-win_amd64.whl

Download URL tgcrypto2-1.3.6-cp312-cp312-win_amd64.whl
Size 36.7 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
3c474da4690b51de9d66a65412b1e8423dfc96ddfacf6181d9e7f1da8358e154
BLAKE2b-256 checksum
How to use checksums
e6c4783e82108172addca93262ac2beb2bb5ece0259daa875c9a4ca2bc2b2904
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp312-cp312-win32.whl

Download URL tgcrypto2-1.3.6-cp312-cp312-win32.whl
Size 36.1 kB
Tags CPython 3.12 Windows x86-32
SHA-256 checksum
How to use checksums
934c504b21f124ce587201b2441286846ee9751a41ab9c2ddfed6c0ef61fea54
BLAKE2b-256 checksum
How to use checksums
e67029879d384f956f96473918f192645a4a3ab622a8a785adc3d96c8d0b6668
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL tgcrypto2-1.3.6-cp312-cp312-musllinux_1_2_x86_64.whl
Size 51.9 kB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
0317692cf85837538ff88c47da6faea87ab38da404f0591b8a9ac0cbb7f3f89e
BLAKE2b-256 checksum
How to use checksums
6f8be6728007f5f9e60d4e2ec1bc086924e35dc90eb1c79d5666c3e72763f58f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL tgcrypto2-1.3.6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 51.8 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
dd41f71108906e606437b0a39354a240e81cd03bde656768cffdca2c38235243
BLAKE2b-256 checksum
How to use checksums
ab718d9b74e563ca28196e15e1fcf3cbe2ca67f39a828e958dcb7d5d76393c6e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp312-cp312-macosx_11_0_arm64.whl

Download URL tgcrypto2-1.3.6-cp312-cp312-macosx_11_0_arm64.whl
Size 35.5 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2f4fce68d147f670cd055d0258c7ff9147b5c4bd962c7b0ac17bef02c18df7c6
BLAKE2b-256 checksum
How to use checksums
8ff36bb56fd981f4a221d39642a6c02614270caa8a94a1fbac8b9097afea22ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp312-cp312-macosx_10_13_x86_64.whl

Download URL tgcrypto2-1.3.6-cp312-cp312-macosx_10_13_x86_64.whl
Size 35.4 kB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
00808f253985a17a74c33a3116714399e7fc97e919fc033ba41a941635c589dd
BLAKE2b-256 checksum
How to use checksums
bbea06bf114e6179256c8133c7e6279df0305026fa8b06ad8e0333b0af959559
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp312-cp312-macosx_10_13_universal2.whl

Download URL tgcrypto2-1.3.6-cp312-cp312-macosx_10_13_universal2.whl
Size 51.1 kB
Tags CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
d38779024b1abe9c48b79f556105a0ca472d3878a62bd078a65f96c520ae5a9e
BLAKE2b-256 checksum
How to use checksums
655f61181144b3e7e4c6423bb522a817aa66356697e1596076dd373b61117a4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp311-cp311-win_amd64.whl

Download URL tgcrypto2-1.3.6-cp311-cp311-win_amd64.whl
Size 36.7 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
102a0d85995b5e4acf04a049c3153f95d5be910e7ad4d0e6c23e64d16ad6b360
BLAKE2b-256 checksum
How to use checksums
2c99e7db0e396f90e0ef773fb6d1e829e0e8fa9e27e6590ea0d5f40ed78e339e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp311-cp311-win32.whl

Download URL tgcrypto2-1.3.6-cp311-cp311-win32.whl
Size 36.1 kB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
9ded325458b51a41f5e558294a3cff3b442c47153308de4beea6d747f58750b6
BLAKE2b-256 checksum
How to use checksums
d903762d2f3ad2ad63f51ca22084b6f57ba5dbb6d45bd84f803b170f28c06bd1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL tgcrypto2-1.3.6-cp311-cp311-musllinux_1_2_x86_64.whl
Size 52.3 kB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
de7ebea0aef4402f03331f40d34425d60c77edcee10a5a60cb62f250548436a9
BLAKE2b-256 checksum
How to use checksums
f6cf20b9f159386a5346f42c15fa713c65d5deab595bf86023fe8117c1ef9d80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL tgcrypto2-1.3.6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 52.1 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
79fb2ac197d39e3436d8b2c8e5716c42be93b28e177455db30e826bcba2d5ca9
BLAKE2b-256 checksum
How to use checksums
5dadafcd9e031302a9908cdc0528968b7eaf3c536915363c2824a17a6862d49f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp311-cp311-macosx_11_0_arm64.whl

Download URL tgcrypto2-1.3.6-cp311-cp311-macosx_11_0_arm64.whl
Size 35.5 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
a501c5a831ce5710deac18e8d5bb31806960ccd7b3d45c947e7799e10135e985
BLAKE2b-256 checksum
How to use checksums
18a04114951b5e75237bf2e06ee5ff648cc0c681e630c4e1c1f8e58b3b0a55db
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp311-cp311-macosx_10_9_x86_64.whl

Download URL tgcrypto2-1.3.6-cp311-cp311-macosx_10_9_x86_64.whl
Size 35.4 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
fb56159df0ed16ff992dd4cc2a87f04b9adfb61c6791ecc7a5cde9400f704b33
BLAKE2b-256 checksum
How to use checksums
36e9ac50e5b102ca1125f72da4487bbf8dede85b80e25c3099dfadb8696f4f69
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp311-cp311-macosx_10_9_universal2.whl

Download URL tgcrypto2-1.3.6-cp311-cp311-macosx_10_9_universal2.whl
Size 51.1 kB
Tags CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
6d18fdef0e2154262b34d52c98407ad6be247cdc81da07bfd6832b53f5f05efe
BLAKE2b-256 checksum
How to use checksums
74b77828150bd0b4d98720585a96a73b3673968d5bdf334101ed6905203a497d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp310-cp310-win_amd64.whl

Download URL tgcrypto2-1.3.6-cp310-cp310-win_amd64.whl
Size 36.7 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
14d5915a81cb2d015bd2da84cea6807729d34076787725108bb5ae4f944a1b46
BLAKE2b-256 checksum
How to use checksums
5cc6311a581f8db55f244723ea9c7b9691718c1ae3a95b9f01c0050b5e95577b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp310-cp310-win32.whl

Download URL tgcrypto2-1.3.6-cp310-cp310-win32.whl
Size 36.1 kB
Tags CPython 3.10 Windows x86-32
SHA-256 checksum
How to use checksums
ecf9d9672cc3b11ae6537cc95589b1235988652a0ea74d7e6104e7858a61c228
BLAKE2b-256 checksum
How to use checksums
769fdaa3cb8fc49fdddb905f729a81bd1217f6057a2a66c2a8f35fbbe7c68492
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL tgcrypto2-1.3.6-cp310-cp310-musllinux_1_2_x86_64.whl
Size 51.5 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
a82071cca7b4faef68e66b723ccb2e45584bc034b87383fc8d131cdabf78a38d
BLAKE2b-256 checksum
How to use checksums
f030cb796878d228332ef45616d378f3f02cc355fca0540d3f822cec48db7b50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL tgcrypto2-1.3.6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 51.4 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d2477923f16a09df4edc2e849b7898583cc08d28e7ac1af9e11317ee1f5d6533
BLAKE2b-256 checksum
How to use checksums
d5c2162fb8af63d037cc471cb628dbe4fa7cd5ba8f8173b5bd3cabf87c237051
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp310-cp310-macosx_11_0_arm64.whl

Download URL tgcrypto2-1.3.6-cp310-cp310-macosx_11_0_arm64.whl
Size 35.5 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
fca0c30808ea39512812efe95e003cec2f002f99801f6256474b37547a6479b8
BLAKE2b-256 checksum
How to use checksums
3d58e65aca8b9e29976f4665739d219b03b675284ee465b335feb85a5c7e8371
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp310-cp310-macosx_10_9_x86_64.whl

Download URL tgcrypto2-1.3.6-cp310-cp310-macosx_10_9_x86_64.whl
Size 35.4 kB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
cdeb8bae1defd4a137330d1778b069194ca10045952b6c4a39e3d3c01b7680d0
BLAKE2b-256 checksum
How to use checksums
37c6574c77dfb4cdfff81f5ea66d63b95e10b97fd7a9920677d95dbb0c8ef0cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp310-cp310-macosx_10_9_universal2.whl

Download URL tgcrypto2-1.3.6-cp310-cp310-macosx_10_9_universal2.whl
Size 51.1 kB
Tags CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
f77d14cb2febe6de6bc2d28e54fab465b0e34f742b4d7346ccf09ddf9d6bb02c
BLAKE2b-256 checksum
How to use checksums
09f9e4fd93f3c86205a3fc3c27cb1d29450d9b05ed86aa214508a08064d0e296
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp39-cp39-win_amd64.whl

Download URL tgcrypto2-1.3.6-cp39-cp39-win_amd64.whl
Size 36.7 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
dfbaf46eb50e6d78b90d766fcaa3ecb1b96adf7215ecb57fcb7a49bef411a525
BLAKE2b-256 checksum
How to use checksums
5051d7a4fc1fc158290a9bca312937061c1acdc2349e2dbe42a184b7ff5af918
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp39-cp39-win32.whl

Download URL tgcrypto2-1.3.6-cp39-cp39-win32.whl
Size 36.1 kB
Tags CPython 3.9 Windows x86-32
SHA-256 checksum
How to use checksums
a8b754b574ead317e93d79805b4f89914cf2a6afada0d2dbda06670061578e44
BLAKE2b-256 checksum
How to use checksums
ac61acd4d5af3a8919b1d1cb95d8eb6b5425e74ff0648cabd8320a055dfe8f83
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp39-cp39-musllinux_1_2_x86_64.whl

Download URL tgcrypto2-1.3.6-cp39-cp39-musllinux_1_2_x86_64.whl
Size 51.3 kB
Tags CPython 3.9 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
a32b3dd5552a38fce60f3ce025073ebba97699265dd303358017b99497f34b76
BLAKE2b-256 checksum
How to use checksums
629efde961c30e21be9fdf644399b58ece14e6594386d8e2dffd6b4b954974f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL tgcrypto2-1.3.6-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 51.2 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
41eee0ce80b38f771b5f5f506272b9d9b5705f8fd0f0da5f4c5fe84ca3b32b8c
BLAKE2b-256 checksum
How to use checksums
9b4f583220fa63836e317138316ff01b797d45b900d6c68714902cc3fd847105
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp39-cp39-macosx_11_0_arm64.whl

Download URL tgcrypto2-1.3.6-cp39-cp39-macosx_11_0_arm64.whl
Size 35.5 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
7fbc508d484d4c9e4af62eb200c85ccea8d45448a009594abb80b09859d2b10a
BLAKE2b-256 checksum
How to use checksums
bf51ad377a9ccd58548ff7511d83d264dba8c51ab3e6ff09ddd8ea275b59f379
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp39-cp39-macosx_10_9_x86_64.whl

Download URL tgcrypto2-1.3.6-cp39-cp39-macosx_10_9_x86_64.whl
Size 35.4 kB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
0b96c946d48d936128bf4473894b319aed9562b04fa1307033650a0684a8de09
BLAKE2b-256 checksum
How to use checksums
6f77d6de2c4a9b4b6a87ff000f4dc21e9ade6d44962b078234c160a7887c236f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / tgcrypto2-1.3.6-cp39-cp39-macosx_10_9_universal2.whl

Download URL tgcrypto2-1.3.6-cp39-cp39-macosx_10_9_universal2.whl
Size 51.1 kB
Tags CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
26abe0414de520a593ac5374eca05d626fe393d6d695a85156f587cbd0c9dd12
BLAKE2b-256 checksum
How to use checksums
d44cff6ec15806bcc02848c1be26d23d9b059dfdc42a83bbffd0d7ac06522d6e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

This release

1.3.6 This release

42 release files

1.3.0

80 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page