account

package
v0.2.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 7, 2016 License: ISC Imports: 8 Imported by: 2

Documentation

Overview

types and functions for converting Bitmark accounts (the public key) and their signatures

Index

Constants

View Source
const (
	// list of valid algorithms
	Nothing = iota // zero keytype **Just for Testing**
	ED25519 = iota
)

enumeration of supported key algorithms

Variables

This section is empty.

Functions

This section is empty.

Types

type Account

type Account struct {
	AccountInterface
}

base type for accounts

func AccountFromBase58

func AccountFromBase58(accountBase58Encoded string) (*Account, error)

this converts a Base58 encoded string and returns an account

one of the specific account types are returned using the base "AccountInterface" interface type to allow individual methods to be called.

func AccountFromBytes

func AccountFromBytes(accountBytes []byte) (*Account, error)

this converts a byte encoded buffer and returns an account

one of the specific account types are returned using the base "AccountInterface" interface type to allow individual methods to be called.

func (*Account) UnmarshalText

func (account *Account) UnmarshalText(s []byte) error

type AccountInterface

type AccountInterface interface {
	KeyType() int
	PublicKeyBytes() []byte
	CheckSignature(message []byte, signature Signature) error
	Bytes() []byte
	String() string
	MarshalText() ([]byte, error)
}

type ED25519Account

type ED25519Account struct {
	Test      bool
	PublicKey []byte
}

for ed25519 signatures

func (*ED25519Account) Bytes

func (account *ED25519Account) Bytes() []byte

byte slice for encoded key

func (*ED25519Account) CheckSignature

func (account *ED25519Account) CheckSignature(message []byte, signature Signature) error

check the signature of a message

func (*ED25519Account) KeyType

func (account *ED25519Account) KeyType() int

key type code (see enumeration above)

func (ED25519Account) MarshalText

func (account ED25519Account) MarshalText() ([]byte, error)

convert an account to its Base58 JSON form

func (*ED25519Account) PublicKeyBytes

func (account *ED25519Account) PublicKeyBytes() []byte

fetch the public key as byte slice

func (*ED25519Account) String

func (account *ED25519Account) String() string

base58 encoding of encoded key

type NothingAccount

type NothingAccount struct {
	Test      bool
	PublicKey []byte
}

just for debugging

func (*NothingAccount) Bytes

func (account *NothingAccount) Bytes() []byte

byte slice for encoded key

func (*NothingAccount) CheckSignature

func (account *NothingAccount) CheckSignature(message []byte, signature Signature) error

check the signature of a message

func (*NothingAccount) KeyType

func (account *NothingAccount) KeyType() int

key type code (see enumeration above)

func (NothingAccount) MarshalText

func (account NothingAccount) MarshalText() ([]byte, error)

convert an account to its Base58 JSON form

func (*NothingAccount) PublicKeyBytes

func (account *NothingAccount) PublicKeyBytes() []byte

fetch the public key as byte slice

func (*NothingAccount) String

func (account *NothingAccount) String() string

base58 encoding of encoded key

type Signature

type Signature []byte

the type for a signature

func (Signature) GoString

func (signature Signature) GoString() string

convert a binary signature to hex string for use by the fmt package (for %#v)

func (Signature) MarshalText

func (signature Signature) MarshalText() ([]byte, error)

convert signature to text

func (*Signature) Scan

func (signature *Signature) Scan(state fmt.ScanState, verb rune) error

convert a text representation to a signature for use by the format package scan routines

func (Signature) String

func (signature Signature) String() string

convert a binary signature to hex string for use by the fmt package (for %s)

func (*Signature) UnmarshalText

func (signature *Signature) UnmarshalText(s []byte) error

convert text into a signature

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL