30

GitHub - nomasters/handshake: a peculiar chat app for strange times

 5 years ago
source link: https://github.com/nomasters/handshake
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

README.md

handshake logo

handshake

a peculiar chat app for strange times

Handshake is designed to be an experiment in one-time key symmetric encrypted communications. The tool is based on in-person initialization of communication so that all future transmissions rely on symmetric key cryptography. This is primarily a design for out-of-band communication in which communicating parties aim to mitigate potential compromises in asymmetric encryption methodology ranging from CA poisoning to reliance on trusted centralized service providers for communications technology, and it can even be used to explore patterns in post-quantum readiness.

Handshake is designed initially to work on IPFS and hashmap, but there are no technical reasons other backends couldn't be supported. In fact, support for strategies is built into the core of handshake to allow for experimentation. For the sake of focus, this initial implementation utilizes hashmap and IPFS, but other decentralized tooling based around smart contracts and other systems should be able to be incorporated in the future.

You can read more about how handshake works in the design doc.

You can check out an early CLI-based proof of concept here:

demo

Running in Docker

If you'd like to try this out without installing on your machine directly, you can run this in docker with a couple of Makefile helpers

  • make build - will build hashmap's cli tool from source inside of a fresh container
  • make shell - will give you an interactive shell to try to tool out

installing the CLI tool

You can install the CLI tool by running go install

go install github.com/nomasters/handshake/cmd/handshake

or by building from the cmd/handshake directory.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK