I went through again the 2025 cross-chain bridge retrospective for the @Dusk incident, and the most worth watching part isn’t the two words “stolen,” but exactly which layer the failure happened in. On January 16, the trouble was with the signature wallet used by the bridge service: after the attacker obtained the lending permission, they moved assets from the Dusk side, and then sent part of them to the BSC. The official statement is clear that this isn’t a consensus failure, nor is it that the L1 protocol was breached.

But that doesn’t mean the underlying chain is fine, and users should therefore ignore bridge risk. In the old architecture, event reception, signing, and fund release were all compressed into a single path. It was fast—until the signing side was compromised, at which point permissions became overly concentrated. The later redesign split these three things: first, the event is written to a job; workers handle it according to a state machine; the signed original transactions are stored so that, on failure, the same transaction can be replayed; the hot wallet holds only the balances needed in the near term—if it drops below a threshold, it pauses, and the cold wallet is topped up manually.

I used to also be quick to treat the phrase “the bridge isn’t a protocol” as an excuse. Now I’m more willing to see it the other way around: as long as users treat it as a liquidity entry point, the bridge is already operating within the real security boundary of $DUSK . On-chain consensus security and asset ingress/egress security are two exam papers that must both be passed.

This remediation direction is correct, and the risk hasn’t disappeared either: whether key isolation is enforced long-term, whether the thresholds are reasonable, and whether shutdowns and top-ups are auditable—all of that must keep being watched. The #dusk community should be asking not “Has the chain been hacked?” but “Which key still holds more power than it needs to.” When you look at cross-chain bridges, do you check code audits first, or do you check how operational permissions are segmented first?
$TREE $ETH