Types
Besides accounts (specified in State), the types exposed by the auth module
are StdFee
, the combination of an amount and gas limit, StdSignature
, the combination
of an optional public key and a cryptographic signature as a byte array, StdTx
,
a struct which implements the sdk.Tx
interface using StdFee
and StdSignature
, and
StdSignDoc
, a replay-prevention structure for StdTx
which transaction senders must sign over.
StdFee
A StdFee
is simply the combination of a fee amount, in any number of denominations,
and a gas limit (where dividing the amount by the gas limit gives a "gas price").
type StdFee struct {
Amount Coins
Gas uint64
}
2
3
4
StdSignature
A StdSignature
is the combination of an optional public key and a cryptographic signature
as a byte array. The SDK is agnostic to particular key or signature formats and supports any
supported by the PubKey
interface.
type StdSignature struct {
PubKey PubKey
Signature []byte
}
2
3
4
StdTx
A StdTx
is a struct which implements the sdk.Tx
interface, and is likely to be generic
enough to serve the purposes of many Cosmos SDK blockchains.
type StdTx struct {
Msgs []sdk.Msg
Fee StdFee
Signatures []StdSignature
Memo string
}
2
3
4
5
6
StdSignDoc
A StdSignDoc
is a replay-prevention structure to be signed over, which ensures that
any submitted transaction (which is simply a signature over a particular bytestring)
will only be executable once on a particular blockchain.
json.RawMessage
is preferred over using the SDK types for future compatibility.
type StdSignDoc struct {
AccountNumber uint64
ChainID string
Fee json.RawMessage
Memo string
Msgs []json.RawMessage
Sequence uint64
}
2
3
4
5
6
7
8