Skip to main content
User Guide

Using QNSQY: GUI, TUI & CLI

QNSQY ships as one binary that runs three ways, a desktop app (GUI), a terminal interface (TUI), and a command-line tool (CLI), with the exact same cryptography underneath. Every feature below has a GUI / TUI / CLI switch: choose how you want to run it and the steps update to match. Terminal commands are shown for both Linux and Windows. Your data, passwords, and private keys never leave your machine.

Encrypt

Free & up

Encrypt a file with a password, or to a recipient's public key. The output is a quantum-resistant .qs file (hybrid ML-KEM + X25519 key exchange, AES-256-GCM). Password-based encryption derives the key with Argon2id.

  1. In the left rail under CORE, click Encrypt.

    Encrypt selected in the CORE section of the left navigation, showing the Encrypt screen
    The Encrypt screen, opened from the left rail (CORE → Encrypt)
  2. Under Source, click File (or Folder) and choose what to encrypt.

    Source field filled with the path to the file to encrypt
    Source set, type the path or use the File / Folder buttons
  3. Under Destination, set where the encrypted .qs file is saved (defaults to the input name + .qs).

    Destination field set; the Encrypt button is now active and the equivalent command line shows the full command
    Destination set, the Encrypt button activates and the live command updates
  4. Under Encryption Method, pick Password (default), Public Key (recipient), or Password + Key (hybrid). Optionally expand Options / Advanced for compression, paranoid padding, algorithm, and Argon2 strength.

    Options section expanded showing Compress before encrypting, Paranoid padding, Delete original after encryption, Force overwrite, and Add .qs extension toggles
    Method stays Password; the expanded Options panel (compression, paranoid padding, …)
  5. Click Encrypt. A secure prompt opens for your password (entered twice); it is never shown on screen and is passed to the engine over stdin. The result is a quantum-resistant .qs file, confirm it round-trips with Decrypt (or the CLI tab below, which we verified produces a byte-identical file).

Prefer the terminal? This screen runs

qnsqy encrypt -i <input> -o <output> --password-stdin --algorithm aes256-gcm --argon2-preset standard

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Decrypt

Free & up

Recover the original data from a QNSQY .qs file. Supply the passphrase (or your private key for a recipient-encrypted file) and, optionally, a signer's public key to verify authenticity at the same time.

  1. Open Decrypt from the CORE section of the left rail. The screen has an Encrypted File picker, a Destination path, a Decryption Method (Password by default), an optional Signature Verification field, and Options / Remote Restore toggles.

    QNSQY Decrypt screen: Encrypted File and Destination file pickers, a Decryption Method dropdown set to Password, an optional Signer's public key field, and Options / Remote Restore toggles.
    The Decrypt screen: pick the .qs file, choose where to save it, and optionally a signer's public key to verify.
  2. Browse to the encrypted .qs file, set the Destination path, and leave Method on Password (or switch to a private key for a recipient-encrypted file). To check a signature, browse to the signer's public key under Signature Verification.

  3. Click Decrypt. You are prompted for the passphrase (never echoed); the original bytes are recovered exactly, byte-for-byte.

Prefer the terminal? This screen runs

qnsqy decrypt -i <input> -o <output> --password-stdin

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Keys (keypairs)

Free & up

Generate post-quantum keypairs: an ML-KEM (FIPS 203) encryption keypair or an ML-DSA (FIPS 204) signing keypair. Each produces a private key you keep secret and a .pub public key you share. Keygen is always free (0 credits) on every tier; larger security levels are Pro/Business.

  1. Open Keys from the CORE section. One screen holds two cards: Generate Encryption Keypair (ML-KEM / FIPS 203) and Generate Signing Keypair (ML-DSA / FIPS 204).

    QNSQY Keys screen with two cards: Generate Encryption Keypair (Name, Protect private key with passphrase toggle, Algorithm ML-KEM FIPS 203, Include X25519 backup checkbox, Security Level ML-KEM-512 Level 1, Save to) and Generate Signing Keypair (Name, passphrase toggle, Algorithm ML-DSA FIPS 204, Security Level ML-DSA-44).
    The Keys screen: two cards generate a post-quantum encryption keypair and a signing keypair. Each writes a private key and a .pub public key.
  2. In the card you need, enter a Name, optionally toggle Protect private key with passphrase, and pick a Security Level (encryption defaults to ML-KEM-512 with the X25519 backup checkbox on; signing defaults to ML-DSA-44). Choose a Save to folder.

  3. Click Generate Encryption Key (or Generate Signing Key). Two files are written: the private key (keep secret) and the .pub public key (share). The private key is never displayed.

Prefer the terminal? This screen runs

qnsqy keygen-enc -o <output> -n <name> --algorithm ml-kem512 (and keygen-sign equivalent)

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Sign / Verify

Free & up

Sign a file in place with your private key so anyone can confirm it came from you and was not altered, or verify a signed file against the signer's public key.

  1. Open Sign / Verify from the CORE section. The screen has a Sign File card (File to sign + Private key) and a Verify Signature card (Signed file + Public key).

    QNSQY Sign / Verify screen: a Sign File card with File to sign and Private key pickers and a note that signing modifies the file in place, and a Verify Signature card with Signed file and Public key pickers.
    The Sign / Verify screen: sign a file in place with your private key, or verify a signed file against a public key.
  2. To sign: browse to the file and your private signing key. The screen warns that signing modifies the file IN PLACE (the signature is appended, no separate .signed copy), so keep a backup if you need the unsigned bytes. To verify: browse to the signed file and the matching public key.

  3. Click Sign (you are prompted for the key passphrase if one is set), or click Verify. Verify reports VALID or INVALID and shows the algorithm and key hash.

Prefer the terminal? This screen runs

qnsqy sign -i <input> -k <key> --password-stdin

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Vault

Pro

