 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- Constants
- Variables
- func IsSortedAndUniqueSECP2561RSigs(sigs [][SECP256K1RSigLen]byte) bool
- func SortSECP2561RSigs(lst [][SECP256K1RSigLen]byte)
- type Factory
- type FactoryED25519
- type FactoryRSA
- type FactoryRSAPSS
- type FactorySECP256K1R
- func (*FactorySECP256K1R) NewPrivateKey() (PrivateKey, error)
- func (f *FactorySECP256K1R) RecoverHashPublicKey(hash, sig []byte) (PublicKey, error)
- func (f *FactorySECP256K1R) RecoverPublicKey(msg, sig []byte) (PublicKey, error)
- func (*FactorySECP256K1R) ToPrivateKey(b []byte) (PrivateKey, error)
- func (*FactorySECP256K1R) ToPublicKey(b []byte) (PublicKey, error)
 
- type PrivateKey
- type PrivateKeyED25519
- type PrivateKeyRSA
- type PrivateKeyRSAPSS
- type PrivateKeySECP256K1R
- type PublicKey
- type PublicKeyED25519
- type PublicKeyRSA
- type PublicKeyRSAPSS
- type PublicKeySECP256K1R
- type RecoverableFactory
Constants ¶
const ( // SECP256K1RSigLen is the number of bytes in a secp2561k recoverable // signature SECP256K1RSigLen = 65 // SECP256K1RSKLen is the number of bytes in a secp2561k recoverable private // key SECP256K1RSKLen = 32 // SECP256K1RPKLen is the number of bytes in a secp2561k recoverable public // key SECP256K1RPKLen = 33 )
Variables ¶
var EnableCrypto = true
    EnableCrypto ... TODO: Remove this from this package, this should be in a config file
Functions ¶
func IsSortedAndUniqueSECP2561RSigs ¶
func IsSortedAndUniqueSECP2561RSigs(sigs [][SECP256K1RSigLen]byte) bool
IsSortedAndUniqueSECP2561RSigs returns true if [sigs] is sorted
func SortSECP2561RSigs ¶
func SortSECP2561RSigs(lst [][SECP256K1RSigLen]byte)
SortSECP2561RSigs sorts a slice of SECP2561R signatures
Types ¶
type Factory ¶
type Factory interface {
	NewPrivateKey() (PrivateKey, error)
	ToPublicKey([]byte) (PublicKey, error)
	ToPrivateKey([]byte) (PrivateKey, error)
}
    Factory ...
type FactoryED25519 ¶
type FactoryED25519 struct{}
    FactoryED25519 ...
func (*FactoryED25519) NewPrivateKey ¶
func (*FactoryED25519) NewPrivateKey() (PrivateKey, error)
NewPrivateKey implements the Factory interface
func (*FactoryED25519) ToPrivateKey ¶
func (*FactoryED25519) ToPrivateKey(b []byte) (PrivateKey, error)
ToPrivateKey implements the Factory interface
func (*FactoryED25519) ToPublicKey ¶
func (*FactoryED25519) ToPublicKey(b []byte) (PublicKey, error)
ToPublicKey implements the Factory interface
type FactoryRSA ¶
type FactoryRSA struct{}
    FactoryRSA ...
func (*FactoryRSA) NewPrivateKey ¶
func (*FactoryRSA) NewPrivateKey() (PrivateKey, error)
NewPrivateKey implements the Factory interface
func (*FactoryRSA) ToPrivateKey ¶
func (*FactoryRSA) ToPrivateKey(b []byte) (PrivateKey, error)
ToPrivateKey implements the Factory interface
func (*FactoryRSA) ToPublicKey ¶
func (*FactoryRSA) ToPublicKey(b []byte) (PublicKey, error)
ToPublicKey implements the Factory interface
type FactoryRSAPSS ¶
type FactoryRSAPSS struct{}
    FactoryRSAPSS ...
func (*FactoryRSAPSS) NewPrivateKey ¶
func (*FactoryRSAPSS) NewPrivateKey() (PrivateKey, error)
NewPrivateKey implements the Factory interface
func (*FactoryRSAPSS) ToPrivateKey ¶
func (*FactoryRSAPSS) ToPrivateKey(b []byte) (PrivateKey, error)
ToPrivateKey implements the Factory interface
func (*FactoryRSAPSS) ToPublicKey ¶
func (*FactoryRSAPSS) ToPublicKey(b []byte) (PublicKey, error)
ToPublicKey implements the Factory interface
type FactorySECP256K1R ¶
FactorySECP256K1R ...
func (*FactorySECP256K1R) NewPrivateKey ¶
func (*FactorySECP256K1R) NewPrivateKey() (PrivateKey, error)
NewPrivateKey implements the Factory interface
func (*FactorySECP256K1R) RecoverHashPublicKey ¶
func (f *FactorySECP256K1R) RecoverHashPublicKey(hash, sig []byte) (PublicKey, error)
RecoverHashPublicKey returns the public key from a 65 byte signature
func (*FactorySECP256K1R) RecoverPublicKey ¶
func (f *FactorySECP256K1R) RecoverPublicKey(msg, sig []byte) (PublicKey, error)
RecoverPublicKey returns the public key from a 65 byte signature
func (*FactorySECP256K1R) ToPrivateKey ¶
func (*FactorySECP256K1R) ToPrivateKey(b []byte) (PrivateKey, error)
ToPrivateKey implements the Factory interface
func (*FactorySECP256K1R) ToPublicKey ¶
func (*FactorySECP256K1R) ToPublicKey(b []byte) (PublicKey, error)
ToPublicKey implements the Factory interface
type PrivateKey ¶
type PrivateKey interface {
	PublicKey() PublicKey
	Sign(message []byte) ([]byte, error)
	SignHash(hash []byte) ([]byte, error)
	Bytes() []byte
}
    PrivateKey ...
type PrivateKeyED25519 ¶
type PrivateKeyED25519 struct {
	// contains filtered or unexported fields
}
    PrivateKeyED25519 ...
func (PrivateKeyED25519) Bytes ¶
func (k PrivateKeyED25519) Bytes() []byte
Bytes implements the PrivateKey interface
func (*PrivateKeyED25519) PublicKey ¶
func (k *PrivateKeyED25519) PublicKey() PublicKey
PublicKey implements the PrivateKey interface
type PrivateKeyRSA ¶
type PrivateKeyRSA struct {
	// contains filtered or unexported fields
}
    PrivateKeyRSA ...
func (*PrivateKeyRSA) Bytes ¶
func (k *PrivateKeyRSA) Bytes() []byte
Bytes implements the PrivateKey interface
func (*PrivateKeyRSA) PublicKey ¶
func (k *PrivateKeyRSA) PublicKey() PublicKey
PublicKey implements the PrivateKey interface
type PrivateKeyRSAPSS ¶
type PrivateKeyRSAPSS struct {
	// contains filtered or unexported fields
}
    PrivateKeyRSAPSS ...
func (*PrivateKeyRSAPSS) Bytes ¶
func (k *PrivateKeyRSAPSS) Bytes() []byte
Bytes implements the PrivateKey interface
func (*PrivateKeyRSAPSS) PublicKey ¶
func (k *PrivateKeyRSAPSS) PublicKey() PublicKey
PublicKey implements the PrivateKey interface
type PrivateKeySECP256K1R ¶
type PrivateKeySECP256K1R struct {
	// contains filtered or unexported fields
}
    PrivateKeySECP256K1R ...
func (*PrivateKeySECP256K1R) Bytes ¶
func (k *PrivateKeySECP256K1R) Bytes() []byte
Bytes implements the PrivateKey interface
func (*PrivateKeySECP256K1R) PublicKey ¶
func (k *PrivateKeySECP256K1R) PublicKey() PublicKey
PublicKey implements the PrivateKey interface
func (*PrivateKeySECP256K1R) Sign ¶
func (k *PrivateKeySECP256K1R) Sign(msg []byte) ([]byte, error)
Sign implements the PrivateKey interface
func (*PrivateKeySECP256K1R) SignHash ¶
func (k *PrivateKeySECP256K1R) SignHash(hash []byte) ([]byte, error)
SignHash implements the PrivateKey interface
func (*PrivateKeySECP256K1R) ToECDSA ¶ added in v0.8.0
func (k *PrivateKeySECP256K1R) ToECDSA() *stdecdsa.PrivateKey
ToECDSA returns the ecdsa representation of this private key
type PublicKey ¶
type PublicKey interface {
	Verify(message, signature []byte) bool
	VerifyHash(hash, signature []byte) bool
	Address() ids.ShortID
	Bytes() []byte
}
    PublicKey ...
type PublicKeyED25519 ¶
type PublicKeyED25519 struct {
	// contains filtered or unexported fields
}
    PublicKeyED25519 ...
func (*PublicKeyED25519) Address ¶
func (k *PublicKeyED25519) Address() ids.ShortID
Address implements the PublicKey interface
func (*PublicKeyED25519) Bytes ¶
func (k *PublicKeyED25519) Bytes() []byte
Bytes implements the PublicKey interface
func (*PublicKeyED25519) Verify ¶
func (k *PublicKeyED25519) Verify(msg, sig []byte) bool
Verify implements the PublicKey interface
func (*PublicKeyED25519) VerifyHash ¶
func (k *PublicKeyED25519) VerifyHash(hash, sig []byte) bool
VerifyHash implements the PublicKey interface
type PublicKeyRSA ¶
type PublicKeyRSA struct {
	// contains filtered or unexported fields
}
    PublicKeyRSA ...
func (*PublicKeyRSA) Address ¶
func (k *PublicKeyRSA) Address() ids.ShortID
Address implements the PublicKey interface
func (*PublicKeyRSA) Bytes ¶
func (k *PublicKeyRSA) Bytes() []byte
Bytes implements the PublicKey interface
func (*PublicKeyRSA) Verify ¶
func (k *PublicKeyRSA) Verify(msg, sig []byte) bool
Verify implements the PublicKey interface
func (*PublicKeyRSA) VerifyHash ¶
func (k *PublicKeyRSA) VerifyHash(hash, sig []byte) bool
VerifyHash implements the PublicKey interface
type PublicKeyRSAPSS ¶
type PublicKeyRSAPSS struct {
	// contains filtered or unexported fields
}
    PublicKeyRSAPSS ...
func (*PublicKeyRSAPSS) Address ¶
func (k *PublicKeyRSAPSS) Address() ids.ShortID
Address implements the PublicKey interface
func (*PublicKeyRSAPSS) Bytes ¶
func (k *PublicKeyRSAPSS) Bytes() []byte
Bytes implements the PublicKey interface
func (*PublicKeyRSAPSS) Verify ¶
func (k *PublicKeyRSAPSS) Verify(msg, sig []byte) bool
Verify implements the PublicKey interface
func (*PublicKeyRSAPSS) VerifyHash ¶
func (k *PublicKeyRSAPSS) VerifyHash(hash, sig []byte) bool
VerifyHash implements the PublicKey interface
type PublicKeySECP256K1R ¶
type PublicKeySECP256K1R struct {
	// contains filtered or unexported fields
}
    PublicKeySECP256K1R ...
func (*PublicKeySECP256K1R) Address ¶
func (k *PublicKeySECP256K1R) Address() ids.ShortID
Address implements the PublicKey interface
func (*PublicKeySECP256K1R) Bytes ¶
func (k *PublicKeySECP256K1R) Bytes() []byte
Bytes implements the PublicKey interface
func (*PublicKeySECP256K1R) ToECDSA ¶ added in v0.8.0
func (k *PublicKeySECP256K1R) ToECDSA() *stdecdsa.PublicKey
ToECDSA returns the ecdsa representation of this public key
func (*PublicKeySECP256K1R) Verify ¶
func (k *PublicKeySECP256K1R) Verify(msg, sig []byte) bool
Verify implements the PublicKey interface
func (*PublicKeySECP256K1R) VerifyHash ¶
func (k *PublicKeySECP256K1R) VerifyHash(hash, sig []byte) bool
VerifyHash implements the PublicKey interface