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