A local, post-quantum-encrypted password vault. The vault file itself is encrypted; one master password unlocks it to add, list, get, and manage entries, with optional random-password generation.

  1. Open Vault from the CORE section. The Secure Vault screen has three tabs (Browse, Add Entry, Settings) and opens on Browse with an Open Vault panel.

    QNSQY Secure Vault screen with Browse / Add Entry / Settings tabs; the Browse tab shows an Open Vault panel with a .qsv vault-file picker and an Unlock Vault button.
    The Secure Vault screen: select a .qsv vault file and enter your master password to unlock it, then browse, add, or manage entries.
  2. On the Browse tab, use the .qsv file picker to select your vault (or create one on first use), then enter the master password. Switch to Add Entry to store a new username/password, optionally auto-generating a random password.

  3. Click Unlock Vault. The vault file is itself post-quantum-encrypted; the master password unlocks it and the decrypted entries stay in memory only.

Prefer the terminal? This screen runs

qnsqy vault add --vault <file> --name <name> --password-stdin

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Remote Backup

All tiers

Zero-knowledge encrypted backup to S3, R2, MinIO, or your own server. Data is encrypted locally before upload, so only ciphertext leaves the machine. Push, pull, or two-way sync.

  1. Open Remote Backup from the CORE section. The Destination panel configures where encrypted data is stored (R2 / S3 / MinIO / your own server). The Enter endpoint directly toggle is on, exposing Provider, Endpoint, Bucket, Region, Access key, Secret, and an optional ML-DSA-87 Signature pin.

    QNSQY Remote Backup screen: a Destination panel with Enter endpoint directly toggled on, a Provider dropdown set to Custom / S3-compatible, Endpoint, Bucket, Region, Access key, Secret, and an optional Signature pin field, plus a note that credentials are passed via environment and never saved to disk, and a Test Connection button.
    The Remote Backup screen: point at an S3/R2 endpoint and bucket (or a saved profile). Credentials are passed via environment, never the command line, and never saved to disk.
  2. Choose a Provider, fill in the Endpoint and Bucket (Region defaults to auto). Enter the Access key / Secret, or leave both blank to use QNSQY_REMOTE_ACCESS_KEY / QNSQY_REMOTE_SECRET from the launch environment. Optionally pin a signing public key and save it as a named profile.

  3. Click Test Connection to confirm the remote, then push, pull, or sync. Data is encrypted locally before upload, so only ciphertext leaves the machine (zero-knowledge).

Prefer the terminal? This screen runs

qnsqy push -i <input> --remote <profile> --password-stdin

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same configuration screen and inputs. A live upload needs a configured R2/S3 remote and credentials, so it is not run here on either OS.

Batch

Pro

Encrypt, decrypt, or verify many files in one run, in parallel, with a single password prompt.

  1. Open the QNSQY desktop app and choose Batch under OPERATIONS in the left rail. The Batch Operation panel opens.

    QNSQY Batch screen: Operation set to Encrypt, Mode set to Password, an empty file list reading 'No files added', an output-directory field with a Browse button, Compress and Paranoid-padding toggles, and a Parallel jobs selector set to Auto (CPU count).
    The Batch screen, pick the operation and mode, add files, then Encrypt All.
  2. Pick the Operation (Encrypt, Decrypt, or Verify) and the Mode (Password is shown here). Click + Add File to build the list, set an optional Output directory, and flip Compress or Paranoid padding if you want them. Parallel jobs defaults to Auto (CPU count).

  3. Click Encrypt All. QNSQY prompts for the password once, then processes every file and writes one .qs per input into the output directory.

Prefer the terminal? This screen runs

qnsqy batch encrypt <files...> --password-stdin

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Threshold & Split

Business

M-of-N recipient encryption and Shamir secret split/combine, so no single key holder can unlock the data alone.

  1. Open the app and choose Threshold under OPERATIONS. The screen stacks three tools: Split Secret (Shamir M-of-N), Combine Shares, and (scroll down) Threshold Encrypt.

    QNSQY Threshold screen showing a Split Secret panel labelled 'M-of-N Shamir sharing' with a file field, a Custom M/N values toggle, Required (M) set to 3 and Total (N) set to 5, plus a Combine Shares panel with an empty share list and a Threshold (M) field for reconstructing a secret.
    The Threshold screen, Split Secret (M-of-N Shamir), Combine Shares, and Threshold Encrypt.
  2. To split a secret, browse to the file, set Required (M) and Total (N) (defaults 3-of-5; flip Custom M/N values to change them), choose an output directory, and click Split. To reconstruct, add the share files under Combine Shares, set the threshold, and click Combine.

  3. To encrypt to a set of recipients instead, scroll to Threshold Encrypt, add each recipient’s public key and the number required (M), then encrypt, any M of the N key holders can later decrypt together.

Prefer the terminal? This screen runs

qnsqy threshold-encrypt -i <input> -m 2 -r <key1> -r <key2> -r <key3>

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same split, shown here completing end-to-end (5 shares, any 3 reconstruct).

Hash

Free & up

Compute or verify a cryptographic digest of a file (BLAKE3, SHA-2, SHA-3, and SHAKE).

  1. Open the app and choose Hash under TOOLS. QNSQY computes the digest in-process (no subprocess).

    QNSQY Hash / Verify screen: a Compute Hash panel labelled 'BLAKE3 or SHA3 file hashing' with a 'Select file to hash' field and Browse button, an Algorithm dropdown set to BLAKE3, a Result panel reading 'No hash computed yet', and an 'Expected hash (verify)' field.
    The Hash / Verify screen, choose a file and algorithm; the digest appears under Result.
  2. Browse to the file and pick the Algorithm (BLAKE3 by default; SHA-2, SHA-3, and SHAKE are in the list). Click Compute Hash and the digest shows under Result.

  3. To check a file against a known digest, paste it into Expected hash (verify) and click Verify, QNSQY reports whether it matches.

