forked from Green-Sky/tomato
Squashed 'external/toxcore/c-toxcore/' content from commit 67badf69
git-subtree-dir: external/toxcore/c-toxcore git-subtree-split: 67badf69416a74e74f6d7eb51dd96f37282b8455
This commit is contained in:
30
docs/Hardening_docs.txt
Normal file
30
docs/Hardening_docs.txt
Normal file
@ -0,0 +1,30 @@
|
||||
Hardening request packets are sent as crypto request packets (see crypto docs.)
|
||||
NOTE: currently only get nodes requests are tested in the code which is why
|
||||
there is only one test (more will be added soon.)
|
||||
|
||||
All hardening requests must contain exactly 768 bytes of data. (The data sent
|
||||
must be padded with zeros if it is smaller than that.)
|
||||
|
||||
1. Get the information (IP_port, client_id) of the node we want to test.
|
||||
2. Find a couple random nodes that is not that node (one for each test.)
|
||||
3. Send crypto request packets to each of these random nodes with the data being:
|
||||
|
||||
[byte with value: 02 (get nodes test request)][struct Node_format (the node to
|
||||
test.)][client_id(32 bytes) the id to query the node with.][padding]
|
||||
|
||||
4. The random node receives a packet.
|
||||
-The packet is a get nodes test request:
|
||||
send a get_node request to that node with the id to query in the request.
|
||||
when a send_node response is received, send the following response to the
|
||||
person who sent us the get nodes test request packet:
|
||||
[byte with value: 03 (get nodes test response)][client_id(32 bytes):
|
||||
the id of the tested node][The list of nodes it responded with in IPv6
|
||||
Node format (struct Node_Format)]
|
||||
PROTIP: (get node requests and response contain an encrypted part that you
|
||||
can use to store information so that you don't
|
||||
have to store in your memory where/if to send back the response from the
|
||||
send node)
|
||||
|
||||
5. Receive the test responses.
|
||||
-If the test(s) pass (the nodes behave in a satisfactory manner), make these
|
||||
nodes have priority over those who don't pass the test(s).
|
Reference in New Issue
Block a user