跳转到主要内容

xxtea是一个简单的分组密码

项目描述

XXTEA 作为Python扩展模块实现,许可证为2-clause BSD。

XXTEA 算法接受一个128位的密钥,并在32位整数数组(至少2个整数)上操作,但它没有定义字节和数组的转换。由于这个原因,许多现有的XXTEA实现之间不兼容。

在此实现中,字节和数组的转换由 longs2bytesbytes2longs 处理。还使用 PKCS#7 填充,以确保输入字节填充到4字节(32位整数的长度)的倍数,并且至少8字节长(两个32位整数的大小,这是XXTEA算法所要求的)。因此,您不仅可以加密文本,还可以加密任何长度的任何二进制字节。

安装

$ pip install xxtea -U

用法

此模块提供了四个函数:encrypt()decrypt()encrypt_hex()decrypt_hex()

>>> import os
>>> import xxtea
>>> import binascii
>>>
>>> key = os.urandom(16)  # Key must be a 16-byte string.
>>> s = b"xxtea is good"
>>>
>>> enc = xxtea.encrypt(s, key)
>>> dec = xxtea.decrypt(enc, key)
>>> s == dec
True
>>>
>>> hexenc = xxtea.encrypt_hex(s, key)
>>> hexenc
b'7ad85672d770fb5cf636c49d57e732ae'
>>> s == xxtea.decrypt_hex(hexenc, key)
True
>>>
>>> binascii.hexlify(enc) == hexenc
True

encrypt_hex()decrypt_hex() 在十六进制表示的密文中操作。它们与

>>> hexenc = binascii.hexlify(xxtea.encrypt(s, key))
>>> s == xxtea.decrypt(binascii.unhexlify(hexenc), key)
True

填充

默认情况下启用填充,在这种情况下,您可以编码任意长度的任意字节数。

>>> xxtea.encrypt_hex('', key)
b'd63256eb59134f1f'
>>> xxtea.decrypt_hex(_, key)
b''
>>> xxtea.encrypt_hex(' ', key)
b'97009bd24074a7a5'
>>> xxtea.decrypt_hex(_, key)
b' '

您可以通过将填充参数设置为 False 来禁用填充。在这种情况下,数据将不会进行填充,因此数据长度必须是4字节的多倍,并且不能少于8字节。否则将引发 ValueError

>>> xxtea.encrypt_hex('', key, padding=False)
ValueError: Data length must be a multiple of 4 bytes and must not be less than 8 bytes
>>> xxtea.encrypt_hex('xxtea is good', key, padding=False)
ValueError: Data length must be a multiple of 4 bytes and must not be less than 8 bytes
>>> xxtea.encrypt_hex('12345678', key, padding=False)
b'64f4e969ba90d386'
>>> xxtea.decrypt_hex(_, key, padding=False)
b'12345678'

轮数

默认情况下,xxtea 对输入数据进行 6 + 52 / n 轮操作,其中 n 表示输入数据可以容纳多少个32位整数。我们可以通过设置 rounds 参数来更改这一点。

请注意,轮数越多,消耗的时间越多。

>>> import xxtea
>>> import string
>>> data = string.digits
>>> key = string.ascii_letters[:16]
>>> xxtea.encrypt_hex(data, key)
b'5b80b08a5d1923e4cd992dd5'
>>> 6 + 52 // ((len(data) + (4 - 1)) // 4)  # 4 means 4 bytes, size of a 32-bit integer
23
>>> xxtea.encrypt_hex(data, key, rounds=23)
b'5b80b08a5d1923e4cd992dd5'
>>> xxtea.encrypt_hex(data, key, rounds=1024)
b'1577bbf28c43ced93bd50720'

捕获异常

在调用 decrypt()decrypt_hex() 时,可能会引发 ValueErrorTypeError

