var img = document.createElement('img'); img.src = "https://terradocs.matomo.cloud//piwik.php?idsite=1&rec=1&url=https://docs.terra.money" + location.pathname; img.style = "border:0"; img.alt = "tracker"; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(img,s);
Skip to main content

Auth

ℹ️info

Terra's auth module inherits from Cosmos SDK's auth module. This document is a stub and mainly covers important Terra-specific notes on how it is used.

Terra's Auth module extends the functionality from Cosmos SDK's auth module with a modified ante handler, which applies basic transaction validity checks, such as signatures, nonces, and auxiliary fields. This module also defines a special vesting account type that handles the logic for token vesting from the Luna presale.

Gas Fee

Like all transactions on the Terra blockchain, MsgSend and MsgMultiSend incur gas fees. These fees are determined by a validator's minimum gas price and the complexity of the transaction. More complex transactions incur higher fees. Gas fees are specified by the sender when a transaction is outbound. For more information on how gas is calculated, see fees.

Parameters

The subspace for the Auth module is auth.


_7
type Params struct {
_7
MaxMemoCharacters uint64 `json:"max_memo_characters" yaml:"max_memo_characters"`
_7
TxSigLimit uint64 `json:"tx_sig_limit" yaml:"tx_sig_limit"`
_7
TxSizeCostPerByte uint64 `json:"tx_size_cost_per_byte" yaml:"tx_size_cost_per_byte"`
_7
SigVerifyCostED25519 uint64 `json:"sig_verify_cost_ed25519" yaml:"sig_verify_cost_ed25519"`
_7
SigVerifyCostSecp256k1 uint64 `json:"sig_verify_cost_secp256k1" yaml:"sig_verify_cost_secp256k1"`
_7
}

Genesis parameters

The genesis parameters outlined in the Genesis Builder Script are as follows:


_2
# Auth: set max memo characters to 512
_2
genesis['app_state']['auth']['params']['max_memo_characters'] = '512'

MaxMemoCharacters

The maximum permitted number of characters in the memo of a transaction.

  • type: uint64
  • genesis: 512

TxSigLimit

The maximum number of signers for a transaction. A single transaction can have multiple messages and multiple signers.

  • type: uint64
  • default: 7

TxSizeCostPerByte

The cost per byte used to compute the gas consumption of a transaction. TxSizeCostPerByte * txsize.

  • type: uint64
  • default: 10

SigVerifyCostED25519

The gas cost for verifying ED25519 signatures.

  • type: uint64
  • default: 590

SigVerifyCostSecp256k1

The gas cost for verifying Secp256k1 signatures.

  • type: uint64
  • default: 1000