Skip to main content

Fast and Portable Cryptography Extension Library for Pyrogram

Project description

TgCrypto

Cryptography Extension Library for Pyrogram

TgCrypto 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 Pyrogram and implements the cryptographic algorithms Telegram requires, namely:

Requirements

  • Python 3.9 or higher.

Installation

$ pip3 install -U mtprotocrypt

API

TgCrypto 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

License

LGPLv3+ © 2017-present Dan

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-win_amd64.whl (32.5 kB view details)

Uploaded PyPy Windows x86-64

mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (31.0 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-macosx_11_0_arm64.whl (30.3 kB view details)

Uploaded PyPy macOS 11.0+ ARM64

mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl (30.5 kB view details)

Uploaded PyPy macOS 10.9+ x86-64

mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-win_amd64.whl (32.5 kB view details)

Uploaded PyPy Windows x86-64

mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (30.4 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (31.0 kB view details)

Uploaded PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-macosx_11_0_arm64.whl (30.2 kB view details)

Uploaded PyPy macOS 11.0+ ARM64

mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl (30.5 kB view details)

Uploaded PyPy macOS 10.9+ x86-64

mtprotocrypt-1.2.6.5b0-cp312-cp312-win_amd64.whl (32.3 kB view details)

Uploaded CPython 3.12 Windows x86-64

mtprotocrypt-1.2.6.5b0-cp312-cp312-win32.whl (31.5 kB view details)

Uploaded CPython 3.12 Windows x86

mtprotocrypt-1.2.6.5b0-cp312-cp312-musllinux_1_1_x86_64.whl (51.6 kB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

mtprotocrypt-1.2.6.5b0-cp312-cp312-musllinux_1_1_i686.whl (51.3 kB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ i686

mtprotocrypt-1.2.6.5b0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (47.8 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

mtprotocrypt-1.2.6.5b0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (47.3 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

mtprotocrypt-1.2.6.5b0-cp312-cp312-macosx_11_0_arm64.whl (30.7 kB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

mtprotocrypt-1.2.6.5b0-cp312-cp312-macosx_10_9_x86_64.whl (30.9 kB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

mtprotocrypt-1.2.6.5b0-cp312-cp312-macosx_10_9_universal2.whl (46.6 kB view details)

Uploaded CPython 3.12 macOS 10.9+ universal2 (ARM64, x86-64)

mtprotocrypt-1.2.6.5b0-cp311-cp311-win_amd64.whl (32.3 kB view details)

Uploaded CPython 3.11 Windows x86-64

mtprotocrypt-1.2.6.5b0-cp311-cp311-win32.whl (31.5 kB view details)

Uploaded CPython 3.11 Windows x86

mtprotocrypt-1.2.6.5b0-cp311-cp311-musllinux_1_1_x86_64.whl (51.9 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

mtprotocrypt-1.2.6.5b0-cp311-cp311-musllinux_1_1_i686.whl (51.6 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

mtprotocrypt-1.2.6.5b0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (48.1 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

mtprotocrypt-1.2.6.5b0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (47.7 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

mtprotocrypt-1.2.6.5b0-cp311-cp311-macosx_11_0_arm64.whl (30.7 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

mtprotocrypt-1.2.6.5b0-cp311-cp311-macosx_10_9_x86_64.whl (30.9 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

mtprotocrypt-1.2.6.5b0-cp311-cp311-macosx_10_9_universal2.whl (46.6 kB view details)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

mtprotocrypt-1.2.6.5b0-cp310-cp310-win_amd64.whl (32.3 kB view details)

Uploaded CPython 3.10 Windows x86-64

mtprotocrypt-1.2.6.5b0-cp310-cp310-win32.whl (31.5 kB view details)

Uploaded CPython 3.10 Windows x86

mtprotocrypt-1.2.6.5b0-cp310-cp310-musllinux_1_1_x86_64.whl (51.1 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

mtprotocrypt-1.2.6.5b0-cp310-cp310-musllinux_1_1_i686.whl (50.8 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

mtprotocrypt-1.2.6.5b0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (47.3 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

mtprotocrypt-1.2.6.5b0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (46.9 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

mtprotocrypt-1.2.6.5b0-cp310-cp310-macosx_11_0_arm64.whl (30.7 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

mtprotocrypt-1.2.6.5b0-cp310-cp310-macosx_10_9_x86_64.whl (30.9 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

mtprotocrypt-1.2.6.5b0-cp310-cp310-macosx_10_9_universal2.whl (46.6 kB view details)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

mtprotocrypt-1.2.6.5b0-cp39-cp39-win_amd64.whl (32.3 kB view details)

Uploaded CPython 3.9 Windows x86-64

mtprotocrypt-1.2.6.5b0-cp39-cp39-win32.whl (31.5 kB view details)

Uploaded CPython 3.9 Windows x86

mtprotocrypt-1.2.6.5b0-cp39-cp39-musllinux_1_1_x86_64.whl (50.9 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

mtprotocrypt-1.2.6.5b0-cp39-cp39-musllinux_1_1_i686.whl (50.6 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

mtprotocrypt-1.2.6.5b0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (47.1 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

mtprotocrypt-1.2.6.5b0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (46.7 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

mtprotocrypt-1.2.6.5b0-cp39-cp39-macosx_11_0_arm64.whl (30.7 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

mtprotocrypt-1.2.6.5b0-cp39-cp39-macosx_10_9_x86_64.whl (30.9 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

mtprotocrypt-1.2.6.5b0-cp39-cp39-macosx_10_9_universal2.whl (46.6 kB view details)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 c9c85ecff1fe4da0f03dcf63dbcaeb1189c74c544ee93cce1dccd0b1738ff982
MD5 4707ead08d24a87adec56a1c82f8c64d
BLAKE2b-256 706874f3516c1f289ffd5b7a34490a28ca219493b311433db33b9310c0af6fbe

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cf5b873fa5ecbb63d8dfd81ee15f4ce665febf4b3cf3ab98a0797dbf773ca1ab
MD5 67f325ff7fd564a8a11a3363f4b72e93
BLAKE2b-256 615479735febacb0f98bf73c15c13c5eb2198053ec136c5176425c4836ae7e2a

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 96da6e9ea54f62ce52704bc37e3e81b087bcf6933dda39cd9fa93e4b0d9eb67a
MD5 0089bab8ec96aa2bf8727a28807a9b8c
BLAKE2b-256 adf61d617b8696114b775f7605af13c491079af904e5d61954672d76cc887cd5

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 13c96e3dffabcd190891500ef2b69d5bcc60a4ded36f92a9147f3a5390f9cffc
MD5 e4c50c4e8992b3c4f682aad40b85b7c8
BLAKE2b-256 2d1627077c8b21c4025b6c7d3b4ff2aaa8809da8a7ea4710eb585a0d753ee0bc

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5e12ff3dbbcd421e6fb0a01501834a6df98063d75b467bd3436501ba35b09c84
MD5 1443a7e8016725223247853795f032e2
BLAKE2b-256 73cb62a1fd34823e50699c21f3747ec739a3edc5c7960c7a5dd12e05820e0daf

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 632762db8d1cea38309cf594cf6f8794a3afa1eb637cf7d457ad233a25f8377c
MD5 d0062b058d7b4e606c9ea3a2c71d1696
BLAKE2b-256 476e48c44380bf852735b47b32543b630e3b0507c71c5e5ef27d8f4961fa9716

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dc42af0bf2453a6da1571cb7778377f9e3122016f71d09c9f0779639146e7cc9
MD5 70c5211cda309817cd543217d5c36d38
BLAKE2b-256 619fdc974c433a8cc79db72d7c39cda42122e0d65a3733b7be2fe41e4aaa840a

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 13cfd4968c4c693ecfd0de6ca3fddedd0b621061f1713c86cad9a29f33e4fd17
MD5 951835bd7e48793800aad3a38d16ce2a
BLAKE2b-256 64472c445ff4380f9a4e451f4c39639634b6690da2756d452cae5c2ce83ad745

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a5e21cec87c34e5e52b1c2cde166605f064962d712a65145d016c540c361f412
MD5 e260800e988de102de1de2fc39aeca26
BLAKE2b-256 79f5f460c78126c75b34a6fff95050ca49f1b6e201b8d36539817790ac57a400

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7b3395dde13b6b41e76ab4bdb4df41f34a0c4a5d9229145eb7033b24d24d3de1
MD5 2320dd5f2f828c2ffdf8237612f54169
BLAKE2b-256 2f1d5e657aa9b8df0b00a6f69748846e3eb3cf6a3765583df88bd62491603f19

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9768fe1127f63a7ec03a6b93a38dbfa93f56bbb5d04ddba4112dbb58881453ed
MD5 e6066d185669a983d0c1a400c301d2d7
BLAKE2b-256 b05401120d44772957ec126538e68e3c26373ed313503201d75e88b953796c0f

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 897d87faa52436aa8024a52ff294c06ce0aefdf72036307600e30d7024afbbf9
MD5 78f66933e405d7022f6e08820a62866b
BLAKE2b-256 3e857969dfb3e28e0e58f144306a2d86be8740235f3cbde2e35c29f89df7869e

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 60a6d429d1c86f4f13cb7ae75a8101a3fb0aa1fd4635905cfc8b4b1e747267ef
MD5 3a60b1d751b83e6dd5cbb355cb83e0c4
BLAKE2b-256 c5f0cbd07a6f12eb2e29ef3b9fa00453da6643e9cd884ac2a27cc20909071e95

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp312-cp312-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp312-cp312-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 326481f8dbade6776ef4b9548ab5384c46c00e9c67f090b2195dd6ffe066ab8a
MD5 ffa6b3cf5d78c7d2512a62bba4bed48c
BLAKE2b-256 3d679737825428c6907ae75e50cdf9a3b187421f73007601d428387b15f678c9

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c2c89667f007b1450ac0644a2c30c4743a23509477dd5576f1f7e6dbc7125f50
MD5 7cb99af0b4e703ab590f3343a87ba547
BLAKE2b-256 185fab364e334356bfa2b2f652cbe10f84b3902d290ac2448282aafe4d7bd4d3

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8ffbace445b2aeb1900bbcb5dc9e9b0ddaada829d4cc30759b937acbad0a17f7
MD5 ac48c8f1e8b13b00bc90db4d3e457bce
BLAKE2b-256 d1ed356e681d364dbf3b7bdefc4dd5d0a6c72d930012d14654345c8d3c34aa01

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9abc0731d0b73c2a4e56aa453bb55dd6ff40da75fb6a3a4fa1aaebf7e60b82eb
MD5 6b382ce47ba336b08619c7e68aa5cdba
BLAKE2b-256 f259b3d8f79f87ee353f54d6a545ad826d210d4edc598467612d6d0cd408bb55

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 acb99d984356e429a4b9385ae6260ed045c613f4a48275a5d4281b1775996d54
MD5 1ce9507b1695de86f782fe26c61c8262
BLAKE2b-256 fa87fdd8916e014e12a58e3fff50721e644d3c708f4c4c4c7c7fe5bbbf355182

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp312-cp312-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 8a6eec819f3d438edaac2b3047b74a2dd6865554cce36a0b006e7b63e1504895
MD5 4264ad3413038867c119cc308c4e0756
BLAKE2b-256 70cd400ae8b4ad267c69f67a9223bbc006bd82a993bbb7d55708a3f389138a7a

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 746333d3ea33d5f8d13ee0716e2a7c517d9fd8a66b425c9cdd31d5c57dc8dc4a
MD5 bc6b875e8d660d1f2431072540545360
BLAKE2b-256 6a59ff66778e33eacc0c5d0a399e39d637e5d01980d9c12220fa919a42992cd7

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 d80c1597ca6f23f194e36cf4a4dcf110529610e0b96c5665ebbac3614a0b84d9
MD5 df17192528bdc103e1c6f03abc2e9f41
BLAKE2b-256 c8f6e0d49426f2e686273b966ee67eea88420a39a19cb2e3d69c87b581c3e2a2

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 3ecce3065f4fc440aba6334b43fea3ff35a7939b853d5e94a6bba4726dfd8d62
MD5 824aa0ee86b8a0b03333a3b95c4d3574
BLAKE2b-256 cd0a886a2e547e01478a65a92dc35cd752e4987ab591bc4a60a60cdfa729c2b4

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp311-cp311-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp311-cp311-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 82c2ce351dfa374001d949ff7e7975997fbea1f51c660837836cb13acd2d8c5e
MD5 7c19cd4e6afbe0ace2405618f6d32996
BLAKE2b-256 8dcc20707a75c04cc4125c4bd9f28771fc2804736fee1f8ac6cddd635fcf1f9c

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 72ecf5665ec15194d895eafcbaa640a4dffda1372f227f46e1123d26a7739fb9
MD5 9b39b09572ba14ad503fe915293d5744
BLAKE2b-256 6d12ebeb192c5ccfec5e08f0f5938de9e01c21dccd5d27ac07e0b09e812eb6dc

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 e3ed2e6bef82bd0e9c0929dd83981f14013cc59748dfa9d02cc30af63234c08f
MD5 bad0e2e7367d6c1712d3be6430722040
BLAKE2b-256 b758de6a8124fe1fea68aa5936f1a6cbbf040de6eb4b291db37be9426c753c5e

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 217c8653983f59bb266c22427bab07762cb5b178218ae1bb0b32428543a537c2
MD5 6dc430d5b4cd7fc6063093c857b40afa
BLAKE2b-256 579d2a880d5d6d311f76ba12a51dcfab821e9f9def6599173ce6fc2490902db7

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e30929bc3bdda51105b2f5742ae9d1baf1f57e8fbd6f20195585961a72328733
MD5 55de296a1371bc92c76ad183ca25b719
BLAKE2b-256 446fa1cf387205e9d7820b73f58adc19e052a6e93cbe7dcccb574fdca75607cf

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 e79614efd8ba6398110e3b5fbbc79fd15a9b9de40f37dde62cdee97779108569
MD5 bb72749eb28cabae365dfb2eceb90d0a
BLAKE2b-256 31693c44a47d3bbd9c37d84770ab7b81eb0b8c5b26dd9764b3568e77ebad16af

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 20eb10d933b37a77c373824840b123ef369405448250b7583ce2ab4381745dc3
MD5 55374ea36a8f0ad226c55d6d85623878
BLAKE2b-256 a7cbd3090b5a36653f6c05249fea23590fc58e17608b3342b9eeffa4073054a2

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp310-cp310-win32.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 6d5576377d17f6df37ba603a2b9d4622b6db21a7cae334e6bed962f00790a849
MD5 437f61253e0e7ba12824ed397206907b
BLAKE2b-256 9da5975383c927e8fa76b8ad979f45089ac658e351eba85d9afd6541d47d5dff

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 adce9a3ad23b1c994bec190f364cc7e2b0709de09dcdbb5bd5ec34ea5a03c018
MD5 895358027e4d31038f91143676b4f4b3
BLAKE2b-256 9cc640ecdfbf4b568a8278cb6df121d569989a93f90bf18f9fa739bdceb3bcdb

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 666befcb7e2b7b06d5ed4037926b1a87566251d78716e2c5d6f4b67413e292a4
MD5 c3b09a6b8035327dc8785103cf372855
BLAKE2b-256 9c2298df7bfcc91f0b2fd4902a2b84491080386a1680b09321c3496204ab3fed

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 288665b8c380c376c78b912b5b71dcf3af309873a48cddb44f1526fc893cf6f6
MD5 0ad74bcc45ad972023a979c5d678357b
BLAKE2b-256 a665bfc4b5c6ae00b631c49fd42432e4c7dd44777fd0c485ce87ccc304f16c10

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 0c9eee0d129ecc412723cccf07ad089631a7094fced06bce7b425ecd2576f601
MD5 0cfdc434a858a9cf623181f4c1ea8b13
BLAKE2b-256 73dc591a906643732f5340810ee667f9a4b8d556b084753f2b257bd39771ea6f

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 33dbc85a54c3989e69dc993d148162b9c7df9265804fb630f5cdeb9946397c72
MD5 4e4d15776b913de702f9b37a722d315d
BLAKE2b-256 7988ab461cbbe480743f28d12329b2d1a8dcd8bd331eded96d89a841a31c2901

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ac910fba5f762317558fc23433d1d19428f6076ed37467755288a21722964489
MD5 7fb25b16471c67e79ef8a5e482b930ac
BLAKE2b-256 70802a70a598302f086c5b6473833115b9d914b7aa76ea5c1b7a785e5688fc93

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 083e80194d8198973cdf3b7e09f591d738c9d3925d1597d5f14e87d944ac20e2
MD5 2a178be5aec373b3a7b8c66984e3ec0f
BLAKE2b-256 7c3a9e846f420e026f121b3ec6ac7f71f502fb67707d5ba4ac9d2ace8833dc19

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4952711a8b59a40b067d55e3eb3148504a15c791767b77044f34d032bf7c0825
MD5 322b78902cdc7a960d1a2a21fd7fe6a6
BLAKE2b-256 35283216d734a42038c68534886de40245ad2a8734aa56ca283caf76640c1163

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp39-cp39-win32.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 69af560accf34b3dfee09f4a6732a3efd7f0fe17d5b81dc747aa7f127e0cbeee
MD5 ac8f5e3d41b0bc19924ab446d0bd7932
BLAKE2b-256 c058508dbe92e0672d1a61aac17153530340cf83e09f31f5f305dddbd4739760

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 bd02bc0eaa1d42bfd5545939ac0020ba8c9d7e3b0d5ac18df4920203d982c7ae
MD5 8ff65e7402122812089a6c7f565efe24
BLAKE2b-256 27051013de0fdf67052db3b6d4fe3565165874545969ef758dd6b4d51458a177

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 8723abb5feac9deae5f4c91351d04322c8337ea1761c798974c497baff23520c
MD5 4fc07c124ac4e1220609a328d67256f5
BLAKE2b-256 ea00ef010e7d2f8a9a75d006a11428900770952f17525cbe2a5057bef5f75a40

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d36be59f6caa5e3a6618251332b74963928a77fb7f324519d3d29a7d841177e2
MD5 c9813102e44336750b0ae4af6f6a4f00
BLAKE2b-256 1537ec1acd4306f8ed905e526cbb2fc71d781c0e457602bf9f319c91fd697cd0

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 b5a205ce66a08d3331c01b04fd0722b71fed9254768e51d55a2038f18b5eb1c0
MD5 acb3d39985db62c98ae1a22e5188e438
BLAKE2b-256 7745ce30aa16ea42aed9b817bfa8b11e97885e06d03e30b6861f5cb064b3b6fa

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b5ee1db048d916c7838df0821ecb9b6bff2b527dab32e1d09aa977f749aafdf0
MD5 12f3d27c23f8bb455e073bef9a3e05b4
BLAKE2b-256 6756c6c60ecd614e82d0525fe5edd54703b9c29404ceaf43857bb1d65e75539c

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d87019fb24c6672a190451741deba9a723df2f197b79b103a7c7f1efc6d9f988
MD5 30e1659568ef9dfd7842810e460ef157
BLAKE2b-256 00d37d3fd670353a6e9df464cb99edcce14bbba76c28858c640f11ad41b1cc30

See more details on using hashes here.

File details

Details for the file mtprotocrypt-1.2.6.5b0-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for mtprotocrypt-1.2.6.5b0-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 2df139b4121adb10ed84c73a7446293c5ebef00685f8dc82b77abae233a7910f
MD5 8f93010ba4f83f21b1fc67a44ba38250
BLAKE2b-256 598d4d8ed79e393cf8dc7821627ee12461b0a326810dd2f1275ab398c4a1630e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page