<p>Highly recommend <a href="https://github.com/kallewoof/btcdeb" rel="noreferrer">btcdeb</a> by kallewoof. Among other things, you can step through scripts including <a href="https://github.com/kallewoof/btcdeb#signature-checking" rel="noreferrer">verify signatures</a>. It is written in c++ and compiles using autotools.</p>

<h2>btcdeb</h2>

<p>Bitcoin Script debugging utilities.</p>

<p>This is a set of tools used to debug or construct scripts for use in Bitcoin.</p>

<p><a href="https://i.sstatic.net/Qm41h.gif" rel="noreferrer"><img src="https://i.sstatic.net/Qm41h.gif" alt="enter image description here"></a></p>

<pre><code>btcdeb&gt; help
step     Execute one instruction and iterate in the script.
rewind   Go back in time one instruction.
stack    Print stack content.
altstack Print altstack content.
vfexec   Print vfexec content.
exec     Execute command.
tf       Transform a value using a given function.
print    Print script.
help     Show help information.
</code></pre>

CC BY-SA 4.0
2018-09-20T21:21:57.430Z
2018-09-20T21:47:05.633Z
2018-09-20T21:47:05.633Z
JBaczuk
<p>I've been looking for a tool to experiment with bitcoin script for a while now, and I finally finished developing one myself.</p>

<p>BitAuth IDE is an open source project for designing advanced scripts for bitcoin and bitcoin-like cryptocurrencies. It’s both a learning sandbox and a tool for designing new kinds of wallets. </p>

<p>It includes a live-updating, interactive, line-by-line debugger, which visualizes that state of the stack over the entire execution of the program. There's also an entity and variable system for automatically generating private keys, public keys, and correct signatures across locking and unlocking scripts. </p>

<p>See <a href="https://blog.bitjson.com/bitauth-ide-write-and-debug-custom-bitcoin-scripts-aad51f6e3f44" rel="noreferrer">here for a more detailed tour and a video walkthrough</a>.</p>

<p><strong>You can use the <a href="https://bitauth.com/ide/" rel="noreferrer">online demo of BitAuth IDE</a>.</strong></p>

<p>And the <a href="https://github.com/bitjson/bitauth-ide" rel="noreferrer">source is on GitHub</a>.</p>

<p>I've also assembled a much longer <a href="https://blog.bitjson.com/bitcoin-script-a-reading-list-656242edfa6c" rel="noreferrer">Bitcoin Script Reading List</a>, which you might find useful. It includes links to several more related tools and script testing environments.</p>

CC BY-SA 4.0
2019-02-22T20:43:46.437Z
2019-02-22T20:43:46.437Z
Jason Dreyzehner
<p>have a look at <a href="https://siminchen.github.io/bitcoinIDE/build/editor.html" rel="nofollow noreferrer">BitcoinIDE</a> (on github.io, working as of Apr 2018)</p>

<p>p,s:</p>

<p>as @Samarth Hattangady mentioned, the source code can be found at <a href="https://github.com/siminchen/bitcoinIDE" rel="nofollow noreferrer">this</a> repo if you want to run it locally.</p>

CC BY-SA 4.0
2018-08-06T15:06:25.847Z
I don't think checksig actually does anything in this project
JBaczuk
CC BY-SA 4.0
2018-09-20T20:37:17.723Z
I don't think it knows what the transaction is, and what transaction you spend so it can't check the signature
Ohad Cohen
CC BY-SA 4.0
2021-01-16T19:38:52.780Z
The UI is great, but basic script functionality seems broken, e.g. `OP_NOTIF` didn't work.
Ciro Santilli OurBigBook.com
CC BY-SA 3.0
2018-04-28T16:53:53.213Z
2018-04-28T16:53:53.213Z
Ohad Cohen
<p>The github repository for the first link posted by StephenM347 can be found <a href="https://github.com/siminchen/bitcoinIDE" rel="nofollow noreferrer">here</a></p>

<p>If you want to run it locally, clone the repo and then,</p>

<ol>
<li><code>cd</code> into <code>/path/to/bitcoinIDE/build</code></li>
<li><p>Launch a server from here. This will launch a server on port 8000. </p>