Prefer the terminal? This screen runs

qnsqy hash -i <input> -a blake3

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Secure Delete

Free & up

Overwrite a file’s contents, then unlink it, so the data is not left recoverable on disk.

  1. Open the app and choose Secure Delete under TOOLS. It overwrites the file’s bytes, then unlinks it.

    QNSQY Secure Delete screen: a 'File to Delete' panel labelled 'Overwrites data before removing' with a 'Select file to destroy' field and Browse button, a Passes dropdown set to '3 passes', an Options section, and Clear and Delete Permanently buttons.
    The Secure Delete screen, pick a file, choose the number of passes, then Delete Permanently.
  2. Browse to the file you want destroyed and set Passes (3 by default; more passes overwrite the data more times).

  3. Click Delete Permanently. QNSQY overwrites the file the chosen number of times, then removes it. This cannot be undone.

Prefer the terminal? This screen runs

qnsqy shred <file> -p 3

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same shredder, shown here completing end-to-end (green “Successful”).

Encoding

Free & up

Convert data between text encodings (Base64, Base64URL, Hex, Base32, Base58, URL, Binary, Octal, and Decimal).

  1. Open the app and choose Encoding under TOOLS. Conversions run in-process.

    QNSQY Encoding / Decoding screen: a Mode dropdown set to Encode, a Format dropdown set to 'Base64 (RFC 4648)', a large Input text box, Encode and Copy Result buttons, and a Result box reading 'Result will appear here...'.
    The Encoding / Decoding screen, set Mode and Format, paste your data, then Encode or Decode.
  2. Set Mode to Encode or Decode and pick the Format (Base64, Base64URL, Hex, Base32, Base32Hex, Base58, URL, Binary, Octal, or Decimal). Paste or type your data into Input.

  3. Click Encode (or Decode). The converted data appears under Result, and Copy Result puts it on the clipboard.

Prefer the terminal? This screen runs

qnsqy encode -i <input> -f base64

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same converter, shown here encoding end-to-end (Base64 result).

Random Gen

Free & up

Generate cryptographically secure random values straight from the operating system CSPRNG. Nothing is ever stored or logged.

  1. Open the app and pick Random Gen from the TOOLS group in the left rail. The Random Generator screen appears with a Generate panel above an empty Result panel.

    QNSQY Random Generator screen: a Generate panel with Type set to Password, Length 20 characters, and Uppercase, Numbers and Symbols toggles all on, above an empty Result panel reading 'Click Generate to create a random value'.
    The Random Generator screen: Type, Length, and character-set toggles, plus the note that all values come from the OS CSPRNG (getrandom) and are never stored or logged.
  2. Choose a Type (Password is shown) and a Length in characters (20), then set the Uppercase, Numbers, and Symbols toggles. All three are on by default.

  3. Click Generate (bottom right). The value appears in the Result panel. Every value is drawn from the OS CSPRNG (getrandom) and is never stored or logged.

Prefer the terminal? This screen runs

qnsqy generate-secret

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same generator, shown here producing a value end-to-end.

Verify Integrity

Free & up

Check that a .qs file's encrypted header is authentic and unmodified without needing the password. This is a fast pre-flight check, not full whole-file authentication.

  1. Open the app and choose Verify Integrity from the TOOLS group in the left rail. The File Integrity Check screen appears with a file picker and an empty Result panel.

    QNSQY Verify Integrity screen: a File Integrity Check panel with a 'Select encrypted file to verify' field and a Browse button, a Result panel reading 'No file verified yet', and an Equivalent command line box showing the qnsqy verify-integrity command with a Copy button.
    The Verify Integrity screen: pick a .qs file, then Verify Integrity. The live Equivalent command line mirrors the CLI.
  2. Click Browse and select the encrypted .qs file you want to check. No password is required; this reads only the header.

  3. Click Verify Integrity. The Result panel reports whether the encrypted header is authentic and unmodified. The screen also shows an Equivalent command line with a Copy button.

Prefer the terminal? This screen runs

qnsqy verify-integrity -i <input>

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Stego

Business

Hide encrypted data inside an ordinary-looking carrier (image, audio, PDF, or video) so the very existence of the message is concealed. Extract it later, or check a carrier's capacity first.

  1. Open the app and choose Stego from the ADVANCED group in the left rail. The Steganography screen opens on the Hide tab, with an Extract tab beside it.

    QNSQY Steganography screen on the Hide tab: a 'Hide Data in Carrier' panel with Secret file, Carrier file, and Output file pickers, a Method dropdown set to Password and a Cipher dropdown set to AES-256-GCM, Capacity and Hide Data buttons, and an Equivalent command line showing qnsqy stego hide.
    The Steganography Hide screen: secret, carrier, and output pickers with Method and Cipher, plus a live equivalent command line.
  2. Fill the three file fields with Browse: the Secret file to hide, the Carrier file (image, PDF, audio, or video), and the Output file. Then choose a Method (Password is shown) and a Cipher (AES-256-GCM).

  3. Click Hide Data to embed the encrypted secret into the carrier, or Capacity first to check how much the carrier can hold. The live Equivalent command line mirrors your choices.

Prefer the terminal? This screen runs

qnsqy stego hide -i <secret> --carrier <carrier> --recipient <key>

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Polyglot

Pro+

