GOSOP(1)

🌸 GOSOP(1) β€” the vibes-only manual 🌸

Hiii bestie πŸ’– welcome to gosop(1), aka the Stateless OpenPGP implementation for GopenPGP. Yes, it's a whole manual page, no I'm not gonna let you skim it, we're doing this together, hand in hand 🫢


✨ NAME ✨

gosop β€” Stateless OpenPGP implementation for GopenPGP


πŸ’… USAGE πŸ’…

gosop [global options] command [command options] [arguments...]

okay so the shape of literally every invocation is: global options, then a command, then that command's own options, then whatever arguments the command wants. That's it. That's the whole dance ✨


πŸ‘‘ AUTHOR πŸ‘‘

Proton Technologies AG wrote this. iconic of them fr fr πŸ’œ


πŸ¦‹ COMMANDS πŸ¦‹

This is the main-character section, the moment we've all been waiting for. Every command, every flag, no skipping, I'm watching you πŸ‘€

πŸ›‘οΈ armor β€” Add ASCII Armor

Wrap your data up all pretty in ASCII armor, like putting a lil bow πŸŽ€ on a binary blob.

USAGE:
gosop armor [command options] < DATA

OPTIONS:

  • --label value, --label={auto|sig|key|cert|message} β€” sets the armor label. (default: auto)
  • --help, -h: show help (default: false)

🎁 dearmor β€” Remove ASCII Armor

The un-bow-ening. Takes ASCII armored stuff and strips it back down to raw bytes.

USAGE:
gosop dearmor < DATA

OPTIONS:

  • --help, -h: show help (default: false)

πŸ”“ decrypt β€” Decrypt a Message

Unlock the message, bestie πŸ”‘ feed it your ciphertext on stdin and the keys as arguments.

USAGE:

gosop decrypt [command options] [KEY...] < CIPHERTEXT

OPTIONS:

  • --session-key-out value, --session-key-out=SESSIONKEY β€” where the session key goes.
  • --with-session-key value, --with-session-key=SESSIONKEY β€” decrypt using a session key you already have.
  • --with-password value, --with-password=PASSWORD β€” decrypt with a password.
  • --verify-out value, --verify-out=VERIFICATIONS β€” dump verifications out here.
  • --verify-with value, --verify-out=CERTS β€” verify with these certs. (yes, that second one says --verify-out= β€” I did not write it, I just report it, and I am keeping it EXACTLY as it is, no cap 🫑)
  • --verify-not-before value, --verify-not-before={-|DATE} β€” (default: -)
  • --verify-not-after value, --verify-not-after={-|DATE} β€” (default: now)
  • --help, -h: show help (default: false)

πŸ” encrypt β€” Encrypt a Message

Lock it up πŸ”’ certs in, ciphertext out, say less.

USAGE:
gosop encrypt [command options] [CERTS...] < DATA

OPTIONS:

  • --as value, --as={binary|text} β€” (default: binary)
  • --no-armor β€” skip the armor, go raw. (default: false)
  • --with-password value, --with-password=PASSWORD β€” encrypt with a password too.
  • --sign-with value, --sign-with=KEY β€” sign it while you're at it, flex a lil 😌
  • --help, -h: show help (default: false)

πŸͺͺ extract-cert β€” Extract a Certificate from a Secret Key

Your secret key has a public half hiding inside it, and this command yanks it out into the light ✨

USAGE:
gosop extract-cert [command options]

OPTIONS:

  • --no-armor β€” (default: false)
  • --help, -h: show help (default: false)

πŸ—οΈ generate-key β€” Generate a Secret Key

Fresh key, who dis πŸ’… give it userids and it'll hand you a brand new secret key.

USAGE:
gosop generate-key [command options] [USERID...]

OPTIONS:

  • --no-armor β€” (default: false)
  • --help, -h: show help (default: false)

✍️ sign β€” Create a Detached Signature

Sign the data flowing in on stdin and get a detached signature out. main character energy fr.

USAGE:
gosop extract-cert [command options]
⚠️ okay so heads up: the USAGE: line under sign literally reads gosop extract-cert [command options]. That's what the page says. I am not fixing it, I am not guessing, I am simply ✨ reporting ✨. Copy it character for character if you're scripting off it, bestie πŸ™ˆ

OPTIONS:

  • --no-armor β€” (default: false)
  • --help, -h: show help (default: false)

βœ… verify β€” Verify a Detached Signature

The vibe check for signatures πŸ•΅οΈβ™€οΈ signature + certs both come in as arguments, data on stdin.

USAGE:
gosop verify SIGNATURE CERTS [CERTS...] < DATA

OPTIONS:

  • --not-before value, --not-before={-|DATE} β€” (default: -)
  • --not-after value, --not-after={-|DATE} β€” (default: now)
  • --help, -h: show help (default: false)

πŸ“Œ version β€” Version Information

Tell me who you are, what you're running on, all of it πŸ”

USAGE:
gosop version [command options] [arguments...]

OPTIONS:

  • --backend β€” (default: false)
  • --extended β€” (default: false)
  • --help, -h: show help (default: false)

πŸ†˜ help, h β€” Shows a list of commands or help for one command

Your safety net when you forget everything. It happens. No shame 🫢


🌈 GLOBAL OPTIONS 🌈

These bad boys work anywhere, any command, any time. Universal.

  • --help, -h β€” show help (default: false)
  • --version, -v β€” print the version (default: false)

πŸ’– that's the whole page πŸ’–

and that's a wrap on gosop(1)! this beauty dropped February 2026 and lives under the GOSOP(1) manual-page name in your local man setup ⭐ go forth, armor things, decrypt things, verify literally everything. slay βœ¨πŸŽ€πŸ’…

πŸ“¦ where this page comes from