Frequently Asked Questions
This FAQ is written to match the Fractum 1.4.0 documentation baseline. It explains what the tool does and names the limits that still matter when you store high-value secrets.
What is Fractum?
Fractum is a command-line tool for cold storage and recovery planning. It encrypts a file locally with AES-256-GCM, then splits the encryption key into a configurable K-of-N set of Shamir shares.
What does K-of-N mean?
N is the number of shares created and K is the number needed for recovery. For example, a 3-of-5 set can recover with any three valid shares and can lose two shares. Fractum requires K to be at least 2 and supports at most 255 shares.
Does Fractum split my file itself?
No. Fractum encrypts the file first, then uses Shamir's Secret Sharing for the fresh AES key. The encrypted file and the key shares are distributed separately in the recovery workflow.
Can one share reveal or decrypt the file?
No. A single share is below the configured threshold when K is greater than 1. The security property comes from the Shamir scheme protecting the shared key; the encrypted file still needs its AES key to decrypt.
Which encryption does Fractum use?
Fractum uses AES-256-GCM through PyCryptodome. GCM provides authenticated encryption: the decryptor checks the authentication tag and authenticated metadata before it writes plaintext output.
Can I use Fractum offline or on an air-gapped machine?
Yes for encryption and decryption: those operations run locally and do not need a Fractum network service. In Docker, add --network=none when you want Docker-enforced network isolation. Installation may still require packages unless you use the included local package workflow.
Is there a guided mode for encrypting or recovering a file?
Yes. Run fractum --interactive to choose encryption or decryption through prompts. The assistant asks for paths and parameters, including whether to use existing shares, full share metadata, a share folder, or manually entered share values. The direct commands remain the best reference for scripted or repeatable procedures.
How should I choose K and N?
Choose K high enough that no single custodian can recover the secret, but low enough that recovery remains realistic after loss or absence. A 3-of-5 arrangement is a common starting point for a small group, but the right choice depends on your custodians, locations, and recovery plan. Test the complete process with non-sensitive data first.
What happens if I lose shares?
Recovery remains possible while at least K valid shares from the same set are available. Once fewer than K shares remain, Fractum cannot reconstruct the AES key and the encrypted file is not recoverable.
Are the share ZIP files encrypted by themselves?
Do not assume that. The ZIP archives are recovery packages that can contain a share file and the encrypted payload. Protect and distribute every archive or extracted share according to your threat model.
Does Fractum guarantee that secrets disappear from memory?
No. Fractum overwrites mutable buffers and attempts to lock selected buffers in RAM, but Python objects, operating systems, swap settings, crash dumps, and hardware behaviour prevent an absolute erasure guarantee. The feature is defence in depth.
Has Fractum received a formal security audit?
The project documentation does not claim a formal verification or independent security audit. For high-value use, review the source, verify the release, test recovery, and seek an independent assessment appropriate to the value at risk.
Is Fractum equivalent to a password manager, Vault, or an HSM?
No. Fractum is for infrequent cold-storage and recovery workflows. Password managers, Vault, and HSMs solve different operational problems such as daily credential use, service-side policy, key custody, or hardware-backed key handling.
How do I verify the software I use?
Verify the release material and package checksums before use, then import the published signing key and follow the verification guide. Keep your recovery test separate from the secret you intend to protect.
What is the licence?
The upstream Fractum repository publishes an Apache License 2.0 file. Trademark rights for the Fractum name and related branding are separate from the source-code licence.
Where can I read the implementation limits in detail?
Read the security architecture for implementation-backed details, then use the security best practices page to plan storage, custodians, and recovery.