Build a single file that is simultaneously a valid PDF, ZIP, PNG, or JPEG and also carries an encrypted payload. It opens normally in its host application while your data stays hidden inside.

  1. Open the app and choose Polyglot from the ADVANCED group in the left rail. The Polyglot Files screen opens on the Create tab, with Extract and Detect tabs beside it.

    QNSQY Polyglot Files screen on the Create tab: a 'Create Polyglot File' panel with a Secret file picker, a Triple-carrier mode toggle, Carrier file and Output file pickers, a Self-extracting toggle, a Tripwire URL field, and a PQC Hybrid Encryption section with Recipients (0), plus Add Key and Contacts buttons, and a Hybrid (KEM + password) toggle with an AES-256-GCM dropdown.
    The Polyglot Create screen: secret, carrier, and output, with triple-carrier, self-extracting, tripwire, and optional PQC recipient (KEM) hybrid encryption.
  2. Pick the Secret file to embed, then a Carrier file (PDF, ZIP, PNG, or JPEG) and an Output file. Optionally turn on Triple-carrier mode (one file = JPEG + ZIP + PDF) or Self-extracting, and add recipients under PQC Hybrid Encryption for KEM instead of password-only.

  3. Click Create Polyglot. The output opens normally in its host application while carrying your encrypted payload inside. The Equivalent command line updates as you configure.

Prefer the terminal? This screen runs

qnsqy polyglot create -i <secret> --carrier <carrier> --recipient <key>

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

ABE

Pro & up (authority: Business)

Attribute-based encryption: encrypt so that only recipients whose attributes satisfy a policy expression, for example role=doctor AND clearance>=2, can decrypt. It rides the existing PQC multi-recipient KEM path, with no classical pairings, so it stays fully post-quantum.

  1. Open ABE under the ADVANCED group in the left rail. The screen opens on the Encrypt tab, with a row of tabs across the top: Encrypt, Inspect Policy, Authority, Issue, Seal, and Open. The panel header reads “Encrypt with Policy” and notes that recipients whose attributes satisfy the policy can decrypt with their normal private key.

    QNSQY ABE screen on the Encrypt tab: tabs for Encrypt, Inspect Policy, Authority, Issue, Seal and Open, with fields for input data, a recipient registry JSON, a policy expression, an output path, and a KEM level selector set to ML-KEM-512.
    The ABE screen (Encrypt tab): input data, recipient registry JSON, policy expression, output, and KEM level.
  2. Choose the input data with Browse, paste the recipient registry JSON (each entry pairs a public key with its attributes), and type the policy, for example (role=doctor AND dept=cardio) OR clearance>=4. Leave the KEM at ML-KEM-512 (Level 1) or pick a higher level, and set an output path or accept the default {input}.qsabe.

  3. Click “Encrypt with Policy”. For the full secret-sharing flow, use the Authority, Issue, Seal, and Open tabs instead; the Inspect Policy tab dry-runs a policy without encrypting anything.

Prefer the terminal? This screen runs

qnsqy abe seal --params <params> --policy "<expr>" --input <input>

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Deniable

Business

One container, two payloads: the real password reveals the real data and a decoy password reveals harmless decoy data. The output is indistinguishable from random, so no one can prove a hidden volume exists.

  1. Open Deniable under the ADVANCED group in the left rail. The screen shows two tabs, Create and Open, and opens on Create. The panel is titled “Create Deniable Volume” with the tagline “Two passwords, two payloads, one file.”

    QNSQY Deniable Encryption screen on the Create tab: fields for a real payload, a decoy payload and an output file, plus an optional PQC Hybrid Encryption section with a recipient public key field and a Hybrid (KEM + password) toggle set to AES-256-GCM.
    The Deniable screen (Create tab): real payload, decoy payload, output file, and an optional PQC-hybrid recipient.
  2. Pick the real payload (revealed by the real password) and the decoy payload (revealed by the decoy password), then set the output file. Optionally add a recipient public key and turn on “Hybrid (KEM + password)” to combine a post-quantum KEM with the passwords.

  3. Click “Create Volume”. You are prompted for two passwords (unless you use KEM-only mode); the output is indistinguishable from random, so no one can prove a hidden volume exists.

Prefer the terminal? This screen runs

qnsqy deniable create --real <real> --decoy <decoy> --output <out>

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same dual-payload screen and inputs. The real and decoy passwords are entered in a separate secure-entry terminal; the completed .qs round-trip is shown in the command-line clip below.

Timelock

Business

Encrypt so the data cannot be decrypted until a chosen duration of sequential computation has elapsed. It uses an RSW time-lock puzzle, so the delay cannot be skipped by throwing more machines at it.

  1. Open Timelock under the ADVANCED group in the left rail. The screen has Encrypt and Decrypt tabs and opens on Encrypt. The panel is titled “Lock File” with the note “Encrypt with time delay (RSW puzzle).”

    QNSQY Time-Lock Encryption screen on the Encrypt tab: a File to time-lock field, an Output file field, a Lock duration selector set to 1 hour, and Calibrate and Time-Lock buttons.
    The Timelock screen (Encrypt tab): file to time-lock, output, and a Lock duration selector (here 1 hour).
  2. Choose the file to time-lock with Browse, set an output path, and pick a Lock duration (the selector shows presets such as 1 hour). Optionally click Calibrate first so the puzzle is sized to this machine's speed.

  3. Click “Time-Lock”. The file cannot be decrypted until that much sequential computation has elapsed; decrypting later solves the puzzle and takes roughly the chosen duration.

Prefer the terminal? This screen runs

qnsqy timelock encrypt -i <input> --duration 24h

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Keyfile

Pro & up

Encrypt with a 256-bit key file, something you have, instead of a password. Anyone who holds the key file can decrypt, so guard it like a physical key.

  1. Open Keyfile under the ADVANCED group in the left rail. The screen stacks three sections: Key File (select or generate a 256-bit AES key), Encrypt (encrypt a file with the selected key), and Decrypt (decrypt a file that used symmetric key encryption).

    QNSQY Keyfile Encryption screen: a Key File section with a select-or-generate key-file field and a Generate Key button, an Encrypt section with Input and Output fields and an Encrypt button, and a Decrypt section with Input and Output fields and a Decrypt button.
    The Keyfile screen: a Key File selector/generator on top, then Encrypt and Decrypt sections.
  2. In the Key File section, Browse to an existing 256-bit key file or click “Generate Key” to create a new random one. Then, in the Encrypt section, choose the file to encrypt and an optional output path.

  3. Click “Encrypt” to produce a .qskf file. To reverse it, use the Decrypt section with the same key file. Keep the key file safe: anyone who holds it can decrypt your data.

