Skip to content

Commit 47c0d02

Browse files
committed
doc: document I2P transient addresses usage in doc/i2p.md
1 parent 3914e47 commit 47c0d02

File tree

1 file changed

+22
-4
lines changed

1 file changed

+22
-4
lines changed

doc/i2p.md

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,26 @@ In a typical situation, this suffices:
4747
bitcoind -i2psam=127.0.0.1:7656
4848
```
4949

50-
The first time Bitcoin Core connects to the I2P router, its I2P address (and
51-
corresponding private key) will be automatically generated and saved in a file
52-
named `i2p_private_key` in the Bitcoin Core data directory.
50+
The first time Bitcoin Core connects to the I2P router, if
51+
`-i2pacceptincoming=1`, then it will automatically generate a persistent I2P
52+
address and its corresponding private key. The private key will be saved in a
53+
file named `i2p_private_key` in the Bitcoin Core data directory. The persistent
54+
I2P address is used for accepting incoming connections and for making outgoing
55+
connections if `-i2pacceptincoming=1`. If `-i2pacceptincoming=0` then only
56+
outbound I2P connections are made and a different transient I2P address is used
57+
for each connection to improve privacy.
58+
59+
## Persistent vs transient I2P addresses
60+
61+
In I2P connections, the connection receiver sees the I2P address of the
62+
connection initiator. This is unlike the Tor network where the recipient does
63+
not know who is connecting to them and can't tell if two connections are from
64+
the same peer or not.
65+
66+
If an I2P node is not accepting incoming connections, then Bitcoin Core uses
67+
random, one-time, transient I2P addresses for itself for outbound connections
68+
to make it harder to discriminate, fingerprint or analyze it based on its I2P
69+
address.
5370

5471
## Additional configuration options related to I2P
5572

@@ -85,7 +102,8 @@ one of the networks has issues.
85102

86103
## I2P-related information in Bitcoin Core
87104

88-
There are several ways to see your I2P address in Bitcoin Core:
105+
There are several ways to see your I2P address in Bitcoin Core if accepting
106+
incoming I2P connections (`-i2pacceptincoming`):
89107
- in the "Local addresses" output of CLI `-netinfo`
90108
- in the "localaddresses" output of RPC `getnetworkinfo`
91109
- in the debug log (grep for `AddLocal`; the I2P address ends in `.b32.i2p`)

0 commit comments

Comments
 (0)