Bitcoin Transactions – from “Send” to “Receive”


Hello guys and gals,
I’m Nate from 99Bitcoins, and welcome to Bitcoin Whiteboard Tuesday! Every few weeks we’re going to send you
a cool new video, just like this one, explaining some basic concepts around Bitcoin. This way you can learn about Bitcoin yourself or forward these videos to friends
or family members who have questions. Today’s topic is the path of Bitcoin
from “send” to “receive”. In this episode, we’re going to go over
exactly what happens to a single Bitcoin from the moment you hit the “send” button
in your wallet until it’s received on the other end. Hopefully, once we finish this lesson, you’ll have a good understanding of
how the Bitcoin network works and what’s the role of each specific player
in the Bitcoin ecosystem. So let’s get started! The path from send to receive has 3 parts:
Signing, broadcasting and confirming. Let’s start with the first part – signing. When I hit the “send” button in my wallet, what I’m actually doing is telling my wallet: “Hey wallet, I want to send
1 Bitcoin to my friend Steve. Here is Steve’s Bitcoin address.” The wallet, in response,
creates a transaction message containing information about me, the sender,
Steve, the recipient and the amount being sent
(in this case, one Bitcoin). Afterward, the wallet produces a unique
digital signature for this message by mathematically mixing it
with my private key. In our previous lesson,
I’ve discussed the concept of the private key. It’s basically a long string of
letters and numbers that act as the “password” for your Bitcoins. Whoever knows my private key
has control of my Bitcoins. A digital signature is a way to prove that
I own the private key to my Bitcoins by using only my public key
which I have no issue exposing, thus keeping my private key, well, private. Also, digital signatures are different
each time you sign a transaction – that’s why they are even more secure
than a real signature since they are unique
for each and every transaction. So if I send Steve one Bitcoin today
and then another Bitcoin tomorrow, each of these transactions will have
a different digital signature. After signing the transaction message,
the wallet then groups the signature, along with my transaction message,
into a small file. And this concludes our first step of signing. Now we can move on to
the next step – broadcasting. In the broadcasting step,
the wallet starts sending out the file to other computers that hold
a copy of the Blockchain. These computers are also known as nodes. Each node that receives the file
verifies that it’s legit. It’s basically looking to see that
I actually have the funds I want to spend and that my signature checks out, much like a banker would check
your account balance before clearing your check. Once my file is verified, it’s then passed on to other nodes
in the network that repeat this process. When a node receives a file, it keeps it in a holding area
called the Mempool. The Mempool, short for memory pool, is a space dedicated for valid
but still unconfirmed transactions. Once the transaction message finds its way to the Mempool of the different
online nodes on the network, we can say the second step of broadcasting
is officially finished. Now I want to take a quick pause and talk about the status of
our transaction at this point. In order to actually see
what’s going on with our transaction while it’s making its path
along the Bitcoin network, we can use a block explorer. A block explorer is a tool,
usually in the form of a website, that allows you to search
and navigate through the Blockchain. Using a block explorer, you can check the balance of
different Bitcoin addresses, track transactions and get a wide
variety of statistics about the network. So at this point, if we look at our transaction
through the block explorer, we will see that
it is marked as “unconfirmed”, meaning that it was broadcasted to the network
and had its digital signature verified but it still isn’t part of the Blockchain. This type of transaction
is also referred to sometimes as a zero confirmation transaction. An unconfirmed transaction should be treated
as its name implies – unconfirmed. This means that the transaction
can still get canceled, and there’s no guarantee
it will ever enter the Blockchain. If your business sells or ships goods
and you accept payment in Bitcoin, you should never accept
an unconfirmed transaction as a proof of payment. Now we can now move on to the final step –
confirming our transaction. If you’ve watched our previous lesson
about Bitcoin mining, then you already know that
miners group transactions together, meaning they take those files
sitting around in the Mempool, group them together and create
a block of transactions. There is a limit to how many transactions
can be inserted into each block. Therefore, miners will usually
pick the transactions that have the highest mining fees
attached to them first. Miners will then compete with each other in order to get their block
into the Blockchain. The mining competition
is based on mathematical calculations, and the miner with
the most computational power will have the best chance of winning. Once a miner wins the competition
and gets his block into the Blockchain, all of the transactions
that were in that block will be considered as confirmed. Basically, the miners are writing
the history book of Bitcoin transactions, and whoever wins the competition
gets to write the next page. On average, a new block of transactions
will be mined, or inserted into the Blockchain,
every 10 minutes. Keep in mind that this is on average. Sometimes you’ll get 2 blocks
confirmed within 1 minute, and sometimes it can take more than an hour. If a block was mined
with your transaction in it, you’ll notice it will now show
on the block explorer as having one confirmation. As more and more blocks are added afterward,
the confirmation number will grow. Think of it as a building of blocks
with our block at the very bottom. Every additional block
set on top of our own block makes it harder to remove. That’s why it’s usually suggested
to wait for at least 6 blocks before considering a transaction
as fully confirmed without any chance of cancellation. That’s it! Our transaction is now fully
confirmed and received. Hopefully, you now have
a better understanding of how the Bitcoin network operates. If you have any additional questions
about what we just covered, feel free to leave them
in the comment section below. I hope you enjoyed this episode of
Bitcoin Whiteboard Tuesday, and I’ll see you… in a bit.

9 thoughts on “Bitcoin Transactions – from “Send” to “Receive”

  1. What a fantastically simple way of explaining it! Keep up the great work. I recommend every newbie to this channel because of the simplicity of explanation. Thanks!

  2. Nate you are really helping me to understand bit by bit. At first it was a bit overwhelming too much info at once. I have only seen three videos I believe. I started last Friday, I think.

  3. You said we've to wait for 6 transaction confirmations to know that it's legit.

    How can there be any cancellation in the first place once the transaction goes into the block?

  4. Wow being a network engineer, I’m hearing a lot of familiar terms. But you explain it so that everyone can understand. Love it!

  5. Wow being a network engineer, I’m hearing a lot of familiar terms. But you explain it so that everyone can understand. Love it!

Leave a Reply

Your email address will not be published. Required fields are marked *