62

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 ...


59

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,...


58

Sure: 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.


38

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]. Hash ...


37

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. ...


31

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 ...


28

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 ...


19

The coinbase mentioned in BIP34 is not the company; it is referring to the first transaction in a Bitcoin block (which is special as it is allowed to bring new currency into circulation). Coinbase-the-company didn't even exist when BIP34 was written (or at least, wasn't known/public). The company was named after this special transaction.


18

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 ...


17

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 ...


15

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 ...


15

m is the symbol for the metric prefix milli which indicates a unit to be one thousandth of its base unit. A millibitcoin therefore is 0.001 BTC or 1/1000 BTC.


14

The minRelayTxFee specifies a feerate acting as a lower bound for a node's mempool. A node will not admit unconfirmed transactions below that feerate to its mempool and thus will not relay them to its peers. The minRelayTxFee is a configuration setting and can be specified by each node operator independently. The value only impacts unconfirmed transactions, ...


12

1 mBTC = 0.001 BTC 1 mBTC = 100,000 Satoshis 1 uBTC = 0.000001 BTC 1 μBTC = 100 Satoshis 1 Satoshi = 0.00000001 BTC 100 Satoshis = 0.000001 BTC 1,000 Satoshis = 0.00001 BTC 10,000 Satoshis = 0.0001 BTC 1 BTC = 100,000,000 Satoshis 1 BTC = 1,000,000 μBTC 1 BTC = 1000 mBTC


12

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. Example: 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 ...


11

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 ...


11

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 ...


11

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.


11

Nonce is a 32 bit arbitrary random number that is typically used once. In Bitcoin's mining process, the goal is to find a hash below a target number which is calculated based on the difficulty. Proof of work in Bitcoin's mining takes an input consists of Merkle Root, timestamp, previous block hash and few other things plus a nonce which is completely random ...


11

A 'full node' is a participant on the network that has independently validated the complete copy of the blockchain, and thus has verified all transactions since the beginning. This requires about 350GB of drive space (currently). A pruning node is one that has verified all prior transactions; however, it has deleted all blocks below a certain space ...


11

Transaction pinning happens when: I broadcast a transaction that signals opt-in RBF the transaction does not get confirmed because the feerate is too low someone else broadcasts a new (child) transaction spending one of the outputs of my transaction I now can't bump the fee on the transaction unless I include a fee greater than that of the combined original ...


11

TL;DR: Native segwit refers to segwit outputs without P2SH-wrapper. Bech32 is the address format used to represent native segwit-v0 locking scripts. Wrapped segwit vs native segwit When segwit activated, it introduced the zeroth generation of segwit, segwit-v0. The corresponding locking scripts came in two flavors: The forward-compatible "wrapped ...


10

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 ...


10

Immature coins are coins that were created in a block reward and haven't aged sufficiently, yet. The problem with block rewards is that they could still disappear again, if the generating block ends up being invalidated by a competing block chain. In order to minimize the confusion and subsequent problems from someone spending coins that end up disappearing ...


10

Bitcoin Core maintains two databases: The block index The chain state (or UTXO set) The first one just contains a list of all blocks we know about, valid and invalid. It contains all forks we have ever heard about, and all branches that result from it. It also contains information about where on disk these are stored. It does however not contain any ...


9

To understand 'dust' you must understand a few things: Firstly, a UTXO is an unspent transaction output. This is essentially a piece of bitcoin somewhere on the blockchain that is unspent. To create a transaction, 1 or more UTXOs are used to form the inputs, and 1 or more UTXOs are "born" in the process. After the transactions are confirmed, the UTXOs that ...


9

When you send coins to a large shared wallet, chances are that the coins you withdraw won't be the same as the ones you deposited. That's how you can sever the taint trail. The key is that the wallet must not only be large, but also shared between a lot of users. The taint on the original coins would never go away but could be diluted by mixing them with "...


9

The other answers are correct, in that a mixed wallet can be used to hide tainted coins. However they miss an important point: the operator of the wallet service does have the knowledge required to trace the outbound transaction back to the original input coins, because both flows have to be associated with the wallet's internal representation of a customer ...


8

A Satoshi is 0.00000001 BTC and currently the smallest transaction unit. If a Satoshi was equivalent to one penny, a microBTC would be equivalent to one dollar, and one BTC would be equivalent to 1,000,000 dollars. With one BTC on the order of $1,000 USD, a Satoshi is equivalent to .001 penny


8

A specified locktime indicates that the transaction is only valid after a given blockheight. Since the locktime field indicated is 419382 and currently the latest blockheight as of 12th July 2016 1108 (AEST) is 420352 the transaction is now valid and can be included in a block by any miner that chooses to do so.


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