Prefer the terminal? This screen runs

qnsqy keyfile encrypt -i <input> -k <keyfile>

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Rekey

Pro

Change the password on an encrypted .qs file without re-encrypting the data itself. Only the password wrapping is replaced, so it is fast even for very large files.

  1. Open Rekey (under Manage). Click Browse and choose the encrypted .qs file whose password you want to change.

    The Rekey (Change Password) screen on Linux
    Rekey / Change Password (Linux)
  2. Click Change Password. You are prompted for the current password, then the new password. Only the password wrapping is rewritten; the encrypted data is not touched.

  3. The file is updated in place. The Equivalent command line panel shows the exact qnsqy rekey command.

Prefer the terminal? This screen runs

qnsqy rekey --file locked.qs

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Audit

Pro

Read this device’s append-only, tamper-evident audit log of operations, export it for a SIEM, and verify its hash chain.

  1. Open Audit (under Manage). Click Load to read this device’s append-only audit log. Use Options to filter to security-relevant events only.

    The Audit Log screen on Linux
    Audit Log (Linux)
  2. Click Verify to check the log’s tamper-evident hash chain. A broken chain means the log was altered.

  3. Click Export to write the log out (CSV, JSON, syslog or CEF) for a SIEM.

Prefer the terminal? This screen runs

qnsqy audit --verify

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same log load, shown here completing end-to-end (entries loaded).

Scanner

Free (all tiers)

Scan a directory for data still protected by classical, non-quantum-safe cryptography (RSA, ECC and similar) and get concrete post-quantum replacement recommendations for each finding.

  1. Open Scanner (under Manage). Click Browse and pick a directory to scan for classical, non-quantum-safe cryptography.

    The Cryptography Scanner screen on Linux
    Cryptography Scanner (Linux)
  2. Turn on Recursive scan to include subfolders, and pick a Report format (Text, JSON, and so on).

  3. Click Start Scan. Findings appear in the results panel: GPG/PGP keys, X.509 certificates, SSH keys, PKCS#12, Java keystores, Age files and more, each with a post-quantum recommendation.

Prefer the terminal? This screen runs

qnsqy scan ~/Documents

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Migrate

Business

Find data protected by classical cryptography and migrate it to post-quantum protection. Preview everything with a dry run first, and keep a full backup during the real migration.

  1. Open Migrate (under Manage). Click Browse to choose the directory to scan and migrate, and a separate backup directory for the original files.

    The Migrate to Post-Quantum screen on Linux
    Migrate to Post-Quantum (Linux)
  2. Turn on Recursive scan to include subfolders. Leave Inventory my QNSQY files off unless you are cataloguing files you already encrypted.

  3. Click Scan Directory to preview, then migrate the vulnerable files to the quantum-safe .qs format. The originals are copied to your backup directory first.

Prefer the terminal? This screen runs

qnsqy migrate ~/legacy --backup-dir ~/backup

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Policy

Business

View and set a local organization policy (minimum password length; require signature, hybrid, or audit; auto-shred) enforced on this device.

  1. Open Policy (under Manage). Click Init Policy once to create the local policy file, then Show Policy to view the current settings.

    The Security Policy screen on Linux
    Security Policy (Linux)
  2. Under Set Policy Value, pick a key (for example min_password_length) and enter a value (a number, true/false, an algorithm like ml-kem768, or none).

  3. Click Set Value. The organization policy floor still applies on top of any local value.

Prefer the terminal? This screen runs

qnsqy policy show

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Groups

Business

Manage local recipient groups: named collections of public keys you can threshold-encrypt to with --group.

  1. Open Groups (under Manage). Type a Group Name and click Create to make a new recipient group.

    The Recipient Groups screen on Linux
    Recipient Groups (Linux)
  2. To add a member, enter a Member Label, click Browse to pick that member’s public key file, then click Add Member.

  3. Use List, Show, Remove and Delete to manage groups. Encrypt to a whole group later with --group.

Prefer the terminal? This screen runs

qnsqy group create board

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same screen and inputs. The completed operation and its result are shown in the Linux clip above.

Escrow

Business

Generate an organization escrow key and use it to recover encrypted data when an individual key is lost, for example a departed employee’s files. Guard the escrow bundle carefully.

  1. Open Escrow (under Manage). Under Generate Escrow Keys, enter your Organization name and an output directory, then generate the escrow key pair. Store the private bundle offline.

    The Escrow Recovery screen on Linux
    Escrow Recovery (Linux)
  2. To recover data, use Escrow Decrypt: pick the encrypted file, the escrow private key bundle, and an output file.

  3. Click the matching action button. Escrow lets an organization recover a file when the individual key is lost.

Prefer the terminal? This screen runs

qnsqy escrow-keygen --org "Acme Health"

Watch (Linux GUI)

Watch (Windows GUI)

On Windows 11 (Business tier): the same escrow screen and inputs, shown filled and ready. A live key-generation run is not captured on either OS because it writes private escrow key material.

Account & Billing

All tiers Command-line

Manage your QNSQY account from the terminal: sign in, check your tier, credits and usage, manage devices and API keys, and sync receipts. Your tier is always decided by the billing server at runtime.

This is a command-line feature, there is no dedicated GUI screen in the app. Run it from a terminal (Linux/macOS/Windows). The same binary and flags work everywhere.

