https://github.com/tendermint/tendermint
Revision f1cf10150a1a75832cb2c1fd3679d5beef25884f authored by dongsamb on 16 April 2019, 04:49:03 UTC, committed by Anton Kaliaev on 16 April 2019, 04:49:03 UTC
1 parent 50b87c3
Raw File
Tip revision: f1cf10150a1a75832cb2c1fd3679d5beef25884f authored by dongsamb on 16 April 2019, 04:49:03 UTC
gitignore: add .vendor-new (#3566)
Tip revision: f1cf101
doc.go
// crypto is a customized/convenience cryptography package for supporting
// Tendermint.

// It wraps select functionality of equivalent functions in the
// Go standard library, for easy usage with our libraries.

// Keys:

// All key generation functions return an instance of the PrivKey interface
// which implements methods

//     AssertIsPrivKeyInner()
//     Bytes() []byte
//     Sign(msg []byte) Signature
//     PubKey() PubKey
//     Equals(PrivKey) bool
//     Wrap() PrivKey

// From the above method we can:
// a) Retrieve the public key if needed

//     pubKey := key.PubKey()

// For example:
//     privKey, err := ed25519.GenPrivKey()
//     if err != nil {
// 	...
//     }
//     pubKey := privKey.PubKey()
//     ...
//     // And then you can use the private and public key
//     doSomething(privKey, pubKey)

// We also provide hashing wrappers around algorithms:

// Sha256
//     sum := crypto.Sha256([]byte("This is Tendermint"))
//     fmt.Printf("%x\n", sum)

package crypto

// TODO: Add more docs in here
back to top