Python bindings for FAEST post-quantum signature scheme
Project description
PyFAEST - Python Bindings for FAEST
Python wrapper for the FAEST (Fast AES-based Signature with Tight security) post-quantum digital signature scheme.
Overview
FAEST is a post-quantum signature scheme submitted to the NIST PQC standardization process. This Python package provides high-level bindings to the C reference implementation:
- 🔐 Quantum-resistant signatures based on symmetric cryptography
- 🚀 High performance - Direct binding to optimized C code via CFFI
- 🛡️ Memory-safe - Automatic private key clearing
- 🎯 Pythonic API - Clean, intuitive interface
- 📦 12 parameter sets - All FAEST variants supported
Installation
From PyPI (Recommended)
pip install pyfaest
Pre-built wheels available for:
- Linux x86_64 (manylinux)
- Linux aarch64 / ARM64 (Raspberry Pi, AWS Graviton)
- macOS arm64 (Apple Silicon)
- macOS x86_64 (Intel Macs)
- Python 3.8, 3.9, 3.10, 3.11, 3.12, 3.13
No compilation required! For other platforms, see installation guide.
From Source
git clone https://github.com/Shreyas582/pyfaest.git
cd pyfaest
pip install -e .
Quick Start
from faest import Keypair, sign, verify
# Generate a keypair
keypair = Keypair.generate('128f')
# Sign a message
message = b"Hello, quantum-resistant world!"
signature = sign(message, keypair.private_key)
# Verify the signature
is_valid = verify(message, signature, keypair.public_key)
print(f"Valid: {is_valid}") # True
Parameter Sets
PyFAEST supports all 12 FAEST parameter sets:
| Parameter Set | Security Level | Public Key | Private Key | Signature |
|---|---|---|---|---|
128f |
NIST Level 1 | 32 bytes | 32 bytes | 5,924 B |
128s |
NIST Level 1 | 32 bytes | 32 bytes | 4,506 B |
192f |
NIST Level 3 | 48 bytes | 40 bytes | 14,948 B |
192s |
NIST Level 3 | 48 bytes | 40 bytes | 11,260 B |
256f |
NIST Level 5 | 48 bytes | 48 bytes | 26,548 B |
256s |
NIST Level 5 | 48 bytes | 48 bytes | 20,696 B |
em_128f |
NIST Level 1 | 32 bytes | 32 bytes | 5,060 B |
em_128s |
NIST Level 1 | 32 bytes | 32 bytes | 3,906 B |
em_192f |
NIST Level 3 | 48 bytes | 48 bytes | 12,380 B |
em_192s |
NIST Level 3 | 48 bytes | 48 bytes | 9,340 B |
em_256f |
NIST Level 5 | 64 bytes | 64 bytes | 23,476 B |
em_256s |
NIST Level 5 | 64 bytes | 64 bytes | 17,984 B |
Suffix meanings:
f= Fast (optimized for speed)s= Small (optimized for signature size)em_*= Extended mode variants
Note: 192-bit variants have asymmetric key sizes (private=40, public=48) by design.
API Reference
Key Generation
from faest import Keypair
# Generate a new keypair
keypair = Keypair.generate('128f')
# Access individual keys
public_key = keypair.public_key
private_key = keypair.private_key
param_set = keypair.param_set
# Validate keypair
is_valid = keypair.validate()
Signing and Verification
from faest import sign, verify
# Sign a message
signature = sign(message, private_key)
# Verify a signature
is_valid = verify(message, signature, public_key)
Key Serialization
# Export keys as bytes
pk_bytes = public_key.to_bytes()
sk_bytes = private_key.to_bytes()
# Import from bytes
keypair = Keypair.from_bytes(pk_bytes, sk_bytes, '128f')
# Or create keys individually
from faest import PublicKey, PrivateKey
public_key = PublicKey(pk_bytes, '128f')
private_key = PrivateKey(sk_bytes, '128f')
Error Handling
from faest import (
FaestError, # Base exception
KeyGenerationError, # Key generation failed
SignatureError, # Signing failed
VerificationError, # Verification failed
InvalidKeyPairError, # Keypair validation failed
)
try:
keypair = Keypair.generate('128f')
signature = sign(message, keypair.private_key)
except KeyGenerationError as e:
print(f"Key generation failed: {e}")
except SignatureError as e:
print(f"Signing failed: {e}")
Examples
Complete examples in the examples/ directory:
basic_usage.py- Simple signing and verificationall_parameter_sets.py- Testing all 12 parameter setskey_serialization.py- Key import/export patterns
Documentation
- Installation Guide - Detailed installation instructions
- Getting Started - Quick start tutorial
- Developer Guide - Architecture and internals
- Maintainer Guide - Release and publishing
Requirements
- Python 3.8 or higher
- Linux x86_64, macOS arm64, or Windows (via WSL)
- CFFI >= 1.15.0 (automatically installed)
Note: Pre-built wheels eliminate the need for compilers or build tools.
Security Considerations
⚠️ Important Security Notes:
- Reference implementation - Not yet optimized for production
- NIST evaluation - FAEST is a candidate, not yet standardized
- Memory safety - Private keys automatically cleared from memory
- Side channels - No protection against timing/power analysis attacks
- Secure storage - Store private keys encrypted at rest
Performance
Typical performance on modern hardware (single core):
| Operation | 128f | 128s | 256f | 256s |
|---|---|---|---|---|
| Key generation | ~1 ms | ~1 ms | ~2 ms | ~2 ms |
| Signing | ~5 ms | ~8 ms | ~15ms | ~25ms |
| Verification | ~5 ms | ~8 ms | ~15ms | ~25ms |
f variants are faster, s variants produce smaller signatures.
Platform Support
| Platform | Status | Notes |
|---|---|---|
| Linux x86_64 | ✅ Supported | Pre-built wheels |
| Linux aarch64 | ✅ Supported | Pre-built wheels (ARM64, Raspberry Pi, AWS Graviton) |
| macOS arm64 | ✅ Supported | Pre-built wheels (Apple Silicon) |
| macOS x86_64 | ✅ Supported | Pre-built wheels (Intel Macs) |
| Windows (WSL) | ✅ Supported | Use Linux wheels in WSL |
| Windows native | ❌ Not supported | Use WSL instead |
Development
Running Tests
pip install pytest
pytest tests/ -v
Building from Source
See INSTALLATION.md for detailed instructions.
Quick version:
# Build FAEST C library first
git clone https://github.com/faest-sign/faest-ref.git
cd faest-ref
meson setup build
meson compile -C build
# Install PyFAEST
cd /path/to/pyfaest
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# Copy library files
FAEST_REF=/path/to/faest-ref bash scripts/update_libraries.sh
# Install in development mode
pip install -e .
# Verify
python verify_install.py
Project Structure
pyfaest/
├── faest/ # Python package
│ ├── __init__.py # Public API exports
│ └── core.py # Main implementation (550+ lines)
├── lib/ # Bundled FAEST libraries
├── include/ # C header files
├── examples/ # Usage examples
├── tests/ # Test suite (37 tests)
├── docs/ # Documentation
├── scripts/ # Build/release scripts
├── faest_build.py # CFFI build script
└── setup.py # Package configuration
License
MIT License - See LICENSE file for details.
Contributing
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes with tests
- Submit a pull request
See DEVELOPER_GUIDE.md for more details.
Citation
If you use PyFAEST in research, please cite:
@software{pyfaest,
title = {PyFAEST: Python Bindings for FAEST},
author = {PyFAEST Contributors},
year = {2025},
url = {https://github.com/Shreyas582/pyfaest}
}
References
Changelog
See CHANGELOG.md for version history.
Support
- Issues: GitHub Issues
- Documentation: docs/
- Examples: examples/
Acknowledgments
PyFAEST is built on top of the FAEST reference implementation by the FAEST team. Special thanks to all contributors to the FAEST project.
NOTE from Author
I have created this for a Post-Quantum Cryptography class project at NYU.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyfaest-1.0.40.tar.gz.
File metadata
- Download URL: pyfaest-1.0.40.tar.gz
- Upload date:
- Size: 1.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
228ac3238cbcb88250bfb5efb0e634217424a5198ff4218c93d96b196f567bc2
|
|
| MD5 |
54290080f277cd9e8e965910ace4aa44
|
|
| BLAKE2b-256 |
d1d1950c88348027218501ec19be5de3c789e63358401b900635311108c3b62c
|
File details
Details for the file pyfaest-1.0.40-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 832.8 kB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66afd92207ea7bdb4bda3cab4427379d3b1d325da04923a9fb3ce6143ae52302
|
|
| MD5 |
34ffe654c1f9d2cb9b4f702d20c0936b
|
|
| BLAKE2b-256 |
2d360332123c6ebcacdcd41cc1dca7f394867e11078605aea142579f94176372
|
File details
Details for the file pyfaest-1.0.40-cp314-cp314-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp314-cp314-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 864.8 kB
- Tags: CPython 3.14, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
85af5189e73fe106d589eec706e743223b4bd9afad845bf5c534421244332bbd
|
|
| MD5 |
b0ff99d0fa248e0df42d04c45136c2f7
|
|
| BLAKE2b-256 |
34124b5e296070f59ca2cc9b64b495cf50b8497e7dc0eaf3f86b71baee64dad8
|
File details
Details for the file pyfaest-1.0.40-cp314-cp314-macosx_15_0_universal2.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp314-cp314-macosx_15_0_universal2.whl
- Upload date:
- Size: 732.9 kB
- Tags: CPython 3.14, macOS 15.0+ universal2 (ARM64, x86-64)
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c0d1167d07dfe59de9186d5cc394eb7d2faa6f8c95dc4aace4efc06de8301bab
|
|
| MD5 |
142476c4c108e92c12db7d59d035f2dc
|
|
| BLAKE2b-256 |
603ef5954de8a7491ed88b04d481c53cc34fc5117a459d91f2cbffd2a32e163a
|
File details
Details for the file pyfaest-1.0.40-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 818.4 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
53c8f26409a1256272dfcd7e9d55157d6bfd857dbfaa8e8e105468abb2c739bd
|
|
| MD5 |
8c752fee116e7496f1a67cab2bd4d45c
|
|
| BLAKE2b-256 |
9c4a274e047bf66c876f8a599f1514782d13ed9e74e2e29561baecc85dac1f33
|
File details
Details for the file pyfaest-1.0.40-cp313-cp313-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp313-cp313-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 864.8 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3979b29618baf094d655375af49474279a04add50e18defc74fc41c6667004cf
|
|
| MD5 |
05bbf71be6f554de4579bb06653852bd
|
|
| BLAKE2b-256 |
b00bfa834904756ef3fa39f99e3ecd380c290a4c466a972e5b75e659925da4df
|
File details
Details for the file pyfaest-1.0.40-cp313-cp313-macosx_15_0_universal2.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp313-cp313-macosx_15_0_universal2.whl
- Upload date:
- Size: 733.0 kB
- Tags: CPython 3.13, macOS 15.0+ universal2 (ARM64, x86-64)
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f6ca0213800791384ca107a64427d3dca269ab0ca3f1a50340fb9a4801a0ab25
|
|
| MD5 |
fc5cf53ffed63ef3b4b597a05dbc72c7
|
|
| BLAKE2b-256 |
64cd4f74767d5e17aeb2050c81a6de5832a91f86a115a752279da76b36e83908
|
File details
Details for the file pyfaest-1.0.40-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 818.4 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e1965bf4711cf75e3e4b4d8cff0b7890eb194b8fd1e69c6946bac1da29e3e4c8
|
|
| MD5 |
cc176cb3793edd8a4ab5cc42a14ad095
|
|
| BLAKE2b-256 |
3a1d296de06d26aec4a242510974996970b530de020c2d49878a6763929daf1e
|
File details
Details for the file pyfaest-1.0.40-cp312-cp312-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp312-cp312-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 864.8 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0791b14264311c9db33beca6eca068366d2a3a38cea62bbeda4bbba0d14ed65f
|
|
| MD5 |
10e376f2f8094d8ab3ac76b113e9c8cc
|
|
| BLAKE2b-256 |
1ea34314df1f8c3d9b6c4a302a46e5781b795ec4c038e12eb228d842d2154181
|
File details
Details for the file pyfaest-1.0.40-cp312-cp312-manylinux_2_17_aarch64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp312-cp312-manylinux_2_17_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e5f4a2560fd18aa6232aa883692dce4d69fd6a59286718d4ea34d323d540e33
|
|
| MD5 |
1499f48276e3d988609be7f5178418f2
|
|
| BLAKE2b-256 |
141696b7a4ec842c3715e94724db5fbc5ec84844832960e5e2367b31b5ded9ac
|
File details
Details for the file pyfaest-1.0.40-cp312-cp312-macosx_15_0_universal2.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp312-cp312-macosx_15_0_universal2.whl
- Upload date:
- Size: 733.0 kB
- Tags: CPython 3.12, macOS 15.0+ universal2 (ARM64, x86-64)
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f91978589b55a3586d5365de7bd10e3a353e9d929fdcf59b046224e3feb89b4
|
|
| MD5 |
4ed3ca487ecd56eaa1217125fb4d3875
|
|
| BLAKE2b-256 |
da61c44a6ea7214a3bcb5b9656895cd9f5516d78c0177090d15312a40267f48c
|
File details
Details for the file pyfaest-1.0.40-cp312-cp312-macosx_10_14_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp312-cp312-macosx_10_14_x86_64.whl
- Upload date:
- Size: 737.6 kB
- Tags: CPython 3.12, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52c11b4a6ca8c07943c2c18c94788606d00720302017a590b22cdd626d226357
|
|
| MD5 |
d6a016f3654b9b7b05b549c052e32520
|
|
| BLAKE2b-256 |
3a4223f17c7d955de44001338e82657ac0cd0f1aa6cbcc2edca69b8ede52a5a5
|
File details
Details for the file pyfaest-1.0.40-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 818.4 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
515172690544f6d6130a6cb6be30c88773188c5983d9cef0cfd6304a1c1a02cc
|
|
| MD5 |
9f00dd3b1a61be6bac2b44a9789ba3e0
|
|
| BLAKE2b-256 |
53428d23a6a376a2df60a7e847aa22e185760f90750cd1e401fc6c244e6447f0
|
File details
Details for the file pyfaest-1.0.40-cp311-cp311-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp311-cp311-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 864.0 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7ce555abc7f2b1f597d3fd1c0427787fad388405006fac6349eddaa7b0e6bd7
|
|
| MD5 |
6b7d6c8b8348e611dd717f826072266d
|
|
| BLAKE2b-256 |
83c84e53968730a2b99d8d77345da2824ae42a16ef40662376345e9fbbcb0d45
|
File details
Details for the file pyfaest-1.0.40-cp311-cp311-manylinux_2_17_aarch64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp311-cp311-manylinux_2_17_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
74c73a219529c67ed215920fae9165c3b8b41704d66dfa0ad45c4091319c074a
|
|
| MD5 |
043bda603d67c5f7f08a982ceb3e2705
|
|
| BLAKE2b-256 |
125a3b7ab87b0f53a537ca80cf0690ba787758195c73c32909d11319821d6edd
|
File details
Details for the file pyfaest-1.0.40-cp311-cp311-macosx_15_0_universal2.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp311-cp311-macosx_15_0_universal2.whl
- Upload date:
- Size: 733.0 kB
- Tags: CPython 3.11, macOS 15.0+ universal2 (ARM64, x86-64)
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d0890b5c0b4313e5c068fc31d3b8f85a0ddbe4c684ecf4ffb7cf0f6fd564f445
|
|
| MD5 |
ecf57303d72d4a5c4abaaaf87d22bf88
|
|
| BLAKE2b-256 |
019f5766272b71ddba13755c5b3161705d9e80ba5139ff9846b19c976bc28a44
|
File details
Details for the file pyfaest-1.0.40-cp311-cp311-macosx_10_14_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp311-cp311-macosx_10_14_x86_64.whl
- Upload date:
- Size: 737.6 kB
- Tags: CPython 3.11, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb30e9f4807cf84a0cbb28b5268cd3d13b5ba47bc1e312d2460823e9d9ecdeef
|
|
| MD5 |
35bc0f4eace20b7aed893668b820d16e
|
|
| BLAKE2b-256 |
6c089b6c074c492bbc501d82f1369fb65018c4f679effebc98ea6cb38e4f2e9e
|
File details
Details for the file pyfaest-1.0.40-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 818.4 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eaa1449b9d10c538dd81ef67426cb06f1acb25cbb4165921de72bafd15e0222d
|
|
| MD5 |
e0658d3e15e3a88080cfcdafd5e397eb
|
|
| BLAKE2b-256 |
4c4c6fc7f24fcce21d5c619d174596a6c836dd1699641eb313a38ecedfa78622
|
File details
Details for the file pyfaest-1.0.40-cp310-cp310-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp310-cp310-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 864.0 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9f0b4381565f9d281acc80274eaa617f62917e1bef92a571cfb1f6ade2b3bed0
|
|
| MD5 |
ffd7e4c9a8717ed2218eaf5da0d537ab
|
|
| BLAKE2b-256 |
5bffa8c8fbc092c7a3066a15ff0b746c93ebe0b1ac852e0ddc18b512d49bd0c7
|
File details
Details for the file pyfaest-1.0.40-cp310-cp310-manylinux_2_17_aarch64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp310-cp310-manylinux_2_17_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a26ac40e64b41a51e7854c8e76ab52e754ad8af8f03874f25f1f8e1c52795698
|
|
| MD5 |
ae8bb57ca4264c1d08bbbbd733296c78
|
|
| BLAKE2b-256 |
cc7d2b696e3fbd50d475aa6e31b8c0d3361b78a6cf6d730a3de675daf35eab3c
|
File details
Details for the file pyfaest-1.0.40-cp310-cp310-macosx_15_0_universal2.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp310-cp310-macosx_15_0_universal2.whl
- Upload date:
- Size: 733.0 kB
- Tags: CPython 3.10, macOS 15.0+ universal2 (ARM64, x86-64)
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe41af682ee21904fcbd0e08879473aaa58f0189557fb5dc22e7d5222b04244f
|
|
| MD5 |
c00da9cb790e149c742acc96784e62ad
|
|
| BLAKE2b-256 |
43a8be202a8ecb7fbc1b275d277f842cb09779549afc0437dc38f1ec4f403d76
|
File details
Details for the file pyfaest-1.0.40-cp310-cp310-macosx_10_14_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp310-cp310-macosx_10_14_x86_64.whl
- Upload date:
- Size: 737.6 kB
- Tags: CPython 3.10, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7b7348975e4b7cbf65e39c3c87899835f582158327b1dd40c2e2e0b48972f524
|
|
| MD5 |
0b7fc87225f5c940ba4282ad7a6d8e5d
|
|
| BLAKE2b-256 |
5c92f581bb29c9e959b41539959cc1318f028148a74eedac6af93a72468e857a
|
File details
Details for the file pyfaest-1.0.40-cp39-cp39-win_amd64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 818.4 kB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88e3b2e2af7e74998f0cea0f568db36ccae3cd846b729bc649b9198fd7cde6b9
|
|
| MD5 |
c58603def022bb36e5bfd975289ed29d
|
|
| BLAKE2b-256 |
e202e30d98bf591948507b07325e8489416f521805e6351f1990a46a5fc41990
|
File details
Details for the file pyfaest-1.0.40-cp39-cp39-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp39-cp39-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 864.0 kB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4c3aeb8610a8e620ca334a76862c0455b44f273b2ec9f33adbb08be21635ce59
|
|
| MD5 |
917bf0479800ac4227297cd796ca377a
|
|
| BLAKE2b-256 |
13ac0f710bca64665da6f8f0f11c1c47bdc6e6ea2f56a58fb5110174feaf12f4
|
File details
Details for the file pyfaest-1.0.40-cp39-cp39-manylinux_2_17_aarch64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp39-cp39-manylinux_2_17_aarch64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.9, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ccb4e81163bead551aa42b2a9a3ce4734619fb7310dba01e65b06c3fd9f74881
|
|
| MD5 |
b4eae65c731df290684e97a6f5f5079c
|
|
| BLAKE2b-256 |
6fd4cd22ed3e39dcd74c36eeb1ad950b2417b96353f097db48bf49b6e6cbc66e
|
File details
Details for the file pyfaest-1.0.40-cp39-cp39-macosx_15_0_universal2.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp39-cp39-macosx_15_0_universal2.whl
- Upload date:
- Size: 733.0 kB
- Tags: CPython 3.9, macOS 15.0+ universal2 (ARM64, x86-64)
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8fc659dd340c1ff1c2dbd3f0922a3203108278122392d3a5bbefcabd6fea6423
|
|
| MD5 |
ed35709d0452a951fe2230579a64286e
|
|
| BLAKE2b-256 |
8713ec0a7a8a4a0e59967c74d1cc67758ca7187d219fa2c12220b80feb0edef4
|
File details
Details for the file pyfaest-1.0.40-cp39-cp39-macosx_10_14_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp39-cp39-macosx_10_14_x86_64.whl
- Upload date:
- Size: 737.6 kB
- Tags: CPython 3.9, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a610a8bb24acea7fd0970059374c02208436cf99498593451bde97cbdd727e06
|
|
| MD5 |
7069dfe90f9849e9c26d86fc6140a738
|
|
| BLAKE2b-256 |
c0a2f97f1bbafdf8f4df656eb23b1b00a65f32486033cf2488416c74adb70ce6
|
File details
Details for the file pyfaest-1.0.40-cp38-cp38-win_amd64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp38-cp38-win_amd64.whl
- Upload date:
- Size: 818.3 kB
- Tags: CPython 3.8, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8488f08d09dde48e3b809818eb520c30014b568beb3edae781d3194cf7d6702a
|
|
| MD5 |
5e3931f4357e1f899fc52accf2917890
|
|
| BLAKE2b-256 |
b8f70ca49a05e4d0513bb2647c926e960b15d9e37b7e0612fa672bd9c58f2fd3
|
File details
Details for the file pyfaest-1.0.40-cp38-cp38-manylinux_2_17_x86_64.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp38-cp38-manylinux_2_17_x86_64.whl
- Upload date:
- Size: 864.2 kB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62252f13557a149bc0f29a67855d0bb78b3743b37e9a41453aa579adbe33383a
|
|
| MD5 |
3ef44eae5eda37b0cd0a89c0cfd0d74f
|
|
| BLAKE2b-256 |
a0f49d9d9a943ce0705978b73f1636f95209e963a57522ebd20a43c3a42ddbd5
|
File details
Details for the file pyfaest-1.0.40-cp38-cp38-macosx_15_0_universal2.whl.
File metadata
- Download URL: pyfaest-1.0.40-cp38-cp38-macosx_15_0_universal2.whl
- Upload date:
- Size: 732.9 kB
- Tags: CPython 3.8, macOS 15.0+ universal2 (ARM64, x86-64)
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9b82509bea10f85fd1618ae5244c249c725f02ee437329aa38851870fde83ab
|
|
| MD5 |
796eea1ea5fc777be64967e7813b2e0b
|
|
| BLAKE2b-256 |
b985c7768b835ad5860c891203fa93af7416a546b3011af33e1e5f0508cf1f5a
|