coniks-sys / Coniks Go
Projects that are alternatives of or similar to Coniks Go
CONIKS Go
Overview
CONIKS is a key management system that provides transparency and privacy for end-user public keys. CONIKS protects end-to-end encrypted communications against malicious or compromised communication providers and surveillance by storing users' encryption keys in tamper-evident and publicly auditable key directories on the server side. This allows messaging clients to verify the identity of users automatically, and prevents malicious/compromised servers from hijacking secure communications without getting caught.
This repository provides a Golang implementation of the CONIKS system. The implementation consists of a library, described in the following section, a standalone CONIKS-server and -client, and a registration proxy using this library.
Golang Library
The packages in this library implement the various components of the CONIKS system and may be imported individually.
-
application
: CONIKS application-layer library. -
cli
: CONIKS command-line tools (registration bots, key server, and test client). -
crypto
: Cryptographic algorithms and operations -
merkletree
: Merkle prefix tree and related data structures -
utils
: Utility functions -
protocol
: CONIKS protocols implementation/library -
storage
: Hooks for persistent storage backend (currently unused)
Installation
You need to have Golang version 1.9 or higher installed. If Golang is set up correctly, you can simply run:
go get github.com/coniks-sys/coniks-go/...
For usage instructions, see the documentation in their respective packages: CONIKS-server, a simple command-line client, and the registration-proxy.
Disclaimer
Please keep in mind that this CONIKS library is under active development. The repository may contain experimental features that aren't fully tested. We recommend using a tagged release.
API Documentation
https://godoc.org/github.com/coniks-sys/coniks-go
Current Core Developers
Releases of coniks-go will be signed with one of the following GPG keys:
-
Arlo Breault <[email protected]>
4797E7E1069D84AC4040797A5E3A93B4D4DDCD8B
-
Ismail Khoffi <[email protected]>
2BC709FBD0E50EB2D7272AD8760DA7917109FB7B
-
Marcela Melara <[email protected]>
C0EB3C38F30F80AB6A12C9B78E556CF999AAFE63
-
Vu Quoc Huy <[email protected]>
533191CEEC406DFF360D19DEC6202750C2FA740E