Skip to content

Cryptography Details

Moritz Warning edited this page Feb 21, 2014 · 7 revisions

Draft

The cryptographic library used in KadNode is libsodium (a NaCl fork).

The secret/public key pair is generated by the crypto_sign_keypair method.

The verification process is the task to verify that a node is in possession of a specific secret key. For this we send a random string to that nodes IP address and DHT port. We expect the node to send back the string encrypted (crypto_sign) with it's own secret key. If we can decrypt (crypto_sign_open) the message and get our random key, then we have verified that the other node has the secret key.

We send the string a few times before giving up.

Clone this wiki locally