<pre><code>python -m SimpleHTTPServer 8000
</code></pre></li>
<li><p>From the browser, visit localhost:8000, and select the file <code>editor.html</code></p></li>
</ol>

CC BY-SA 3.0
2017-09-30T10:31:12.887Z
On playing with this a lot, there seem to be some bugs. I was trying to solve a pay to pubkey hash script, and it didn't seem able to load larger items onto the stack (the sig and pubkey, and they seemed to just get rounded off instead) and thus the OP_HASH160 function didn't give the desired results.
Samarth Hattangady
CC BY-SA 3.0
2017-09-29T19:16:42.803Z
2017-09-29T19:16:42.803Z
Samarth Hattangady
<p>I have a tool at <a href="http://www.bowmain.co.uk/BSV/" rel="nofollow noreferrer">http://www.bowmain.co.uk/BSV/</a> which may be use. Let me know what you think as I can make changes to it.</p>

CC BY-SA 4.0
2020-07-13T08:29:17.157Z
When would you release a mac version
Baryon Lee
CC BY-SA 4.0
2019-02-08T01:12:28.600Z
2019-02-08T01:12:28.600Z
Ned Kelly
<p>There is a "Script Playground":
<a href="http://www.crmarsh.com/script-playground/" rel="nofollow">http://www.crmarsh.com/script-playground/</a></p>

