diff options
author | irungentoo <irungentoo@gmail.com> | 2013-12-07 19:06:41 -0500 |
---|---|---|
committer | irungentoo <irungentoo@gmail.com> | 2013-12-07 19:06:41 -0500 |
commit | 1c45e5993858a4fc0e85858975e3206a657b9f94 (patch) | |
tree | c79b883aeb3cfefba7f1a2d86cbe97fda887dd4c /docs/Hardening_docs.txt | |
parent | d078c5e9c2f1727502bce7db1b7de7e2fc4880ce (diff) |
Added/updated some basic docs and cleaned up some things.
Diffstat (limited to 'docs/Hardening_docs.txt')
-rw-r--r-- | docs/Hardening_docs.txt | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/docs/Hardening_docs.txt b/docs/Hardening_docs.txt new file mode 100644 index 00000000..08c6ef13 --- /dev/null +++ b/docs/Hardening_docs.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | Hardening request packets are sent as crypto request packets (see crypto docs.) | ||
2 | NOTE: currently only get nodes requests are tested in the code which is why there is only one test (more will be added soon.) | ||
3 | |||
4 | All hardening requests must contain exactly 768 bytes of data. (The data sent must be padded with zeros if it is smaller than that.) | ||
5 | |||
6 | 1. Get the information (IP_port, client_id) of the node we want to test. | ||
7 | 2. Find a couple random nodes that is not that node (one for each test.) | ||
8 | 3. Send crypto request packets to each of these random nodes with the data being: | ||
9 | |||
10 | [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] | ||
11 | |||
12 | 4. The random node receives a packet. | ||
13 | -The packet is a get nodes test request: | ||
14 | send a get_node request to that node with the id to query in the request. | ||
15 | when a send_node response is received, send the following response to the person who sent us the get nodes test request packet: | ||
16 | [byte with value: 03 (get nodes test response)][client_id(32 bytes): the id that the node was queried with][The list of nodes it responded with in IPv6 Node format (struct Node_Format)] | ||
17 | PROTIP: (get node requests and response contain an encrypted part that you can use to store information so that you don't | ||
18 | have to store in your memory where/if to send back the response from the send node) | ||
19 | |||
20 | 5. Receive the test responses. | ||
21 | -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). | ||