4.1 Establishing a Connection Using GMC Authentication

Node 2 requests to connect to a Group created by Node 1. Node 1 is already listening for incoming connections. Node 2 already has a GMC.

Establishing a connection using GMC authentication

Figure 3: Establishing a connection using GMC authentication

To establish the connection, the following steps occur:

  1. Node 2 (the Requestor) queries PNRP for a Group Node. For example, if the Group Peer Name is "abc123", Node 2 queries for "abc123.participant".

  2. PNRP responds with the address and port of Node 1 (the Authenticator).

  3. Node 2 establishes a P2P Graphing connection to Node 1. Because P2P Graphing has been configured to use P2P Grouping as the Graph Security Provider, P2P Grouping is asked to authenticate the connection.

  4. Node 2 and Node 1 establish a secure connection using TLS.

  5. Node 2 sends a message containing the Hello message and the MyGMC message. The MyGMC message contains Node 2's GMC chain.

  6. Node 1 validates that the GMC received is valid, and replies with a message containing the Hello message and the MyGMC message.

  7. The connection is now authenticated, and the P2P Graphing protocol begins using the connection.