MultisigConfig.getAddress
Derives the stable native multisig account address.
Preimage (fixed-width big-endian, not RLP): keccak256("tempo:multisig:account" || salt || u8(threshold) || u8(owners.length) || (owner || u8(weight)) for each owner)[12:32].
The address is derived once from the initial (bootstrap) config and never changes — config updates do not affect it.
Imports
Named
import { MultisigConfig } from 'ox/tempo'Examples
import { MultisigConfig } from 'ox/tempo'
const genesisConfig = MultisigConfig.from({
threshold: 1,
owners: [
{ owner: '0x1111111111111111111111111111111111111111', weight: 1 },
],
})
const address = MultisigConfig.getAddress(genesisConfig)Definition
function getAddress(
config: Config,
): Address.AddressSource: src/tempo/MultisigConfig.ts
Parameters
config
- Type:
Config
The initial (bootstrap) multisig config.
config.owners
- Type:
readonly Owner[]
Weighted owner list (strictly ascending by owner address).
config.salt
- Type:
0x${string} - Optional
Caller-chosen 32-byte salt mixed into the derived account address.
Defaults to the zero salt (MultisigConfig.zeroSalt) when omitted.
config.threshold
- Type:
numberType
Minimum total owner weight required to authorize a transaction.
Return Type
The multisig account address.
Address.Address

