What is a Project Fork?
A fork in software development refers to the event of an independent project spinning off from a software project. Such forks sometimes occur in the opensource sphere, when there are irreconcilable plans/goals within a project's community, then often leading to a split in the community and two distinct projects thereafter. In ...
What are Channel Factories?
In short, Channel Factories are payment channels that can be used to create more payment channels. That sounds weird, but it's really pretty simple:
In a regular payment channel, you always have a transaction signed by all participating parties that's ready to commit the current channel balances to the block chain. For example,...
1 kH/s is 1,000 hashes per second (sometimes mistakenly written KH/s).
1 MH/s is 1,000,000 hashes per second.
1 GH/s is 1,000,000,000 hashes per second.
1 TH/s is 1,000,000,000,000 hashes per second.
1 PH/s is 1,000,000,000,000,000 hashes per second.
A share is a hash smaller than the target for difficulty of 1* (see clarification at end). Every hash created has a 1 in ~4 billion (2^32) chance of being a valid share. In comparison if the difficulty of network is 2,000,000 then a share is 2 million times "easier" to find than a valid hash for the block, and on average it will take 2 million shares (8 ...
Simplified Payment Verification:
A Bitcoin implementation that does not verify everything, but instead
relies on either connecting to a trusted node, or puts its faith in
high difficulty as a proxy for proof of validity. BitCoinJ is an
implementation of this mode.
There are several definitions with overlapping meanings.
The first is perhaps best called extinct blocks. These are blocks that were produced by building on an block that is no longer the active tip of the chain. Some nodes may have considered it to be the best block at some point, but they switched to another chain which does not contain the relevant ...
Mining capability is measured in the number of attempts to find a block a miner can perform. Each attempt consists of creating a unique block candidate, and creating a digest of the block candidate by means of the SHA-256d, a cryptographic hashing function. Or, in short, a hash. Since this is a continuous effort, we speak of hashes per second or [H/s].
The definition of dust is client-specific and not a network rule.
Bitcoin Core considers a transaction output to be dust, when its value is lower than the cost of spending it at the dustRelayFee rate. The default value for dustRelayFee is 3,000 satoshi per kilobyte, which results in the same dust values as the dust definition used before Bitcoin Core 0.15.0. ...
Softforks are forwards-compatible
Old nodes will accept blocks created by new nodes.
With a softfork, only miners will have to upgrade, or else they will end up on the losing fork. Users and merchants can keep running older nodes, which will accept the newer blocks.
Hardforks are not forwards-compatible
Old nodes may not accept blocks created by new ...
The checkpoints are hard coded into the standard client. The concept is, that the standard client will accept all transactions up to the checkpoint as valid and irreversible. If anyone tries to fork the blockchain starting from a block before the checkpoint, the client will not accept the fork. This makes those blocks "set in stone".
Bitcoin's block chain system is really two quite separate systems, and they are easily confused. The first one is the block tree and the second is the active chain.
The block tree consists of all valid blocks whose entire ancestry is known, up to the genesis block. The rules for validness include no double spending, valid signatures, no introduction of more ...
I'm not sure there is an exact definition of dust. The Armory client wiki says:
Sending less than 0.01 BTC to any recipient — The network considers these small outputs to be “dust,” and discourages them by requiring a fee. If it was not discouraged, someone could take 1.0 BTC, and create 1,000,000 transactions of 0.000001 BTC each, for free, which would ...
At any second, a block may be "solved." This means that everyone else
in the world working on that block must stop, and restart their work.
Continuing to work after that point is known as working on a "stale
block" because it is old data, and old transactions.
My understanding is the term stale is much more commonly applied to ...
Colored coins are a method to track the origin of bitcoins, so that a certain set of coins can be set aside and conserved, allowing a party to acknowledge them in various ways. Such coins can be used to represent arbitrary digital tokens, such as stocks, bonds, smart property and so on.
The colored coins protocol is decentralized just like Bitcoin, but the ...
I found the best exact definition in the First three paragraphs here: gavinandresen / BitcoinVersioning
We recently rolled out two changes to the Bitcoin block acceptance
rules (BIP16 and BIP30); this document records the lessons learned and
makes recommendations for handling future blockchain rule changes.
Note: there are "soft" rule changes and ...
A wallet is the collection of data needed in order to receive and spend bitcoins. Usually this includes key-pairs (private key, public key and the address that may be inferred from the public key) and funds associated with each key-pair in the form of spendable outputs.
The client on the other hand is the interface to the network. It handles all the ...
TL;DR Bitcoin already is a currency because it's a generally accepted medium of exchange among certain communities. As those communities grow and usage spreads to other communities, its strength as a currency solidifies.
This requires a little bit of history. I am not a numismatist, but I have studied this a little even before the advent of Bitcoin.
You can trace the coin back to its origin, the question is whether that information is meaningful.
Say I steal 50 bitcoin. I can pass them around between several different Bitcoin accounts, all mine, and you can trace them. The problem is, you don't know whether any of those transactions are real.
Say Jack has 50 bitcoins that come from a block reward and ...
After taking a quick look over the Tonal Book (free PDF) and the Wikipedia article it appears to be an early attempt at constructing a number system in base 16.
Programmers will immediately recognise this as hexadecimal. For non-programmers hexadecimal uses the following representations: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. Note that decimal 10 to 15 are ...
Imagine that the blockchain is 210000 blocks long and TWO miners both find valid blocks within a few seconds of each other and broadcast them to the network.
This is perfectly normal as the Bitcoin network is peer to peer and global.
You now have two chains, each of length 210001. Neither of these are longer than each other. Some bitcoind nodes will see ...
Everyone is using it as a countable noun. There's actually a grammatical rule that says this is what should happen. If a new term ends with an existing term and is semantically related to that term, it gets the old term's rules. If not, it does not.
So, a "pop fly" is not a type of fly (the bug). So we don't say "pop flies" but "pop flys".
A "bag lady" is ...
ASIC or Application-specific integrated circuit is a type of circuit that has become very popular in the Bitcoin mining community.
wikipedia defines it as
"An application-specific integrated circuit, or ASIC /ˈeɪsɪk/, is an integrated circuit (IC) customized for a particular use, rather than intended for general-purpose use."
Traditionally computer ...
The height of a block is the number of blocks in the chain between it and the genesis block. (So the genesis block has height 0.)
The height of the block chain is usually taken to be the height of the highest block, in the chain with greatest total difficulty; i.e. the length of the chain minus one.
Replace-by-fee means transactions spending the same coin to the same addresses are not considered double-spends by the network and are still relayed, as long as they pay a higher fee than the preceding transaction.
Alice pays Bob with a coin worth 1 BTC, sending 0.5 BTC to Bob, 0.49995 BTC to herself as change, and 0.00005 BTC to fees. Alice sees ...
From Satoshi's paper (my emphasis):
By convention, the first transaction in a block is a special
transaction that starts a new coin owned by the creator of the block.
This adds an incentive for nodes to support the network, and provides
a way to initially distribute coins into circulation, since there is
no central authority to issue them. The ...
If I recall it correctly, the "boo"s mean: your answer's correct but somebody else had solved the problem before, so you wasted your electricity and time - sorry. And the "yay"s are: you did it first, congrats.
As for "LongPoll", it's a protocol that enables a miner to keep in touch with its pool's servers so that it's communicated as soon as possible when ...
An accepted share represents work that your miner did towards a round in a mining pool.
When the pool finds a block, it distributes the block reward (i.e. 25BTC) to the miners according to how many shares they have contributed during that round. The more shares you contributed, the more payback you get.
It is simply a way to keep score, and to attribute ...