Package armor implements OpenPGP ASCII Armor, see RFC 4880. OpenPGP Armor is very similar to PEM except that it has an additional CRC checksum.
Encode returns a WriteCloser which will encode the data written to it in OpenPGP armor.
A Block represents an OpenPGP armored structure.
The encoded form is:
-----BEGIN Type----- Headers base64-encoded Bytes '=' base64 encoded checksum -----END Type-----
where Headers is a possibly empty sequence of Key: Value lines.
Since the armored data can be very large, this package presents a streaming interface.
Decode reads a PGP armored block from the given Reader. It will ignore leading garbage. If it doesn't find a block, it will return nil, io.EOF. The given Reader is not usable after calling this function: an arbitrary amount of data may have been read past the end of the block.