spear

module
v0.0.0-...-2af7037 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 22, 2020 License: Apache-2.0

README

SPEAR - Simple, P2P, Encrypted And Real-Time

Spear is a VoIP program that doesn’t require any central server. It uses a CUI interface so you can run it on a terminal or even tty if you want. Packets are encrypted using ChaCha20Poly1305 and shared secrets are generated using a pre-shared public key from a peer and the user’s own secret, specified in a config file.

Example config.conf:

[Client]
sk = g7suVU4IhGd8slx5q618dz0NBgMujeWSu1r2eKHJBSg= #user’s secret key
candidates = 0.0.0.0:3412, 192.168.0.1:54361 #ip:port
#spear will try to bind to one of the ‘candidates’

[Peer]
pk = D4VwZ+mrsWV8yyQSlty7F82HNDpNDM5AzJV1VAMC2jc= #peer’s public key
candidates = 123.123.123.123:62162, 321.321.321.231:41231
#a peer can has multiple possible endpoints

[Peer]
pk = KutbwzJ0d1mfrijI8r0+lfPQLdbIsa0UV7QvuTF5QXY=
candidates = 321.123.123.312:12321
name = Friend 1 #optional

How to build

go build -o spear github.com/hexdiract/spear/frontend

TODO:

Screen sharing

Directories

Path Synopsis
core
ui

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL