The only transport used by this version of BRP is the Tor hidden service protocol, which has the transport identifier `"org.briarproject.bramble.tor"`.
The only transport used by this version of BRP is the Tor hidden service protocol, which has the transport identifier "org.briarproject.bramble.tor".
#### 2.2.1 Network Endpoints for the Tor Hidden Service Protocol
...
...
@@ -105,6 +105,12 @@ Each peer uses the identity key pair of its own hidden service to publish the hi
### 2.3 Polling for Connections
Each peer keeps its network endpoints open and tries to connect to the other peer's endpoints once per minute until an incoming or outgoing connection is made. If a peer goes offline during this time, it reopens its endpoints and resumes trying to connect when it comes back online.
Each peer keeps its network endpoints open and tries to connect to the other peer's endpoints once per minute for up to 48 hours. If a peer goes offline during this time, it reopens its endpoints and resumes trying to connect when it comes back online.
If no connection is made within 48 hours of the initial key exchange, the rendezvous is considered to have failed and must be manually restarted by both peers.
When BRP establishes an incoming or outgoing connection it passes the connection to the application layer. When the application layer determines that no further rendezvous connections are needed, it tells BRP to end the rendezvous. BRP closes its network endpoints and stops making outgoing connections.
If no connection is made within 48 hours of the initial key exchange, the rendezvous is considered to have failed. BRP notifies the application layer, closes its network endpoints and stops making outgoing connections.
### 2.4 Use of Rendezvous Connections
The application layer is responsible for deciding how to use any rendezvous connections created by BRP. BRP does not authenticate the remote peer, but it makes the static master key available to the application layer so other protocols can derive keys from it, for example to encrypt and authenticate communication with the remote peer over a rendezvous connection.