… | |
… | |
16 | - INCOMPATIBLE CHANGE: core protocol version 1.0. |
16 | - INCOMPATIBLE CHANGE: core protocol version 1.0. |
17 | - INCOMPATIBLE CHANGE: node sections are now introduced |
17 | - INCOMPATIBLE CHANGE: node sections are now introduced |
18 | with "node nodename", not "node = nodename". |
18 | with "node nodename", not "node = nodename". |
19 | - while individual packets couldn't be replayed, a whole session |
19 | - while individual packets couldn't be replayed, a whole session |
20 | could be replayed - this has been fixed by an extra key exchange. |
20 | could be replayed - this has been fixed by an extra key exchange. |
|
|
21 | - fix a delete vs. delete [] mismatch in the central logging function. |
21 | - in addition to rsa key exchange and authentication, the handshake now |
22 | - in addition to rsa key exchange and authentication, the handshake now |
22 | adds a diffie-hellman key exchange (using curve25119) for perfect |
23 | adds a diffie-hellman key exchange (using curve25119) for perfect |
23 | forward secrecy. mac and cipher keys are derived using HKDF. |
24 | forward secrecy. mac and cipher keys are derived using HKDF. |
24 | - rsa key sizes are now configurable and larger (default is 3072). |
25 | - rsa key sizes are now configurable and larger (default is 3072). |
25 | correspondingly, the minimum mtu is no longer 296 but 576. |
26 | correspondingly, the minimum mtu is no longer 296 but 576. |
… | |
… | |
28 | - router reconnects could cause excessive rekeying on other connections. |
29 | - router reconnects could cause excessive rekeying on other connections. |
29 | - gvpectrl no longer generates all missing public keys, but |
30 | - gvpectrl no longer generates all missing public keys, but |
30 | only missing private keys. private keys are also put |
31 | only missing private keys. private keys are also put |
31 | into the configured location. |
32 | into the configured location. |
32 | - the pid-file now accepts %s as nodename as elsewhere. |
33 | - the pid-file now accepts %s as nodename as elsewhere. |
|
|
34 | - switch to counter mode (only aes supported at the moment in |
|
|
35 | openssl). this gets rid of the need to generate a random iv, |
|
|
36 | is likely more secure (and, as a side effect, gets rid of |
|
|
37 | slow randomness generation. counter mode is often faster |
|
|
38 | then cbc mode as well, and packets are smaller). |
33 | - no longer use RAND_bytes to generate session keys - you NEED |
39 | - no longer use RAND_bytes to generate session keys - you NEED |
34 | a real source of entropy now (e.g. egd or /dev/random - see the |
40 | a real source of entropy now (e.g. egd or /dev/random - see the |
35 | openssl documentation). |
41 | openssl documentation). |
36 | - multiple node statements for the same node are now supported |
42 | - multiple node statements for the same node are now supported |
37 | and will be merged. |
43 | and will be merged. |
38 | - a new directive "global" switches back to the global section |
44 | - a new directive "global" switches back to the global section |
39 | of the config file. |
45 | of the config file. |
40 | - 12 random prefix bytes are now properly supported, leading to |
|
|
41 | a fully random IV. |
|
|
42 | - use aes with a random key in counter-mode to generate IVs, |
|
|
43 | for speed reasons (generating 12 random bytes with openssl can |
|
|
44 | take longer than encrypting and mac'ing a 1.5kb packet, and IVs |
|
|
45 | do not need to be cryptographically strong random numbers |
|
|
46 | (and in fact, shouldn't be)). |
|
|
47 | - if-up scripts can now be specified with absolute paths. |
46 | - if-up scripts can now be specified with absolute paths. |
48 | - new global option: serial, to detect configuration mismatches. |
47 | - new global option: serial, to detect configuration mismatches. |
49 | - use HKDF as authentication proof, not HMAC or a plain hash |
48 | - use HKDF as authentication proof, not HMAC or a plain hash |
50 | (hint by Ilmari Karonen). |
49 | (hint by Ilmari Karonen). |
51 | - during rekeying or conenction establishments, hmac authentication |
50 | - during rekeying or conenction establishments, hmac authentication |