ftw-pki-unpacker
The secure ingestion, validation, and decryption gateway of the ftw-pki suite. This repository provides the ftwpkiunpacker utility.
🛠 Why do we need an Unpacker?
In high-security PKI environments, signing entities (especially Root and Intermediate CAs) often operate in restricted or offline environments. They should never be directly exposed to raw, unvalidated input from the network.
The Unpacker acts as a "buffer, filter, and delivery endpoint":
- Ingestion & Sanitization: It collects Certificate Signing Requests (CSRs) and pre-validates them against defined security policies before they ever reach the signing tools.
- Security Boundary: It ensures that only well-formed and authorized requests are passed forward, protecting the sensitive signing infrastructure from malformed data or injection attacks.
- Secure Decryption: Signed certificates are returned encrypted with the sender's public key. The Receiver uses the corresponding private key to decrypt the payload, making the certificate available to the end-user.
✨ Features
- Automated Configuration: On its first run, the tool automatically initializes the necessary configuration files in the user's config directory (e.g.,
~/.config/ftwpki/). - Integrity Checks: Verifies the cryptographic signatures of incoming CSRs to ensure they haven't been tampered with during transit.
- Minimalist CLI: Designed to be as simple as possible to minimize the attack surface, requiring only essential positional arguments.
📖 Documentation
- Technical Manual: Detailed information on validation rules and security handshakes is available in the
doc/source/directory. - User Config: If you need to adjust policies, refer to the config file automatically created in your user profile.
📄 License
This project is licensed under the LGPL v2.1 (or later).
© 2026 ftw-pki Contributors
Metadata
Release files for ftw-pki-unpacker 0.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ftw_pki_unpacker-0.0.4.tar.gz | 36.2 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ftw_pki_unpacker-0.0.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 36.2 MB
Release files / ftw_pki_unpacker-0.0.4.tar.gz
| Download URL | ftw_pki_unpacker-0.0.4.tar.gz |
|---|---|
| Size | 36.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d81c3c42669bfe28866299ab6c38c8e7782da0ba52c8318e05fac41e60ea2dca
|
|
BLAKE2b-256 checksum How to use checksums |
c86ea278e830da87e553d414d8be8aa47d15d864900aa9b00d7d1e21484b6eb8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.
Transparency logRelease files / ftw_pki_unpacker-0.0.4-py3-none-any.whl
| Download URL | ftw_pki_unpacker-0.0.4-py3-none-any.whl |
|---|---|
| Size | 21.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8b25463f4c2099d2994fd8c148b008561ee8aa7db81fa2f563ec175228cd6396
|
|
BLAKE2b-256 checksum How to use checksums |
e21b4706b8394a59bdeb22acd0c47b3601e1eba6dddfd45e57463530f4aac936
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 17, 2026.
Transparency log