2 Description of the Assuan protocol.
The architecture of the modular GnuPG system is based on several
highly specialized modules which form a network of clients and
servers. A common framework for intermodule communication is
therefore needed and implemented as a library.
Goals:
- Common framework for module communication
- Easy debugging
- Easy module testing
- Extensible
- Optional authentication and encryption facility
- Usable to access external hardware
Design criteria:
- Client/Server with back channel
- Use a mainly text based protocol
- Escape certain control characters
- Allow indefinite data length
- Request confidentiality for parts of the communication
- Dummy module to allow direct linking of client and server
- Inline data or descriptor passing for bulk data
- No protection against DoS needed
- Subliminal channels are not an issue