Skip to content
Lattice

IHASSignatureVerifier

Git Source

Title: IHASSignatureVerifier

Author: Modified from hiero-ledger/hiero-contracts (https://github.com/hiero-ledger/hiero-contracts)

Interface for the HASSignatureVerifier Diamond facet — native Hedera account signature checks (HIP-632) through the Hedera Account Service system contract, so ED25519-keyed Hedera accounts (and ECDSA accounts after key rotation) can sign for a Lattice smart account or module.

Both reads never revert on a bad signature: a system-contract revert (malformed input, key list on the raw path, insufficient gas) is reported as false, matching the AccountSigner seam contract.

Functions

isAuthorizedRaw

True if signature (65 bytes ECDSA or 64 bytes ED25519) is valid over messageHash for the simple key of Hedera account (an EVM alias or long-zero 0x000…<accountNum> address).

function isAuthorizedRaw(address account, bytes32 messageHash, bytes calldata signature)
        external
        view
        returns (bool authorized);

Parameters

NameTypeDescription
accountaddress
messageHashbytes32
signaturebytes

Returns

NameTypeDescription
authorizedbool

isAuthorized

True if the protobuf signatureMap satisfies account's full key structure (key lists and threshold keys included) over the raw message.

function isAuthorized(address account, bytes calldata message, bytes calldata signatureMap)
        external
        view
        returns (bool authorized);

Parameters

NameTypeDescription
accountaddress
messagebytes
signatureMapbytes

Returns

NameTypeDescription
authorizedbool