Contracts

Every contract an order touches, on Robinhood Chain, chain 4663. We didn't write any of them.

Standard Reserve

The protocol itself. We're not affiliated with Standard Reserve and can't change any of these.

  • Licence auctionView onchain

    0x44731EFf9da8fDD30003AA7C0B324368B3DfFE5e

    Sells the licence. Checks that the caller owns the Charter and that the price is at or below the ceiling in the call.

  • 0x5977B25419f9c0dDcB2F89fE204955622f4F57ea

    Holds the ledger balance a licence is paid from, and decides which auction is allowed to sell.

  • 0x69101f92427376FA80476A997d024cf9dC3EaE39

    The Charter itself. What proves the account asking is the owner.

  • 0x855C294dD019E9e0d84C058cFF7404f5F2dDCa4b

    The protocol’s own address book. Names the live auction, which is how a replaced one is noticed.

MetaMask's delegation framework

These hold your permission and enforce it. They're MetaMask's contracts, deployed by MetaMask, and we use them unchanged. Cyfrin and Consensys Diligence have audited them. This is version 1.3.0, and the addresses match the published addressesdocs.metamask.io β†— published for that release.

  • DelegationManagerView onchain

    0xdb9B1e94B5b69Df7e401DDbedE43491141047dB3

    Holds the permission, checks every condition, and makes the call from your account. Nothing happens without it.

  • AllowedTargetsEnforcerView onchain

    0x7F20f61b1f09b08D970938F6fa563634d65c4EeB

    Refuses any contract but the auction.

  • ExactCalldataEnforcerView onchain

    0x99F2e9bF15ce5eC84685604836F71aB835DBBdED

    Refuses any call but the exact one you signed, byte for byte.

  • ValueLteEnforcerView onchain

    0x92Bf12322527cAA612fd31a0e810472BBB106A8F

    Refuses any ETH attached to the purchase.

  • TimestampEnforcerView onchain

    0x1046bb45C8d673d4ea75321280DB34899413c069

    Refuses the call outside your window.

  • LimitedCallsEnforcerView onchain

    0x04658B29F6b82ed55274221a06Fc97D318E25416

    Refuses a second use.

  • NativeTokenPaymentEnforcerView onchain

    0x4803a326ddED6dDBc60e659e5ed12d85c7582811

    Collects the fee inside the purchase, and reverts everything if it does not arrive.

  • ArgsEqualityCheckEnforcerView onchain

    0x44B8C6ae3C304213c3e298495e12497Ed3E56E41

    Pins the fee permission to this one order and this one redeemer.

Ours

Two ordinary addresses, and no contract. Your order names the first one as the only address allowed to use it, and the second as the only address the fee can go to. Both are fixed when you sign, so we can't swap them later.

Not configured on this deployment.

Reading the source

The delegation contracts are open source, and each condition above is a short file: delegation-framework/src/enforcersgithub.com β†—. Deployed addresses for every network are listed in Deployments.mdgithub.com β†—.

Standard Reserve's contracts aren't verified on the explorer, so you'll see bytecode there rather than source. We check what we rely on by simulating it instead, which is described under security.