2

I know that the blockchain technologie works so well, because everybody has basically a copy of the last ledger.

Therefore, if a transaction happens, everybody inside the network has to "approve" the transaction to do it.

These other participants are then seen as trusted sources.

However, what makes them to trusted sources. Let`s say there are only three participants, two make a transaction and one has to decide if the transaction is ok or not(does the clearing). What makes him a trusted source?

Are these thoughts right or where am I wrong?

I appreciate your replies!

  • Can you clarify what you mean by "These other participants are then seen as trusted sources."? What do you think they're trusted to do, or to not do? – David Schwartz Feb 18 '16 at 7:43
6

I know that the blockchain technologie works so well, because everybody has basically a copy of the last ledger.

Yes, every full bitcoin node has a copy of the blockchain (aka ledger).

Therefore, if a transaction happens, everybody inside the network has to "approve" the transaction to do it.

Correct, every transaction is propagated to all bitcoin nodes and it is validated by each one of them. Some of those nodes also do mining and they will include this transaction to a block. If they mine the block successfully (before any others mine their blocks successfully) they propagate their block to all the other bitcoin nodes which validate the block and all the transactions within. Thus, transactions are validated a second time.

These other participants are then seen as trusted sources.

However, what makes them to trusted sources. Let`s say there are only three participants, two make a transaction and one has to decide if the transaction is ok or not(does the clearing). What makes him a trusted source?

No one is considered a trusted source. Bitcoin enables trustless transactions. If we have 1000 bitcoin nodes in the network and user A makes a transaction that sends some coins to user B all 1000 bitcoin nodes will validate the transaction. Then, when the mined block is propagated all 1000 nodes will validate it again. Note, that users A and B may or may not run a full bitcoin node themselves.

Hopefully, that clarifies things a bit.

  • Thx for your great answer! What do you mean by all 1000 users will validate the transaction? How do they validate it? – Kare Feb 18 '16 at 13:02
  • 1
    @Kare, all 1000 bitcoin nodes will check that the transaction is valid according to the protocol rules set. For example, if user A tries to send 5 bitcoins to user B, it will make sure that you control the bitcoin address(es) that contain the bitcoins you are trying to sent, plus it will make sure that the bitcoins that you are trying to sent are not more than the bitcoins contained in your addresses (e.g. in case you have 2 bitcoins but trying to send 5), etc. Check the rules link above for more. – karask Feb 18 '16 at 18:00
  • Thx for your answer! Ok I get this part. So the network basically validates the transaction. But when a block gets added to the chain, the winner of the "lottery" basically decides, which block gets added to the chain. Can't he decide that a fraudulent problem get's added to the chain? Appreciate your reply! – Kare Feb 18 '16 at 20:58
  • The miner that successfully mines the next block (he managed to solve a difficult problem that also requires luck; thus, winner of the "lottery") propagates his block to all other bitcoin nodes. Then all other nodes verify that the solution to the problem is correct, validate the block as we mentioned above and add this block to their local copy of the blockchain. If the winner adds another block to his copy of the blockchain he will be inconsistent with the rest of the network and soon, to simplify, ignored. – karask Feb 18 '16 at 21:37
1

everybody inside the network has to "approve" the transaction to do it.

I think "approve" is not the best choice of words. They only check whether a transaction is valid or not, no approval is necessary.

To explain with your example with three participants:

Alice, Bob, and Charlie each have a copy of the blockchain. Alice wants to send bitcoins to Bob.
Two conditions apply:

  • Alice has to have sufficient bitcoins to fund the transaction.
  • The transaction has to have a valid signature.

When Alice broadcasts her transaction, everyone (Alice, Bob and Charlie) can check whether the money is available, because the transaction specifies which coins are being spent.
Also, everyone can check whether the signature is valid because it can only be produced by the owner of said bitcoins. Each user by themselves will immediately dismiss a transaction if the signature is invalid or when there are insufficient funds.

Next, whenever anyone mines a block, it will include a set of valid transactions to confirm them. When found, the block is broadcasted to the network. Everyone checks that the block is valid and that it only contains valid transactions. Since everyone builds the database from the same blockchain, they all end up having the same state in the database, and therefore will be in agreement which balances are available for spending.

In other words, you can trust your own copy of the blockchain, because you checked every piece of it for validity. However, others may not. Yet, nobody else has to trust your copy of the blockchain, because you can send them the pieces so they can build their own and check the work themselves.

  • Thx for your reply! Is there a flow chart out there, which describes this process? – Kare Feb 18 '16 at 13:03
  • @Murch what you are saying is correct although the UTXO will confuse a user that is just starting learning. I want to rephrase your conclusion however (I know what you mean but I just feel it might confuse): what you trust is the algorithmic execution of the bitcoin protocol that ensures there is consensus between the majority of the blockchain "copies". You can trust your own blockchain but the rest of the network might not. – karask Feb 18 '16 at 18:11
  • 1
    @Kare: Check this out: spectrum.ieee.org/image/MjA3NDM1OA – Murch Feb 18 '16 at 22:42
  • 1
    @karask: Thanks for the feedback, how is that? – Murch Feb 18 '16 at 22:42
-3

First of all you need to understand that the use of Bitcoin is not controlled by anyone at all, therefor there is no way to check the integrity of anyone using the Bitcoin technology. With that in mind one should always be cautious when making transactions. People who make a lot of transactions succesfully are considered trustworthy (technically) but there is always a chance this will change. It's actually the same as in real life, like when you mail-order something you rely on trust. The more people order from the same company the higher the trust will be but as with Bitcoin, that trust can be broken for many reasons. The time we live in is truly a sick period in mankind's history. So many people try to scam each other any which way they can including governments, banks etc. So in short : you can not trust anyone 100%, so forget about trust and be cautious when sending large amounts of bitcoins. If you need to make a big transaction to someone you don't know you should try and find some transaction history of that person. You could check the blockchain info for that persons transactions to get a more accurate estimate on how trustworthy that person might be. I hope this answer clarified your questions.

  • 1
    Whether more transactions make someone more trustworthy is quite debatable. The cryptographic literature on decentralized trust is quite limited and such intuitive claims do not seem to be backed by reality; for example, refer to the bitcoin-otc case of a repeatedly good-transacting individual who abandoned ship after years of good trade. – dionyziz Feb 17 '16 at 23:38
  • -1 This answer seems to be referring to trust in exchange relationships where people trade cryptocurrency for other valuables. It completely misses the point of the question. – Murch Feb 18 '16 at 14:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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