Connect password + out of band verification
===========================================

Another variant on other people's ideas.

We have a connection password, which may be (relatively) public. This
enables a user to send a message to the node asking for a connection.
This includes the name of the user, and a random string of bytes.

We construct an authorisation key:
Key = encrypt MY_RANDOM with HIS_RANDOM
We keep MY_RANDOM.

The node receiving the message relays the connection attempt to the
user: A node called <name> wants to connect, if you know this person
please contact them and verify the connection by sending them the
following string: [ Key above turned into words as a la PGP ]

When the sending node receives the string, it sends that, and when the
receiving node decrypts it and finds its random, the nodes exchange
references.

Dependancies
------------

Again, UP&P would be very helpful.

Variants
--------

We could have a full blown noderef instead of a simple connection
password, and keep the verification stage. This would eliminate dictionary
attacks.

Attacks
-------

A dictionary attack against the connection password (which will
generally be reasonably human readable) is possible, and would be a DoS.

It is probably possible to find such connection attempts from passive
traffic analysis.

MITM should not be possible even if we have the connection key (which is
mostly used to keep out port scanners etc) because we cannot obtain
MY_RANDOM.

If the attacker can spy on the out of band verification mechanism, he
may be able to MITM. So this isn't safe against Echelon, but what is? :)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: 
<https://emu.freenetproject.org/pipermail/tech/attachments/20070306/e21912ab/attachment.pgp>

Reply via email to