home | help
SQ(1)				  User Commands 			   SQ(1)

NAME
     sq-packet - Low-level packet manipulation

SYNOPSIS
     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

DESCRIPTION
     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	informa-
     tion in bug reports to OpenPGP-related software, and as a learning tool.

SUBCOMMANDS
   sq packet armor
     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  ar-
     mored  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`.

   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 transpar-
     ently 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`.

   sq packet dump
     List packets.

     Creates  a human-readable description of the packet sequence. Additionally,
     it can print cryptographic artifacts, and print the raw octet stream  simi-
     lar  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.

   sq packet decrypt
     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`.

   sq packet split
     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 ar-
     mored 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`.

   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`.

EXAMPLES
   sq packet armor
     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  ex-
     plicitly choosing the armor label.

	    sq packet armor --label=message message.bin

   sq packet dearmor
     Convert an ASCII armored OpenPGP message to a binary OpenPGP message.

	    sq packet dearmor --output=message.bin message.pgp

   sq packet dump
     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

   sq packet decrypt
     Unwrap the encryption revealing the signed message.

	    sq packet decrypt --recipient-file bob-secret.pgp message.pgp

   sq packet split
     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  mes-
     sage with a prefix signature.

	    sq packet join --output prefix-signature.pgp --label message \
		   packet-2-Signature-Packet packet-1-Literal-Data-Packet

   sq packet join
     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 mes-
     sage with a prefix signature.

	    sq packet join --output prefix-signature.pgp --label message \
		   packet-2-Signature-Packet packet-1-Literal-Data-Packet

SEE ALSO
     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/>.

VERSION
     1.3.1

Sequoia PGP			      1.3.1				   SQ(1)

home | help