Stack Exchange Network

Stack Exchange network consists of 174 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Visit Stack Exchange

Questions tagged [bitcoincore-development]

This tag should be used for questions regarding Bitcoin Core development. This includes questions about the source code and development of Bitcoin Core.

16
votes
1answer
3k views

Migration from Berkeley DB to LevelDB

In 2013 a new bitcoin core was released and one of the supposed improvement was migrating from Berkeley DB to LevelDB. According to the release notes at bitcoin.org: LevelDB, a fast, open-source, ...
3
votes
2answers
124 views

Can a Mining Pool Force Changes Without Agreement from Bitcoin Core Developers?

I'm trying to understand a @petertoddbtc tweet about Chinese miners making a controversial stance. According to the accompanying article https://www.cryptocoinsnews.com/bitcoin-market-needs-big-...
4
votes
1answer
286 views

Transaction creation process is not non-interactive(Mimblewimble)?

I have read Mimblewimble paper. Certainly, Transaction merging process is non-interactive. However, Transaction creation process seems to be not non-interactive. To create transaction, a sender must ...
5
votes
1answer
782 views

How to get BIP34Hash and nMinimumChainWork?

I'm interested in the technical question of how you got BIP34Hash and nMinimumChainWork. The changes were introduced here: nMinimumChainWork: https://github.com/bitcoin/bitcoin/commit/...
0
votes
1answer
278 views

Help! Unconfirmed transaction for the past 12 hours! [duplicate]

I am a noob in the bitcoin world, I made a transfer of 0.0577201 BTC , with a transaction fee of 0.000221 BTC, but the transaction has not yet been confirmed. Please help me! Here is the link for the ...
5
votes
1answer
507 views

Why are blk*.dat files ~134200000 bytes?

I understand that blocks are stored on disk across multiple blk*.dat files, but why is the maximum file size roughly 134,200,000 bytes? What's the reason behind this file size? Where can I find this ...
0
votes
1answer
592 views

Bitcoin adder or bitcoin generator or bitcoin hacker software

Nowadays I always see many persons selling bitcoin adder / bitcoin generator or bitcoin hacker software claiming that these are creating 1 bitcoin or more. I am unable to believe authenticity of ...
1
vote
1answer
129 views

What development stage do the version 0.13.99 nodes represent?

So, obviously Bitcoin Core 0.13.0 and 0.13.1 have been released, 0.13.2 is nearing release, and 0.14.0 will have its feature freeze in a few weeks. However, there are also some hundred odd nodes that ...
0
votes
1answer
26 views

when will the bitcoin wallet app be available for windows phone?

I've been wondering because i just bought a windows phone and realized it doesnt have the wallet app. any idea when windows phone will get the wallet app?
5
votes
2answers
4k views

16: mandatory-script-verify-flag-failed (Non-canonical DER signature) (code -26)

I try to send transaction via sendrawtransaction in console of bitcoind. Sig is: ...
5
votes
3answers
97 views

bitcoin smartcontract feature

I am a noob, so please bear with me. I'm wondering whether the Bitcoin Core team plans to integrate a smart contract feature evolving the Bitcoin scripting language in a more sophisticated one in the ...
2
votes
1answer
704 views

What is the path used for the HD wallet in Bitcoin Core 0.13?

I heard that the next version of Bitcoin Core will support HD wallets. What will be the path used for that implementation?
6
votes
2answers
2k views

How to open bitcoin source in IDE?

After downloading bitcoin source from github I'l try to open it in Netbeans for Mac. Please tell how to open all bitcoin project for run it with breakpoints in IDE?
3
votes
1answer
638 views

What prevents a node from receiving a solved solution and claiming it as its own work?

During the relay process a node finds the solution and forwards that solved block to all other nodes in the network to validate that it has indeed solved the problem. But then what if another node ...
6
votes
1answer
147 views

What is better, pre-existing Bitcoin-core API bindings for python or custom wrapper functions

