Skip to main content

Python bindings for the RustCrypto Twofish block cipher implementation

Project description

oxifish

Python bindings for the RustCrypto Twofish block cipher implementation.

Installation

pip install oxifish

Usage

CBC Mode (with padding)

import secrets
from oxifish import TwofishCBC, pad, unpad, PaddingStyle

key = secrets.token_bytes(16)  # 16, 24, or 32 bytes
iv = secrets.token_bytes(16)   # MUST be unique per encryption

cipher = TwofishCBC(key)

# Encrypt with PKCS7 padding
plaintext = b'Hello, World!'
padded = pad(plaintext, cipher.block_size, PaddingStyle.Pkcs7)
ciphertext = cipher.encrypt(padded, iv)

# Decrypt
decrypted = cipher.decrypt(ciphertext, iv)
result = unpad(decrypted, cipher.block_size, PaddingStyle.Pkcs7)
# b'Hello, World!'

# Store IV with ciphertext (IV is not secret)
encrypted_message = iv + ciphertext

Streaming API

For processing large data or when you need incremental encryption:

from oxifish import TwofishCBC, pad, PaddingStyle

cipher = TwofishCBC(key)

# Streaming encryption
enc = cipher.encryptor(iv)
ciphertext = enc.update(pad(chunk1, 16, PaddingStyle.Pkcs7))
ciphertext += enc.update(pad(chunk2, 16, PaddingStyle.Pkcs7))
ciphertext += enc.finalize()

# Streaming decryption
dec = cipher.decryptor(iv)
plaintext = dec.update(ciphertext)
plaintext += dec.finalize()

CTR Mode (no padding needed)

import secrets
from oxifish import TwofishCTR

key = secrets.token_bytes(16)
nonce = secrets.token_bytes(16)  # MUST be unique per encryption

cipher = TwofishCTR(key)
ciphertext = cipher.encrypt(b'any length data', nonce)
plaintext = cipher.decrypt(ciphertext, nonce)

ECB Mode (single blocks only)

import secrets
from oxifish import TwofishECB

key = secrets.token_bytes(16)
cipher = TwofishECB(key)
ciphertext = cipher.encrypt_block(b'16 byte block!!')
plaintext = cipher.decrypt_block(ciphertext)

Warning: ECB mode does NOT provide semantic security. Use CBC, CTR, or other modes for general encryption.

Available Modes

Mode Padding Use Case
TwofishCBC Use pad()/unpad() General encryption
TwofishCTR Not needed Stream encryption
TwofishCFB Not needed Stream encryption
TwofishOFB Not needed Stream encryption
TwofishECB N/A (block-level) Building blocks, compatibility

Padding Styles

Use the standalone pad() and unpad() functions with PaddingStyle:

  • PaddingStyle.Pkcs7 - Standard PKCS#7 padding (recommended)
  • PaddingStyle.Zeros - Zero padding (cannot roundtrip data ending with zeros)
  • PaddingStyle.Iso7816 - ISO/IEC 7816-4 padding
  • PaddingStyle.AnsiX923 - ANSI X9.23 padding

Security

This library is primarily intended for compatibility with existing systems that require Twofish, such as KeePass databases.

Note: Twofish is not constant-time due to key-dependent S-boxes. This is fine for local file decryption but not suitable for server-side encryption where timing attacks are feasible. For new projects, prefer AES-GCM or ChaCha20-Poly1305.

See SECURITY.md for vulnerability reporting and details on key zeroization.

Development

Requires Rust and Python 3.10+.

# Install uv if you haven't
curl -LsSf https://astral.sh/uv/install.sh | sh

# Create venv and install maturin
uv venv
source .venv/bin/activate  # or .venv\Scripts\activate on Windows
uv pip install maturin

# Build and install in development mode
maturin develop

# Run tests
uv pip install pytest
pytest

License

MIT License. See LICENSE for details.

This project uses the RustCrypto twofish crate which is dual-licensed under MIT/Apache-2.0. We use it under the MIT license.

Project details


Download files

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

Source Distribution

