saltpack
a modern crypto messaging format

saltpack combines 2 standards, NaCl for all the crypto, and MessagePack for all the binary. So far, we've implemented saltpack in both Go and Python. We have also reserved the npm module saltpack for when we officially endorse or make our own JS solution.

Note: These repos are for developers and folks who want to experiment with the format. If you want to use saltpack in real life, the easiest way is the encrypt, decrypt, sign, and verify commands that come with the Keybase app.

Go

# Having already set up a valid GOPATH...
go get github.com/keybase/saltpack

GoDocs are available containing examples.

Python

pip install saltpack

# Sign a message with a random key.
saltpack sign --message "foo" | tee /tmp/my_signed_message

# Verify that message with lots of debug output.
saltpack verify --debug < /tmp/my_signed_message

# Encrypt a message with a hardcoded default key.
saltpack encrypt --message "bar" | tee /tmp/my_encrypted_message

# Decrypt that message with lots of debug output.
saltpack decrypt --debug < /tmp/my_encrypted_message

Java

James Julich has published a Java implementation.

Your library here

Please reach out to Keybase user Jack or Max if you implement saltpack yourself.