https://github.com/tendermint/tendermint
Raw File
Tip revision: d06b4392b332d80119ca634c9d903d4343eb2358 authored by Sam Ricotta on 12 August 2022, 14:51:53 UTC
go mod
Tip revision: d06b439
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