Sphinx is a mixnet packet format. Read the Sphinx paper:
Sphinx: A Compact and Provably Secure Mix Format by George Danezis and Ian Goldberg
This package is binary compatible with the python library:
Although the two libraries are binary compatible and share test vectors to prove it, go-sphinxmixcrypto is still a work-in-progress and does not yet have full feature parity. In particular the client's use and creation of SURBs has not yet been written, nor has the Nymserver's cryptographic components.
You can see a list of dependencies on godocs:
Currently this library depends on my own LIONESS wide block cipher implementation:
The other external dependencies include:
- https://git.schwanenlied.me/yawning/chacha20
- https://github.com/minio/blake2b-simd
- https://golang.org/x/crypto/curve25519
go-sphinxmixcrypto is free software made available via the MIT License. License details located in the LICENSE file.
Some code was inspired or copied from Lightning-Onion's partial Sphinx implementation located here:
- https://github.com/lightningnetwork/lightning-onion/blob/master/sphinx.go
- https://github.com/lightningnetwork/lightning-onion/blob/master/sphinx_test.go
Included in this repo is Lightning-Onion's MIT License file: LICENSE-lightening-onion
- email dstainton415@gmail.com
- gpg key ID 0x836501BE9F27A723
- gpg fingerprint F473 51BD 87AB 7FCF 6F88 80C9 8365 01BE 9F27 A723