a-krebs / meshlink

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This is the README file for the MeshLink library. Installation instructions may
be found in the INSTALL file.

MeshLink is Copyright (C) 2014 Guus Sliepen <guus@meshlink.io>

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
------------

In order to compile MeshLink, you will need a GNU C compiler environment.

The following libraries are used by default, but can be disabled if necessary:

- zlib (http://www.gzip.org/zlib/)

Features
--------

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

About

License:Other


Languages

Language:C 73.3%Language:Objective-C 12.3%Language:C++ 12.2%Language:M4 1.5%Language:Makefile 0.6%Language:Shell 0.0%