]> Cypherpunks.ru repositories - govpn.git/blob - doc/developer.texi
Merge branch 'develop'
[govpn.git] / doc / developer.texi
1 @node Developer manual
2 @unnumbered Developer manual
3
4 @table @asis
5 @item Nonce and identity encryption
6 @url{http://143.53.36.235:8080/tea.htm, XTEA}.
7 @item Data encryption
8 @url{http://cr.yp.to/snuffle.html, Salsa20}.
9 @item Message authentication
10 @url{http://cr.yp.to/mac.html, Poly1305}.
11 @item Password authenticated key agreement
12 DH-A-EKE powered by @url{http://cr.yp.to/ecdh.html, Curve25519}
13 and @url{http://ed25519.cr.yp.to/, Ed25519}.
14 @item DH elliptic-curve point encoding for public keys
15 @url{http://elligator.cr.yp.to/, Elligator}.
16 @item Key derivation function for verifier generation
17 @url{https://en.wikipedia.org/wiki/PBKDF2, PBKDF2} based on
18 @url{https://en.wikipedia.org/wiki/SHA-2, SHA-512}.
19 @item Packet overhead
20 26 bytes per packet.
21 @item Handshake overhead
22 4 UDP (2 from client, 2 from server) packets, 264 bytes total payload.
23 @item Entropy required
24 832 bits in average on client, 832 bits in average on server side per
25 handshake.
26 @end table
27
28 @menu
29 * Verifier structure::
30 * Transport protocol::
31 * Handshake protocol::
32 @end menu
33
34 @include verifierstruct.texi
35 @include transport.texi
36 @include handshake.texi