qnsqy account <info|set-company|set-user|set-email|set-org|new-key|list-keys|revoke-key> ; qnsqy login/logout/signup/status/usage/quickstart/reset-state ; devices <list|remove|rename> ; receipts <sync|verify|status>

Linux

qnsqy status        (tier, credits, plan)
qnsqy login -e [email protected]
qnsqy usage

Windows (PowerShell)

qnsqy.exe status
FlagValueWhat it does
account info | account set-*<VALUE>View or set account fields (set-company/user/email/org).
login -e, --email<EMAIL>Sign in with this email; password is prompted.
login --sso<slug>Sign in through your organization's SSO.
signup --email<EMAIL>Email for a new account.
signup --name<NAME>Name for a new account.
signup --no-auto-loginflagCreate the account without logging in.
receipts syncflagSync receipts from the billing server (network).
receipts verifyflagVerify receipts locally.
receipts statusflagShow receipt status.
devices listflagList your enrolled devices.
devices remove<ID>Remove a device by ID.
devices rename<ID> <NAME>Rename a device.

Output (qnsqy status ; qnsqy usage)

QNSQY Account Status
Logged in:    Yes
Tier:         Business
Plan:         business_yearly
Usage:        Unlimited
Period ends:  2026-09-15T02:10:15.526Z

Manage subscription: https://quantumsequrity.com/dashboard

QNSQY Billing Usage
===================
Plan:   Business
Usage:  Unlimited
Usage:  [------------------------------------] 0.0%

Watch (Linux CLI): qnsqy status ; qnsqy usage

A real logged-in Business account on Linux. Your tier and usage are decided by the billing server at runtime, not baked into the binary.

Version & algorithm inventory

qnsqy version --verbose prints the build version and the full set of algorithms your tier can use (KEM, signatures, AEAD, KDF, hashing) plus the credit-free rules.

qnsqy version --verbose

Watch (Linux CLI): qnsqy version --verbose

Common combinations

First-time interactive setup (account creation, login, first encryption)

qnsqy quickstart

Reset corrupted local state (rate-limit, audit-log or config errors)

qnsqy reset-state

List your devices

qnsqy devices list

Rotate an API key

qnsqy account new-key --name laptop ; qnsqy account revoke-key <OLD_ID>

Provenance

Business Command-line

Create an on-device signing identity and stamp files with a tamper-evident provenance trailer, so you can later prove which enrolled device produced a given file.

This is a command-line feature, there is no dedicated GUI screen in the app. Run it from a terminal (Linux/macOS/Windows). The same binary and flags work everywhere.

qnsqy provenance <enroll|sign|verify|scan|keys|trust>

Linux

qnsqy provenance enroll --algorithm ml-dsa87
qnsqy provenance sign report.txt -y            (appends a QPRV trailer IN-PLACE; -y to skip the destructive-op confirm)
qnsqy provenance verify report.txt

Windows (PowerShell)

add --acknowledge-no-sandbox; qnsqy.exe.
FlagValueWhat it does
enroll --algorithmml-dsa44|65|87Algorithm for the on-device identity (default ml-dsa87).
sign <FILE><FILE>Sign a file; appends a QPRV trailer in place (irreversible).
sign -yflagSkip the destructive-operation confirmation.
sign -fflagForce.
verify <FILE><FILE>Verify a file's provenance trailer.
verify --expect-key-id<KEY_ID>Require a specific signing key ID.
verify --require-signedflagFail if the file is not signed.
scan <DIR><DIR>Scan a directory for provenance.
scan -rflagRecurse into subdirectories.
scan --expect-key-id<KEY_ID>Require a specific key ID during the scan.
scan --allow-unsignedflagPermit unsigned files during the scan.
keysflagList provenance keys.
trust <KEY_ID><KEY_ID>Trust another account's key.

Output

Enrolled provenance identity.
key_id:    0748b1c59e4e0f17169653c9e9f0242a
algorithm: MlDsa44
Private key stored on this device only (machine-key wrapped).

Common combinations

Prove a whole release tree

provenance scan ./release -r

Trust another account's key

provenance trust <KEY_ID>

Watch (Linux CLI)

A real enroll → sign → verify flow on Linux (device identity, QPRV trailer, verified INTACT with ML-DSA-87).

Watch (Windows CLI)

Command-line usage on Windows 11 (--help). The written examples above show the full invocation; a real run is not shown here (it needs keys/setup or would print secret material).

Key import/export

Pro & up Command-line

Move keys in and out of the managed keystore: export a key (public-only to share) or import someone else's public key.

This is a command-line feature, there is no dedicated GUI screen in the app. Run it from a terminal (Linux/macOS/Windows). The same binary and flags work everywhere.

qnsqy key-export ; qnsqy key-import

Linux

qnsqy key-export --name alice --output alice.pub --public-only
qnsqy key-import --file bob.pub --name bob

Windows (PowerShell)

qnsqy.exe key-export ... ; qnsqy.exe key-import ...
FlagValueWhat it does
key-export --name<NAME>Name of the keystore key to export
key-export --output<FILE>File to write the exported key to
key-export --public-onlyExport just the shareable public key
key-import -f, -i, --file<FILE>Key file to import (aliases -i/--input)
key-import --name<NAME>Name to store the imported key under
key-import --forceOverwrite an existing key (long option only)

Output

[documented from §7, moves keys in/out of the managed keystore. --public-only exports just the shareable public key.]

Documented from the verified --help; not run live here.

Common combinations

Export only the public key to share

qnsqy key-export --name alice --output alice.pub --public-only

Import a colleague's public key

qnsqy key-import --file colleague.pub --name colleague

Watch (Windows CLI)

Command-line usage on Windows 11 (--help). The written examples above show the full invocation; a real run is not shown here (it needs keys/setup or would print secret material).

Release signing

Tooling Command-line