CC BY-SA 3.0
2016-01-26T17:13:49.193Z
Yes, I saw that from [the Bitcoin wiki page on Script](https://en.bitcoin.it/wiki/Script), but it's a converter, not a debugger/simulator.
Geremia
CC BY-SA 3.0
2016-01-26T07:00:31.500Z
2016-01-26T07:00:31.500Z
Igor Barinov
<p>Besides the Bitcoin Script editor you'll probably need an ECDSA generator.</p>
<p>Here's a simple online tool to create priv/pub key-pairs and sign with them using the Bitcoin Curve (secp256k1)
<a href="https://kjur.github.io/jsrsasign/sample/sample-ecdsa.html" rel="nofollow noreferrer">https://kjur.github.io/jsrsasign/sample/sample-ecdsa.html</a></p>

CC BY-SA 4.0
2021-09-16T06:13:20.330Z
2021-09-16T06:13:20.330Z
Tim Menapace
<p>I used the following ones just today:</p>
<ul>
<li><a href="https://nioctib.tech/" rel="nofollow noreferrer">https://nioctib.tech/</a></li>
<li><a href="https://github.com/bitcoin-core/btcdeb" rel="nofollow noreferrer">https://github.com/bitcoin-core/btcdeb</a></li>
<li><a href="https://ide.bitauth.com/" rel="nofollow noreferrer">https://ide.bitauth.com/</a></li>
<li><a href="https://siminchen.github.io/bitcoinIDE/build/editor.html" rel="nofollow noreferrer">https://siminchen.github.io/bitcoinIDE/build/editor.html</a></li>
<li><a href="https://curiosity-driven.org/bitcoin-contracts" rel="nofollow noreferrer">https://curiosity-driven.org/bitcoin-contracts</a> (more a tutorial than a tool)</li>
</ul>

CC BY-SA 4.0
2023-04-26T15:35:04.397Z
2023-04-26T15:35:04.397Z
schmijos
<p>Online script IDE for Bitcoin and Liquid: <a href="https://scriptwiz.app/" rel="nofollow noreferrer">https://scriptwiz.app/</a></p>

CC BY-SA 4.0
2021-09-15T11:23:30.600Z
Hi Burak, we're looking for long answers that explain why they're right. Link-only answers can quickly become obsolete when the page they link to stops serving the content, for example when it moves elsewhere or changes their internal structure. If this link does provide a tool that satisfies Geremia's request, please add more information to substantiate this.
Murch
CC BY-SA 4.0
2021-09-10T17:01:39.790Z
2021-09-10T17:01:39.790Z
Burak
<p>I know of these two:</p>
<ul>
<li><strike>https://webbtc.com/script</strike></li>
<li><strike>http://www.cs.princeton.edu/~tongbinw/bitcoinIDE/build/editor.html</strike></li>
<li><a href="https://siminchen.github.io/bitcoinIDE/build/editor.html" rel="nofollow noreferrer">https://siminchen.github.io/bitcoinIDE/build/editor.html</a></li>
<li><a href="https://bitauth.com/ide/" rel="nofollow noreferrer">https://bitauth.com/ide/</a></li>
</ul>
<p>The first one in particular I have found to be very useful.</p>

CC BY-SA 3.0
2016-01-26T17:23:57.063Z
The first one is more what I was imagining. The second one seems very useful, too. thank you
Geremia
CC BY-SA 3.0
2017-06-05T09:16:12.417Z
Unfortunately none of the above works anymore.
nopara73
CC BY-SA 3.0
2017-06-05T11:55:53.687Z
The second one is still working for me
morsecoder
CC BY-SA 3.0
2016-11-23T07:36:55.690Z
@StephenM347♦ First link throws 404 error...
mosg
CC BY-SA 4.0
2019-02-22T20:44:51.767Z
I posted another answer with a new tool you may want to add here: https://bitcoin.stackexchange.com/a/84822/5841
Jason Dreyzehner
CC BY-SA 4.0
2019-07-16T06:00:12.287Z
bitcoinIDE can be now run from https://siminchen.github.io/bitcoinIDE/build/editor.html
Walter K
CC BY-SA 4.0
2016-01-26T16:26:10.837Z
2021-09-10T14:41:34.387Z
2021-09-10T14:41:34.387Z
morsecoder
<p>Is there an online simulator that would allow me to step through, debug, or simulate the execution of a Bitcoin script?</p>

CC BY-SA 3.0
2018-01-14T21:06:59.287Z
See good examples with oline compiler at https://curiosity-driven.org/bitcoin-contracts
Peter Krauss
<script>
Online Bitcoin Script simulator or debugger?
Geremia
# Online Bitcoin Script simulator or debugger?

(Asked by: username_0 on 2016-01-26)

Is there an online simulator that would allow me to step through, debug, or simulate the execution of a Bitcoin script?

**Tags:** script

> **Comments:**
> **username_1**: See good examples with oline compiler at https://curiosity-driven.org/bitcoin-contracts  

---

## 10 answers

### Answer by username_14 on 2016-01-26. Score: 4 | Accepted answer

I know of these two:

* https://webbtc.com/script
* http://www.cs.princeton.edu/~tongbinw/bitcoinIDE/build/editor.html
* <https://siminchen.github.io/bitcoinIDE/build/editor.html>
* <https://bitauth.com/ide/>

The first one in particular I have found to be very useful.

> **Comments:**
> **username_0**: The first one is more what I was imagining. The second one seems very useful, too. thank you  
> **username_16**: @StephenM347♦ First link throws 404 error...  
> **username_15**: Unfortunately none of the above works anymore.  
> **username_14**: The second one is still working for me  
> **username_3**: I posted another answer with a new tool you may want to add here: https://bitcoin.stackexchange.com/a/84822/5841  
> **username_17**: bitcoinIDE can be now run from https://siminchen.github.io/bitcoinIDE/build/editor.html  

---

### Answer by username_2 on 2018-09-20. Score: 11

Highly recommend [btcdeb](https://github.com/kallewoof/btcdeb) by kallewoof. Among other things, you can step through scripts including [verify signatures](https://github.com/kallewoof/btcdeb#signature-checking). It is written in c++ and compiles using autotools.

## btcdeb

Bitcoin Script debugging utilities.

This is a set of tools used to debug or construct scripts for use in Bitcoin.

[![enter image description here](https://i.sstatic.net/Qm41h.gif)](https://i.sstatic.net/Qm41h.gif)

```
btcdeb> help
step     Execute one instruction and iterate in the script.
rewind   Go back in time one instruction.
stack    Print stack content.
altstack Print altstack content.
vfexec   Print vfexec content.
exec     Execute command.
tf       Transform a value using a given function.
print    Print script.
help     Show help information.

```


---

### Answer by username_3 on 2019-02-22. Score: 5

I've been looking for a tool to experiment with bitcoin script for a while now, and I finally finished developing one myself.

BitAuth IDE is an open source project for designing advanced scripts for bitcoin and bitcoin-like cryptocurrencies. It’s both a learning sandbox and a tool for designing new kinds of wallets.

It includes a live-updating, interactive, line-by-line debugger, which visualizes that state of the stack over the entire execution of the program. There's also an entity and variable system for automatically generating private keys, public keys, and correct signatures across locking and unlocking scripts.

See [here for a more detailed tour and a video walkthrough](https://blog.bitjson.com/bitauth-ide-write-and-debug-custom-bitcoin-scripts-aad51f6e3f44).

**You can use the [online demo of BitAuth IDE](https://bitauth.com/ide/).**

And the [source is on GitHub](https://github.com/bitjson/bitauth-ide).

I've also assembled a much longer [Bitcoin Script Reading List](https://blog.bitjson.com/bitcoin-script-a-reading-list-656242edfa6c), which you might find useful. It includes links to several more related tools and script testing environments.


---

### Answer by username_4 on 2018-04-28. Score: 3

have a look at [BitcoinIDE](https://siminchen.github.io/bitcoinIDE/build/editor.html) (on github.io, working as of Apr 2018)

p,s:

as @username_6 mentioned, the source code can be found at [this](https://github.com/siminchen/bitcoinIDE) repo if you want to run it locally.

> **Comments:**
> **username_2**: I don't think checksig actually does anything in this project  
> **username_4**: I don't think it knows what the transaction is, and what transaction you spend so it can't check the signature  
> **username_5**: The UI is great, but basic script functionality seems broken, e.g. `OP_NOTIF` didn't work.  

---

### Answer by username_6 on 2017-09-29. Score: 2

The github repository for the first link posted by StephenM347 can be found [here](https://github.com/siminchen/bitcoinIDE)

If you want to run it locally, clone the repo and then,

1. `cd` into `/path/to/bitcoinIDE/build`
2. Launch a server from here. This will launch a server on port 8000.

   ```
   python -m SimpleHTTPServer 8000

   ```
3. From the browser, visit localhost:8000, and select the file `editor.html`

> **Comments:**
> **username_6**: On playing with this a lot, there seem to be some bugs. I was trying to solve a pay to pubkey hash script, and it didn't seem able to load larger items onto the stack (the sig and pubkey, and they seemed to just get rounded off instead) and thus the OP_HASH160 function didn't give the desired results.  

---

### Answer by username_7 on 2019-02-08. Score: 2

I have a tool at <http://www.bowmain.co.uk/BSV/> which may be use. Let me know what you think as I can make changes to it.

> **Comments:**
> **username_8**: When would you release a mac version  

---

### Answer by username_9 on 2016-01-26. Score: 1

There is a "Script Playground":
<http://www.crmarsh.com/script-playground/>

> **Comments:**
> **username_0**: Yes, I saw that from [the Bitcoin wiki page on Script](https://en.bitcoin.it/wiki/Script), but it's a converter, not a debugger/simulator.  

---

### Answer by username_10 on 2021-09-16. Score: 0

Besides the Bitcoin Script editor you'll probably need an ECDSA generator.

Here's a simple online tool to create priv/pub key-pairs and sign with them using the Bitcoin Curve (secp256k1)
<https://kjur.github.io/jsrsasign/sample/sample-ecdsa.html>


---

### Answer by username_11 on 2023-04-26. Score: 0

I used the following ones just today:

* <https://nioctib.tech/>
* <https://github.com/bitcoin-core/btcdeb>
* <https://ide.bitauth.com/>
* <https://siminchen.github.io/bitcoinIDE/build/editor.html>
* <https://curiosity-driven.org/bitcoin-contracts> (more a tutorial than a tool)


---

### Answer by username_12 on 2021-09-10. Score: 0

Online script IDE for Bitcoin and Liquid: <https://scriptwiz.app/>

> **Comments:**
> **username_13**: Hi username_12, we're looking for long answers that explain why they're right. Link-only answers can quickly become obsolete when the page they link to stops serving the content, for example when it moves elsewhere or changes their internal structure. If this link does provide a tool that satisfies username_0's request, please add more information to substantiate this.  

---