>>> from __future__ import print_function
>>> import xxtea
>>>
>>> def try_catch(func, *args, **kwargs):
...     try:
...         func(*args, **kwargs)
...     except Exception as e:
...         print(e.__class__.__name__, ':', e)
...
...
...
>>> try_catch(xxtea.decrypt, '', key='')
ValueError : Need a 16-byte key.
>>> try_catch(xxtea.decrypt, '', key=' '*16)
ValueError : Invalid data, data length is not a multiple of 4, or less than 8.
>>> try_catch(xxtea.decrypt, ' '*8, key=' '*16)
ValueError : Invalid data, illegal PKCS#7 padding. Could be using a wrong key.
>>> try_catch(xxtea.decrypt_hex, ' '*8, key=' '*16)
TypeError : Non-hexadecimal digit found
>>> try_catch(xxtea.decrypt_hex, 'abc', key=' '*16)
TypeError : Odd-length string
>>> try_catch(xxtea.decrypt_hex, 'abcd', key=' '*16)
ValueError : Invalid data, data length is not a multiple of 4, or less than 8.

项目详情


下载文件

下载适合您平台文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

xxtea-3.3.0.tar.gz (13.0 kB 查看哈希值)

上传时间

构建分布

xxtea-3.3.0-pp310-pypy310_pp73-win_amd64.whl (11.7 kB 查看哈希值)

上传时间 PyPy Windows x86-64

xxtea-3.3.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.4 kB 查看哈希值)

上传时间 PyPy manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.9 kB 查看哈希值)

