]> Cypherpunks.ru repositories - govpn.git/blobdiff - doc/developer.texi
Ability to use TCP as a base transport
[govpn.git] / doc / developer.texi
index b257885b02858362b7ff9a4b72f2d9cddbe8701d..d7a4b07ea3693f96bb4e8c298e403a3ce3b0cdd7 100644 (file)
@@ -1,25 +1,39 @@
 @node Developer manual
 @unnumbered Developer manual
 
+Pay attention how to get @ref{Development source code}.
+
 @table @asis
-@item Nonce and identification encryption
-@url{http://143.53.36.235:8080/tea.htm, XTEA}
+@item Nonce and identity encryption
+@url{http://143.53.36.235:8080/tea.htm, XTEA}.
 @item Data encryption
-@url{http://cr.yp.to/snuffle.html, Salsa20}
+@url{http://cr.yp.to/snuffle.html, Salsa20}.
 @item Message authentication
-@url{http://cr.yp.to/mac.html, Poly1305}
+@url{http://cr.yp.to/mac.html, Poly1305}.
 @item Password authenticated key agreement
-DH-EKE powered by @url{http://cr.yp.to/ecdh.html, Curve25519}
+DH-A-EKE powered by @url{http://cr.yp.to/ecdh.html, Curve25519}
+and @url{http://ed25519.cr.yp.to/, Ed25519}.
+@item DH elliptic-curve point encoding for public keys
+@url{http://elligator.cr.yp.to/, Elligator}.
+@item Key derivation function for verifier generation
+@url{https://en.wikipedia.org/wiki/PBKDF2, PBKDF2} based on
+@url{https://en.wikipedia.org/wiki/SHA-2, SHA-512}.
 @item Packet overhead
-24 bytes per packet
+26 bytes per packet. Two more bytes for TCP mode.
 @item Handshake overhead
-4 UDP (2 from client, 2 from server) packets, 200 bytes total payload
+4 UDP (2 from client, 2 from server) packets (round-trips for TCP),
+264 bytes total payload (8 bytes more for TCP mode).
+@item Entropy required
+832 bits in average on client, 832 bits in average on server side per
+handshake.
 @end table
 
 @menu
+* Verifier structure::
 * Transport protocol::
 * Handshake protocol::
 @end menu
 
+@include verifierstruct.texi
 @include transport.texi
 @include handshake.texi