X-Git-Url: http://git.meshlink.io/?p=meshlink;a=blobdiff_plain;f=README;h=390468b0e09eea4d10769f0feebd6712e3d30d4e;hp=7c0fe125e0608ce16ee6b02b78959892be0c88dd;hb=HEAD;hpb=f18e30dab3c208fd353af11e365791035534f444 diff --git a/README b/README index 7c0fe125..59d99270 100644 --- a/README +++ b/README @@ -1,47 +1,42 @@ -This is the README file for tinc version 1.0. -Installation instructions may be found in the INSTALL file. +This is the README file for the MeshLink library. Installation instructions may +be found in the INSTALL file. -tinc is Copyright (C) 1998,1999,2000 Ivo Timmermans -, Guus Sliepen and -others. For a complete list of authors see the AUTHORS file. +MeshLink is Copyright (C) 2014-2018 Guus Sliepen This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. See the file COPYING for more details. +To obtain a license to use this library in commercial software, please contact +sales@meshlink.io. + + +This is not a finished version +------------------------------ + +Please do not use this library yet. + Requirements ------------ -Since 1.0pre3, we use OpenSSL for all cryptographic functions. So you -need to install this library first; grab it from -http://www.openssl.org/. We recommend version 0.9.5 or better. If -this library is not installed on you system, configure will fail. The -manual in doc/tinc.texi contains more detailed information on how to -install this library. +In order to compile MeshLink, you will need a GNU C compiler environment. Features -------- -This version of tinc supports multiple virtual networks at once. To -use this feature, you may supply a netname via the -n or --net -options. The standard locations for the config files will then be -/etc/tinc//. Because of this feature, tinc will send packets -directly to their destinations, instead of to the uplink. If this -behaviour is undesirable (for instance because of firewalls or -other restrictions), please use an older version of tinc (I would -recommend tinc-0.2.19). - -In this version, MAC addresses are stripped off before encoding and -sending a packet. When the packet reaches its destination, the MAC -addresses are rebuilt again. They then have the form -FE:FD:aa:bb:cc:dd. aa, bb, cc and dd are taken from the destination -and source IP address. See the manual for more detailed information. - -tincd regenerates its encryption key pairs. It does this on the first -activity after the keys have expired. This period is adjustable in the -configuration file, and the default time is 3600 seconds (one -hour). If you send a USR2 signal to the daemon, it'll regenerate -immediately. +MeshLink is a library that allows applications to connect to other instances of +itself, and exchange messages in a secure way. MeshLink provides end-to-end +encryption and authentication of messages with perfect forward secrecy. The +MeshLink library starts its own thread which handles all network +communications. The application only needs to register callbacks to get +notified of incoming messages and other important events. + +Other noteworthy features are: + +- IPv6 support +- NAT traversal (requires at least one node that is not behind a NAT) +- Ed25519 keys (TBD) +- ChaCha-Poly1305 encryption and message authentication