1.3.1
sq-packet - Low-level packet manipulation
sq packet armor
[OPTIONS] FILE
sq packet
dearmor [OPTIONS] FILE
sq packet dump
[OPTIONS] FILE
sq packet
decrypt [OPTIONS] FILE
sq packet split
[OPTIONS] FILE
sq packet join
[OPTIONS] FILE
Low-level packet manipulation.
An OpenPGP data stream consists of packets. These tools allow working with packet streams. They are mostly of interest to developers, but sq packet dump may be helpful to a wider audience both to provide valuable information in bug reports to OpenPGP-related software, and as a learning tool.
Convert binary to ASCII.
To make encrypted data easier to handle and transport, OpenPGP data can be transformed to an ASCII representation called ASCII Armor. sq emits armored data by default, but this subcommand can be used to convert existing OpenPGP data to its ASCII-encoded representation.
The converse operation is sq packet dearmor.
Convert ASCII to binary.
To make encrypted data easier to handle and transport, OpenPGP data can be transformed to an ASCII representation called ASCII Armor. sq transparently handles armored data, but this subcommand can be used to explicitly convert existing ASCII-encoded OpenPGP data to its binary representation.
The converse operation is sq packet armor.
List packets.
Creates a human-readable description of the packet sequence. Additionally, it can print cryptographic artifacts, and print the raw octet stream similar to hexdump(1), annotating specifically which bytes are parsed into OpenPGP values.
If the packet stream includes an encryption container, sq will attempt to decrypt it.
Unwrap an encryption container.
Decrypts a message, dumping the content of the encryption container without further processing. The result is a valid OpenPGP message that can, among other things, be inspected using sq packet dump.
Split a message into packets.
Splitting a packet sequence into individual packets, then recombining them freely with sq packet join is a great way to experiment with OpenPGP data.
By default, the packets are written to stdout as a sequence of ASCII armored blocks. It is possible to edit this file directly (e.g., moving, adding, or removing packets), and then use sq packet join to assemble the stream.
Alternatively, if a --output-prefix
is given, the
packets are written into individual files starting with the prefix, and
can be reassembled with sq packet
join.
The converse operation is sq packet join.
Join packets split across files.
Splitting a packet sequence into individual packets, then recombining them freely with sq packet join is a great way to experiment with OpenPGP data.
The converse operation is sq packet split.
Convert a binary OpenPGP message to an ASCII armored OpenPGP message.
sq packet armor message.bin
Convert a binary OpenPGP message to an ASCII armored OpenPGP message explicitly choosing the armor label.
sq packet armor --label=message message.bin
Convert an ASCII armored OpenPGP message to a binary OpenPGP message.
sq packet dearmor --output=message.bin message.pgp
Print the packets of a certificate.
sq packet dump juliet.pgp
Print the packets including cryptographic artifacts of a certificate.
sq packet dump --mpis juliet.pgp
Print the packets including a dump of every byte of a certificate.
sq packet dump --hex juliet.pgp
Prints the packets of an encrypted message, decrypting it using a secret key file.
sq packet dump --recipient-file bob-secret.pgp message.pgp
Unwrap the encryption revealing the signed message.
sq packet decrypt --recipient-file bob-secret.pgp message.pgp
Split a certificate into individual packets printed to stdout.
sq packet split --output=- juliet.pgp
Split a inline-signed message into individual packets written to individual files with the prefix 'packet'.
sq packet split --output-prefix packet document.pgp
Then reassemble the message, transforming it into an old-style signed message with a prefix signature.
sq packet join --output prefix-signature.pgp --label message \
packet-2-Signature-Packet packet-1-Literal-Data-Packet
Split a inline-signed message into individual packets written to individual files with the prefix 'packet'.
sq packet split --output-prefix packet document.pgp
Then reassemble the message, transforming it into an old-style signed message with a prefix signature.
sq packet join --output prefix-signature.pgp --label message \
packet-2-Signature-Packet packet-1-Literal-Data-Packet
sq(1), sq-packet-armor(1), sq-packet-dearmor(1), sq-packet-dump(1), sq-packet-decrypt(1), sq-packet-split(1), sq-packet-join(1).
For the full documentation see <https://book.sequoia-pgp.org/>.
1.3.1