Next: Init0 Message
Up: ESCP Secure Stream Protocol
Previous: Packet Types
The Initialization Phase is used by two communicating applications to
establish identities, challenge and authenticate the other's identity,
advertise and select cipher, compression and other miscellaneous options,
as well as to setup a shared session key.
Both client and server applications behave identically in this
phase and their actions are completely symmetrical. Both
applications transmit three messages in this phase:
- Init0 Message: This message contains the sending entity's public key
information and additional information about the capabilities of the
protocol implementation.
- Init1 Message: This is an encrypted message containing a randomly
generated key material (used to derive the secret session in the symmetric
cipher for data received from the peer), a random cookie, and a selection of
protocol options. The peer's public key is used to encrypt this message.
- InitD Message: This and subsequent messages are sent using the
symmetric cipher and session key selected by the peer. This message contains
the MD5 hash of the previous Init0 and Init1 messages sent to the peer.
The following description of the Initialization Phase makes several
references to ``sending'' and ``receiving'' applications (or ``sender'' and
``receiver''). This is intended to clarify the relationship between
applications and the various initialization messages they send or receive.
Lai Zit Seng
Mon Mar 17 10:37:02 SGT 1997