use 0x1::option;
use 0x2::account;
use 0x2::gas_schedule;
use 0x2::signer;
use 0x2::timestamp;
use 0x2::tx_context;
use 0x2::tx_meta;
use 0x2::tx_result;
use 0x3::account;
use 0x3::account_authentication;
use 0x3::account_coin_store;
use 0x3::address_mapping;
use 0x3::auth_validator;
use 0x3::auth_validator_registry;
use 0x3::bitcoin_address;
use 0x3::bitcoin_validator;
use 0x3::builtin_validators;
use 0x3::chain_id;
use 0x3::coin;
use 0x3::gas_coin;
use 0x3::onchain_config;
use 0x3::session_key;
use 0x3::session_validator;
use 0x3::transaction;
use 0x3::transaction_fee;
Just using to get module signer
const MAX_U64: u128 = 18446744073709551615;
This function is for Rooch to validate the transaction sender's authenticator. If the authenticator is invaid, abort this function.
public(friend) fun validate(chain_id: u64, auth_validator_id: u64, authenticator_payload: vector<u8>): auth_validator::TxValidateResult