Skip to main content
Search type Search syntax
Tags [tag]
Exact "words here"
Author user:1234
user:me (yours)
Score score:3 (3+)
score:0 (none)
Answers answers:3 (3+)
answers:0 (none)
isaccepted:yes
hasaccepted:no
inquestion:1234
Views views:250
Code code:"if (foo != bar)"
Sections title:apples
body:"apples oranges"
URL url:"*.example.com"
Saves in:saves
Status closed:yes
duplicate:no
migrated:no
wiki:no
Types is:question
is:answer
Exclude -[tag]
-apples
For more details on advanced search visit our help page
Results tagged with
Search options answers only not deleted user 85

Source code and development of Bitcoin Core, the reference implementation of Bitcoin.

1 vote

The Codebase is full of acronyms - what is the best way to find out what they mean. Examples...

These are very generic names whose meaning is completely context specific. Likely, where you saw pto, it was a pointer type and there was somewhere nearby a variable called o. Similarly, a critical se …
David Schwartz's user avatar
0 votes

Is there any specific transaction fee?

Your transaction fee goes to the miner who includes your transaction in a block. Miners are free to use any algorithm they want to decide which valid transactions to include in their block. As you mi …
David Schwartz's user avatar
30 votes

Why is bitcoin written in C++?

I gave a keynote address at cppcon 2016 about almost this exact issue. There are a variety of reasons why C++ is an excellent language choice for blockchain applications like Bitcoin. Blockchain appl …
David Schwartz's user avatar
3 votes
Accepted

Where is the code that specifies when a block is released?

Every time a block is successfully mined, the miner releases it immediately. The mining difficulty is adjusted over time to keep the average block release rate at roughly ten minutes. Successfully min …
David Schwartz's user avatar
0 votes
Accepted

Been reading the bitcoin source code but unsure what this segment of Serialize.h does

The encoding used fits 7 bits of data in each byte of output. So, to figure out the number of bytes of output you will produce, you need to take the number of bits of input and divide by 7 (since 7 bi …
David Schwartz's user avatar
0 votes
Accepted

Mining & The Double Spending Dilemma

You just have to wait. Eventually, another miner will produce a block and it will be on top of one or the other of the two blocks found at about the same time. The probability of again having two mine …
David Schwartz's user avatar
4 votes
Accepted

Is it possible to calculate a public key from the message hash and signature?

It is possible to create a public key from the signature. It will be equivalent to the key used to generate the signature but not necessarily identical. You can find an example implementation here.
David Schwartz's user avatar
8 votes

How safe it is that a single San Francisco company controls the canonical location of Bitcoi...

It's just not a plausible threat model. First, all changes are publicly audited by hundreds of people. Second, releases are signed by the developers. Third, it wouldn't even do any real damage. Bitco …
David Schwartz's user avatar
2 votes

Where is the code that receives blocks that miners have just solved

Look in main.cpp at the ProcessBlock function. The meat is in the AcceptBlock function in the same file.
David Schwartz's user avatar
1 vote

Bit Coin Mining

(target + space - guess) * 100 / space So for example, if your numbers had to be less than 200 and you needed to be less than 20 but got 30, your guess is (20+200-30)*100/200 or 95% right. This makes …
David Schwartz's user avatar
7 votes

Why was the MIT license chosen for Bitcoin?

Using a more restrictive license would have slowed adoption. The biggest obstacle to Bitcoin is lack of adoption. Anything that would restrict the set of things people can do with Bitcoins or make it …
David Schwartz's user avatar
3 votes

Mitigating a Double Spend Attack by Punishing the Attacker?

This wouldn't be effective. Say I want to transfer value worth $100. How much is it reasonable to ask me to lock up and for how long? Maybe we could tolerate forcing me to lock up $200 for an hour. Bu …
David Schwartz's user avatar
2 votes

What if a miner just broadcasts the header and never gives the body? What will happen?

Since nobody can determine that the block is valid, they will treat it just like anything else that they cannot determine is valid -- they will ignore it. Miners can't start mining based on the header …
David Schwartz's user avatar