oxifish-0.1.1.tar.gz (48.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

oxifish-0.1.1-cp313-cp313-win_amd64.whl (174.2 kB view details)

Uploaded CPython 3.13Windows x86-64

oxifish-0.1.1-cp313-cp313-musllinux_1_2_x86_64.whl (472.2 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

oxifish-0.1.1-cp313-cp313-musllinux_1_2_aarch64.whl (473.3 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

oxifish-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (296.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

oxifish-0.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (289.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

oxifish-0.1.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl (314.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.5+ i686

oxifish-0.1.1-cp313-cp313-macosx_11_0_arm64.whl (266.2 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

oxifish-0.1.1-cp313-cp313-macosx_10_12_x86_64.whl (279.7 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

oxifish-0.1.1-cp312-cp312-win_amd64.whl (174.0 kB view details)

Uploaded CPython 3.12Windows x86-64

oxifish-0.1.1-cp312-cp312-musllinux_1_2_x86_64.whl (472.0 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

oxifish-0.1.1-cp312-cp312-musllinux_1_2_aarch64.whl (473.2 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

oxifish-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (296.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

oxifish-0.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (289.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

oxifish-0.1.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (314.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.5+ i686

oxifish-0.1.1-cp312-cp312-macosx_11_0_arm64.whl (266.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

oxifish-0.1.1-cp312-cp312-macosx_10_12_x86_64.whl (279.6 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

oxifish-0.1.1-cp311-cp311-win_amd64.whl (175.2 kB view details)

Uploaded CPython 3.11Windows x86-64

oxifish-0.1.1-cp311-cp311-musllinux_1_2_x86_64.whl (471.5 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

oxifish-0.1.1-cp311-cp311-musllinux_1_2_aarch64.whl (473.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

oxifish-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (295.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

oxifish-0.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (289.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

oxifish-0.1.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (314.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.5+ i686

oxifish-0.1.1-cp311-cp311-macosx_11_0_arm64.whl (265.7 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

oxifish-0.1.1-cp311-cp311-macosx_10_12_x86_64.whl (281.2 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

oxifish-0.1.1-cp310-cp310-win_amd64.whl (175.3 kB view details)

Uploaded CPython 3.10Windows x86-64

oxifish-0.1.1-cp310-cp310-musllinux_1_2_x86_64.whl (471.5 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

oxifish-0.1.1-cp310-cp310-musllinux_1_2_aarch64.whl (473.3 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

oxifish-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (295.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

oxifish-0.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (289.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

oxifish-0.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (314.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.5+ i686

oxifish-0.1.1-cp310-cp310-macosx_11_0_arm64.whl (265.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

oxifish-0.1.1-cp310-cp310-macosx_10_12_x86_64.whl (281.5 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file oxifish-0.1.1.tar.gz.

File metadata

  • Download URL: oxifish-0.1.1.tar.gz
  • Upload date:
  • Size: 48.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for oxifish-0.1.1.tar.gz
Algorithm Hash digest
SHA256 3d6f96131eefec0fd65c02371e1beaf7629a437e12a7f965a8dc00d7e0da7251
MD5 df7c8f053eb31b5b8e52e533e0ef8748
BLAKE2b-256 9cfb21c2a89617fa1f384411944545ec8e43fb10409947067d8302f01460e473

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1.tar.gz:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: oxifish-0.1.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 174.2 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for oxifish-0.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1a556960f4350ac7cd21aa48942db81bbe6a314162c942dcb1a96f7686aee8ce
MD5 56bdf1d3d73b7762658c00ccf18d3b1e
BLAKE2b-256 beb9d39dc505ee4f427a9445e580db6607e9f17eec647624132a31a68afbda28

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp313-cp313-win_amd64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f775a7a18e7be17674055aaa728b42f360be01d69edfbf721135bbf6751e442c
MD5 f44847b457ce9c8c223aff5b25ff2e79
BLAKE2b-256 d8fee0a00441a7b8811531986b5f3c48a6d58308353a8a81ea22dbd11fae0fe8

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e228597d363f4a6fdedf4c6f36d7e39ff3a7bf651f377f4c556533ffb79400be
MD5 8dbea31cf822987a99d75a8e638ba8ad
BLAKE2b-256 0b23350e6d6605cb6c16dfee2d95f4cdf85b60edfa62b999ffdf49aed5a38880

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 951ef5a8dbf4f0b8b3d7193f3eaa808c5c6a380b5c98ecf2061c3908772688dd
MD5 1d277105a1077a8ea5e2af5719e3e4e6
BLAKE2b-256 77470876936441218b8b24729bc23c9b480c58b6dc7963702c41d46cb1afd5c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d2c8bc3c140cce62a48c565252b5a525daeba2808a1c63b90de96e8052a8b4b9
MD5 082e83a16df4369d3f0d3dada0f6a4d1
BLAKE2b-256 d759d5c38bf69ef4a0ab7a68c172fe8696ea1ce14724016c603fa046e1868119

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 0ee55b40e6720089733787ba1635698df700e27dc96b317a7d048ff3d5fe98b6
MD5 91559ee5a7c2d42f3ebdd7cd42b92843
BLAKE2b-256 c779fdd9b61858df7f4c51c88eac4d8d558c02927d3a0dc9cbaf34d4f5161cca

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 30bc21944b86bdd6f44d7656a373ca7c4c567c5115ca94eef6ab5b5717d74e28
MD5 6c8fb6549314956c37113844f048ff31
BLAKE2b-256 aa36d5c7deb46b6dad7bb373a07f3faa3f331b1092b51f0612cfbeeed2c0d4ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6e47ab38e695b9438c917ccad080299d2246acc5089550fa61b25706474ff8ee
MD5 449321593e6f34229618a10cf5f2ac13
BLAKE2b-256 2a2cc3d2c6dd1043d089b9228d7a110be7d8f3b57376a79ee2e670d51b0b79d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp313-cp313-macosx_10_12_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: oxifish-0.1.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 174.0 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for oxifish-0.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8042a73c0fd8e9530dcce95e3da54c7696cea2d1eb83e76d7e06bd7162e05349
MD5 d2301e6bdc6f17bd90a00828c27a938d
BLAKE2b-256 f3c4ecf2470441bbedd5e63a3c8375396c499141a4b60139ef8ad930aba0ea9b

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp312-cp312-win_amd64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 24fedc81d30676272e20c093a92bf3006438d18e44d0e32856f3a5f6ce65b859
MD5 ae3b82510c8aeca4f8032e6cf083940d
BLAKE2b-256 246915cfc917233047e856dfd9089db88adb41ade526396aa1630391660b6675

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 35edea5279afc07418f056fad730be65b4a3ff78d387980ac7300e85fc67c23e
MD5 36332861bb947c3f8fee606ff760cf04
BLAKE2b-256 f14fabfc7b4a723b292ce22adf39d7330464810859d82bec87a1eccd2ea04a66

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 af3f4e3b3443d83902e47241e5ca01a4808658912143c9621055243764c62f02
MD5 08146f37d7af8d9c3159a1db6ef35f1e
BLAKE2b-256 716b6b818de6291398de16179362bb14df41351bc05371d8eb0211ce4430964f

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 de3c22c14ffe20043412c915dd0e4539f59fa12a8c6a482127998840175a09fc
MD5 2df6abcd7eebdd540a6f1397f052b104
BLAKE2b-256 18fe20487e44f9a266c6a09e311661d51dabbb68ecd376aabacc76142edf3d60

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 e5bd1d1b843710ed092d6d26877dc14c5291c2c4cd1df05623b61071a8dfc325
MD5 ab432a58793847d34c10d8e475777031
BLAKE2b-256 20fbf8a20b1f6d6d4152375f5ccdbeb3368df0659e24295f8010019efbc41a1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 496ca20e6dccd4f8ae838d9c95af5edfa26b968a8acdfe4ea7b179f74b418093
MD5 4e06fa7d9b7988ab73f5c9ae0869fcb5
BLAKE2b-256 1b6553a1ea993a377f33da6b3c4c4eb2e98ca444e5462c5189834950489b5a28

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6e298dbbd44e5d718106601eac254324baf0325ff0f3e54ce38c7ca9479be636
MD5 0fb9437dbe4cee23d56fa899635d787d
BLAKE2b-256 17224e1530b9c00d0fd9a2aa18e67f60ca207d548791ce95da7d88d1817a811d

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: oxifish-0.1.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 175.2 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for oxifish-0.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9377690a2f37c321aed16c7dbc6682a687c478b02c51d1caa864958c3fb0f1fa
MD5 1b4d71c35998db3d4e474ea8cc8402d6
BLAKE2b-256 b9685079fe0035d290d40db5f6927af8711cbe0dd86352a82f4e98664724e518

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp311-cp311-win_amd64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1fcbd2d2583e0b5c4341bfc96dae9ada2c1860a7dafebcdc61d1cce0371f2128
MD5 299ca0f89071e34a7fcfcbd5f75dcf18
BLAKE2b-256 932f5e5260e4cc4298c833f549a76e846d8cd3e6e503ba93a491c13821ec6adf

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 78c176e18aaaaf55ca52fe490dec7e4783f7a89d93bdbfb8cef685e57e109ab2
MD5 2988cf359016e6e0f1acc4a15b083564
BLAKE2b-256 03c78d50bd1a6b6c819a387573f6640b99ed2fab34c755001e863b0c31782652

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp311-cp311-musllinux_1_2_aarch64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7a426a8315c3e27f7bc9137391d97de141b0717340793b7ff3ce7511a80ac45a
MD5 a7096e5f2d226e8c28d77b1e57d93c3d
BLAKE2b-256 5ffe4f1fffed8215cc06ce4c57d7142b2fed5c5faeaf861cf9d168525ebae4d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 11a491c2e28d0962fab5dc42500a48fe961884b04de2cf69620f496083625ead
MD5 91cbf47bd468ab3607e22f9b995e20ba
BLAKE2b-256 0839bdfe5229c5675d82abb454aaedba01e22c5843f72864b157bd50c0e2b148

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 bce4537e8b70e840fbd01215f0476f21704e1269f616b2ae119af98964845c23
MD5 a22d4756b9235083942eb32247c26e56
BLAKE2b-256 879a812a44ca7cdfa7c2588201770f2444d3823fc46d5cac5bb25636c9c64d0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1617b3ad301ec2f91781b13ab3b088fa96909f4f01b982e03c06ea82839491bb
MD5 2c876aa4122877f62571cf81e44a9340
BLAKE2b-256 3d7f0a6019b11e28472215f1c37f5a625b8da2aabbb92722332474954cd856fb

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4233d2c8663435ef154484e0f122d5a0b6b0614efceb4124f844cefae012609e
MD5 44628ceb3ffd7512213aca2a74324ce3
BLAKE2b-256 14b832b3769139af3944f7c3ae5b33baa74e40fc6e1daf67aeef752aba1dc776

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp311-cp311-macosx_10_12_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: oxifish-0.1.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 175.3 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for oxifish-0.1.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b8a61a41bd1a585ff97394ad10d2371917ad587b8cfbaff0cf182fc4957d64b8
MD5 bfadddcefc2d553d40842610b6f721ae
BLAKE2b-256 a28fbc2ca0d32aaba47c8d3d80178b66b623321afdc744511fe5258953fb4032

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp310-cp310-win_amd64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 fa2efb1de87a4600fdaf45996b7af79f7a0c2ac9360d1879254a99b1fcdf256d
MD5 abf1cfd0c5a0e79567828703ad196807
BLAKE2b-256 a00f458147c3f6b25c6644440828b45408c1d7dda79430ad3865f8a1ef6b1aa1

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 ff34ae08a2f59a3f1550f25305d6a5083a37568546278b5904925e0a1f857448
MD5 c5e328441422ae8cfbcae0ac39ae8f7c
BLAKE2b-256 106edafea930d2f6e64355ae12b0649c70b9edd5dfd45e3a667791cf1b31cb3d

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp310-cp310-musllinux_1_2_aarch64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ad68acb22256909ac247d815b2af3aff17ccaccb9400507b5557e219637f9874
MD5 965031080e7736341821265132196af3
BLAKE2b-256 28fa4bab1731ad7b14fdbcd326ed8e48dfe4745f119d79ef40dd2ac946bd584b

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 14dfd7b0180e373b0779b0a156550bf4b4f76aad3179e2391c8665415ee344e9
MD5 4131c3ca1b6d685c7a71553f8954f56a
BLAKE2b-256 2df5ea5fe19edd78658d880bb8eabb69c9465184f524c663830037952e9e2bc5

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 c184f7a7f82d19da87c9890444b0ccc17e25803b505934e636b8d8110b9004a5
MD5 896fdda814b259ab8fc46af867881cf4
BLAKE2b-256 2fc38abe619281f401164211c5baa84db7f07840a91b60925204985eb8166294

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 92b25f2fb6eb85de030d7a4686c3cf763138acaf55f4ce46c80d5a39a5e16d39
MD5 43daa7345cce5a9a0f28253552bc2178
BLAKE2b-256 397a0bd3818e341845ef664ff4aea60c680c6c4b1619be1e2d5eb068589ff8c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oxifish-0.1.1-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for oxifish-0.1.1-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3cf21c269210baa72e0964a75ba2da15570b37fc67fe5f505088261087a914cd
MD5 6d5a733a22ba48aac25943e67e0b602d
BLAKE2b-256 43b961e8442d5c9c4fc94f0c11b169912dd812f948b431d5f181f00815a91d52

See more details on using hashes here.

Provenance

The following attestation bundles were made for oxifish-0.1.1-cp310-cp310-macosx_10_12_x86_64.whl:

Publisher: release.yml on coreyleavitt/oxifish

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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