Cosign

Cosign

The owner signs, then a named cosigner. A service can approve each transfer without ever holding the funds.

What it is

A cosign lock is P2PKH for the owner, followed by a second check against one fixed public key. The owner cannot move the output alone, and the cosigner cannot move it at all without the owner. Token issuers use it so their service can apply rules to each transfer.

Script pattern

  1. OP_DUP OP_HASH160 <owner pubkey hash> OP_EQUALVERIFY Checks the owner's key, as P2PKH does.
  2. OP_CHECKSIGVERIFY Checks the owner's signature, and stops if it fails.
  3. <cosigner pubkey> 33 bytes: the cosigner's key.
  4. OP_CHECKSIG Checks the cosigner's signature.

How it is spent

The cosigner's signature, then the owner's signature and public key: <cosigner sig> <owner sig> <owner pubkey>.

Background

Cosign ships in @1sat/templates. The MNEE stablecoin uses it, so each MNEE transfer carries the issuer's approval.

On chain

None in our index yet.

Transactions with an output of exactly this script shape, by template hash 752b2ba09caa… Transaction pages need sign-in.

Specification