上传时间 PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (10.1 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl (8.5 kB 查看哈希值)

上传于 PyPy macOS 10.15+ x86-64

xxtea-3.3.0-pp39-pypy39_pp73-win_amd64.whl (11.7 kB 查看哈希值)

上传于 PyPy Windows x86-64

xxtea-3.3.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.4 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.9 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (10.1 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl (8.5 kB 查看哈希值)

上传于 PyPy macOS 10.15+ x86-64

xxtea-3.3.0-pp38-pypy38_pp73-win_amd64.whl (11.7 kB 查看哈希值)

上传于 PyPy Windows x86-64

xxtea-3.3.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.3 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.9 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (10.1 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl (8.3 kB 查看哈希值)

上传于 PyPy macOS 10.9+ x86-64

xxtea-3.3.0-pp37-pypy37_pp73-win_amd64.whl (11.7 kB 查看哈希值)

上传于 PyPy Windows x86-64

xxtea-3.3.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (10.3 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.9 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (10.1 kB 查看哈希值)

上传于 PyPy manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (8.3 kB 查看哈希值)

上传于 PyPy macOS 10.9+ x86-64

xxtea-3.3.0-cp313-cp313-win_arm64.whl (10.2 kB 查看哈希值)

上传于 CPython 3.13 Windows ARM64

xxtea-3.3.0-cp313-cp313-win_amd64.whl (11.6 kB 查看哈希值)

上传于 CPython 3.13 Windows x86-64

xxtea-3.3.0-cp313-cp313-win32.whl (10.7 kB 查看哈希值)

上传于 CPython 3.13 Windows x86

xxtea-3.3.0-cp313-cp313-musllinux_1_2_x86_64.whl (23.7 kB 查看哈希)

上传时间: CPython 3.13 musllinux: musl 1.2+ x86_64

xxtea-3.3.0-cp313-cp313-musllinux_1_2_s390x.whl (23.6 kB 查看哈希)

上传时间: CPython 3.13 musllinux: musl 1.2+ s390x

xxtea-3.3.0-cp313-cp313-musllinux_1_2_ppc64le.whl (25.0 kB 查看哈希)

上传时间: CPython 3.13 musllinux: musl 1.2+ ppc64le

xxtea-3.3.0-cp313-cp313-musllinux_1_2_i686.whl (23.5 kB 查看哈希)

上传时间: CPython 3.13 musllinux: musl 1.2+ i686

xxtea-3.3.0-cp313-cp313-musllinux_1_2_aarch64.whl (23.6 kB 查看哈希)

上传时间: CPython 3.13 musllinux: musl 1.2+ ARM64

xxtea-3.3.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (22.8 kB 查看哈希)

上传时间: CPython 3.13 manylinux: glibc 2.17+ s390x

xxtea-3.3.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (25.4 kB 查看哈希)

上传时间: CPython 3.13 manylinux: glibc 2.17+ ppc64le

xxtea-3.3.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (23.7 kB 查看哈希)

上传时间: CPython 3.13 manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (23.5 kB 查看哈希)

上传时间: CPython 3.13 manylinux: glibc 2.17+ x86_64 manylinux: glibc 2.5+ x86_64

xxtea-3.3.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (23.0 kB 查看哈希)

上传时间: CPython 3.13 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-cp313-cp313-macosx_11_0_arm64.whl (9.3 kB 查看哈希)

上传于 CPython 3.13 macOS 11.0+ ARM64

xxtea-3.3.0-cp313-cp313-macosx_10_13_x86_64.whl (8.9 kB 查看哈希)

上传于 CPython 3.13 macOS 10.13+ x86-64

xxtea-3.3.0-cp312-cp312-win_arm64.whl (10.2 kB 查看哈希)

上传于 CPython 3.12 Windows ARM64

xxtea-3.3.0-cp312-cp312-win_amd64.whl (11.6 kB 查看哈希)

上传于 CPython 3.12 Windows x86-64

xxtea-3.3.0-cp312-cp312-win32.whl (10.7 kB 查看哈希)

上传于 CPython 3.12 Windows x86

xxtea-3.3.0-cp312-cp312-musllinux_1_2_x86_64.whl (23.6 kB 查看哈希)

上传于 CPython 3.12 musllinux: musl 1.2+ x86-64

xxtea-3.3.0-cp312-cp312-musllinux_1_2_s390x.whl (23.5 kB 查看哈希)

上传于 CPython 3.12 musllinux: musl 1.2+ s390x

xxtea-3.3.0-cp312-cp312-musllinux_1_2_ppc64le.whl (24.9 kB 查看哈希)

上传于 CPython 3.12 musllinux: musl 1.2+ ppc64le

xxtea-3.3.0-cp312-cp312-musllinux_1_2_i686.whl (23.5 kB 查看哈希)

上传于 CPython 3.12 musllinux: musl 1.2+ i686

xxtea-3.3.0-cp312-cp312-musllinux_1_2_aarch64.whl (23.5 kB 查看哈希)

上传于 CPython 3.12 musllinux: musl 1.2+ ARM64

xxtea-3.3.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (22.8 kB 查看哈希)

上传于 CPython 3.12 manylinux: glibc 2.17+ s390x

xxtea-3.3.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (25.4 kB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ ppc64le

xxtea-3.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (23.7 kB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (23.5 kB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (22.9 kB 查看哈希值)

上传于 CPython 3.12 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-cp312-cp312-macosx_11_0_arm64.whl (9.3 kB 查看哈希值)

上传于 CPython 3.12 macOS 11.0+ ARM64

xxtea-3.3.0-cp312-cp312-macosx_10_9_x86_64.whl (8.6 kB 查看哈希值)

上传于 CPython 3.12 macOS 10.9+ x86-64

xxtea-3.3.0-cp311-cp311-win_arm64.whl (10.2 kB 查看哈希值)

上传于 CPython 3.11 Windows ARM64

xxtea-3.3.0-cp311-cp311-win_amd64.whl (11.6 kB 查看哈希值)

上传于 CPython 3.11 Windows x86-64

xxtea-3.3.0-cp311-cp311-win32.whl (10.7 kB 查看哈希值)

上传于 CPython 3.11 Windows x86

xxtea-3.3.0-cp311-cp311-musllinux_1_2_x86_64.whl (23.7 kB 查看哈希值)

上传于 CPython 3.11 musllinux: musl 1.2+ x86-64

xxtea-3.3.0-cp311-cp311-musllinux_1_2_s390x.whl (23.7 kB 查看哈希值)

上传于 CPython 3.11 musllinux: musl 1.2+ s390x

xxtea-3.3.0-cp311-cp311-musllinux_1_2_ppc64le.whl (25.0 kB 查看哈希值)

上传于 CPython 3.11 musllinux: musl 1.2+ ppc64le

xxtea-3.3.0-cp311-cp311-musllinux_1_2_i686.whl (23.7 kB 查看哈希值)

上传于 CPython 3.11 musllinux: musl 1.2+ i686

xxtea-3.3.0-cp311-cp311-musllinux_1_2_aarch64.whl (23.6 kB 查看哈希值)

上传于 CPython 3.11 musllinux: musl 1.2+ ARM64

xxtea-3.3.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (22.9 kB 查看哈希值)

上传于 CPython 3.11 manylinux: glibc 2.17+ s390x

xxtea-3.3.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (25.4 kB 查看哈希值)

上传于 CPython 3.11 manylinux: glibc 2.17+ ppc64le

xxtea-3.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (23.8 kB 查看哈希值)

上传于 CPython 3.11 manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (23.6 kB 查看哈希值)

上传于 CPython 3.11 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (23.2 kB 查看哈希值)

上传于 CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-cp311-cp311-macosx_11_0_arm64.whl (9.3 kB 查看哈希值)

上传于 CPython 3.11 macOS 11.0+ ARM64

xxtea-3.3.0-cp311-cp311-macosx_10_9_x86_64.whl (8.6 kB 查看哈希值)

上传于 CPython 3.11 macOS 10.9+ x86-64

xxtea-3.3.0-cp310-cp310-win_arm64.whl (10.2 kB 查看哈希值)

上传于 CPython 3.10 Windows ARM64

xxtea-3.3.0-cp310-cp310-win_amd64.whl (11.6 kB 查看哈希值)

上传于 CPython 3.10 Windows x86-64

xxtea-3.3.0-cp310-cp310-win32.whl (10.7 kB 查看哈希值)

上传于 CPython 3.10 Windows x86

xxtea-3.3.0-cp310-cp310-musllinux_1_2_x86_64.whl (22.8 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ x86-64

xxtea-3.3.0-cp310-cp310-musllinux_1_2_s390x.whl (22.8 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ s390x

xxtea-3.3.0-cp310-cp310-musllinux_1_2_ppc64le.whl (24.2 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ ppc64le

xxtea-3.3.0-cp310-cp310-musllinux_1_2_i686.whl (22.8 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ i686

xxtea-3.3.0-cp310-cp310-musllinux_1_2_aarch64.whl (22.8 kB 查看哈希值)

上传于 CPython 3.10 musllinux: musl 1.2+ ARM64

xxtea-3.3.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (22.1 kB 查看哈希值)

上传于 CPython 3.10 manylinux: glibc 2.17+ s390x

xxtea-3.3.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (24.7 kB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ ppc64le

xxtea-3.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (23.0 kB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (22.7 kB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (22.3 kB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-cp310-cp310-macosx_11_0_arm64.whl (9.3 kB 查看哈希值)

上传时间 CPython 3.10 macOS 11.0+ ARM64

xxtea-3.3.0-cp310-cp310-macosx_10_9_x86_64.whl (8.6 kB 查看哈希值)

上传时间 CPython 3.10 macOS 10.9+ x86-64

xxtea-3.3.0-cp39-cp39-win_arm64.whl (10.2 kB 查看哈希值)

上传时间 CPython 3.9 Windows ARM64

xxtea-3.3.0-cp39-cp39-win_amd64.whl (11.6 kB 查看哈希值)

上传时间 CPython 3.9 Windows x86-64

xxtea-3.3.0-cp39-cp39-win32.whl (10.7 kB 查看哈希值)

上传时间 CPython 3.9 Windows x86

xxtea-3.3.0-cp39-cp39-musllinux_1_2_x86_64.whl (22.6 kB 查看哈希值)

上传时间 CPython 3.9 musllinux: musl 1.2+ x86-64

xxtea-3.3.0-cp39-cp39-musllinux_1_2_s390x.whl (22.6 kB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.2+ s390x

xxtea-3.3.0-cp39-cp39-musllinux_1_2_ppc64le.whl (24.0 kB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.2+ ppc64le

xxtea-3.3.0-cp39-cp39-musllinux_1_2_i686.whl (22.6 kB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.2+ i686

xxtea-3.3.0-cp39-cp39-musllinux_1_2_aarch64.whl (22.6 kB 查看哈希值)

上传于 CPython 3.9 musllinux: musl 1.2+ ARM64

xxtea-3.3.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (21.9 kB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ s390x

xxtea-3.3.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (24.4 kB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ ppc64le

xxtea-3.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (22.8 kB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (22.5 kB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (22.1 kB 查看哈希值)

上传于 CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-cp39-cp39-macosx_11_0_arm64.whl (9.3 kB 查看哈希值)

上传于 CPython 3.9 macOS 11.0+ ARM64

xxtea-3.3.0-cp39-cp39-macosx_10_9_x86_64.whl (8.6 kB 查看哈希值)

上传于 CPython 3.9 macOS 10.9+ x86-64

xxtea-3.3.0-cp38-cp38-win_amd64.whl (11.6 kB 查看哈希)

上传于 CPython 3.8 Windows x86-64

xxtea-3.3.0-cp38-cp38-win32.whl (10.7 kB 查看哈希)

上传于 CPython 3.8 Windows x86

xxtea-3.3.0-cp38-cp38-musllinux_1_2_x86_64.whl (22.9 kB 查看哈希)

上传于 CPython 3.8 musllinux: musl 1.2+ x86-64

xxtea-3.3.0-cp38-cp38-musllinux_1_2_s390x.whl (22.9 kB 查看哈希)

上传于 CPython 3.8 musllinux: musl 1.2+ s390x

xxtea-3.3.0-cp38-cp38-musllinux_1_2_ppc64le.whl (24.2 kB 查看哈希)

上传于 CPython 3.8 musllinux: musl 1.2+ ppc64le

xxtea-3.3.0-cp38-cp38-musllinux_1_2_i686.whl (22.9 kB 查看哈希)

上传于 CPython 3.8 musllinux: musl 1.2+ i686

xxtea-3.3.0-cp38-cp38-musllinux_1_2_aarch64.whl (22.9 kB 查看哈希)

上传于 CPython 3.8 musllinux: musl 1.2+ ARM64

xxtea-3.3.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl (22.7 kB 查看哈希)

上传于 CPython 3.8 manylinux: glibc 2.17+ s390x

xxtea-3.3.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (25.2 kB 查看哈希)

上传于 CPython 3.8 manylinux: glibc 2.17+ ppc64le

xxtea-3.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (23.6 kB 查看哈希)

上传于 CPython 3.8 manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (23.4 kB 查看哈希值)

上传时间: CPython 3.8 manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (23.0 kB 查看哈希值)

上传时间: CPython 3.8 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-cp38-cp38-macosx_11_0_arm64.whl (9.3 kB 查看哈希值)

上传时间: CPython 3.8 macOS 11.0+ ARM64

xxtea-3.3.0-cp38-cp38-macosx_10_9_x86_64.whl (8.6 kB 查看哈希值)

上传时间: CPython 3.8 macOS 10.9+ x86-64

xxtea-3.3.0-cp37-cp37m-win_amd64.whl (11.6 kB 查看哈希值)

上传时间: CPython 3.7m Windows x86-64

xxtea-3.3.0-cp37-cp37m-win32.whl (10.7 kB 查看哈希值)

上传时间: CPython 3.7m Windows x86

xxtea-3.3.0-cp37-cp37m-musllinux_1_2_x86_64.whl (23.7 kB 查看哈希值)

上传时间: CPython 3.7m musllinux: musl 1.2+ x86-64

xxtea-3.3.0-cp37-cp37m-musllinux_1_2_s390x.whl (23.7 kB 查看哈希值)

上传时间: CPython 3.7m musllinux: musl 1.2+ s390x

xxtea-3.3.0-cp37-cp37m-musllinux_1_2_ppc64le.whl (25.0 kB 查看哈希值)

上传时间: CPython 3.7m musllinux: musl 1.2+ ppc64le

xxtea-3.3.0-cp37-cp37m-musllinux_1_2_i686.whl (23.7 kB 查看哈希值)

上传时间: CPython 3.7m musllinux: musl 1.2+ i686

xxtea-3.3.0-cp37-cp37m-musllinux_1_2_aarch64.whl (23.6 kB 查看哈希)

上传时间 CPython 3.7m musllinux: musl 1.2+ ARM64

xxtea-3.3.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl (23.5 kB 查看哈希)

上传时间 CPython 3.7m manylinux: glibc 2.17+ s390x

xxtea-3.3.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (26.0 kB 查看哈希)

上传时间 CPython 3.7m manylinux: glibc 2.17+ ppc64le

xxtea-3.3.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (24.4 kB 查看哈希)

上传时间 CPython 3.7m manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (24.1 kB 查看哈希)

上传时间 CPython 3.7m manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (23.8 kB 查看哈希)

上传时间 CPython 3.7m manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-cp37-cp37m-macosx_10_9_x86_64.whl (8.5 kB 查看哈希)

上传时间 CPython 3.7m macOS 10.9+ x86-64

xxtea-3.3.0-cp36-cp36m-win_amd64.whl (11.6 kB 查看哈希)

上传时间 CPython 3.6m Windows x86-64

xxtea-3.3.0-cp36-cp36m-win32.whl (10.7 kB 查看哈希)

上传时间 CPython 3.6m Windows x86

xxtea-3.3.0-cp36-cp36m-musllinux_1_2_x86_64.whl (22.6 kB 查看哈希)

上传时间 CPython 3.6m musllinux: musl 1.2+ x86-64

xxtea-3.3.0-cp36-cp36m-musllinux_1_2_s390x.whl (22.6 kB 查看哈希值)

上传于 CPython 3.6m musllinux: musl 1.2+ s390x

xxtea-3.3.0-cp36-cp36m-musllinux_1_2_ppc64le.whl (24.0 kB 查看哈希值)

上传于 CPython 3.6m musllinux: musl 1.2+ ppc64le

xxtea-3.3.0-cp36-cp36m-musllinux_1_2_i686.whl (22.7 kB 查看哈希值)

上传于 CPython 3.6m musllinux: musl 1.2+ i686

xxtea-3.3.0-cp36-cp36m-musllinux_1_2_aarch64.whl (22.6 kB 查看哈希值)

上传于 CPython 3.6m musllinux: musl 1.2+ ARM64

xxtea-3.3.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl (22.4 kB 查看哈希值)

上传于 CPython 3.6m manylinux: glibc 2.17+ s390x

xxtea-3.3.0-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (25.0 kB 查看哈希值)

上传于 CPython 3.6m manylinux: glibc 2.17+ ppc64le

xxtea-3.3.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (23.3 kB 查看哈希值)

上传于 CPython 3.6m manylinux: glibc 2.17+ ARM64

xxtea-3.3.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (23.1 kB 查看哈希值)

上传于 CPython 3.6m manylinux: glibc 2.17+ x86-64 manylinux: glibc 2.5+ x86-64

xxtea-3.3.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (22.7 kB 查看哈希值)

上传于 CPython 3.6m manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

xxtea-3.3.0-cp36-cp36m-macosx_10_9_x86_64.whl (8.4 kB 查看哈希值)

上传于 CPython 3.6m macOS 10.9+ x86-64

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面