In summary, the outbound message is subjected to the following composition of transformations (or, for some PEM message types, a subset thereof):
Transmit_Form = Encode(Encrypt(Canonicalize(Local_Form)))
The inverse transformations are performed, in reverse order, to process inbound PEM messages:
Local_Form = DeCanonicalize(Decipher(Decode(Transmit_Form)))
Note that the local form and the functions to transform messages to and from canonical form may vary between the originator and recipient systems without loss of information.