]> Cypherpunks.ru repositories - govpn.git/blob - doc/developer.texi
dbefa91c0c22a8c45a4b43c416c8e397b2fc33af
[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 @end table
24
25 @menu
26 * Verifier structure::
27 * Transport protocol::
28 * Handshake protocol::
29 @end menu
30
31 @include verifierstruct.texi
32 @include transport.texi
33 @include handshake.texi