I know you can use the bitcoin client to sign messages (for which you own the private key) and verify messages from other public addresses. But can you actually embed a signed message into a transaction so its on the blockchain for anyone to verify? When I say "signed message" i'm referring to an arbitrary message like in the attached example.

enter image description here

1 Answer 1


No. This is not possible, although, technically it could be possible by adding n child transaction each formed as a tx out of you original transaction. The child transaction then could each have a OP_RETURN (data only) output. With a OP_RETURN output you can store up to 80 bytes (mind 5286). A DER signature will be around 72 Bytes (71.5 in avg)

... so not much to left besides the signature (~8 bytes per OP_RETURN tx as tx out of the original tx). So maybe use OP_RETURN txout 0 to n-1 for the text/data and n for the signature. Obviously this will increase your transaction fee a little because you need at least 2 additional transactions.

Conclusion: Not possible unless your are happy to experiment with forging your own custom transactions.

  • Ya looks like OP_RETURN is the only way to add metadata to a transaction at this point. That's too bad because most wallets don't allow that property to be set, so it would require custom development.
    – Paul Fryer
    Jul 27, 2015 at 14:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.