Phase 2
In Phase 2, the receiver then creates a random session key of its own, to be
known as "session key B." The receiver exports this key into a key blob and
transmits it to the sender.
The receiver then builds up a hash value containing session key A, the
receiver's name, session key B, the sender's name, and the text "phase 2." This hash
value is then sent to the sending user. (The details of this process are
discussed in this section under "Receiver Code Example.")
The data must be hashed in the standard sequence, so the sender will be able
to properly validate it. The data formats used by the sender and receiver must
also match, although a standard format is not specified here.
The sending user accepts the "session key B" key blob from the receiver, and
imports it into its CSP. The hash value is also received.
The sending user then validates the receiver's hash value by creating a hash
of its own containing the same data, and comparing the two hash values. If the
hash values do not match, then either the destination user has not been
forthright, or someone else is tampering with the data between the two parties. In
either case, the protocol should be terminated and the communication link severed.
If the two hash value do match, this tells the sender that the destination
user is presently online and in real-time communication. This is primarily because
the hash value contains session key A, which was sent out encrypted with the
destination user's public key. Only the real destination user could have
decrypted the session key and built the hash value. Including the human-readable user
names in the hash makes it possible to involve the users in the process as an
additional check.
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database