Sign and verify release artifacts with a detached ML-DSA-87 (NIST FIPS 204, level 5) signature for supply-chain integrity.

This is a command-line feature, there is no dedicated GUI screen in the app. Run it from a terminal (Linux/macOS/Windows). The same binary and flags work everywhere.

qnsqy sign-release --input <ARTIFACT> --key <PRIV> --output <SIG> ; qnsqy verify-release <ARTIFACT> <SIGNATURE> [--pubkey <hex|@file>]

Linux

qnsqy sign-release --input qnsqy-7.2.39.tar.gz --key release.key --output qnsqy-7.2.39.sig
qnsqy verify-release qnsqy-7.2.39.tar.gz qnsqy-7.2.39.sig --pubkey @release.pub.hex

Windows (PowerShell)

qnsqy.exe sign-release ... ; qnsqy.exe verify-release ...
FlagValueWhat it does
sign-release --input<ARTIFACT>Artifact to sign
sign-release --key<PRIV>ML-DSA-87 private signing key
sign-release --output<SIG>Detached signature file to write
sign-release --hexWrite the signature hex-encoded
verify-release ARTIFACT<ARTIFACT>Artifact to verify (positional)
verify-release SIGNATURE<SIGNATURE>Signature file (positional)
verify-release --pubkey<hex|@file>Public key as raw hex or @file (5184 hex chars for ML-DSA-87)

Output

Signed: qnsqy-7.2.39.tar.gz
Algorithm:  ML-DSA-87 (NIST FIPS 204, level 5)
Artifact:   qnsqy-7.2.39.tar.gz
Signature:  qnsqy-7.2.39.sig (4627 bytes raw)

Common combinations

Write a hex-encoded signature

qnsqy sign-release --input app --key k --output app.sig --hex

Supply-chain gate in CI

qnsqy verify-release app app.sig --pubkey @trusted.hex

Watch (Windows CLI)

Command-line usage on Windows 11 (--help). The written examples above show the full invocation; a real run is not shown here (it needs keys/setup or would print secret material).

Choosing the algorithm

QNSQY is a full post-quantum toolkit, not a single-cipher app. You choose the method (password, public key, or a hybrid of both), the KEM family and security level for encryption (ML-KEM-512/768/1024, or HQC), and the signature family (ML-DSA, SLH-DSA, FN-DSA, or stateful LMS) with its level. This section shows where those choices live in the GUI and on the command line. Which options you can pick depends on your tier.

In the GUI

On the Encrypt screen, open Encryption Method to switch between password, public key and hybrid, then expand Advanced (Business) to pick the cipher and KDF. On the Keys screen, the Algorithm and Security Level dropdowns choose the exact PQC scheme your keypair uses.

Encrypt: the Encryption Method dropdown (Password / Public Key / Password + Key / Symmetric Key)
Encrypt: the Encryption Method dropdown (Password / Public Key / Password + Key / Symmetric Key)
The same Encryption Method dropdown on Windows 11 (Business tier)
The same Encryption Method dropdown on Windows 11 (Business tier)
Encrypt: the Advanced (Business) section expanded (cipher + KDF preset, with the Business tier label)
Encrypt: the Advanced (Business) section expanded (cipher + KDF preset, with the Business tier label)
Encrypt: the Cipher dropdown (ML-KEM + AES-256-GCM, or + XChaCha20-Poly1305)
Encrypt: the Cipher dropdown (ML-KEM + AES-256-GCM, or + XChaCha20-Poly1305)
Keys: the Encryption Algorithm dropdown (ML-KEM / HQC)
Keys: the Encryption Algorithm dropdown (ML-KEM / HQC)
The same Encryption Algorithm dropdown on Windows 11 (ML-KEM / HQC)
The same Encryption Algorithm dropdown on Windows 11 (ML-KEM / HQC)
Keys: the KEM Security Level dropdown (ML-KEM-512 = L1, 768 = L3, 1024 = L5)
Keys: the KEM Security Level dropdown (ML-KEM-512 = L1, 768 = L3, 1024 = L5)
The same KEM Security Level dropdown on Windows 11 (512 = L1, 768 = L3, 1024 = L5)
The same KEM Security Level dropdown on Windows 11 (512 = L1, 768 = L3, 1024 = L5)
Keys: the Signing Algorithm dropdown (ML-DSA, SLH-DSA, FN-DSA, LMS and hybrids)
Keys: the Signing Algorithm dropdown (ML-DSA, SLH-DSA, FN-DSA, LMS and hybrids)
Keys: the ML-DSA Security Level dropdown (Level 2 / 3 / 5)
Keys: the ML-DSA Security Level dropdown (Level 2 / 3 / 5)

The three encryption methods

The Method dropdown maps to three ways to lock a file. Here is each one run end to end on the command line:

1. Password (Argon2id) — anyone with the password can open it

qnsqy encrypt -i doc.txt -o doc-pw.qs --password-stdin → “Encrypted to: doc-pw.qs”.

2. Public key (recipient) — no password, opens only with the matching private key

qnsqy encrypt … --recipient vaultkey.pub → algorithm ML-KEM-1024 + X25519, no password required.

3. Hybrid (public key + password) — needs BOTH to open

qnsqy encrypt … --recipient vaultkey.pub --hybrid --password-stdin → ML-KEM-1024 + X25519. Decrypt needs both the private key AND the password.

On the command line

Every choice is a flag, so scripts pin the exact algorithm:

qnsqy keygen-enc --name alice --algorithm ml-kem1024      # Pro: ML-KEM-1024 + X25519
qnsqy keygen-sign --name signer --algorithm ml-dsa87     # Pro: ML-DSA-87 (Level 5)
qnsqy encrypt -i report.txt -o report.qs --recipient alice.pub --hybrid    # KEM + password
qnsqy encrypt -i report.txt -o report.qs --password-stdin --algorithm x-cha-cha20-poly1305   # Pro: XChaCha20

