Next: , Previous: , Up: Top  


Overview

GoVPN is simple secure virtual private network daemon, written entirely on Go programming language.

Reviewability, high 128-bit security margin and DPI censorship resistance in mind in free software solution are the main goals for that daemon. Most modern widespread protocols and their implementations in software are too complex to be reviewed, analyzed and modified.

State off art cryptography technologies includes: Salsa20 stream encryption, XTEA PRP, Poly1305 message authentication, https://en.wikipedia.org/wiki/PBKDF2 password-based key derivation function based on SHA-512 hash function, Diffie-Hellman Augmented Encrypted Key Exchange (DH-A-EKE) powered by Curve25519 and Ed25519 signatures. Strong zero-knowledge mutual authentication with key exchange stage is invulnerable to man-in-the-middle attacks. Perfect forward secrecy property guarantee that compromising of long-term authentication pre-shared key can not lead to previously captured traffic decrypting. Compromising of peers password file on server side won’t allow attacker to masquerade as the client, because of asymmetric verifiers usage, resistant to dictionary attacks. Rehandshaking ensures session keys rotation. MAC authentication with one-time keys protects against replay attacks.

Server can work with several clients simultaneously. Each client is identified by 128-bit key, that does not leak during handshake and each client stays anonymous for MiTM and DPI. All settings are applied per-peer separately.

Optional ability to hide payload packets lengths by appending noise to them during transmission. Ability to generate constant packet rate traffic (CPR) that will hide even the fact of packets appearance, their timestamps.

The only platform specific requirement is TAP network interface support. API to that kind of device is different, OS dependent and non portable. So only a few operating systems is officially supported. Author has no proprietary software to work with, so currently there is lack of either popular Microsoft Windows or Apple OS X support.


Next: , Previous: , Up: Top