You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Christopher Goes 391936b734 Prevent unnecessary signatures, improve error messages 7 years ago
.github add CODEOWNERS file 7 years ago
keys Use MarshalBinaryBare; Fix encode_test; Bump version 7 years ago
.gitignore Got basic key test working 8 years ago
CHANGELOG.md update for latest amino. bump version 7 years ago
Gopkg.lock Ledger integration, WIP 7 years ago
Gopkg.toml Ledger integration, WIP 7 years ago
LICENSE Change license to Apache2.0 9 years ago
Makefile remove any mention of glide 7 years ago
README.md Update README.md 7 years ago
amino.go Ledger integration, WIP 7 years ago
armor.go linter: add metalinter to Makefile & apply some fixes 7 years ago
armor_test.go Clean up test cases -> testify 8 years ago
circle.yml update circle.yml 7 years ago
doc.go doc.go file started 7 years ago
encode_test.go Update README with examples; Add signature test 7 years ago
example_test.go example: fix func suffix 7 years ago
hash.go Add seed-able cryptographic random. 9 years ago
ledger.go Prevent unnecessary signatures, improve error messages 7 years ago
ledger_test.go Fix no-Ledger testcase 7 years ago
priv_key.go fix ed25519 Generate 7 years ago
priv_key_test.go fix ed25519 Generate 7 years ago
pub_key.go Use MarshalBinaryBare; Fix encode_test; Bump version 7 years ago
pub_key_test.go Use new go-wire; PubKey etc are interfaces; Keybase refactor 7 years ago
random.go CRandHex: fix up doc to mention length of digits 7 years ago
signature.go Fix testcases, all looks OK 7 years ago
signature_test.go Make concrete registered name be tendermint/* 7 years ago
symmetric.go Moved crypto code to top level again 8 years ago
symmetric_test.go Clean up test cases -> testify 8 years ago
version.go update for latest amino. bump version 7 years ago

README.md

go-crypto GoDoc

go-crypto is the cryptographic package adapted for Tendermint's uses

Importing it

import "github.com/tendermint/go-crypto"

Binary encoding

For Binary encoding, please refer to the Tendermint encoding spec.

JSON Encoding

go-crypto .Bytes() uses Amino:binary encoding, but Amino:JSON is also supported.

Example Amino:JSON encodings:

crypto.PrivKeyEd25519     - {"type":"954568A3288910","value":"EVkqJO/jIXp3rkASXfh9YnyToYXRXhBr6g9cQVxPFnQBP/5povV4HTjvsy530kybxKHwEi85iU8YL0qQhSYVoQ=="}
crypto.SignatureEd25519   - {"type":"6BF5903DA1DB28","value":"77sQNZOrf7ltExpf7AV1WaYPCHbyRLgjBsoWVzcduuLk+jIGmYk+s5R6Emm29p12HeiNAuhUJgdFGmwkpeGJCA=="}
crypto.PubKeyEd25519      - {"type":"AC26791624DE60","value":"AT/+aaL1eB0477Mud9JMm8Sh8BIvOYlPGC9KkIUmFaE="}
crypto.PrivKeySecp256k1   - {"type":"019E82E1B0F798","value":"zx4Pnh67N+g2V+5vZbQzEyRerX9c4ccNZOVzM9RvJ0Y="}
crypto.SignatureSecp256k1 - {"type":"6D1EA416E1FEE8","value":"MEUCIQCIg5TqS1l7I+MKTrSPIuUN2+4m5tA29dcauqn3NhEJ2wIgICaZ+lgRc5aOTVahU/XoLopXKn8BZcl0bnuYWLvohR8="}
crypto.PubKeySecp256k1    - {"type":"F8CCEAEB5AE980","value":"A8lPKJXcNl5VHt1FK8a244K9EJuS4WX1hFBnwisi0IJx"}