Solidus Bridge runs on testnet. Everything shown here is test data with no monetary value.

Security

What you are trusting today

Solidus operates every validator on the testnets, so the trust is in one operator. A message is applied on a destination chain when enough of those validators have signed it. That is the honest description, and it is the reason a zero-knowledge proof replaces the signature check before any value moves on mainnet.

Delivery is permissionless. Anyone can read the signatures from a public RPC and submit them, so a stalled script delays a message and cannot forge or block one.

Mechanisms

Ascending signer order
One stolen key can produce many valid signatures over one message. Requiring each recovered address to be strictly greater than the last makes a duplicate impossible.
The destination is inside what is signed
A signature for one chain recovers a different address on another, so it cannot be replayed across destinations.
Strict sequence
Messages apply in order. A revocation cannot be skipped, because the next message is refused until the gap closes.
Silence closes the gate
If the transport stops, a destination cannot learn about a revocation, so gates stop passing after a staleness window rather than continuing to trust what they last heard.
The mirror holds nothing
No owner, no upgrade path, and it refuses any call that sends it ether. The worst outcome of a bug in this phase is a wrong credential status.