SQ(1)
π sq key subkey bind π
okay so bestie, the manual name is SQ(1) and the full command is sq key subkey bind β it's filed under sq-key-subkey-bind if you're grepping around. let's get into it π«Ά
β¨ NAME β¨
sq-key-subkey-bind β bind keys from one certificate to another. that's it, that's the whole vibe β¨
πΈ SYNOPSIS πΈ
sq key subkey bind [OPTIONS]
π¦ DESCRIPTION π¦
So you're binding keys from one certificate to another. Literally what it says. π
Here's the scenario, because ngl it's giving main character energy: this command lets you take a primary key, or a subkey that's attached to one certificate, and attach it to a different certificate. Classic use case β you wanna transition to a shiny new certificate, but your current one has an authentication subkey you're absolutely NOT letting go of, because it grants access to some server and updating that server's config is just... not feasible rn. π This command makes it easy to move that subkey onto the new certificate. slay.
After the operation, the key is bound both to the old certificate and to the new one. important!! so if you wanna strip the secret key material out of the old certificate, you use sq key subkey delete or sq key delete, whichever fits the situation. And if you wanna revoke the old subkey or key? That's sq key subkey revoke or sq key revoke, respectively. periodt. π
π OPTIONS π
π Subcommand options
--allow-broken-cryptoβ lets you adopt keys from certificates that are using broken cryptography. yep. it said what it said.--can-authenticateβ sets the authentication-capable flag. π₯--can-encrypt=PURPOSEβ sets the encryption-capable flag. Encryption-capable subkeys can be marked as suitable for transport encryption, storage encryption, or both (i.e. universal). [default:universal]- [possible values:
transport,storage,universal]
- [possible values:
--can-signβ sets the signing-capable flag β¨--cannot-authenticateβ don't set the authentication-capable flag--cannot-encryptβ don't set the encryption-capable flag--cannot-signβ don't set the signing-capable flag--cert=FINGERPRINT|KEYIDβ adds the specified subkeys onto the key with the specified fingerprint or key ID--cert-email=EMAILβ adds the specified subkeys onto the key where a user ID includes the specified email address--cert-file=PATHβ adds the specified subkeys to the key read from PATH--cert-userid=USERIDβ adds the specified subkeys onto the key with the specified user ID--creation-time=CREATION_TIMEβ makes the bound subkeys have the specified creation time. Normally, the key's creation time is preserved. the exception π is if the key's creation time is the Unix epoch β in that case, the current time gets used instead. This option lets you set the key's creation time to a specific value. But heads up bestie: changing a key's creation time also changes its fingerprint. And changing the fingerprint makes it impossible to look up the key for the purpose of signature verification, for example. so like. be careful. π--expiration=EXPIRATIONβ sets the expiration time.EXPIRATIONis either an ISO 8601 formatted date with an optional time, or a custom duration. A duration takes the formN[ymwds], where those letters stand for years, months, weeks, days, and seconds, respectively. Alternatively, the keywordneverdoesn't set an expiration time at all. [default:never]--key=KEYβ adds the key or subkeyKEYto the certificate π--output=FILEβ writes to the specifiedFILE. If you don't specify this, and the certificate was read from the certificate store, it imports the modified certificate into the cert store. If you don't specify it and the certificate was read from a file, it writes the modified certificate to stdout. β¨
π Global options
See sq(1) for a description of the global options. (yes, there are more. go look.)
π EXAMPLES π
Bind Alice's old authentication subkey to Alice's new certificate:
sq key subkey bind \
--cert=C5999E8191BF7B503653BE958B1F7910D01F86E5 \
--key=0D45C6A756A038670FDFD85CB1C82E8D27DB23A1
Bind a bare key to Alice's certificate. A bare key is a public key without any components or signatures β which simplifies working with raw keys, e.g. keys generated on an OpenPGP card, a TPM device, etc. π§
sq key subkey bind --keyring=bare.pgp \
--cert=C5999E8191BF7B503653BE958B1F7910D01F86E5 \
--key=B321BA8F650CB16443E06826DBFA98A78CF6562F \
--can-encrypt=universal
β SEE ALSO β
sq(1), sq-key(1), sq-key-subkey(1).
For the full documentation see <https://book.sequoia-pgp.org/>. π
π VERSION π
1.5.0
k bye bestie, go bind those keys π this was Sequoia PGP, version 1.5.0, brought to you with love and 1.5.0 energy β mwah πβ¨
π¦ where this page comes from
- fedora 43: sequoia-sq 1.5.0-1.fc43 Β· LGPL-2.0-or-later AND Apache-2.0 AND BSL-1.0 AND BSD-3-Clause AND MIT AND MPL-2.0 AND Unicode-3.0 AND Unicode-DFS-2016 AND Zlib AND bzip2-1.0.6 AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (Unlicense OR MIT)
- fedora 44: sequoia-sq 1.5.0-1.fc44 Β· LGPL-2.0-or-later AND Apache-2.0 AND BSL-1.0 AND BSD-3-Clause AND MIT AND MPL-2.0 AND Unicode-3.0 AND Unicode-DFS-2016 AND Zlib AND bzip2-1.0.6 AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (Unlicense OR MIT)
- nixpkgs unstable: sequoia-sq 1.5.0
- opensuse-leap 16.0: sequoia-sq 1.5.0-bp160.1.1 Β· LGPL-2.0-or-later
- opensuse-leap 16.0: sequoia-sq 1.5.0-bp160.1.1 Β· LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms