0

I can understand how Bitcoin replication mechanism work profoundly (i.e. the write operations). However, I don't understand the read operation from a client's point of view (a client is called a user in Nakamoto's paper).

For instance if a web-based client wants to check his balance, which node does he read from? Does he read from a single node (perhaps that node is not updated yet) or several nodes?

Links, citations and references are much appreciated.

1 Answer 1

2

Terminology

Using non-standard terminology leads to confusion. Your question uses terms like "client", "web-based". "read" and "write" in ways that are not commonly used when discussing Bitcoin.

Web based client

To me a web-based application is an application that is presented to a human user using a web-browser that uses HTML and CSS perhaps with Javascript and which acts as an HTTP client to communicate with a HTTP server. This is a client-server model of communication. Bitcoin itself primarily uses a peer to peer model. Full-node Bitcoin applications such as Bitcoin-core do not use HTTP they use a peer to peer protocol usually based on TCP port 8333.

This sort of web based application isn't a Bitcoin node and does not participate in the Bitcoin network. It typically communicates in a proprietary way with some 3rd party service who own some Bitcoin. The user of such a web based application owns no money as far as the Bitcoin network is concerned.

Bitcoin was invented to avoid the need for this sort of 3rd party intermediary who has to be trusted.

Balances

Each full node accumulates all the data it needs to calculate a balance for a human. The Bitcoin network itself has no knowledge of balances. Nodes don't need to know balances to interoperate or to validate transactions.

For example, Bitcoin core can present a person with a "balance". But to calculate that it peruses the transaction journal, adds credits and subtracts debits for each "address" of interest. Obviously this total can be cached in persistent storage for efficiency.

So the node read from by a person interested in a balance is typically the local node they run themselves.

For people who don't own Bitcoin themselves but who give money to third parties in return for an IOU denominated in Bitcoin, there is no Bitcoin node that knows money is owed to them and such people have to use proprietary software to consult with the business that issued the IOU. Usually these businesses provide software that creates the illusion that their customers have direct control of Bitcoin.


Things to remember

  • Bitcoin is cash, not a bank account.
  • No single person, organisation or consortium owns the Bitcoin network
  • No single person, organisation or consortium controls Bitcoin standards
  • No one is in charge of the Bitcoin system
  • bitcoin.org is just an information site about Bitcoin, with links to various wallet software. It doesn't develop, intermediate, serve, or interact in any way with Bitcoin wallets software except guiding users who want to download one (ref PW comment below).
  • The system was originally designed so that each person keeps their money under their own control using only software they run on their own computer. It can still be used this way and many do.
  • This software is called a "wallet" - even though it never contains money. It allows the user to create Bitcoin transactions.
  • Other businesses sometimes call other things "wallets" even though they don't give the customer custody of their own money as a standard Bitcoin wallet does.
  • Miners don't really have any special privileges or rights.
4
  • Got it. My confusion was about the third party thing. So, a client connected to bitcoin.org is buying BTCs through a third party. Hence, the transaction complies to the third party rules. This way the client is supposed to trust that third party (at least that it is updated), right? Commented Dec 7, 2021 at 14:57
  • bitcoin.org is not involved in bitcoin transactions.
    – Claris
    Commented Dec 7, 2021 at 15:28
  • bitcoin.org is just an information site about Bitcoin, with links to various wallet software. It doesn't develop, intermediate, serve, or interact in any way with Bitcoin wallets software except guiding users who want to download one. Commented Dec 7, 2021 at 15:54
  • @RedGrittyBrick, I don't know if this is a new feature, but bitcoin.org are selling on this link bitcoin.org/en/buy. they are selling through moonpay! Commented Dec 7, 2021 at 20:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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