
In systems without native account abstraction, changing the signature scheme used by ordinary users typically means one of two things: a protocol-level hard fork that updates the transaction format for everyone, or a mass migration in which users must move funds to new addresses that already implement the new scheme. Both options introduce coordination costs, user-error risk, and temporary liquidity fragmentation. Native account abstraction inverts the model. Because the account is itself a smart contract, its validation function can be replaced through an authenticated upgrade path that the account’s own logic defines. The address and the storage remain unchanged; only the code that decides whether a signature is valid is updated. @Starknet implements this model as the default. Public demonstrations have shown Falcon-512 verification running inside an account contract, and a separate proof-of-concept has used an ML-DSA key stored in a phone’s secure element. These implementations are not yet production-ready for ordinary users as they remain unaudited in important respects and lack broad wallet support, but they illustrate that the mechanism exists. The gas cost of verification is higher than classical ECDSA yet has been shown to fit within current per-transaction limits in optimized variants. The remaining work is therefore largely outside the core protocol: wallet interfaces must support the new key formats, custodians must update their signing infrastructure, and users must be given clear upgrade paths that do not lock accounts if an intermediate version is unsupported. Cryptographic agility at the account layer reduces the size of the coordinated change, but it does not remove the need for careful engineering of the surrounding ecosystem.
