6

According to the mailing list archives, the mailing list received Satoshi's email at Fri Oct 31 14:10:00 EDT 2008. However the mailing list is moderated so perhaps the email was not received by everyone until a day later on November 1st. The first response to the email was sent on November 2nd, so it may be that the email was not forwarded to the list for a ...


5

I don't ever recall seeing an actual calculation for it, and I strongly suspect the reason is that it is "good enough". The original, primary use of block timestamps is in difficulty calculations. They now also adjust the time for locktime transactions, but that's a newer addition. A block's timestamps must: Be greater than the median of the past 11 ...


5

Note the word normally at the beginning of the sentence. This isn't imposing a restriction but merely describing a common use case. It's obviously useful to allow more than two outputs, and there's no particular reason to impose any arbitrary limit on the number. I don't think such a limit was ever contemplated. In any case, the whitepaper isn't ...


4

You can find a markdown version here.


3

I recently created a markdown version of the Bitcoin Whitepaper, which you can find at https://github.com/dhimmel/bitcoin-whitepaper/tree/master/content. Most of the markdown text is in this file. I based this version off the Whitepaper provided by the Satoshi Nakamoto Institute. Accordingly, the images are SVGs and the math is TeX-formatted. The source ...


3

Since Bitcoin Core v0.8.0, the validation database ("chainstate" or "UTXO set", or "account balance sheet") is separated from the blockchain. When a new block comes in, its effects (removing spent inputs, and adding outputs) are applied to the database. This means blocks are still downloaded and verified like before, but they aren't used for validation ...


3

"Doublespend" refers to an attempt of spending the same funds twice. In Bitcoin specifically this occurs when a user publishes two transactions that are in conflict due to attempting to use the same unspent transaction output as input. Obviously, only one of the two transactions can be valid. Before Bitcoin was published, the solution to the doublespending ...


3

One way to interpret this is that there is, indeed, a mistake. A more charitable interpretation is that there are two unstated assumptions: The attacker is performing a Finney-like attack - that is, he has already pre-mined a block before even attempting the transaction. So while z=0 means the honest network has 1 block, so does the attacker. The attacker ...


2

Hashrate The number of hashes a miner can do per second. What you seem to be referring to is Network Hashpower: the amount of computational power of all the miners on the network. This was not assumed to be constant, but the block time was intended to be close to constant, hence the reason the difficulty is adjusted based on how often blocks are mined. ...


2

What Satoshi is referring to is the traditional financial system's inability to transfer small amounts of money. Traditional money transfer systems such as ACH and various wire transfer services are reversible for a certain period of time, meaning that there is some risk involved. The risk that the bank will have to mediate a reversal in payment (which ...


2

Does z = 0 mean that a transaction hasn't yet been confirmed, or that it has been confirmed but its block hasn't yet been extended? Z = 0 means that the transaction has not yet been confirmed. The probability is 1 because, under the assumptions made for these calculations, unconfirmed transactions can always be considered insecure and double spendable by ...


2

The target is a 256 bit integer. However it is stored and represented in block headers as a 32 bit integer. This is a compact representation of the actual 256 bit value. Operations involving the target are done as both 256 bit integers. However because the target is stored as a 32 bit integer in the block header, calculations involving the previous block ...


2

There is no serious usage, and has never been, of Hashcash. Most obviously, the disparity between the resources of a spammer (who can rent a botnet of stolen compute resources, or use high powered servers and GPUs) is no match for a user sending an email from their phone with limited power available . This simply means that the difficulty of generating a "...


1

Yes, there is still a need to wait for confirmations. Even in the absence of active attackers, there are many reasons the Bitcoin network could diverge, such as: Large scale internet routing issues - we've already seen these with BGP routes being incorrectly broadcast, leaving large chunks of the internet temporarily inaccessible from other large chunks. In ...


1

My interpretation is more that, since sellers are the ones receiving money, they are the ones who stand to be protected by an improved and non-reversible payment system. I don't think Satoshi particularly thought that protecting buyers (who are receiving goods) was less important or that they were less vulnerable, but that it simply wasn't within the scope ...


1

Bitcoin consensus is never final, but instead just becomes increasingly stable as more blocks are added. In the example in the whitepaper a successful attacker will spend some amount of time "tied" but this tie will eventually be resolved by additional blocks. If the additional blocks are on the attacker's fork then it will resolve in the attacker's favor.


1

The Bitcoin protocol defines the rules that software must follow in order to be a part of the bitcoin network. A user can run software to create what is called a ‘ bitcoin node’, and it is the collection of all of these nodes that creates a network. If the software does not follow the protocol rules, then that node will be banned from the network by the ...


1

Bitcoin Network is a network of computers connected to each other in peer-to-peer fashion whereas a Bitcoin Protocol is/are the rules that govern this network. Now, this computer that is a part of the Bitcoin network run a software which makes this Bitcoin Network and its functionalities possible, this software follows some rule/protocol which is nothing ...


1

To double spend BTC, you need to make one transaction to the person meant to receive the money, and one transaction to an address you control yourself. This would typically be another address in your wallet. The two transactions would spend the same bitcoins, but send them to different addresses. Those transactions would look like completely normal ...


1

Blockchain contains every confirmed transaction since the beginning. There are some tricks to save disk space of course.


1

How Bitcoin will scale into the future is a topic of much debate. I will try to steer clear of too much opinion, and just give you the basic factors at play. First, understand that there are different types of nodes on the Bitcoin network. There are nodes that mine, there are nodes that keep full copies of the blockchain, and there are thin client nodes ...


1

I'm not sure how exactly it was described in the whitepaper, but obviously every node checks new transactions for validity before adding them into their block template. i.e. between step 1 and step 2. As you stated, it would not make sense to waste energy on finding a proof-of-work without checking validity in beforehand. However, each node needs to still ...


1

Perhaps convert the whitepaper in pdf to your required format? A discussion in pandoc mentions pdftohtml -xml to be most promising.


Only top voted, non community-wiki answers of a minimum length are eligible