<p>Existing signature schemes in Bitcoin <em>are</em> already implemented as opcodes (<code>OP_CHECKSIG</code> and <code>OP_CHECKMULTISIG</code> in particular), so this question's formulation seems a bit off.</p>

<p>If you don't mind a transaction whose outputs can be taken by anyone, this is trivial - you can just create an output with a script that does not use any signature checking opcodes.</p>

<p>Perhaps what you want to ask is <em>Is there a way to create secure transactions without using any of the explicit digital signature opcodes?</em>.</p>

<p>The answer to that is almost certainly <strong>no</strong>. You would effectively need to implement a digital signature scheme by hand, rather than relying on the provided ones. Digital signature schemes are remarkably complicated, and likely far beyond what is possible inside Bitcoin's current scripting language.</p>

CC BY-SA 3.0
2018-03-24T21:05:35.643Z
So is there no way to prove ownership of utxos without signing a transaction?
Errol
CC BY-SA 3.0
2018-03-24T21:10:27.760Z
You can sign an arbitrary message with one or more private keys that can be verified against a bitcoin address or redeem script, thus proving you can access all UTXOs accessible by that address or redeem script
Raghav Sood
CC BY-SA 3.0
2018-03-24T21:13:16.963Z
Can custom scripts be used to bypass the need for a sigbature?
Errol
CC BY-SA 3.0
2018-03-24T22:52:00.563Z
@Errol Proving ownership of UTXOs is completely unrelated to your question above (ownership is a legal construction, and is not the same as access to the private key).
Pieter Wuille
CC BY-SA 3.0
2018-03-24T22:56:27.923Z
@Errol Based on several question I see you asking, maybe you're missing this: a script is Bitcoin **is** a description of the conditions under which the money can be moved. Every script will generally at least specify a digital signature with one or more keys are required. But there is no concept of ownership or control beyond what the script states. There is no way to bypass the script, as the script defines how the coins can be used.
Pieter Wuille
CC BY-SA 3.0
2018-03-24T23:14:21.190Z
Is it possible to alter the conditions of the script?
Errol
CC BY-SA 3.0
2018-03-24T23:37:14.780Z
@Errol No, that would defeat the purpose. Read again what I said: the script **is** the definition of how the money can be spent. Being able to modify that (without spending) would be theft. Transactions are the only way to modify what amounts are under control of which conditions.
Pieter Wuille
CC BY-SA 3.0
2018-03-24T20:55:02.977Z
2018-03-24T20:55:02.977Z
Pieter Wuille
<p>Are there any op codes or combination of opcodes that can be used instead of a digital signature when creating a transaction?</p>

<transactions><signature><validation>
Can op codes be used instead of signatures?
Errol
# Can op codes be used instead of signatures?

(Asked by: username_0 on 2018-03-24)

Are there any op codes or combination of opcodes that can be used instead of a digital signature when creating a transaction?

**Tags:** transactions, signature, validation


---

## 1 answers

### Answer by username_1 on 2018-03-24. Score: 3

Existing signature schemes in Bitcoin *are* already implemented as opcodes (`OP_CHECKSIG` and `OP_CHECKMULTISIG` in particular), so this question's formulation seems a bit off.

If you don't mind a transaction whose outputs can be taken by anyone, this is trivial - you can just create an output with a script that does not use any signature checking opcodes.

Perhaps what you want to ask is *Is there a way to create secure transactions without using any of the explicit digital signature opcodes?*.

The answer to that is almost certainly **no**. You would effectively need to implement a digital signature scheme by hand, rather than relying on the provided ones. Digital signature schemes are remarkably complicated, and likely far beyond what is possible inside Bitcoin's current scripting language.

> **Comments:**
> **username_0**: So is there no way to prove ownership of utxos without signing a transaction?  
> **username_2**: You can sign an arbitrary message with one or more private keys that can be verified against a bitcoin address or redeem script, thus proving you can access all UTXOs accessible by that address or redeem script  
> **username_0**: Can custom scripts be used to bypass the need for a sigbature?  
> **username_1**: @username_0 Proving ownership of UTXOs is completely unrelated to your question above (ownership is a legal construction, and is not the same as access to the private key).  
> **username_1**: @username_0 Based on several question I see you asking, maybe you're missing this: a script is Bitcoin **is** a description of the conditions under which the money can be moved. Every script will generally at least specify a digital signature with one or more keys are required. But there is no concept of ownership or control beyond what the script states. There is no way to bypass the script, as the script defines how the coins can be used.  
> **username_0**: Is it possible to alter the conditions of the script?  
> **username_1**: @username_0 No, that would defeat the purpose. Read again what I said: the script **is** the definition of how the money can be spent. Being able to modify that (without spending) would be theft. Transactions are the only way to modify what amounts are under control of which conditions.  

---

