A lot of data has to be exchanged between the user and the crypto
engine, like plaintext messages, ciphertext, signatures and
information about the keys. The technical details about exchanging
the data information are completely abstracted by GPGME.
The user provides and receives the data via
regardless of the communication protocol between GPGME and
the crypto engine in use.