Marko 9e98c74e3c | 4 years ago | |
---|---|---|
.. | ||
armor | 4 years ago | |
ed25519 | 4 years ago | |
encoding | 4 years ago | |
internal/benchmarking | 4 years ago | |
merkle | 4 years ago | |
secp256k1 | 4 years ago | |
sr25519 | 4 years ago | |
tmhash | 4 years ago | |
xchacha20poly1305 | 5 years ago | |
xsalsa20symmetric | 5 years ago | |
CHANGELOG.md | 6 years ago | |
README.md | 5 years ago | |
crypto.go | 4 years ago | |
doc.go | 6 years ago | |
example_test.go | 6 years ago | |
hash.go | 6 years ago | |
random.go | 6 years ago | |
random_test.go | 6 years ago | |
version.go | 6 years ago |
crypto is the cryptographic package adapted for Tendermint's uses
To get the interfaces,
import "github.com/tendermint/tendermint/crypto"
For any specific algorithm, use its specific module e.g.
import "github.com/tendermint/tendermint/crypto/ed25519"
If you want to decode bytes into one of the types, but don't care about the specific algorithm, use
import "github.com/tendermint/tendermint/crypto/amino"
For Binary encoding, please refer to the Tendermint encoding specification.
crypto .Bytes()
uses Amino:binary encoding, but Amino:JSON is also supported.
Example Amino:JSON encodings:
ed25519.PrivKey - {"type":"tendermint/PrivKeyEd25519","value":"EVkqJO/jIXp3rkASXfh9YnyToYXRXhBr6g9cQVxPFnQBP/5povV4HTjvsy530kybxKHwEi85iU8YL0qQhSYVoQ=="}
ed25519.PubKey - {"type":"tendermint/PubKeyEd25519","value":"AT/+aaL1eB0477Mud9JMm8Sh8BIvOYlPGC9KkIUmFaE="}
sr25519.PrivKeySr25519 - {"type":"tendermint/PrivKeySr25519","value":"xtYVH8UCIqfrY8FIFc0QEpAEBShSG4NT0zlEOVSZ2w4="}
sr25519.PubKeySr25519 - {"type":"tendermint/PubKeySr25519","value":"8sKBLKQ/OoXMcAJVxBqz1U7TyxRFQ5cmliuHy4MrF0s="}
crypto.PrivKeySecp256k1 - {"type":"tendermint/PrivKeySecp256k1","value":"zx4Pnh67N+g2V+5vZbQzEyRerX9c4ccNZOVzM9RvJ0Y="}
crypto.PubKeySecp256k1 - {"type":"tendermint/PubKeySecp256k1","value":"A8lPKJXcNl5VHt1FK8a244K9EJuS4WX1hFBnwisi0IJx"}