Bitcoin Forum
November 10, 2024, 01:13:58 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: [1]
1  Other / Beginners & Help / Newbie tech questions about bitcoin on: October 11, 2018, 09:51:08 AM
Hi. I'm trying to understand the basic technical details around bitcoin. I've watched a few videos and I think I've got the gist of it. Here are a few concepts as far as I understand (happy to be corrected if my concept is wrong) and questions around each concept:
Concept 1: The difficulty of mining bitcoin is adjusted to keep it roughly one hit every 10 minutes. This will vary because the number of miners can increase/decrease. A successful mine is deemed by finding a cryptographic hash for the new block which has a certain number of zeros in a row at the start of the has. The difficulty is adjusted by changing the number of required zeros the hash needs.

Question 1 : How does the algorithm vary the requirements of difficulty based on the scenario? I understand that in order to not be exploited, it can't be manually set or configured by someone. It must be something built into the algorithm that will adjust based on how long the last one (or few) blocks took to mine. Can anyone explain how this works?

Concept 2: It's entirely possible two different miners can solve the next block in the chain at the same time. Both will broadcast the results of the new blockchain and listeners will keep track of both blockchain forks (not sure if that's the correct term). Eventually, one of the forks will increase in size a lot more than the other fork and thus the listener will ditch the shorter chain and keep the longer one. In this way, each listener will only keep the longest chain. However, it may keep multiple chains while it is still deciding whether it needs to ditch one over the other.

Question 2 : How long does each listener keep each fork of the chain before it is ditched as being too old/short? Is it based on time or length of the chain? Is it possible, there could be multiple forks of the chain at any one time and not just two? In practice, how many possible chains could be tracked at any one time?

Concept 3: The maximum number of transactions per block is 2400 (or something around that). Given each block takes about 10 minutes to mine, this rate of transaction processing is extremely slow compared to a payment gateway such as Visa which can handle tens of thousands of transaction per second.

Question 3 : Is it possible for Bitcoin to increase this limit or is this hard coded into the algorithm? Does this mean that bitcoin is unlikely to be replaced as a method to pay for small transactions/payments such as buying everyday items?

Concept 4: Given there is a transaction limit per block, and if there are more transactions pending than can fit into a block, then miners will cherry pick the transactions that will be more fruitful for them. E.g. the transactions where they give the biggest tip to the miner (as transactions can give a tip to the miner).

Question 4 : Will this mean that a transaction that does not tip, will get starved? Eventually leading to only transactions that have huge tips will get processed.

That's all I can think of for now.
Pages: [1]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!