How advisable is using the following code to query the bitcoin core as compared to using some python RPC library. import os btc_prefix = 'bitcoin-cli ' def getblockcount(btc_prefix): print("in ...
5
votes
2answers
440 views

How do I program smart contracts?

Is there a guide to learn how to program smart contracts for the Bitcoin blockchain?
23
votes
2answers
28k views

Why is bitcoin written in C++?

What made the core developers choose C++ as the main programming language for implementing bitcoin? Was this because of their personal preference? Or another reason?
-5
votes
1answer
122 views

I want to start my new bitcoin web wallet! Coding and steps! PLEASE GUIDE [closed]

I want to start my new bitcoin web wallet but no idea where to start. coding and steps no idea. please help.
11
votes
1answer
230 views

Are there alternatives to Gitian?

I like how Bitcoin Core uses Gitian to make their builds deterministic. But Gitian is also a really complicated workaround. Is there any research being done into alternatives for deterministic builds?
1
vote
0answers
69 views

C++ Proofofworklimit to bitcoinj util.DecodeCompactBits

What is equivalent bitcoinj util.DecodeCompactBits for below c++. Cbignum(~uint256(0) >>32) Cbignum(~uint256(0) >>20) Cbignum(~uint256(0) >>23) Cbignum(~uint256(0) >>22)
10
votes
1answer
2k views

Is there developer documentation for the Bitcoin Core source code?

Is there a documentation somewhere to understand the C++ code of Bitcoin Core (available on Github) "from a to z" and being able to recreate it ?
6
votes
1answer
206 views

Add dependency Bitcoin Core

I'm trying to add a new dependency to my Bitcoin Core fork. The dependency is Rapidcheck, a property based testing framework. I've added a file called rapidcheck.mk inside of depends/packages with ...
4
votes
1answer
56 views

How much testing is done on each pull request before it is merged?

Frequently after one pull request is merged, multiple other pull requests follow to clean up a problem created by the first PR Recent example: https://github.com/bitcoin/bitcoin/pull/7957 https://...
5
votes
1answer
104 views

What versioning scheme does Bitcoin Core follow?

I saw a discussion recently about whether Bitcoin Core was following the Semantic Versioning scheme. I could not find information in the GitHub ReadMe.md or Contributing.md. Luke-Jr stated that ...
3
votes
1answer
160 views

What is the age of the oldest known Bitcoin core developer?

I am trying to compile some demographic data on who has contributed to Bitcoin so far and track how the demographics are changing over time. Since GitHut does not show me demographic data I have ...
3
votes
0answers
85 views

Whisper Implementation in Bitcoin

Is there some kind of implementation in bitcoin to communicate between nodes, which is similar to the Whisper Communication in Ethereum ? Whisper, is a communication protocol for DApps to communicate ...
10
votes
3answers
2k views

Where can I find resources for programmers to understand Bitcoin?

I am a senior Python developer. Recently I came across to the need of fully understanding how bitcoin works on it's core. The Internet is full of explanations and tutorials for regular folks and ...
6
votes
2answers
136 views

Wladimir's new GPG key

I just went to install the latest version of bitcoind and discovered that Wladimir has signed the https://bitcoin.org/bin/bitcoin-core-0.12.1/SHA256SUMS.asc file with a new GPG key: https://bitcoin....
1
vote
1answer
711 views

Development environment requirements for Bitcoin Core

Can someone help me out in understanding the System Requirements and dependencies required for setting up a development environment for Bitcoin Core? What else is required apart from the Bitcoin Core ...
3
votes
2answers
628 views

How do I get bitcoin price without any external source?

I have searched the Internet for solution but could not find the one I was looking for. I want to get bitcoin price (in usd) without using any external website (meaning not getting the price using ...
9
votes
1answer
576 views

Why would increasing the Bitcoin block size lead to a more centralised system?

Why does Bitcoin Core contributor Peter Todd think that increasing the Bitcoin block size would lead to a more centralised system? “The system doesn’t scale, and you just have to accept that and do ...
3
votes
1answer
49 views

Why do we need CCoins in addition to CTransactions?

As per my understanding CTransactions represents the atomic unit in Bitcoin. It has the inputs CTxIn and outputs CTxOut. Can any expert give the intuition of why we need CCoins in source code ? Why ...
3
votes
1answer
203 views

How does PoW solved in miner.cpp gets transferred to main.cpp in source code?

As per my understanding of bitcoin codebase, the following events happen after we solve a proof of work. In miner.cpp, once the miner thread solves a new Proof-of-work (PoW), ProcessBlockFound ...
8
votes
2answers
1k views

What contributions have Blockstream developers made to the Bitcoin project?

I’m spending a lot of time debating people about Bitcoin online these days. One issue that I encounter regularly is that my opposite colloquists are unaware of the contributions the Blockstream ...
0
votes
1answer
119 views

Reject all other Blocks and allow only my own mined blocks

I am looking at the source code and I want to know how a person can reject all blocks except the ones mined by himself? I want to be still able to add transaction to my blocks but reject all other ...
3
votes
1answer
2k views

Problem In Creating Genesis Block Twister-Core using Ubuntu and (Qt Creator IDE)

I am trying to create a genesis block in twister-core using Ubuntu and IDE Qt Creator. I have compiled the twister-core successfully, I have changed the these parameters for creating the genesis block ...
1
vote
1answer
368 views

Where is the source code that allows new coins to be generated?

As per Bitcoin documentation, new coins are generated and brought into circulation when miner receive the reward. I am not talking about existing coins that are collected at the time of mining. Can ...
6
votes
1answer
122 views

What are the arguments for and against deprecating transaction priority?

A recent pull request moves ahead to deprecate the concept of transaction priority by changing the block priority space to zero. This has enraged some users who believe that deprecating transaction ...
1
vote
1answer
74 views

Bitcoin core does not have all unconfirmed transactions

I am running bitcoinqt and checking for new transaction for payments I made using getrawmempool. Payments were made NOT from/to the mentioned bitcoinqt wallet address. As I see some my unconfirmed ...
8
votes
1answer
308 views

Are there drawbacks to the Thin Block patch?

Mike Hearn talked about a patch he applied to BitcoinXT recently in his AMA: I posted a patch last week that makes XT download blocks as lists of hashes instead of duplicating the transaction data, ...
1
vote
0answers
88 views

Why do transactions get verified before it is clear that the block header is valid?

When I researched for the answer on What happens in detail, when Bitcoin Core verifies a block during synchronization?, I noticed something: According to the Wiki-Entry on Protocol rules some of the ...
4
votes
1answer
158 views

Why is CheckBlock called twice when processing a new block?

Once the Bitcoin node receives a message with a new block, it calls the ProcessNewBlock function: else if (strCommand == "block" && !fImporting && !fReindex) // Ignore blocks ...
6
votes
1answer
191 views

What is bitcoin core developers solution to the increasing number of transactions?

I was reading that BitcoinXT is created to increase the blocksize to accommodate increasing transaction volume, but bitcoin core developers were against to it as it make the currency more centralized. ...
8
votes
1answer
810 views

What are version bits?

What does Pieter Wuille's version bits proposal change? How does a miner signal support for a particular fork? Can the version bits system be used with hard forks?
1
vote
1answer
64 views

Where can I see the “official” texts of BIP 100 and 102?

I only see BIP 101 officially at https://github.com/bitcoin/bips/blob/master/bip-0101.mediawiki. Is there a reason that 100 and 102 don't show up here as well? Couldn't they all just be listed as ...
10
votes
1answer
1k views

What does OP_CHECKSEQUENCEVERIFY (OP_CSV) do?

Some people have suggested repurposing OP_NOP3 as a new opcode, OP_CHECKSEQUENCEVERIFY. What would the new opcode do? Why is it useful? Can't the signer choose the sequence field when they sign?
2
votes
1answer
227 views

What is the function of LOCK(cs_main)?

Does LOCK(cs_main) pause and branach the program in order to do some necessary job before going on? I'm trying to publish blocks reactively (as a selfish miner) upon receipt of inventory message from ...
5
votes
2answers
635 views

Have bitcoin developers applied the solution for selfish miner attack?

The Majority is not enough paper proposed an academic and somehow practical attack to Bitcoin mining system based on creating hidden forks. The paper claims that if miners work on whichever fork they ...
3
votes
1answer
112 views

When an attacker publishes a longer chain, does Bitcoin Core emit a warning?

I tried answering a question about a majority-attacker's power to change the blockchain yesterday. There is one thing I haven't been able to get a clear picture on, yet: When a previously unknown ...
1
vote
1answer
121 views

Embedding P2Pool technology in Bitcoin Core

As far as I understand, P2Pool is a way to decentralize mining. I don't know all the details, but it allows to distribute the mining rewards by the parties involved, fairly and without a centralized ...