Documentation ¶
Index ¶
- Constants
- Variables
- func BlindHash(hash, secret []byte) ([]byte, error)
- func EncodeAddress(typ AddressType, hash []byte) string
- func EncodeBlindedAddress(hash, secret []byte) (string, error)
- func HasAddressPrefix(s string) bool
- func HasKeyPrefix(s string) bool
- func HasSignaturePrefix(s string) bool
- func IsAddressBytes(b []byte) bool
- func IsEncryptedKey(s string) bool
- func IsPrivateKey(s string) bool
- func IsPublicKey(s string) bool
- func IsSignature(s string) bool
- func MatchBlindedAddress(a, b Address, secret []byte) bool
- func Short(v any) string
- type Address
- func (a Address) Clone() (b Address)
- func (a Address) ContractAddress() string
- func (a *Address) Decode(b []byte) error
- func (a Address) Encode() []byte
- func (a Address) EncodePadded() []byte
- func (a Address) Equal(b Address) bool
- func (a Address) Hash() []byte
- func (a Address) IsContract() bool
- func (a Address) IsEOA() bool
- func (a Address) IsRollup() bool
- func (a Address) IsValid() bool
- func (a Address) KeyType() KeyType
- func (a Address) MarshalBinary() ([]byte, error)
- func (a Address) MarshalText() ([]byte, error)
- func (a *Address) Set(addr string) (err error)
- func (a Address) SmartRollupAddress() string
- func (a Address) String() string
- func (a Address) TxRollupAddress() string
- func (a Address) Type() AddressType
- func (a *Address) UnmarshalBinary(b []byte) error
- func (a *Address) UnmarshalText(data []byte) error
- type AddressFilter
- type AddressSet
- func (s *AddressSet) Add(addr Address)
- func (s *AddressSet) AddUnique(addr Address) bool
- func (s *AddressSet) Clear()
- func (s *AddressSet) Contains(addr Address) bool
- func (s AddressSet) HasCollisions() bool
- func (s AddressSet) HasIntersect(t *AddressSet) bool
- func (s AddressSet) Intersect(t *AddressSet) *AddressSet
- func (s *AddressSet) Len() int
- func (s AddressSet) Map() map[uint64]Address
- func (s *AddressSet) Merge(b *AddressSet)
- func (s *AddressSet) Remove(addr Address)
- func (s AddressSet) Slice() []Address
- type AddressType
- func (t AddressType) HashType() HashType
- func (t AddressType) IsValid() bool
- func (t AddressType) KeyType() KeyType
- func (t AddressType) MarshalText() ([]byte, error)
- func (t AddressType) Prefix() string
- func (t AddressType) String() string
- func (t AddressType) Tag() byte
- func (t *AddressType) UnmarshalText(data []byte) error
- type BallotVote
- type BlockHash
- func (h BlockHash) Bytes() []byte
- func (h BlockHash) Clone() BlockHash
- func (h BlockHash) Equal(h2 BlockHash) bool
- func (h BlockHash) Int64() int64
- func (h BlockHash) IsValid() bool
- func (h BlockHash) MarshalBinary() ([]byte, error)
- func (h BlockHash) MarshalText() ([]byte, error)
- func (h *BlockHash) Set(s string) (err error)
- func (h BlockHash) String() string
- func (h *BlockHash) UnmarshalBinary(buf []byte) error
- func (h *BlockHash) UnmarshalText(buf []byte) error
- type Bool
- type ChainIdHash
- func (h ChainIdHash) Bytes() []byte
- func (h ChainIdHash) Clone() ChainIdHash
- func (h ChainIdHash) Equal(h2 ChainIdHash) bool
- func (h ChainIdHash) IsValid() bool
- func (h ChainIdHash) MarshalBinary() ([]byte, error)
- func (h ChainIdHash) MarshalText() ([]byte, error)
- func (h *ChainIdHash) Set(s string) (err error)
- func (h ChainIdHash) String() string
- func (h ChainIdHash) Uint32() uint32
- func (h *ChainIdHash) UnmarshalBinary(buf []byte) error
- func (h *ChainIdHash) UnmarshalText(buf []byte) error
- type ContextHash
- func (h ContextHash) Bytes() []byte
- func (h ContextHash) Clone() ContextHash
- func (h ContextHash) Equal(h2 ContextHash) bool
- func (h ContextHash) IsValid() bool
- func (h ContextHash) MarshalBinary() ([]byte, error)
- func (h ContextHash) MarshalText() ([]byte, error)
- func (h *ContextHash) Set(hash string) (err error)
- func (h ContextHash) String() string
- func (h *ContextHash) UnmarshalBinary(buf []byte) error
- func (h *ContextHash) UnmarshalText(buf []byte) error
- type Costs
- type Deployment
- type ExprHash
- func (h ExprHash) Bytes() []byte
- func (h ExprHash) Clone() ExprHash
- func (h ExprHash) Equal(h2 ExprHash) bool
- func (h ExprHash) IsValid() bool
- func (h ExprHash) MarshalBinary() ([]byte, error)
- func (h ExprHash) MarshalText() ([]byte, error)
- func (h *ExprHash) Set(hash string) (err error)
- func (h ExprHash) String() string
- func (h *ExprHash) UnmarshalBinary(buf []byte) error
- func (h *ExprHash) UnmarshalText(buf []byte) error
- type HashType
- type HexBytes
- func (h HexBytes) Bytes() []byte
- func (h HexBytes) MarshalBinary() ([]byte, error)
- func (h HexBytes) MarshalText() ([]byte, error)
- func (h *HexBytes) ReadBytes(r io.Reader, size int) error
- func (h HexBytes) String() string
- func (h *HexBytes) UnmarshalBinary(data []byte) error
- func (h *HexBytes) UnmarshalText(data []byte) error
- type Key
- func (k Key) Address() Address
- func (k Key) Bytes() []byte
- func (k Key) Clone() Key
- func (k *Key) DecodeBuffer(buf *bytes.Buffer) error
- func (k *Key) EncodeBuffer(buf *bytes.Buffer) error
- func (k Key) Hash() []byte
- func (k Key) IsEqual(k2 Key) bool
- func (k Key) IsValid() bool
- func (k Key) MarshalBinary() ([]byte, error)
- func (k Key) MarshalText() ([]byte, error)
- func (k *Key) Set(key string) (err error)
- func (k Key) String() string
- func (k *Key) UnmarshalBinary(b []byte) error
- func (k *Key) UnmarshalText(data []byte) error
- func (k Key) Verify(hash []byte, sig Signature) error
- type KeyType
- func (t KeyType) AddressType() AddressType
- func (t KeyType) Curve() elliptic.Curve
- func (t KeyType) IsValid() bool
- func (t KeyType) PkHashType() HashType
- func (t KeyType) PkPrefix() string
- func (t KeyType) PkPrefixBytes() []byte
- func (t KeyType) SkHashType() HashType
- func (t KeyType) SkPrefix() string
- func (t KeyType) SkPrefixBytes() []byte
- func (t KeyType) SkePrefix() string
- func (t KeyType) SkePrefixBytes() []byte
- func (t KeyType) String() string
- func (t KeyType) Tag() byte
- type LbVote
- type Limits
- type N
- func (n N) Clone() N
- func (n N) Decimals(d int) string
- func (n *N) DecodeBuffer(buf *bytes.Buffer) error
- func (n N) EncodeBuffer(buf *bytes.Buffer) error
- func (n N) Equal(x N) bool
- func (n N) Int64() int64
- func (n N) IsZero() bool
- func (n N) MarshalBinary() ([]byte, error)
- func (n N) MarshalText() ([]byte, error)
- func (n *N) Set(val string) (err error)
- func (n *N) SetInt64(i int64) *N
- func (n N) String() string
- func (n *N) UnmarshalBinary(data []byte) error
- func (n *N) UnmarshalText(d []byte) error
- type NonceHash
- func (h NonceHash) Bytes() []byte
- func (h NonceHash) Clone() NonceHash
- func (h NonceHash) Equal(h2 NonceHash) bool
- func (h NonceHash) IsValid() bool
- func (h NonceHash) MarshalBinary() ([]byte, error)
- func (h NonceHash) MarshalText() ([]byte, error)
- func (h *NonceHash) Set(hash string) (err error)
- func (h NonceHash) String() string
- func (h *NonceHash) UnmarshalBinary(buf []byte) error
- func (h *NonceHash) UnmarshalText(buf []byte) error
- type OpHash
- func (h OpHash) Bytes() []byte
- func (h OpHash) Clone() OpHash
- func (h OpHash) Equal(h2 OpHash) bool
- func (h OpHash) IsValid() bool
- func (h OpHash) MarshalBinary() ([]byte, error)
- func (h OpHash) MarshalText() ([]byte, error)
- func (h *OpHash) Set(s string) (err error)
- func (h OpHash) String() string
- func (h *OpHash) UnmarshalBinary(buf []byte) error
- func (h *OpHash) UnmarshalText(buf []byte) error
- type OpListListHash
- func (h OpListListHash) Bytes() []byte
- func (h OpListListHash) Clone() OpListListHash
- func (h OpListListHash) Equal(h2 OpListListHash) bool
- func (h OpListListHash) IsValid() bool
- func (h OpListListHash) MarshalBinary() ([]byte, error)
- func (h OpListListHash) MarshalText() ([]byte, error)
- func (h *OpListListHash) Set(s string) (err error)
- func (h OpListListHash) String() string
- func (h *OpListListHash) UnmarshalBinary(buf []byte) error
- func (h *OpListListHash) UnmarshalText(buf []byte) error
- type OpStatus
- type OpType
- func (t OpType) IsValid() bool
- func (t OpType) ListId() int
- func (t OpType) MarshalText() ([]byte, error)
- func (t OpType) MinSize() int
- func (t OpType) MinSizeVersion(ver int) int
- func (t OpType) String() string
- func (t OpType) Tag() byte
- func (t OpType) TagVersion(ver int) byte
- func (t *OpType) UnmarshalText(data []byte) error
- type Params
- func (p *Params) AtBlock(height int64) *Params
- func (p *Params) AtCycle(cycle int64) *Params
- func (p Params) Clone() *Params
- func (p Params) ContainsCycle(c int64) bool
- func (p Params) ContainsHeight(height int64) bool
- func (p *Params) CycleEndHeight(c int64) int64
- func (p *Params) CycleFromHeight(height int64) int64
- func (p *Params) CyclePosition(height int64) int64
- func (p *Params) CycleStartHeight(c int64) int64
- func (p *Params) IsCycleEnd(height int64) bool
- func (p *Params) IsCycleStart(height int64) bool
- func (p Params) IsMainnet() bool
- func (p *Params) IsSnapshotBlock(height int64) bool
- func (p Params) SnapshotBaseCycle(cycle int64) int64
- func (p *Params) SnapshotBlock(cycle int64, index int) int64
- func (p *Params) SnapshotIndex(height int64) int
- func (p *Params) WithBlock(height int64) *Params
- func (p *Params) WithChainId(id ChainIdHash) *Params
- func (p *Params) WithDeployment(d Deployment) *Params
- func (p *Params) WithNetwork(n string) *Params
- func (p *Params) WithProtocol(h ProtocolHash) *Params
- type PassphraseFunc
- type PayloadHash
- func (h PayloadHash) Bytes() []byte
- func (h PayloadHash) Clone() PayloadHash
- func (h PayloadHash) Equal(h2 PayloadHash) bool
- func (h PayloadHash) IsValid() bool
- func (h PayloadHash) MarshalBinary() ([]byte, error)
- func (h PayloadHash) MarshalText() ([]byte, error)
- func (h *PayloadHash) Set(hash string) (err error)
- func (h PayloadHash) String() string
- func (h *PayloadHash) UnmarshalBinary(buf []byte) error
- func (h *PayloadHash) UnmarshalText(buf []byte) error
- type PrivateKey
- func (k PrivateKey) Address() Address
- func (k PrivateKey) Encrypt(fn PassphraseFunc) (string, error)
- func (k PrivateKey) IsValid() bool
- func (k PrivateKey) MarshalText() ([]byte, error)
- func (k PrivateKey) Public() Key
- func (k *PrivateKey) Set(key string) (err error)
- func (k PrivateKey) Sign(hash []byte) (Signature, error)
- func (k PrivateKey) String() string
- func (k *PrivateKey) UnmarshalText(data []byte) error
- type ProtocolHash
- func (h ProtocolHash) Bytes() []byte
- func (h ProtocolHash) Clone() ProtocolHash
- func (h ProtocolHash) Equal(h2 ProtocolHash) bool
- func (h ProtocolHash) IsValid() bool
- func (h ProtocolHash) MarshalBinary() ([]byte, error)
- func (h ProtocolHash) MarshalText() ([]byte, error)
- func (h *ProtocolHash) Set(s string) (err error)
- func (h ProtocolHash) String() string
- func (h *ProtocolHash) UnmarshalBinary(buf []byte) error
- func (h *ProtocolHash) UnmarshalText(buf []byte) error
- type ProtocolHistory
- func (h *ProtocolHistory) Add(d Deployment)
- func (h ProtocolHistory) AtBlock(height int64) (d Deployment)
- func (h ProtocolHistory) AtCycle(cycle int64) (d Deployment)
- func (h ProtocolHistory) AtProtocol(proto ProtocolHash) (d Deployment)
- func (h ProtocolHistory) Clone() ProtocolHistory
- func (h ProtocolHistory) Last() (d Deployment)
- type PvmKind
- type Ratio
- type RightType
- type Signature
- func (s Signature) Bytes() []byte
- func (s Signature) Clone() Signature
- func (s *Signature) DecodeBuffer(buf *bytes.Buffer) error
- func (s Signature) Equal(s2 Signature) bool
- func (s Signature) Generic() string
- func (s Signature) IsValid() bool
- func (s Signature) MarshalBinary() ([]byte, error)
- func (s Signature) MarshalText() ([]byte, error)
- func (s *Signature) Set(sig string) (err error)
- func (s Signature) String() string
- func (s *Signature) UnmarshalBinary(b []byte) error
- func (s *Signature) UnmarshalText(data []byte) error
- type SignatureType
- type SmartRollupCommitHash
- func (h SmartRollupCommitHash) Bytes() []byte
- func (h SmartRollupCommitHash) Clone() SmartRollupCommitHash
- func (h SmartRollupCommitHash) Equal(h2 SmartRollupCommitHash) bool
- func (h SmartRollupCommitHash) IsValid() bool
- func (h SmartRollupCommitHash) MarshalBinary() ([]byte, error)
- func (h SmartRollupCommitHash) MarshalText() ([]byte, error)
- func (h *SmartRollupCommitHash) Set(hash string) (err error)
- func (h SmartRollupCommitHash) String() string
- func (h *SmartRollupCommitHash) UnmarshalBinary(buf []byte) error
- func (h *SmartRollupCommitHash) UnmarshalText(buf []byte) error
- type SmartRollupStateHash
- func (h SmartRollupStateHash) Bytes() []byte
- func (h SmartRollupStateHash) Clone() SmartRollupStateHash
- func (h SmartRollupStateHash) Equal(h2 SmartRollupStateHash) bool
- func (h SmartRollupStateHash) IsValid() bool
- func (h SmartRollupStateHash) MarshalBinary() ([]byte, error)
- func (h SmartRollupStateHash) MarshalText() ([]byte, error)
- func (h *SmartRollupStateHash) Set(hash string) (err error)
- func (h SmartRollupStateHash) String() string
- func (h *SmartRollupStateHash) UnmarshalBinary(buf []byte) error
- func (h *SmartRollupStateHash) UnmarshalText(buf []byte) error
- type Token
- func (t Token) Bytes() []byte
- func (t Token) Clone() Token
- func (t Token) Contract() Address
- func (t Token) Equal(b Token) bool
- func (t Token) MarshalBinary() ([]byte, error)
- func (t Token) MarshalText() ([]byte, error)
- func (t *Token) Set(key string) (err error)
- func (t Token) String() string
- func (t Token) TokenId() Z
- func (t *Token) UnmarshalBinary(data []byte) error
- func (t *Token) UnmarshalText(data []byte) error
- type VotingPeriodKind
- type Z
- func (z Z) Add(y Z) Z
- func (z Z) Add64(y int64) Z
- func (z Z) Big() *big.Int
- func (z Z) Bytes() []byte
- func (z Z) CeilDiv(y Z) Z
- func (z Z) CeilScale(n int) Z
- func (z Z) Clone() Z
- func (z Z) Cmp(b Z) int
- func (z Z) Decimals(d int) string
- func (z *Z) DecodeBuffer(buf *bytes.Buffer) error
- func (z Z) Div(y Z) Z
- func (z Z) Div64(y int64) Z
- func (z *Z) EncodeBuffer(buf *bytes.Buffer) error
- func (z Z) Equal(x Z) bool
- func (z Z) Float64(dec int) float64
- func (z Z) Int64() int64
- func (z Z) IsLess(b Z) bool
- func (z Z) IsLessEqual(b Z) bool
- func (z Z) IsNeg() bool
- func (z Z) IsZero() bool
- func (z Z) Lsh(n uint) Z
- func (z Z) MarshalBinary() ([]byte, error)
- func (z Z) MarshalText() ([]byte, error)
- func (z Z) Mul(y Z) Z
- func (z Z) Mul64(y int64) Z
- func (z Z) Neg() Z
- func (z Z) Rsh(n uint) Z
- func (z Z) Scale(n int) Z
- func (z *Z) Set(val string) (err error)
- func (z *Z) SetBig(b *big.Int) *Z
- func (z *Z) SetInt64(i int64) *Z
- func (z Z) String() string
- func (z Z) Sub(y Z) Z
- func (z Z) Sub64(y int64) Z
- func (z *Z) UnmarshalBinary(data []byte) error
- func (z *Z) UnmarshalText(d []byte) error
Constants ¶
const ( Name = "Tezos" Symbol = "XTZ" // base58 prefixes for 4 byte hash magics CHAIN_ID_PREFIX = "Net" // base58 prefixes for 16 byte hash magics ID_HASH_PREFIX = "id" // base58 prefixes for 20 byte hash magics ED25519_PUBLIC_KEY_HASH_PREFIX = "tz1" SECP256K1_PUBLIC_KEY_HASH_PREFIX = "tz2" P256_PUBLIC_KEY_HASH_PREFIX = "tz3" NOCURVE_PUBLIC_KEY_HASH_PREFIX = "KT1" // originated contract identifier BLINDED_PUBLIC_KEY_HASH_PREFIX = "btz1" // blinded tz1 // base58 prefixes for 32 byte hash magics BLOCK_HASH_PREFIX = "B" OPERATION_HASH_PREFIX = "o" OPERATION_LIST_HASH_PREFIX = "Lo" OPERATION_LIST_LIST_HASH_PREFIX = "LLo" PROTOCOL_HASH_PREFIX = "P" CONTEXT_HASH_PREFIX = "Co" NONCE_HASH_PREFIX = "nce" ED25519_SEED_PREFIX = "edsk" ED25519_PUBLIC_KEY_PREFIX = "edpk" SECP256K1_SECRET_KEY_PREFIX = "spsk" P256_SECRET_KEY_PREFIX = "p2sk" BLOCK_PAYLOAD_HASH_PREFIX = "vh" // "\001\106\242" (* vh(52) *) BLOCK_METADATA_HASH_PREFIX = "bm" // "\234\249" (* bm(52) *) OPERATION_METADATA_HASH_PREFIX = "r" // "\005\183" (* r(51) *) OPERATION_METADATA_LIST_HASH_PREFIX = "Lr" // "\134\039" (* Lr(52) *) OPERATION_METADATA_LIST_LIST_HASH_PREFIX = "LLr" // "\029\159\182" (* LLr(53) *) // base58 prefixes for 33 byte hash magics SECP256K1_PUBLIC_KEY_PREFIX = "sppk" P256_PUBLIC_KEY_PREFIX = "p2pk" SECP256K1_SCALAR_PREFIX = "SSp" SECP256K1_ELEMENT_PREFIX = "GSp" // base58 prefixes for 54 byte hash magics SCRIPT_EXPR_HASH_PREFIX = "expr" // base58 prefixes for 56 byte hash magics ED25519_ENCRYPTED_SEED_PREFIX = "edesk" SECP256K1_ENCRYPTED_SECRET_KEY_PREFIX = "spesk" P256_ENCRYPTED_SECRET_KEY_PREFIX = "p2esk" // base58 prefixes for 60 byte hash magics SECP256K1_ENCRYPTED_SCALAR_PREFIX = "seesk" // "\001\131\036\086\248" (* seesk(93) *) // base58 prefixes for 64 byte hash magics ED25519_SECRET_KEY_PREFIX = "edsk" ED25519_SIGNATURE_PREFIX = "edsig" SECP256K1_SIGNATURE_PREFIX = "spsig1" P256_SIGNATURE_PREFIX = "p2sig" GENERIC_SIGNATURE_PREFIX = "sig" // base58 prefixes for Sapling byte hash magics SAPLING_SPENDING_KEY_PREFIX = "sask" // "\011\237\020\092" (* sask(241) *) // 169 bytes SAPLING_ADDRESS_PREFIX = "zet1" // "\018\071\040\223" (* zet1(69) *) // 43 bytes // base58 prefixes for rollup hash magics BLS12_381_PUBLIC_KEY_HASH_PREFIX = "tz4" GENERIC_AGGREGATE_SIGNATURE_PREFIX = "asig" BLS12_381_SIGNATURE_PREFIX = "BLsig" BLS12_381_PUBLIC_KEY_PREFIX = "BLpk" BLS12_381_SECRET_KEY_PREFIX = "BLsk" BLS12_381_ENCRYPTED_SECRET_KEY_PREFIX = "BLesk" TX_ROLLUP_ADDRESS_PREFIX = "txr1" TX_ROLLUP_INBOX_HASH_PREFIX = "txi" TX_ROLLUP_MESSAGE_HASH_PREFIX = "txm" TX_ROLLUP_COMMITMENT_HASH_PREFIX = "txc" TX_ROLLUP_MESSAGE_RESULT_HASH_PREFIX = "txmr" TX_ROLLUP_MESSAGE_RESULT_LIST_HASH_PREFIX = "txM" TX_ROLLUP_WITHDRAW_LIST_HASH_PREFIX = "txw" SMART_ROLLUP_ADDRESS_PREFIX = "sr1" SMART_ROLLUP_STATE_HASH_PREFIX = "srs1" SMART_ROLLUP_COMMITMENT_HASH_PREFIX = "src1" SMART_ROLLUP_REVEAL_HASH_PREFIX = "scrrh1" )
const ( YAY = "yay" NAY = "nay" PASS = "pass" ON = "on" OFF = "off" )
const MAX_ADDRESS_LEN = 37 // tx rollup address
Variables ¶
var ( // ErrChecksumMismatch describes an error where decoding failed due // to a bad checksum. ErrChecksumMismatch = errors.New("tezos: checksum mismatch") // ErrUnknownAddressType describes an error where an address can not // decoded as a specific address type due to the string encoding // begining with an identifier byte unknown to any standard or // registered (via Register) network. ErrUnknownAddressType = errors.New("tezos: unknown address type") // InvalidAddress is an empty invalid address InvalidAddress = NewAddress(AddressTypeInvalid, nil) // ZeroAddress is a tz1 address with all bytes zero ZeroAddress = NewAddress(AddressTypeEd25519, make([]byte, HashTypePkhEd25519.Len)) ZeroContract = NewAddress(AddressTypeContract, make([]byte, HashTypePkhNocurve.Len)) // Burn Address BurnAddress = MustParseAddress("tz1burnburnburnburnburnburnburjAYjjX") )
var ( // ErrUnknownHashType describes an error where a hash can not // decoded as a specific hash type because the string encoding // starts with an unknown identifier. ErrUnknownHashType = errors.New("tezos: unknown hash type") // Zero hashes ZeroChainIdHash = NewChainIdHash(nil) ZeroBlockHash = NewBlockHash(nil) ZeroProtocolHash = NewProtocolHash(nil) ZeroOpHash = NewOpHash(nil) ZeroOpListListHash = NewOpListListHash(nil) ZeroPayloadHash = NewPayloadHash(nil) ZeroExprHash = NewExprHash(nil) ZeroNonceHash = NewNonceHash(nil) ZeroContextHash = NewContextHash(nil) ZeroSmartRollupStateHash = NewSmartRollupStateHash(nil) ZeroSmartRollupCommitHash = NewSmartRollupCommitHash(nil) )
var ( HashTypeInvalid = HashType{nil, 0, "", 0} HashTypeChainId = HashType{CHAIN_ID, 4, CHAIN_ID_PREFIX, 15} HashTypeId = HashType{ID_HASH_ID, 16, ID_HASH_PREFIX, 36} HashTypePkhEd25519 = HashType{ED25519_PUBLIC_KEY_HASH_ID, 20, ED25519_PUBLIC_KEY_HASH_PREFIX, 36} HashTypePkhSecp256k1 = HashType{SECP256K1_PUBLIC_KEY_HASH_ID, 20, SECP256K1_PUBLIC_KEY_HASH_PREFIX, 36} HashTypePkhP256 = HashType{P256_PUBLIC_KEY_HASH_ID, 20, P256_PUBLIC_KEY_HASH_PREFIX, 36} HashTypePkhNocurve = HashType{NOCURVE_PUBLIC_KEY_HASH_ID, 20, NOCURVE_PUBLIC_KEY_HASH_PREFIX, 36} HashTypePkhBlinded = HashType{BLINDED_PUBLIC_KEY_HASH_ID, 20, BLINDED_PUBLIC_KEY_HASH_PREFIX, 37} HashTypeBlock = HashType{BLOCK_HASH_ID, 32, BLOCK_HASH_PREFIX, 51} HashTypeOperation = HashType{OPERATION_HASH_ID, 32, OPERATION_HASH_PREFIX, 51} HashTypeOperationList = HashType{OPERATION_LIST_HASH_ID, 32, OPERATION_LIST_HASH_PREFIX, 52} HashTypeOperationListList = HashType{OPERATION_LIST_LIST_HASH_ID, 32, OPERATION_LIST_LIST_HASH_PREFIX, 53} HashTypeProtocol = HashType{PROTOCOL_HASH_ID, 32, PROTOCOL_HASH_PREFIX, 51} HashTypeContext = HashType{CONTEXT_HASH_ID, 32, CONTEXT_HASH_PREFIX, 52} HashTypeNonce = HashType{NONCE_HASH_ID, 32, NONCE_HASH_PREFIX, 53} HashTypeSeedEd25519 = HashType{ED25519_SEED_ID, 32, ED25519_SEED_PREFIX, 54} HashTypePkEd25519 = HashType{ED25519_PUBLIC_KEY_ID, 32, ED25519_PUBLIC_KEY_PREFIX, 54} HashTypeSkEd25519 = HashType{ED25519_SECRET_KEY_ID, 64, ED25519_SECRET_KEY_PREFIX, 98} HashTypePkSecp256k1 = HashType{SECP256K1_PUBLIC_KEY_ID, 33, SECP256K1_PUBLIC_KEY_PREFIX, 55} HashTypeSkSecp256k1 = HashType{SECP256K1_SECRET_KEY_ID, 32, SECP256K1_SECRET_KEY_PREFIX, 54} HashTypePkP256 = HashType{P256_PUBLIC_KEY_ID, 33, P256_PUBLIC_KEY_PREFIX, 55} HashTypeSkP256 = HashType{P256_SECRET_KEY_ID, 32, P256_SECRET_KEY_PREFIX, 54} HashTypeScalarSecp256k1 = HashType{SECP256K1_SCALAR_ID, 33, SECP256K1_SCALAR_PREFIX, 53} HashTypeElementSecp256k1 = HashType{SECP256K1_ELEMENT_ID, 33, SECP256K1_ELEMENT_PREFIX, 54} HashTypeScriptExpr = HashType{SCRIPT_EXPR_HASH_ID, 32, SCRIPT_EXPR_HASH_PREFIX, 54} HashTypeEncryptedSeedEd25519 = HashType{ED25519_ENCRYPTED_SEED_ID, 56, ED25519_ENCRYPTED_SEED_PREFIX, 88} HashTypeEncryptedSkSecp256k1 = HashType{SECP256K1_ENCRYPTED_SECRET_KEY_ID, 56, SECP256K1_ENCRYPTED_SECRET_KEY_PREFIX, 88} HashTypeEncryptedSkP256 = HashType{P256_ENCRYPTED_SECRET_KEY_ID, 56, P256_ENCRYPTED_SECRET_KEY_PREFIX, 88} HashTypeSigEd25519 = HashType{ED25519_SIGNATURE_ID, 64, ED25519_SIGNATURE_PREFIX, 99} HashTypeSigSecp256k1 = HashType{SECP256K1_SIGNATURE_ID, 64, SECP256K1_SIGNATURE_PREFIX, 99} HashTypeSigP256 = HashType{P256_SIGNATURE_ID, 64, P256_SIGNATURE_PREFIX, 98} HashTypeSigGeneric = HashType{GENERIC_SIGNATURE_ID, 64, GENERIC_SIGNATURE_PREFIX, 96} HashTypeBlockPayload = HashType{BLOCK_PAYLOAD_HASH_ID, 32, BLOCK_PAYLOAD_HASH_PREFIX, 52} HashTypeBlockMetadata = HashType{BLOCK_METADATA_HASH_ID, 32, BLOCK_METADATA_HASH_PREFIX, 52} HashTypeOperationMetadata = HashType{OPERATION_METADATA_HASH_ID, 32, OPERATION_METADATA_HASH_PREFIX, 51} HashTypeOperationMetadataList = HashType{OPERATION_METADATA_LIST_HASH_ID, 32, OPERATION_METADATA_LIST_HASH_PREFIX, 52} HashTypeOperationMetadataListList = HashType{OPERATION_METADATA_LIST_LIST_HASH_ID, 32, OPERATION_METADATA_LIST_LIST_HASH_PREFIX, 53} HashTypeEncryptedSecp256k1Scalar = HashType{SECP256K1_ENCRYPTED_SCALAR_ID, 60, SECP256K1_ENCRYPTED_SCALAR_PREFIX, 93} HashTypeSaplingSpendingKey = HashType{SAPLING_SPENDING_KEY_ID, 169, SAPLING_SPENDING_KEY_PREFIX, 241} HashTypeSaplingAddress = HashType{SAPLING_ADDRESS_ID, 43, SAPLING_ADDRESS_PREFIX, 69} HashTypePkhBls12_381 = HashType{BLS12_381_PUBLIC_KEY_HASH_ID, 20, BLS12_381_PUBLIC_KEY_HASH_PREFIX, 36} HashTypeSigGenericAggregate = HashType{GENERIC_AGGREGATE_SIGNATURE_ID, 96, GENERIC_AGGREGATE_SIGNATURE_PREFIX, 141} HashTypeSigBls12_381 = HashType{BLS12_381_SIGNATURE_ID, 96, BLS12_381_SIGNATURE_PREFIX, 142} HashTypePkBls12_381 = HashType{BLS12_381_PUBLIC_KEY_ID, 48, BLS12_381_PUBLIC_KEY_PREFIX, 76} HashTypeSkBls12_381 = HashType{BLS12_381_SECRET_KEY_ID, 32, BLS12_381_SECRET_KEY_PREFIX, 54} HashTypeEncryptedSkBls12_381 = HashType{BLS12_381_ENCRYPTED_SECRET_KEY_ID, 58, BLS12_381_ENCRYPTED_SECRET_KEY_PREFIX, 88} HashTypeTxRollupAddress = HashType{TX_ROLLUP_ADDRESS_ID, 20, TX_ROLLUP_ADDRESS_PREFIX, 37} HashTypeTxRollupInbox = HashType{TX_ROLLUP_INBOX_HASH_ID, 32, TX_ROLLUP_INBOX_HASH_PREFIX, 53} HashTypeTxRollupMessage = HashType{TX_ROLLUP_MESSAGE_HASH_ID, 32, TX_ROLLUP_MESSAGE_HASH_PREFIX, 53} HashTypeTxRollupCommitment = HashType{TX_ROLLUP_COMMITMENT_HASH_ID, 32, TX_ROLLUP_COMMITMENT_HASH_PREFIX, 53} HashTypeTxRollupMessageResult = HashType{TX_ROLLUP_MESSAGE_RESULT_HASH_ID, 32, TX_ROLLUP_MESSAGE_RESULT_HASH_PREFIX, 54} HashTypeTxRollupMessageResultList = HashType{TX_ROLLUP_MESSAGE_RESULT_LIST_HASH_ID, 32, TX_ROLLUP_MESSAGE_RESULT_LIST_HASH_PREFIX, 53} HashTypeTxRollupWithdrawList = HashType{TX_ROLLUP_WITHDRAW_LIST_HASH_ID, 32, TX_ROLLUP_WITHDRAW_LIST_HASH_PREFIX, 53} HashTypeSmartRollupAddress = HashType{SMART_ROLLUP_ADDRESS_ID, 20, SMART_ROLLUP_ADDRESS_PREFIX, 36} HashTypeSmartRollupStateHash = HashType{SMART_ROLLUP_STATE_HASH_ID, 32, SMART_ROLLUP_STATE_HASH_PREFIX, 54} HashTypeSmartRollupCommitHash = HashType{SMART_ROLLUP_COMMITMENT_HASH_ID, 32, SMART_ROLLUP_COMMITMENT_HASH_PREFIX, 54} HashTypeSmartRollupRevealHash = HashType{SMART_ROLLUP_REVEAL_HASH_ID, 32, SMART_ROLLUP_REVEAL_HASH_PREFIX, 56} )
var ( // ErrUnknownKeyType describes an error where a type for a // public key is undefined. ErrUnknownKeyType = errors.New("tezos: unknown key type") // ErrPassphrase is returned when a required passphrase is missing ErrPassphrase = errors.New("tezos: passphrase required") InvalidKey = Key{Type: KeyTypeInvalid, Data: nil} // Digest is an alias for blake2b checksum algorithm Digest = blake2b.Sum256 )
var ( // 4 byte hash magics CHAIN_ID = []byte{0x57, 0x52, 0x00} // "\087\082\000" (* Net(15) *) // 16 byte hash magics ID_HASH_ID = []byte{0x99, 0x67} // "\153\103" (* id(30) *) cryptobox_public_key_hash // 20 byte hash magics ED25519_PUBLIC_KEY_HASH_ID = []byte{0x06, 0xA1, 0x9F} // "\006\161\159" (* tz1(36) *) SECP256K1_PUBLIC_KEY_HASH_ID = []byte{0x06, 0xA1, 0xA1} // "\006\161\161" (* tz2(36) *) P256_PUBLIC_KEY_HASH_ID = []byte{0x06, 0xA1, 0xA4} // "\006\161\164" (* tz3(36) *) NOCURVE_PUBLIC_KEY_HASH_ID = []byte{0x02, 0x5A, 0x79} // "\002\090\121" (* KT1(36) *) BLINDED_PUBLIC_KEY_HASH_ID = []byte{0x01, 0x02, 0x31, 0xDF} // "\002\090\121" (* btz1(37) *) // 32 byte hash magics BLOCK_HASH_ID = []byte{0x01, 0x34} // "\001\052" (* B(51) *) OPERATION_HASH_ID = []byte{0x05, 0x74} // "\005\116" (* o(51) *) OPERATION_LIST_HASH_ID = []byte{0x85, 0xE9} // "\133\233" (* Lo(52) *) OPERATION_LIST_LIST_HASH_ID = []byte{0x1D, 0x9F, 0x6D} // "\029\159\109" (* LLo(53) *) PROTOCOL_HASH_ID = []byte{0x02, 0xAA} // "\002\170" (* P(51) *) CONTEXT_HASH_ID = []byte{0x4F, 0xC7} // "\079\199" (* Co(52) *) NONCE_HASH_ID = []byte{0x45, 0xDC, 0xA9} // "\069\220\169" (* nce(53) *) BLOCK_PAYLOAD_HASH_ID = []byte{0x01, 0x6A, 0xF2} // "\001\106\242" (* vh(52) *) BLOCK_METADATA_HASH_ID = []byte{0xEA, 0xF9} // "\234\249" (* bm(52) *) OPERATION_METADATA_HASH_ID = []byte{0x05, 0xB7} // "\005\183" (* r(51) *) OPERATION_METADATA_LIST_HASH_ID = []byte{0x86, 0x27} // "\134\039" (* Lr(52) *) OPERATION_METADATA_LIST_LIST_HASH_ID = []byte{0x1D, 0x9F, 0xB6} // "\029\159\182" (* LLr(53) *) ED25519_SEED_ID = []byte{0x0D, 0x0F, 0x3A, 0x07} // "\013\015\058\007" (* edsk(54) *) ED25519_PUBLIC_KEY_ID = []byte{0x0D, 0x0F, 0x25, 0xD9} // "\013\015\037\217" (* edpk(54) *) SECP256K1_SECRET_KEY_ID = []byte{0x11, 0xA2, 0xE0, 0xC9} // "\017\162\224\201" (* spsk(54) *) P256_SECRET_KEY_ID = []byte{0x10, 0x51, 0xEE, 0xBD} // "\016\081\238\189" (* p2sk(54) *) // 33 byte hash magics SECP256K1_PUBLIC_KEY_ID = []byte{0x03, 0xFE, 0xE2, 0x56} // "\003\254\226\086" (* sppk(55) *) P256_PUBLIC_KEY_ID = []byte{0x03, 0xB2, 0x8B, 0x7F} // "\003\178\139\127" (* p2pk(55) *) SECP256K1_SCALAR_ID = []byte{0x26, 0xF8, 0x88} // "\038\248\136" (* SSp(53) *) SECP256K1_ELEMENT_ID = []byte{0x05, 0x5C, 0x00} // "\005\092\000" (* GSp(54) *) // 54 byte hash magics SCRIPT_EXPR_HASH_ID = []byte{0x0D, 0x2C, 0x40, 0x1B} // "\013\044\064\027" (* expr(54) *) // 56 byte hash magics ED25519_ENCRYPTED_SEED_ID = []byte{0x07, 0x5A, 0x3C, 0xB3, 0x29} // "\007\090\060\179\041" (* edesk(88) *) SECP256K1_ENCRYPTED_SECRET_KEY_ID = []byte{0x09, 0xED, 0xF1, 0xAE, 0x96} // "\009\237\241\174\150" (* spesk(88) *) P256_ENCRYPTED_SECRET_KEY_ID = []byte{0x09, 0x30, 0x39, 0x73, 0xAB} // "\009\048\057\115\171" (* p2esk(88) *) // 60 byte hash magics SECP256K1_ENCRYPTED_SCALAR_ID = []byte{0x01, 0x83, 0x24, 0x56, 0xF8} // "\001\131\036\086\248" (* seesk(93) *) // 64 byte hash magics ED25519_SECRET_KEY_ID = []byte{0x2B, 0xF6, 0x4E, 0x07} // "\043\246\078\007" (* edsk(98) *) ED25519_SIGNATURE_ID = []byte{0x09, 0xF5, 0xCD, 0x86, 0x12} // "\009\245\205\134\018" (* edsig(99) *) SECP256K1_SIGNATURE_ID = []byte{0x0D, 0x73, 0x65, 0x13, 0x3F} // "\013\115\101\019\063" (* spsig1(99) *) P256_SIGNATURE_ID = []byte{0x36, 0xF0, 0x2C, 0x34} // "\054\240\044\052" (* p2sig(98) *) GENERIC_SIGNATURE_ID = []byte{0x04, 0x82, 0x2B} // "\004\130\043" (* sig(96) *) // Sapling magics SAPLING_SPENDING_KEY_ID = []byte{0x0b, 0xED, 0x14, 0x5C} // "\011\237\020\092" (* sask(241) *) SAPLING_ADDRESS_ID = []byte{0x12, 0x47, 0x28, 0xDF} // "\018\071\040\223" (* zet1(69) *) // Rollup hash magics BLS12_381_PUBLIC_KEY_HASH_ID = []byte{6, 161, 166} // "\006\161\166" tz4(36) 20 GENERIC_AGGREGATE_SIGNATURE_ID = []byte{2, 075, 234, 101} // "\002\075\234\101" asig(96) 141 BLS12_381_SIGNATURE_ID = []byte{40, 171, 64, 207} // "\040\171\064\207" (* BLsig(96) *) 142 BLS12_381_PUBLIC_KEY_ID = []byte{6, 149, 135, 204} // "\006\149\135\204" (* BLpk(48) *) 76 BLS12_381_SECRET_KEY_ID = []byte{3, 150, 192, 40} // "\003\150\192\040" (* BLsk(32) *) 54 BLS12_381_ENCRYPTED_SECRET_KEY_ID = []byte{2, 5, 30, 53, 25} // "\002\005\030\053\025" (* BLesk(58) *) 88 TX_ROLLUP_ADDRESS_ID = []byte{1, 128, 120, 31} // "\001\128\120\031" txr1(37) 20 TX_ROLLUP_INBOX_HASH_ID = []byte{79, 148, 196} // "\079\148\196" txi(53) 32 TX_ROLLUP_MESSAGE_HASH_ID = []byte{79, 149, 30} // "\079\149\030" txm(53) 32 TX_ROLLUP_COMMITMENT_HASH_ID = []byte{79, 148, 17} // "\079\148\017" txc(53) 32 TX_ROLLUP_MESSAGE_RESULT_HASH_ID = []byte{18, 7, 206, 87} // "\018\007\206\087" txmr(54) 32 TX_ROLLUP_MESSAGE_RESULT_LIST_HASH_ID = []byte{79, 146, 82} // "\079\146\082" txM(53) 32 TX_ROLLUP_WITHDRAW_LIST_HASH_ID = []byte{79, 150, 72} // "\079\150\072" txw(53) 32 SMART_ROLLUP_ADDRESS_ID = []byte{6, 124, 117} // "\001\118\132\217" sr1(36) 20 SMART_ROLLUP_STATE_HASH_ID = []byte{17, 165, 235, 240} // "\017\165\235\240" srs1(54) SMART_ROLLUP_COMMITMENT_HASH_ID = []byte{17, 165, 134, 138} // "\017\165\134\138" (* src1(54) *) SMART_ROLLUP_REVEAL_HASH_ID = []byte{230, 206, 128, 200, 196} // "\230\206\128\200\196" scrrh1(56) )
var ( // DefaultParams defines the blockchain configuration for Mainnet under the latest // protocol. It is used to generate compliant transaction encodings. To change, // either overwrite this default or set custom params per operation using // op.WithParams(). DefaultParams = (&Params{ MinimalBlockDelay: 15 * time.Second, CostPerByte: 250, OriginationSize: 257, HardGasLimitPerOperation: 1040000, HardGasLimitPerBlock: 2600000, HardStorageLimitPerOperation: 60000, MaxOperationDataLength: 32768, MaxOperationsTTL: 240, }). WithChainId(Mainnet). WithDeployment(Deployments[Mainnet].AtProtocol(ProtoV016_2)) // GhostnetParams defines the blockchain configuration for Ghostnet testnet. // To produce compliant transactions, use these defaults in op.WithParams(). GhostnetParams = (&Params{ MinimalBlockDelay: 8 * time.Second, CostPerByte: 250, OriginationSize: 257, HardGasLimitPerOperation: 1040000, HardGasLimitPerBlock: 2600000, HardStorageLimitPerOperation: 60000, MaxOperationDataLength: 32768, MaxOperationsTTL: 240, }). WithChainId(Ghostnet). WithDeployment(Deployments[Ghostnet].AtProtocol(ProtoV016_2)) // NairobinetParams defines the blockchain configuration for Mumbai testnet. // To produce compliant transactions, use these defaults in op.WithParams(). NairobinetParams = (&Params{ MinimalBlockDelay: 8 * time.Second, CostPerByte: 250, OriginationSize: 257, HardGasLimitPerOperation: 1040000, HardGasLimitPerBlock: 2600000, HardStorageLimitPerOperation: 60000, MaxOperationDataLength: 32768, MaxOperationsTTL: 240, }). WithChainId(Nairobinet). WithDeployment(Deployments[Nairobinet].AtProtocol(ProtoV017)) )
var ( ProtoAlpha = MustParseProtocolHash("ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK") ProtoGenesis = MustParseProtocolHash("PrihK96nBAFSxVL1GLJTVhu9YnzkMFiBeuJRPA8NwuZVZCE1L6i") ProtoBootstrap = MustParseProtocolHash("Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P") ProtoV001 = MustParseProtocolHash("PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY") ProtoV002 = MustParseProtocolHash("PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt") ProtoV003 = MustParseProtocolHash("PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP") ProtoV004 = MustParseProtocolHash("Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd") ProtoV005_2 = MustParseProtocolHash("PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS") ProtoV006_2 = MustParseProtocolHash("PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb") ProtoV007 = MustParseProtocolHash("PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo") ProtoV008_2 = MustParseProtocolHash("PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA") ProtoV009 = MustParseProtocolHash("PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i") ProtoV010 = MustParseProtocolHash("PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV") ProtoV011_2 = MustParseProtocolHash("PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx") ProtoV012_2 = MustParseProtocolHash("Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A") ProtoV013_2 = MustParseProtocolHash("PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY") ProtoV014 = MustParseProtocolHash("PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg") ProtoV015 = MustParseProtocolHash("PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW") ProtoV016_2 = MustParseProtocolHash("PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1") ProtoV017 = MustParseProtocolHash("PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf") // aliases PtAthens = ProtoV004 PsBabyM1 = ProtoV005_2 PsCARTHA = ProtoV006_2 PsDELPH1 = ProtoV007 PtEdo2Zk = ProtoV008_2 PsFLoren = ProtoV009 PtGRANAD = ProtoV010 PtHangz2 = ProtoV011_2 Psithaca = ProtoV012_2 PtJakart = ProtoV013_2 PtKathma = ProtoV014 PtLimaPt = ProtoV015 PtMumbai = ProtoV016_2 PtNairobi = ProtoV017 Mainnet = MustParseChainIdHash("NetXdQprcVkpaWU") Ghostnet = MustParseChainIdHash("NetXnHfVqm9iesp") Nairobinet = MustParseChainIdHash("NetXyuzvDo2Ugzb") Versions = map[ProtocolHash]int{ ProtoGenesis: 0, ProtoBootstrap: 0, ProtoV001: 1, ProtoV002: 2, ProtoV003: 3, ProtoV004: 4, ProtoV005_2: 5, ProtoV006_2: 6, ProtoV007: 7, ProtoV008_2: 8, ProtoV009: 9, ProtoV010: 10, ProtoV011_2: 11, ProtoV012_2: 12, ProtoV013_2: 13, ProtoV014: 14, ProtoV015: 15, ProtoV016_2: 16, ProtoV017: 17, ProtoAlpha: 18, } Deployments = map[ChainIdHash]ProtocolHistory{ Mainnet: { {ProtoGenesis, 0, 0, 0, 0, 5, 4096, 256}, {ProtoBootstrap, 0, 1, 1, 0, 5, 4096, 256}, {ProtoV001, 2, 2, 28082, 0, 5, 4096, 256}, {ProtoV002, 3507, 28083, 204761, 6, 5, 4096, 256}, {ProtoV003, 4057, 204762, 458752, 49, 5, 4096, 256}, {PtAthens, 0, 458753, 655360, 112, 5, 4096, 256}, {PsBabyM1, 0, 655361, 851968, 160, 5, 4096, 256}, {PsCARTHA, 0, 851969, 1212416, 208, 5, 4096, 256}, {PsDELPH1, 0, 1212417, 1343488, 296, 5, 4096, 256}, {PtEdo2Zk, 0, 1343489, 1466367, 328, 5, 4096, 256}, {PsFLoren, 4095, 1466368, 1589247, 357, 5, 4096, 256}, {PtGRANAD, -1, 1589248, 1916928, 388, 5, 8192, 512}, {PtHangz2, 0, 1916929, 2244608, 428, 5, 8192, 512}, {Psithaca, 0, 2244609, 2490368, 468, 5, 8192, 512}, {PtJakart, 0, 2490369, 2736128, 498, 5, 8192, 512}, {PtKathma, 0, 2736129, 2981888, 528, 5, 8192, 512}, {PtLimaPt, 0, 2981889, 3268608, 558, 5, 8192, 512}, {PtMumbai, 0, 3268609, 3760128, 593, 5, 16384, 1024}, {PtNairobi, 0, 3760129, -1, 623, 5, 16384, 1024}, }, Ghostnet: { {ProtoGenesis, 0, 0, 0, 0, 3, 4096, 256}, {ProtoBootstrap, 0, 1, 1, 0, 3, 4096, 256}, {PtHangz2, 2, 2, 8191, 0, 3, 4096, 256}, {Psithaca, 0, 8192, 765952, 2, 3, 4096, 256}, {PtJakart, 0, 765953, 1191936, 187, 3, 4096, 256}, {PtKathma, 0, 1191937, 1654784, 291, 3, 4096, 256}, {PtLimaPt, 0, 1654785, 2162688, 404, 3, 4096, 256}, {PtMumbai, 0, 2162689, 2957312, 528, 3, 8192, 512}, {PtNairobi, 0, 2957313, -1, 625, 3, 8192, 512}, }, Nairobinet: { {ProtoGenesis, 0, 0, 0, 0, 3, 8192, 512}, {ProtoBootstrap, 0, 1, 1, 0, 3, 8192, 512}, {PtMumbai, 2, 2, 16384, 0, 3, 8192, 512}, {PtNairobi, 0, 16385, -1, 2, 3, 8192, 512}, }, } )
var ( // ErrUnknownSignatureType describes an error where a type for a // signature is undefined. ErrUnknownSignatureType = errors.New("unknown signature type") // ErrSignature is returned when signature verification fails ErrSignature = errors.New("signature mismatch") // InvalidSignature represents an empty invalid signature InvalidSignature = Signature{Type: SignatureTypeInvalid, Data: nil} // ZeroSignature represents a valid signature derived from null bytes ZeroSignature = MustParseSignature("sigMzJ4GVAvXEd2RjsKGfG2H9QvqTSKCZsuB2KiHbZRGFz72XgF6KaKADznh674fQgBatxw3xdHqTtMHUZAGRprxy64wg1aq") )
var ( InvalidToken = Token{} // ZeroToken is a placeholder token with zero hash and zero id that may be // used by applications to represent tez or another default option where // a token address is expected. ZeroToken = NewToken(ZeroContract, Zero) )
var VotingPeriods = []VotingPeriodKind{ VotingPeriodProposal, VotingPeriodExploration, VotingPeriodCooldown, VotingPeriodPromotion, VotingPeriodAdoption, }
var Zero = NewZ(0)
Functions ¶
func EncodeAddress ¶
func EncodeAddress(typ AddressType, hash []byte) string
func EncodeBlindedAddress ¶
func HasAddressPrefix ¶
func HasKeyPrefix ¶
func HasSignaturePrefix ¶
func IsAddressBytes ¶
IsAddressBytes checks whether a buffer likely contains a binary encoded address.
func IsEncryptedKey ¶ added in v0.17.3
func IsPrivateKey ¶ added in v0.17.3
func IsPublicKey ¶ added in v0.17.3
func IsSignature ¶ added in v0.17.3
func MatchBlindedAddress ¶
Checks if address a when blinded with secret equals blinded address b.
Types ¶
type Address ¶
type Address [21]byte
Address represents a typed tezos address
func DecodeBlindedAddress ¶
func MustParseAddress ¶
func NewAddress ¶
func NewAddress(typ AddressType, hash []byte) (a Address)
func ParseAddress ¶
func (Address) ContractAddress ¶
ContractAddress returns the string encoding of the address when used as originated contract.
func (*Address) Decode ¶ added in v0.17.3
Decode reads a 21 byte or 22 byte address versions and is resilient to longer byte strings that contain extra padding or a suffix (e.g. an entrypoint suffix as found in smart contract data).
func (Address) Encode ¶ added in v0.17.3
Bytes returns the 21 (implicit) or 22 byte (contract) tagged and optionally padded binary hash value of the address. func (a Address) Bytes() []byte {
func (Address) EncodePadded ¶ added in v0.17.3
Bytes22 returns the 22 byte tagged and padded binary encoding for contracts and EOAs (tz1/2/3). In contrast to Bytes which outputs the 21 byte address for EOAs here we add a leading 0-byte. func (a Address) Bytes22() []byte {
func (Address) IsContract ¶ added in v0.11.0
func (Address) MarshalBinary ¶
MarshalBinary outputs the 21 byte TzGo version of an address containing a one byte type tag and the 20 byte address hash.
func (Address) MarshalText ¶
func (*Address) Set ¶ added in v0.17.3
Set implements the flags.Value interface for use in command line argument parsing.
func (Address) SmartRollupAddress ¶ added in v0.17.3
SmartRollupAddress returns the string encoding of the address when used as smart rollup contract.
func (Address) TxRollupAddress ¶ added in v0.17.3
TxRollupAddress returns the string encoding of the address when used as rollup contract.
func (Address) Type ¶
func (a Address) Type() AddressType
func (*Address) UnmarshalBinary ¶
UnmarshalBinary reads the 21 byte TzGo version of an address containing a one byte type tag and the 20 byte address hash.
func (*Address) UnmarshalText ¶
type AddressFilter ¶
type AddressFilter struct {
// contains filtered or unexported fields
}
func NewAddressFilter ¶
func NewAddressFilter(addrs ...Address) *AddressFilter
func (*AddressFilter) Add ¶
func (s *AddressFilter) Add(addr Address)
func (*AddressFilter) AddUnique ¶
func (s *AddressFilter) AddUnique(addr Address) bool
func (AddressFilter) Contains ¶
func (s AddressFilter) Contains(addr Address) bool
func (*AddressFilter) Len ¶
func (s *AddressFilter) Len() int
func (*AddressFilter) Merge ¶
func (s *AddressFilter) Merge(b *AddressFilter)
func (*AddressFilter) Remove ¶
func (s *AddressFilter) Remove(addr Address)
type AddressSet ¶
type AddressSet struct {
// contains filtered or unexported fields
}
func BuildAddressSet ¶ added in v0.17.3
func BuildAddressSet(s ...string) (*AddressSet, error)
func MustBuildAddressSet ¶ added in v0.17.3
func MustBuildAddressSet(s ...string) *AddressSet
func NewAddressSet ¶
func NewAddressSet(addrs ...Address) *AddressSet
func (*AddressSet) Add ¶
func (s *AddressSet) Add(addr Address)
func (*AddressSet) AddUnique ¶
func (s *AddressSet) AddUnique(addr Address) bool
func (*AddressSet) Clear ¶ added in v0.17.3
func (s *AddressSet) Clear()
func (*AddressSet) Contains ¶
func (s *AddressSet) Contains(addr Address) bool
func (AddressSet) HasCollisions ¶ added in v0.17.3
func (s AddressSet) HasCollisions() bool
func (AddressSet) HasIntersect ¶ added in v0.17.3
func (s AddressSet) HasIntersect(t *AddressSet) bool
func (AddressSet) Intersect ¶ added in v0.17.3
func (s AddressSet) Intersect(t *AddressSet) *AddressSet
func (*AddressSet) Len ¶
func (s *AddressSet) Len() int
func (AddressSet) Map ¶
func (s AddressSet) Map() map[uint64]Address
func (*AddressSet) Merge ¶
func (s *AddressSet) Merge(b *AddressSet)
func (*AddressSet) Remove ¶
func (s *AddressSet) Remove(addr Address)
func (AddressSet) Slice ¶ added in v0.9.9
func (s AddressSet) Slice() []Address
type AddressType ¶
type AddressType byte
AddressType represents the type of a Tezos signature.
const ( AddressTypeInvalid AddressType = iota // 0 AddressTypeEd25519 // 1 AddressTypeSecp256k1 // 2 AddressTypeP256 // 3 AddressTypeContract // 4 AddressTypeBlinded // 5 AddressTypeBls12_381 // 6 AddressTypeTxRollup // 7 AddressTypeSmartRollup // 8 )
func DetectAddressType ¶ added in v0.17.3
func DetectAddressType(s string) AddressType
func ParseAddressType ¶
func ParseAddressType(s string) AddressType
func (AddressType) HashType ¶
func (t AddressType) HashType() HashType
func (AddressType) IsValid ¶
func (t AddressType) IsValid() bool
func (AddressType) KeyType ¶
func (t AddressType) KeyType() KeyType
func (AddressType) MarshalText ¶ added in v0.9.8
func (t AddressType) MarshalText() ([]byte, error)
func (AddressType) Prefix ¶
func (t AddressType) Prefix() string
func (AddressType) String ¶
func (t AddressType) String() string
func (AddressType) Tag ¶
func (t AddressType) Tag() byte
func (*AddressType) UnmarshalText ¶ added in v0.9.8
func (t *AddressType) UnmarshalText(data []byte) error
type BallotVote ¶
type BallotVote byte
BallotVote represents a named ballot in Tezos.
const ( BallotVoteInvalid BallotVote = iota BallotVoteYay BallotVoteNay BallotVotePass )
func ParseBallotTag ¶ added in v0.17.3
func ParseBallotTag(t byte) BallotVote
func ParseBallotVote ¶
func ParseBallotVote(s string) BallotVote
func (BallotVote) IsValid ¶
func (v BallotVote) IsValid() bool
func (BallotVote) MarshalText ¶
func (v BallotVote) MarshalText() ([]byte, error)
func (BallotVote) String ¶
func (v BallotVote) String() string
func (BallotVote) Tag ¶ added in v0.17.3
func (v BallotVote) Tag() byte
func (*BallotVote) UnmarshalBinary ¶ added in v0.17.3
func (v *BallotVote) UnmarshalBinary(data []byte) error
func (*BallotVote) UnmarshalText ¶
func (v *BallotVote) UnmarshalText(data []byte) error
type BlockHash ¶
type BlockHash [32]byte
BlockHash
func MustParseBlockHash ¶
func NewBlockHash ¶
func ParseBlockHash ¶
func (BlockHash) Int64 ¶ added in v0.17.3
Int64 ensures interface compatibility with the RPC packages' BlockID type
func (BlockHash) MarshalBinary ¶ added in v0.17.3
func (BlockHash) MarshalText ¶ added in v0.17.3
func (*BlockHash) Set ¶ added in v0.17.3
Set implements the flags.Value interface for use in command line argument parsing.
func (*BlockHash) UnmarshalBinary ¶
func (*BlockHash) UnmarshalText ¶
type ChainIdHash ¶
type ChainIdHash [4]byte
ChainIdHash
func MustParseChainIdHash ¶
func MustParseChainIdHash(s string) ChainIdHash
func NewChainIdHash ¶
func NewChainIdHash(buf []byte) (h ChainIdHash)
func ParseChainIdHash ¶
func ParseChainIdHash(s string) (h ChainIdHash, err error)
func (ChainIdHash) Bytes ¶ added in v0.17.3
func (h ChainIdHash) Bytes() []byte
func (ChainIdHash) Clone ¶
func (h ChainIdHash) Clone() ChainIdHash
func (ChainIdHash) Equal ¶
func (h ChainIdHash) Equal(h2 ChainIdHash) bool
func (ChainIdHash) IsValid ¶ added in v0.17.3
func (h ChainIdHash) IsValid() bool
func (ChainIdHash) MarshalBinary ¶ added in v0.17.3
func (h ChainIdHash) MarshalBinary() ([]byte, error)
func (ChainIdHash) MarshalText ¶ added in v0.17.3
func (h ChainIdHash) MarshalText() ([]byte, error)
func (*ChainIdHash) Set ¶ added in v0.17.3
func (h *ChainIdHash) Set(s string) (err error)
Set implements the flags.Value interface for use in command line argument parsing.
func (ChainIdHash) String ¶ added in v0.17.3
func (h ChainIdHash) String() string
func (ChainIdHash) Uint32 ¶ added in v0.11.0
func (h ChainIdHash) Uint32() uint32
func (*ChainIdHash) UnmarshalBinary ¶
func (h *ChainIdHash) UnmarshalBinary(buf []byte) error
func (*ChainIdHash) UnmarshalText ¶
func (h *ChainIdHash) UnmarshalText(buf []byte) error
type ContextHash ¶ added in v0.17.3
type ContextHash [32]byte
ContextHash
func MustParseContextHash ¶ added in v0.17.3
func MustParseContextHash(s string) ContextHash
func NewContextHash ¶ added in v0.17.3
func NewContextHash(buf []byte) (h ContextHash)
func ParseContextHash ¶ added in v0.17.3
func ParseContextHash(s string) (h ContextHash, err error)
func (ContextHash) Bytes ¶ added in v0.17.3
func (h ContextHash) Bytes() []byte
func (ContextHash) Clone ¶ added in v0.17.3
func (h ContextHash) Clone() ContextHash
func (ContextHash) Equal ¶ added in v0.17.3
func (h ContextHash) Equal(h2 ContextHash) bool
func (ContextHash) IsValid ¶ added in v0.17.3
func (h ContextHash) IsValid() bool
func (ContextHash) MarshalBinary ¶ added in v0.17.3
func (h ContextHash) MarshalBinary() ([]byte, error)
func (ContextHash) MarshalText ¶ added in v0.17.3
func (h ContextHash) MarshalText() ([]byte, error)
func (*ContextHash) Set ¶ added in v0.17.3
func (h *ContextHash) Set(hash string) (err error)
Set implements the flags.Value interface for use in command line argument parsing.
func (ContextHash) String ¶ added in v0.17.3
func (h ContextHash) String() string
func (*ContextHash) UnmarshalBinary ¶ added in v0.17.3
func (h *ContextHash) UnmarshalBinary(buf []byte) error
func (*ContextHash) UnmarshalText ¶ added in v0.17.3
func (h *ContextHash) UnmarshalText(buf []byte) error
type Costs ¶ added in v0.17.3
type Costs struct { Fee int64 // the total fee paid in mutez Burn int64 // total amount of mutez burned (not included in fee) GasUsed int64 // gas used StorageUsed int64 // new storage bytes allocated StorageBurn int64 // mutez burned for allocating new storage (not included in fee) AllocationBurn int64 // mutez burned for allocating a new account (not included in fee) }
Costs represents all costs paid by an operation in Tezos. Its contents depends on operation type and activity. Consensus and voting operations have no cost, user operations have variable cost. For transactions with internal results costs are a summary.
type Deployment ¶ added in v0.17.3
type ExprHash ¶
type ExprHash [32]byte
ExprHash
func MustParseExprHash ¶
func NewExprHash ¶
func ParseExprHash ¶
func (ExprHash) MarshalBinary ¶ added in v0.17.3
func (ExprHash) MarshalText ¶ added in v0.17.3
func (*ExprHash) Set ¶ added in v0.17.3
Set implements the flags.Value interface for use in command line argument parsing.
func (*ExprHash) UnmarshalBinary ¶
func (*ExprHash) UnmarshalText ¶
type HexBytes ¶ added in v0.17.3
type HexBytes []byte
HexBytes represents bytes as a JSON string of hexadecimal digits
func (HexBytes) MarshalBinary ¶ added in v0.17.3
MarshalBinary marshals as binary slice. It implements the encoding.BinaryMarshaler interface.
func (HexBytes) MarshalText ¶ added in v0.17.3
MarshalText converts a byte slice to a hex encoded string. It implements the encoding.TextMarshaler interface, so that HexBytes can be used in Go structs in combination with the standard JSON library.
func (*HexBytes) ReadBytes ¶ added in v0.17.3
ReadBytes copies size bytes from r into h. If h is nil or too short, a new byte slice is allocated. Fails with io.ErrShortBuffer when less than size bytes can be read from r.
func (*HexBytes) UnmarshalBinary ¶ added in v0.17.3
UnmarshalBinary umarshals a binary slice. It implements the encoding.BinaryUnmarshaler interface.
func (*HexBytes) UnmarshalText ¶ added in v0.17.3
UnmarshalText umarshals a hex string to bytes. It implements the encoding.TextUnmarshaler interface, so that HexBytes can be used in Go structs in combination with the standard JSON library.
type Key ¶
Key represents a public key on the Tezos blockchain.
func MustParseKey ¶ added in v0.9.4
func (Key) MarshalBinary ¶
func (Key) MarshalText ¶
func (*Key) Set ¶ added in v0.17.3
Set implements the flags.Value interface for use in command line argument parsing.
func (*Key) UnmarshalBinary ¶
func (*Key) UnmarshalText ¶
type KeyType ¶
type KeyType byte
KeyType is a type that describes which cryptograhic curve is used by a public or private key
func ParseKeyTag ¶
func ParseKeyType ¶ added in v0.17.3
func (KeyType) AddressType ¶
func (t KeyType) AddressType() AddressType
func (KeyType) PkHashType ¶ added in v0.17.3
func (KeyType) PkPrefixBytes ¶ added in v0.17.3
func (KeyType) SkHashType ¶ added in v0.17.3
func (KeyType) SkPrefixBytes ¶ added in v0.17.3
func (KeyType) SkePrefixBytes ¶ added in v0.17.3
type LbVote ¶ added in v0.17.3
type LbVote byte
LbVote represents liquidity baking votes in Tezos block headers.
func ParseLbVoteTag ¶ added in v0.17.3
func (LbVote) MarshalText ¶ added in v0.17.3
func (*LbVote) UnmarshalBinary ¶ added in v0.17.3
func (*LbVote) UnmarshalJSON ¶ added in v0.17.3
type Limits ¶ added in v0.17.3
Limits represents all resource limits defined for an operation in Tezos.
type N ¶ added in v0.17.3
type N int64
A variable length sequence of bytes, encoding a Zarith number. Each byte has a running unary size bit: the most significant bit of each byte tells is this is the last byte in the sequence (0) or if there is more to read (1). Size bits ignored, data is then the binary representation of the absolute value of the number in little endian order.
func (N) MarshalBinary ¶ added in v0.17.3
func (N) MarshalText ¶ added in v0.17.3
func (*N) Set ¶ added in v0.17.3
Set implements the flags.Value interface for use in command line argument parsing.
func (*N) UnmarshalBinary ¶ added in v0.17.3
func (*N) UnmarshalText ¶ added in v0.17.3
type NonceHash ¶
type NonceHash [32]byte
NonceHash
func MustParseNonceHash ¶
func NewNonceHash ¶
func ParseNonceHash ¶
func ParseNonceHashSafe ¶
func (NonceHash) MarshalBinary ¶ added in v0.17.3
func (NonceHash) MarshalText ¶ added in v0.17.3
func (*NonceHash) Set ¶ added in v0.17.3
Set implements the flags.Value interface for use in command line argument parsing.
func (*NonceHash) UnmarshalBinary ¶
func (*NonceHash) UnmarshalText ¶
type OpHash ¶
type OpHash [32]byte
OpHash
func MustParseOpHash ¶
func ParseOpHash ¶
func (OpHash) MarshalBinary ¶ added in v0.17.3
func (OpHash) MarshalText ¶ added in v0.17.3
func (*OpHash) Set ¶ added in v0.17.3
Set implements the flags.Value interface for use in command line argument parsing.
func (*OpHash) UnmarshalBinary ¶
func (*OpHash) UnmarshalText ¶
type OpListListHash ¶ added in v0.17.3
type OpListListHash [32]byte
OpListListHash
func MustParseOpListListHash ¶ added in v0.17.3
func MustParseOpListListHash(s string) OpListListHash
func NewOpListListHash ¶ added in v0.17.3
func NewOpListListHash(buf []byte) (h OpListListHash)
func ParseOpListListHash ¶ added in v0.17.3
func ParseOpListListHash(s string) (h OpListListHash, err error)
func (OpListListHash) Bytes ¶ added in v0.17.3
func (h OpListListHash) Bytes() []byte
func (OpListListHash) Clone ¶ added in v0.17.3
func (h OpListListHash) Clone() OpListListHash
func (OpListListHash) Equal ¶ added in v0.17.3
func (h OpListListHash) Equal(h2 OpListListHash) bool
func (OpListListHash) IsValid ¶ added in v0.17.3
func (h OpListListHash) IsValid() bool
func (OpListListHash) MarshalBinary ¶ added in v0.17.3
func (h OpListListHash) MarshalBinary() ([]byte, error)
func (OpListListHash) MarshalText ¶ added in v0.17.3
func (h OpListListHash) MarshalText() ([]byte, error)
func (*OpListListHash) Set ¶ added in v0.17.3
func (h *OpListListHash) Set(s string) (err error)
Set implements the flags.Value interface for use in command line argument parsing.
func (OpListListHash) String ¶ added in v0.17.3
func (h OpListListHash) String() string
func (*OpListListHash) UnmarshalBinary ¶ added in v0.17.3
func (h *OpListListHash) UnmarshalBinary(buf []byte) error
func (*OpListListHash) UnmarshalText ¶ added in v0.17.3
func (h *OpListListHash) UnmarshalText(buf []byte) error
type OpStatus ¶
type OpStatus byte
func ParseOpStatus ¶
func (OpStatus) MarshalText ¶
func (*OpStatus) UnmarshalText ¶
type OpType ¶
type OpType byte
const ( OpTypeInvalid OpType = iota OpTypeActivateAccount // 1 OpTypeDoubleBakingEvidence // 2 OpTypeDoubleEndorsementEvidence // 3 OpTypeSeedNonceRevelation // 4 OpTypeTransaction // 5 OpTypeOrigination // 6 OpTypeDelegation // 7 OpTypeReveal // 8 OpTypeEndorsement // 9 OpTypeProposals // 10 OpTypeBallot // 11 OpTypeFailingNoop // 12 v009 OpTypeEndorsementWithSlot // 13 v009 OpTypeRegisterConstant // 14 v011 OpTypePreendorsement // 15 v012 OpTypeDoublePreendorsementEvidence // 16 v012 OpTypeSetDepositsLimit // 17 v012 OpTypeTxRollupOrigination // 18 v013 DEPRECATED in v016 OpTypeTxRollupSubmitBatch // 19 v013 DEPRECATED in v016 OpTypeTxRollupCommit // 20 v013 DEPRECATED in v016 OpTypeTxRollupReturnBond // 21 v013 DEPRECATED in v016 OpTypeTxRollupFinalizeCommitment // 22 v013 DEPRECATED in v016 OpTypeTxRollupRemoveCommitment // 23 v013 DEPRECATED in v016 OpTypeTxRollupRejection // 24 v013 DEPRECATED in v016 OpTypeTxRollupDispatchTickets // 25 v013 DEPRECATED in v016 OpTypeTransferTicket // 26 v013 OpTypeVdfRevelation // 27 v014 OpTypeIncreasePaidStorage // 28 v014 OpTypeEvent // 29 v014 (only in internal_operation_results) OpTypeDrainDelegate // 30 v015 OpTypeUpdateConsensusKey // 31 v015 OpTypeSmartRollupOriginate // 32 v016 OpTypeSmartRollupAddMessages // 33 v016 OpTypeSmartRollupCement // 34 v016 OpTypeSmartRollupPublish // 35 v016 OpTypeSmartRollupRefute // 36 v016 OpTypeSmartRollupTimeout // 37 v016 OpTypeSmartRollupExecuteOutboxMessage // 38 v016 OpTypeSmartRollupRecoverBond // 39 v016 OpTypeDalAttestation // 40 v016+? OpTypeDalPublishSlotHeader // 41 v016+? )
enums are allocated in chronological order
func ParseOpTag ¶
func ParseOpTagVersion ¶ added in v0.17.3
func ParseOpType ¶
func (OpType) MarshalText ¶
func (OpType) MinSizeVersion ¶ added in v0.17.3
func (OpType) TagVersion ¶ added in v0.17.3
func (*OpType) UnmarshalText ¶
type Params ¶
type Params struct { // identity Network string `json:"network,omitempty"` ChainId ChainIdHash `json:"chain_id"` Protocol ProtocolHash `json:"protocol"` Version int `json:"version"` // timing MinimalBlockDelay time.Duration `json:"minimal_block_delay"` // costs CostPerByte int64 `json:"cost_per_byte"` OriginationSize int64 `json:"origination_size"` // limits BlocksPerCycle int64 `json:"blocks_per_cycle"` PreservedCycles int64 `json:"preserved_cycles"` BlocksPerSnapshot int64 `json:"blocks_per_snapshot"` HardGasLimitPerOperation int64 `json:"hard_gas_limit_per_operation"` HardGasLimitPerBlock int64 `json:"hard_gas_limit_per_block"` HardStorageLimitPerOperation int64 `json:"hard_storage_limit_per_operation"` MaxOperationDataLength int `json:"max_operation_data_length"` MaxOperationsTTL int64 `json:"max_operations_ttl"` // extra features to follow protocol upgrades OperationTagsVersion int `json:"operation_tags_version,omitempty"` // 1 after v005 StartHeight int64 `json:"start_height"` // protocol start (may be != cycle start!!) EndHeight int64 `json:"end_height"` // protocol end (may be != cycle end!!) StartOffset int64 `json:"start_offset"` // correction for cycle start StartCycle int64 `json:"start_cycle"` // correction cycle length }
Params contains a subset of protocol configuration settings that are relevant for dapps and most indexers. For additional protocol data, call rpc.GetCustomConstants() with a custom data struct.
func (Params) ContainsCycle ¶ added in v0.10.0
func (Params) ContainsHeight ¶
Note: functions below require StartHeight, EndHeight and/or StartCycle!
func (*Params) CycleEndHeight ¶
func (*Params) CycleFromHeight ¶
func (*Params) CyclePosition ¶ added in v0.17.3
func (*Params) CycleStartHeight ¶
func (*Params) IsCycleEnd ¶
func (*Params) IsCycleStart ¶
func (*Params) IsSnapshotBlock ¶ added in v0.10.0
func (Params) SnapshotBaseCycle ¶ added in v0.17.3
func (*Params) SnapshotIndex ¶ added in v0.10.0
func (*Params) WithChainId ¶ added in v0.17.3
func (p *Params) WithChainId(id ChainIdHash) *Params
func (*Params) WithDeployment ¶ added in v0.17.3
func (p *Params) WithDeployment(d Deployment) *Params
func (*Params) WithNetwork ¶ added in v0.17.3
func (*Params) WithProtocol ¶ added in v0.17.3
func (p *Params) WithProtocol(h ProtocolHash) *Params
type PassphraseFunc ¶ added in v0.17.3
PassphraseFunc is a callback used to obtain a passphrase for decrypting a private key
type PayloadHash ¶ added in v0.17.3
type PayloadHash [32]byte
PayloadHash
func MustParsePayloadHash ¶ added in v0.17.3
func MustParsePayloadHash(s string) PayloadHash
func NewPayloadHash ¶ added in v0.17.3
func NewPayloadHash(buf []byte) (h PayloadHash)
func ParsePayloadHash ¶ added in v0.17.3
func ParsePayloadHash(s string) (h PayloadHash, err error)
func (PayloadHash) Bytes ¶ added in v0.17.3
func (h PayloadHash) Bytes() []byte
func (PayloadHash) Clone ¶ added in v0.17.3
func (h PayloadHash) Clone() PayloadHash
func (PayloadHash) Equal ¶ added in v0.17.3
func (h PayloadHash) Equal(h2 PayloadHash) bool
func (PayloadHash) IsValid ¶ added in v0.17.3
func (h PayloadHash) IsValid() bool
func (PayloadHash) MarshalBinary ¶ added in v0.17.3
func (h PayloadHash) MarshalBinary() ([]byte, error)
func (PayloadHash) MarshalText ¶ added in v0.17.3
func (h PayloadHash) MarshalText() ([]byte, error)
func (*PayloadHash) Set ¶ added in v0.17.3
func (h *PayloadHash) Set(hash string) (err error)
Set implements the flags.Value interface for use in command line argument parsing.
func (PayloadHash) String ¶ added in v0.17.3
func (h PayloadHash) String() string
func (*PayloadHash) UnmarshalBinary ¶ added in v0.17.3
func (h *PayloadHash) UnmarshalBinary(buf []byte) error
func (*PayloadHash) UnmarshalText ¶ added in v0.17.3
func (h *PayloadHash) UnmarshalText(buf []byte) error
type PrivateKey ¶ added in v0.17.3
PrivateKey represents a typed private key used for signing messages.
func GenerateKey ¶ added in v0.17.3
func GenerateKey(typ KeyType) (PrivateKey, error)
GenerateKey creates a random private key.
func MustParsePrivateKey ¶ added in v0.17.3
func MustParsePrivateKey(key string) PrivateKey
func ParseEncryptedPrivateKey ¶ added in v0.17.3
func ParseEncryptedPrivateKey(s string, fn PassphraseFunc) (k PrivateKey, err error)
ParseEncryptedPrivateKey attempts to parse and optionally decrypt a Tezos private key. When an encrypted key is detected, fn is called and expected to return the decoding passphrase.
func ParsePrivateKey ¶ added in v0.17.3
func ParsePrivateKey(s string) (PrivateKey, error)
func (PrivateKey) Address ¶ added in v0.17.3
func (k PrivateKey) Address() Address
func (PrivateKey) Encrypt ¶ added in v0.17.3
func (k PrivateKey) Encrypt(fn PassphraseFunc) (string, error)
Encrypt encrypts the private key with a passphrase obtained from calling fn.
func (PrivateKey) IsValid ¶ added in v0.17.3
func (k PrivateKey) IsValid() bool
func (PrivateKey) MarshalText ¶ added in v0.17.3
func (k PrivateKey) MarshalText() ([]byte, error)
func (PrivateKey) Public ¶ added in v0.17.3
func (k PrivateKey) Public() Key
Public returns the public key associated with the private key.
func (*PrivateKey) Set ¶ added in v0.17.3
func (k *PrivateKey) Set(key string) (err error)
Set implements the flags.Value interface for use in command line argument parsing.
func (PrivateKey) Sign ¶ added in v0.17.3
func (k PrivateKey) Sign(hash []byte) (Signature, error)
Sign signs the digest (hash) of a message with the private key.
func (PrivateKey) String ¶ added in v0.17.3
func (k PrivateKey) String() string
func (*PrivateKey) UnmarshalText ¶ added in v0.17.3
func (k *PrivateKey) UnmarshalText(data []byte) error
type ProtocolHash ¶
type ProtocolHash [32]byte
ProtocolHash
func MustParseProtocolHash ¶
func MustParseProtocolHash(s string) ProtocolHash
func NewProtocolHash ¶
func NewProtocolHash(buf []byte) (h ProtocolHash)
func ParseProtocolHash ¶
func ParseProtocolHash(s string) (h ProtocolHash, err error)
func (ProtocolHash) Bytes ¶ added in v0.17.3
func (h ProtocolHash) Bytes() []byte
func (ProtocolHash) Clone ¶
func (h ProtocolHash) Clone() ProtocolHash
func (ProtocolHash) Equal ¶
func (h ProtocolHash) Equal(h2 ProtocolHash) bool
func (ProtocolHash) IsValid ¶ added in v0.17.3
func (h ProtocolHash) IsValid() bool
func (ProtocolHash) MarshalBinary ¶ added in v0.17.3
func (h ProtocolHash) MarshalBinary() ([]byte, error)
func (ProtocolHash) MarshalText ¶ added in v0.17.3
func (h ProtocolHash) MarshalText() ([]byte, error)
func (*ProtocolHash) Set ¶ added in v0.17.3
func (h *ProtocolHash) Set(s string) (err error)
Set implements the flags.Value interface for use in command line argument parsing.
func (ProtocolHash) String ¶ added in v0.17.3
func (h ProtocolHash) String() string
func (*ProtocolHash) UnmarshalBinary ¶
func (h *ProtocolHash) UnmarshalBinary(buf []byte) error
func (*ProtocolHash) UnmarshalText ¶
func (h *ProtocolHash) UnmarshalText(buf []byte) error
type ProtocolHistory ¶ added in v0.17.3
type ProtocolHistory []Deployment
func (*ProtocolHistory) Add ¶ added in v0.17.3
func (h *ProtocolHistory) Add(d Deployment)
func (ProtocolHistory) AtBlock ¶ added in v0.17.3
func (h ProtocolHistory) AtBlock(height int64) (d Deployment)
func (ProtocolHistory) AtCycle ¶ added in v0.17.3
func (h ProtocolHistory) AtCycle(cycle int64) (d Deployment)
func (ProtocolHistory) AtProtocol ¶ added in v0.17.3
func (h ProtocolHistory) AtProtocol(proto ProtocolHash) (d Deployment)
func (ProtocolHistory) Clone ¶ added in v0.17.3
func (h ProtocolHistory) Clone() ProtocolHistory
func (ProtocolHistory) Last ¶ added in v0.17.3
func (h ProtocolHistory) Last() (d Deployment)
type PvmKind ¶ added in v0.17.3
type PvmKind byte
func ParsePvmKind ¶ added in v0.17.3
func (PvmKind) MarshalText ¶ added in v0.17.3
func (*PvmKind) UnmarshalText ¶ added in v0.17.3
type RightType ¶
type RightType byte
func ParseRightType ¶
func (RightType) MarshalText ¶
func (*RightType) UnmarshalText ¶
type Signature ¶
type Signature struct { Type SignatureType Data []byte }
Signature represents a typed Tezos signature.
func MustParseSignature ¶ added in v0.17.3
func NewSignature ¶
func NewSignature(typ SignatureType, data []byte) Signature
func ParseSignature ¶
func (*Signature) DecodeBuffer ¶ added in v0.17.3
func (Signature) Generic ¶ added in v0.17.3
Signature converts a typed Tezos signature into a generic signature string.
func (Signature) MarshalBinary ¶
func (Signature) MarshalText ¶
func (*Signature) Set ¶ added in v0.17.3
Set implements the flags.Value interface for use in command line argument parsing.
func (*Signature) UnmarshalBinary ¶
func (*Signature) UnmarshalText ¶
type SignatureType ¶
type SignatureType byte
SignatureType represents the type of a Tezos signature.
const ( SignatureTypeEd25519 SignatureType = iota SignatureTypeSecp256k1 SignatureTypeP256 SignatureTypeBls12_381 SignatureTypeGeneric SignatureTypeGenericAggregate SignatureTypeInvalid )
func ParseSignatureTag ¶
func ParseSignatureTag(b byte) SignatureType
func (SignatureType) HashType ¶
func (t SignatureType) HashType() HashType
func (SignatureType) IsValid ¶
func (t SignatureType) IsValid() bool
func (SignatureType) Len ¶
func (t SignatureType) Len() int
func (SignatureType) Prefix ¶
func (t SignatureType) Prefix() string
func (SignatureType) PrefixBytes ¶
func (t SignatureType) PrefixBytes() []byte
func (SignatureType) String ¶ added in v0.17.3
func (t SignatureType) String() string
func (SignatureType) Tag ¶
func (t SignatureType) Tag() byte
type SmartRollupCommitHash ¶ added in v0.17.3
type SmartRollupCommitHash [32]byte
SmartRollupCommitHash
func MustParseSmartRollupCommitHash ¶ added in v0.17.3
func MustParseSmartRollupCommitHash(s string) SmartRollupCommitHash
func NewSmartRollupCommitHash ¶ added in v0.17.3
func NewSmartRollupCommitHash(buf []byte) (h SmartRollupCommitHash)
func ParseSmartRollupCommitHash ¶ added in v0.17.3
func ParseSmartRollupCommitHash(s string) (h SmartRollupCommitHash, err error)
func (SmartRollupCommitHash) Bytes ¶ added in v0.17.3
func (h SmartRollupCommitHash) Bytes() []byte
func (SmartRollupCommitHash) Clone ¶ added in v0.17.3
func (h SmartRollupCommitHash) Clone() SmartRollupCommitHash
func (SmartRollupCommitHash) Equal ¶ added in v0.17.3
func (h SmartRollupCommitHash) Equal(h2 SmartRollupCommitHash) bool
func (SmartRollupCommitHash) IsValid ¶ added in v0.17.3
func (h SmartRollupCommitHash) IsValid() bool
func (SmartRollupCommitHash) MarshalBinary ¶ added in v0.17.3
func (h SmartRollupCommitHash) MarshalBinary() ([]byte, error)
func (SmartRollupCommitHash) MarshalText ¶ added in v0.17.3
func (h SmartRollupCommitHash) MarshalText() ([]byte, error)
func (*SmartRollupCommitHash) Set ¶ added in v0.17.3
func (h *SmartRollupCommitHash) Set(hash string) (err error)
Set implements the flags.Value interface for use in command line argument parsing.
func (SmartRollupCommitHash) String ¶ added in v0.17.3
func (h SmartRollupCommitHash) String() string
func (*SmartRollupCommitHash) UnmarshalBinary ¶ added in v0.17.3
func (h *SmartRollupCommitHash) UnmarshalBinary(buf []byte) error
func (*SmartRollupCommitHash) UnmarshalText ¶ added in v0.17.3
func (h *SmartRollupCommitHash) UnmarshalText(buf []byte) error
type SmartRollupStateHash ¶ added in v0.17.3
type SmartRollupStateHash [32]byte
SmartRollupStateHash
func MustParseSmartRollupStateHash ¶ added in v0.17.3
func MustParseSmartRollupStateHash(s string) SmartRollupStateHash
func NewSmartRollupStateHash ¶ added in v0.17.3
func NewSmartRollupStateHash(buf []byte) (h SmartRollupStateHash)
func ParseSmartRollupStateHash ¶ added in v0.17.3
func ParseSmartRollupStateHash(s string) (h SmartRollupStateHash, err error)
func (SmartRollupStateHash) Bytes ¶ added in v0.17.3
func (h SmartRollupStateHash) Bytes() []byte
func (SmartRollupStateHash) Clone ¶ added in v0.17.3
func (h SmartRollupStateHash) Clone() SmartRollupStateHash
func (SmartRollupStateHash) Equal ¶ added in v0.17.3
func (h SmartRollupStateHash) Equal(h2 SmartRollupStateHash) bool
func (SmartRollupStateHash) IsValid ¶ added in v0.17.3
func (h SmartRollupStateHash) IsValid() bool
func (SmartRollupStateHash) MarshalBinary ¶ added in v0.17.3
func (h SmartRollupStateHash) MarshalBinary() ([]byte, error)
func (SmartRollupStateHash) MarshalText ¶ added in v0.17.3
func (h SmartRollupStateHash) MarshalText() ([]byte, error)
func (*SmartRollupStateHash) Set ¶ added in v0.17.3
func (h *SmartRollupStateHash) Set(hash string) (err error)
Set implements the flags.Value interface for use in command line argument parsing.
func (SmartRollupStateHash) String ¶ added in v0.17.3
func (h SmartRollupStateHash) String() string
func (*SmartRollupStateHash) UnmarshalBinary ¶ added in v0.17.3
func (h *SmartRollupStateHash) UnmarshalBinary(buf []byte) error
func (*SmartRollupStateHash) UnmarshalText ¶ added in v0.17.3
func (h *SmartRollupStateHash) UnmarshalText(buf []byte) error
type Token ¶ added in v0.17.3
Token represents a specialized Tezos token address that consists of a smart contract KT1 address and a token id represented as big integer number.
func MustParseToken ¶ added in v0.17.3
func ParseToken ¶ added in v0.17.3
func (Token) Bytes ¶ added in v0.17.3
Bytes returns the 20 byte (contract) hash appended with a zarith encoded token id.
func (Token) MarshalBinary ¶ added in v0.17.3
func (Token) MarshalText ¶ added in v0.17.3
func (*Token) Set ¶ added in v0.17.3
Set implements the flags.Value interface for use in command line argument parsing.
func (*Token) UnmarshalBinary ¶ added in v0.17.3
func (*Token) UnmarshalText ¶ added in v0.17.3
type VotingPeriodKind ¶
type VotingPeriodKind byte
VotingPeriodKind represents a named voting period in Tezos.
const ( VotingPeriodInvalid VotingPeriodKind = iota VotingPeriodProposal VotingPeriodExploration VotingPeriodCooldown VotingPeriodPromotion VotingPeriodAdoption )
func ParseVotingPeriod ¶
func ParseVotingPeriod(s string) VotingPeriodKind
func ToVotingPeriod ¶
func ToVotingPeriod(i int) VotingPeriodKind
func (VotingPeriodKind) IsValid ¶
func (v VotingPeriodKind) IsValid() bool
func (VotingPeriodKind) MarshalText ¶
func (v VotingPeriodKind) MarshalText() ([]byte, error)
func (VotingPeriodKind) Num ¶
func (v VotingPeriodKind) Num() int
func (VotingPeriodKind) String ¶
func (v VotingPeriodKind) String() string
func (*VotingPeriodKind) UnmarshalText ¶
func (v *VotingPeriodKind) UnmarshalText(data []byte) error
type Z ¶ added in v0.17.3
A variable length sequence of bytes, encoding a Zarith number. Each byte has a running unary size bit: the most significant bit of each byte tells if this is the last byte in the sequence (0) or if there is more to read (1). The second most significant bit of the first byte is reserved for the sign (positive if zero). Size and sign bits ignored, data is then the binary representation of the absolute value of the number in little endian order.
func MustParseZ ¶ added in v0.17.3
func (Z) IsLessEqual ¶ added in v0.17.3
func (Z) MarshalBinary ¶ added in v0.17.3
func (Z) MarshalText ¶ added in v0.17.3
func (*Z) Set ¶ added in v0.17.3
Set implements the flags.Value interface for use in command line argument parsing.