To run the bitvm there are seven steps:
In this demo you will play as Paul, the prover. The first step is to open up the page where Vicky -- the verifier -- will verify your program, and copy her public key, and paste it here
Visit Vicky's page: Vicky page
Enter Vicky's public key
Time to make a promise to Vicky! Will your string be all 0s or not all zeros?
Click ok when you've sent the promise file to Vicky
Enter the bitcoin address where you want your money to go when you get it back:
Also, it's time to validate that you and Vicky generated the same bitcoin addresses. Do all of these match what Vicky got? (Note: don't send any money to them yet)
Also, send *PRECISELY* 10,000 sats to the following address to start the contract (if you send the wrong amount it will not work):
Asking for txid and vout in 3 seconds
Broadcast the following transaction to finalize the contract:
What string do you want to reveal to Vicky? Remember, you promised and she can take your money if you lie
Add this many more characters: 64
Note that your string must only contain 0s and 1s
In this demo you will play as Paul, the prover. The first step is to open up the page where Vicky -- the verifier -- will verify your program, and copy her public key, and paste it here
Visit Vicky's page: Vicky page
Enter Vicky's public key
Time to make a promise to Vicky! Enter a number. Later, you will need to enter two numbers that sum to this number.
Click ok when you've sent the promise file to Vicky
Enter the bitcoin address where you want your money to go when you get it back:
Hint: if you don't have a testnet wallet, you can just send it to a testnet faucet at this address:
tb1q349k20q0yft6knyss5cdpcrgmg30taxyt5ggse
Also, it's time to validate that you and Vicky generated the same bitcoin addresses. Do all of these match what Vicky got? (Note: don't send any money to them yet)
Send *PRECISELY* 10,000 sats to the following address to start the contract (if you send the wrong amount it will not work):
Asking for txid and vout in 3 seconds
Broadcast the following transaction to finalize the contract:
What two numbers do you want to reveal to Vicky? Remember, you promised they would add up to loading... and she can take your money if you lie
Enter your first number
Enter your second number
In this demo you will play as Paul, the prover. The first step is to open up the page where Vicky -- the verifier -- will verify your program, and copy her public key, and paste it here
Visit Vicky's page: Vicky page
Enter Vicky's public key
Time to make a promise to Vicky! Enter a number. Later, you will need to enter two numbers that sum to this number.
Click ok when you've sent the promise file to Vicky
Enter the bitcoin address where you want your money to go when you get it back:
Hint: if you don't have a testnet wallet, you can just send it to a testnet faucet at this address:
tb1q349k20q0yft6knyss5cdpcrgmg30taxyt5ggse
Also, it's time to validate that you and Vicky generated the same bitcoin addresses. Do all of these match what Vicky got? (Note: don't send any money to them yet)
Send *PRECISELY* 10,000 sats to the following address to start the contract (if you send the wrong amount it will not work):
Asking for txid and vout in 3 seconds
Broadcast the following transaction to finalize the contract:
What two numbers do you want to reveal to Vicky? Remember, you promised they would add up to loading... and she can take your money if you lie
Enter your first number
Enter your second number
In this demo you will play as Paul, the prover. The first step is to open up the page where Vicky -- the verifier -- will verify your program, and copy her public key, and paste it here
Visit Vicky's page: Vicky page
Enter Vicky's public key
Time to make a promise to Vicky! Enter a number and say whether it is bigger than a number you'll send Vicky later.
Will the number you just entered be bigger than the number you'll send Vicky later?
Click ok when you've sent the promise file to Vicky
Enter the bitcoin address where you want your money to go when you get it back:
Hint: if you don't have a testnet wallet, you can just send it to a testnet faucet at this address:
tb1q349k20q0yft6knyss5cdpcrgmg30taxyt5ggse
Also, it's time to validate that you and Vicky generated the same bitcoin addresses. Do all of these match what Vicky got? (Note: don't send any money to them yet)
Send *PRECISELY* 10,000 sats to the following address to start the contract (if you send the wrong amount it will not work):
Asking for txid and vout in 3 seconds
Broadcast the following transaction to finalize the contract:
What number do you want to reveal to Vicky? Remember, you promised Vicky your original number (loading...) would be "loading..." than the number you're about to enter. She can take your money if you lie.
Enter your number of comparison
In this demo you will play as Paul, the prover. The first step is to open up the page where Vicky -- the verifier -- will verify your program, and copy her public key, and paste it here
Visit Vicky's page: Vicky page
Enter Vicky's public key
Time to make a promise to Vicky! Enter a number. Later, you will need to enter a number that after shifting becomes this number that you are about to enter.
Click ok when you've sent the promise file to Vicky
Enter the bitcoin address where you want your money to go when you get it back:
Hint: if you don't have a testnet wallet, you can just send it to a testnet faucet at this address:
tb1q349k20q0yft6knyss5cdpcrgmg30taxyt5ggse
Also, it's time to validate that you and Vicky generated the same bitcoin addresses. Do all of these match what Vicky got? (Note: don't send any money to them yet)
Send *PRECISELY* 10,000 sats to the following address to start the contract (if you send the wrong amount it will not work):
Asking for txid and vout in 3 seconds
Broadcast the following transaction to finalize the contract:
What number do you want to reveal to Vicky? Remember, you promised it would become loading... after it gets shifted. She can take your money if you lie
Enter your number
Shift right or left?
In this demo you will play as Paul, the prover. The first step is to open up the page where Vicky -- the verifier -- will verify your program, and copy her public key, and paste it here
Visit Vicky's page: Vicky page
Enter Vicky's public key
Time to make a promise to Vicky!
Enter an SHA256 hash in hex format:
(you can use this online tool to
generate one)
Click ok when you've sent the promise file to Vicky
Enter the bitcoin address where you want your money to go when you get it back:
Hint: if you don't have a testnet wallet, you can just send it to a testnet faucet at this address:
tb1q349k20q0yft6knyss5cdpcrgmg30taxyt5ggse
Also, it's time to validate that you and Vicky generated the same bitcoin addresses. Do all of these match what Vicky got? (Note: don't send any money to them yet)
Send *PRECISELY* 10,000 sats to the following address to start the contract (if you send the wrong amount it will not work):
Asking for txid and vout in 3 seconds
Broadcast the following transaction to finalize the contract:
Now enter the preimage corresponding to the hash you promised to Vicky (loading...). She can take your money if you lie.
Enter the preimage here: