Documentation ¶
Index ¶
Constants ¶
View Source
const ( BSTypeBliss = 4 BlissVersion = 1 BlissPubKeyLen = 897 BlissPrivKeyLen = 385 )
Variables ¶
View Source
var Bliss = newBlissDSA()
Secp256k1 is the secp256k1 curve and ECDSA system used in Bitcoin.
View Source
var BlissDSA = newBlissDSA()
Functions ¶
func SignCompact ¶
func SignCompact(key hxcrypto.PrivateKey, hash []byte) ([]byte, error)
Types ¶
type DSA ¶
type DSA interface { // ---------------------------------------------------------------------------- // Private keys // // NewPrivateKey instantiates a new private key for the given data NewPrivateKey(s1, s2, a *poly.PolyArray) hccrypto.PrivateKey // PrivKeyFromBytes calculates the public key from serialized bytes, // and returns both it and the private key. PrivKeyFromBytes(pk []byte) (hccrypto.PrivateKey, hccrypto.PublicKey) // PrivKeyBytesLen returns the length of a serialized private key. PrivKeyBytesLen() int // ---------------------------------------------------------------------------- // Public keys // // NewPublicKey instantiates a new public key (point) for the given data. NewPublicKey(a *poly.PolyArray) hccrypto.PublicKey // ParsePubKey parses a serialized public key for the given // curve and returns a public key. ParsePubKey(pubKeyStr []byte) (hccrypto.PublicKey, error) // PubKeyBytesLen returns the length of the default serialization // method for a public key. PubKeyBytesLen() int // ---------------------------------------------------------------------------- // Signatures // // NewSignature instantiates a new signature NewSignature(z1, z2 *poly.PolyArray, c []uint32) hccrypto.Signature // ParseDERSignature parses a DER encoded signature . // If the method doesn't support DER signatures, it // just parses with the default method. ParseDERSignature(sigStr []byte) (hccrypto.Signature, error) // ParseSignature a default encoded signature ParseSignature(sigStr []byte) (hccrypto.Signature, error) // RecoverCompact recovers a public key from an encoded signature // and message, then verifies the signature against the public // key. RecoverCompact(signature, hash []byte) (hccrypto.PublicKey, bool, error) // ---------------------------------------------------------------------------- // Bliss // // GenerateKey generates a new private and public keypair from the // given reader. GenerateKey(rand io.Reader) (hccrypto.PrivateKey, hccrypto.PublicKey, error) // Sign produces an Bliss signature using a private key and a message. Sign(priv hccrypto.PrivateKey, hash []byte) (hccrypto.Signature, error) // Verify verifies an Bliss signature against a given message and // public key. Verify(pub hccrypto.PublicKey, hash []byte, sig hccrypto.Signature) bool }
type PrivateKey ¶
type PrivateKey struct { hccrypto.PrivateKeyAdapter bliss.PrivateKey }
func (PrivateKey) GetType ¶
func (p PrivateKey) GetType() int
GetType satisfies the bliss PrivateKey interface.
func (PrivateKey) PublicKey ¶
func (p PrivateKey) PublicKey() hccrypto.PublicKey
Public returns the PublicKey corresponding to this private key.
func (PrivateKey) Serialize ¶
func (p PrivateKey) Serialize() []byte
type PublicKey ¶
type PublicKey struct { hccrypto.PublicKeyAdapter bliss.PublicKey }
func (PublicKey) SerializeCompressed ¶
func (PublicKey) SerializeUnCompressed ¶
Click to show internal directories.
Click to hide internal directories.