Watch (Linux CLI): keygen-enc --algorithm ml-kem1024

Watch (Linux CLI): keygen-sign --algorithm ml-dsa87

Watch (Linux CLI): encrypt --recipient --hybrid (ML-KEM-1024 + X25519)

Watch (Linux CLI): symmetric --algorithm xchacha20-poly1305

In the TUI

Run qnsqy --tui, highlight an operation with j/k and press Enter. The configure form exposes the same choices, including an Algorithm field you cycle with Enter, and a live Equivalent command line. Here it is on Windows:

The QNSQY TUI operation menu on Windows 11 at Business tier
The QNSQY TUI on Windows 11 (Business tier) — the full operation menu
Keygen (Encryption) in the Linux TUI showing the Algorithm field
The same Keygen (Encryption) Algorithm field in the Linux TUI
Keygen (Encryption) in the Windows TUI showing the Algorithm field and equivalent command line
Keygen (Encryption) in the Windows TUI — the Algorithm field (< ml-kem512 >) with the live qnsqy keygen-enc --algorithm ml-kem512

Watch (Windows TUI): menu → Keygen algorithm form

Signing algorithm selection in the Linux TUI
Choosing the signing algorithm in the Linux TUI (ML-DSA / SLH-DSA / FN-DSA / LMS and hybrids)

Watch (Linux TUI): choosing the signing algorithm

Windows shows the same dropdowns and accepts the same flags. The Windows captures of the Method, Algorithm and Security-Level pickers are shown alongside their Linux counterparts above.

Tiers: Free, Pro & Business

Free Pro Business

Your tier is decided at runtime by the billing server, and it controls which post-quantum algorithms and features you can use. Free covers the NIST primary picks so anyone can go quantum-safe; Pro adds the higher security levels, hybrids and the classic algorithm-agility tools; Business unlocks everything, including HQC, the pure (no-X25519) variants, FN-DSA and stateful LMS.

At a glance

Encryption (KEM): Free: ML-KEM-512 hybrid only. Pro: ML-KEM-512/768/1024 hybrid. Business: all (adds HQC-128/192/256, all *-pure no-X25519 variants).

Signatures: Free: ML-DSA-44 only. Pro: ML-DSA-44/65/87 + SLH-DSA (128s/f,192s/f,256s/f) + their Ed25519 hybrids. Business: all (adds FN-DSA-512/1024 + hybrids, LMS).

Symmetric cipher: AES-256-GCM is the default (used by all tiers). Explicit --algorithm selection (incl. XChaCha20-Poly1305) requires Pro/Business.

Key-encapsulation (encryption) algorithms

AlgorithmNIST levelMinimum tierNotes
ML-KEM-512L1FreeML-KEM-512 + X25519 hybrid
ML-KEM-768L3Prohybrid
ML-KEM-1024L5Prohybrid
HQC-128BusinessHQC-128 + X25519
HQC-192BusinessHQC-192 + X25519
HQC-256BusinessHQC-256 + X25519
ML-KEM-512-pureBusinessno X25519
ML-KEM-768-pureBusinessno X25519
ML-KEM-1024-pureBusinessno X25519
HQC-128-pureBusinessno X25519
HQC-192-pureBusinessno X25519
HQC-256-pureBusinessno X25519

Signature algorithms

AlgorithmNIST levelMinimum tierNotes
ML-DSA-44L2FreeNIST PQC Level 2, all tiers, default
ML-DSA-65L3ProNIST PQC Level 3
ML-DSA-87L5ProNIST PQC Level 5
SLH-DSA-128sProFIPS 205, small signatures
SLH-DSA-128fProFIPS 205, fast signing
SLH-DSA-192sProFIPS 205, small signatures
SLH-DSA-192fProFIPS 205, fast signing
SLH-DSA-256sProFIPS 205, small signatures
SLH-DSA-256fProFIPS 205, fast signing
ML-DSA-44 + Ed25519L2Prohybrid
ML-DSA-65 + Ed25519L3Prohybrid
ML-DSA-87 + Ed25519L5Prohybrid
FN-DSA-512BusinessFIPS 206 draft, Falcon
FN-DSA-1024BusinessFIPS 206 draft, Falcon
FN-DSA-512 + Ed25519Businesshybrid
FN-DSA-1024 + Ed25519Businesshybrid
SLH-DSA-128s + Ed25519Prohybrid
SLH-DSA-128f + Ed25519Prohybrid
SLH-DSA-192s + Ed25519Prohybrid
SLH-DSA-192f + Ed25519Prohybrid
SLH-DSA-256s + Ed25519Prohybrid
SLH-DSA-256f + Ed25519Prohybrid
LMS-SHA256-H5-W1BusinessSP 800-208, 32 signatures
LMS-SHA256-H10-W2BusinessSP 800-208, ~1K signatures
LMS-SHA256-H15-W4BusinessSP 800-208, ~32K signatures
LMS-SHA256-H20-W8BusinessSP 800-208, ~1M signatures

SLH-DSA above is the FIPS 205 SHA-2 family. QNSQY can also verify SLH-DSA-SHAKE signatures for interoperability, but SHAKE is not offered as a key-generation choice in any interface, so it is not listed as a selectable algorithm.

Symmetric cipher (AEAD)

AlgorithmMinimum tierNotes
AES-256-GCMAll tiersDefault AEAD, used by every tier. Selecting it explicitly (over another cipher) needs Pro.
XChaCha20-Poly1305ProExplicit selection with --algorithm x-cha-cha20-poly1305 (Pro / Business).

Tier is always determined at runtime by the billing server. Every algorithm ships in every build; the ones above your tier are simply refused at runtime, never silently downgraded. Free also caps data size at 100 MB; Pro and Business raise or remove that.