Original Bitcoin client/API calls list - BitcoinWiki
Original Bitcoin client/API calls list - BitcoinWiki
Primecoin mining - BitcoinWiki
Bitcoin Core version 0.9.2 released
API – ClassicBitcoin CBTC
Change -genproclimit default to 1 · bitcoin/bitcoin ...
Much concern: Dogecoin block chain HAS SPLIT
Hey shibes,
Much bad news. THE DOGECOIN BLOCK CHAIN HAS FORKED. This is a bad thing.
ELI5: Your client is constantly downloading blocks and processing them, which is the way that Dogecoin works. Ten days ago, the developers made a change to the Dogecoin client that raised the limit of coins in a block from 500 million to 10 billion. So now some folks are running Dogecoin clients without that change, because they are older, and some folks are running newer clients. In block 42279, a transaction that broke the rule -- containing more than 500 million DOGE -- has prevented these older clients from advancing on the correct chain and they are now working on a bad ledger. If you are attempting to send transactions and you hit this behavior, you ARE adding transactions to the bad chain. There is a current risk of double spending and a lot of people are working on a bad ledger, both with mining and their personal clients. STOP sending DOGE (including pool payouts) until this situation is resolved by people that know more than I do. It might appear that you are still advancing past the bad block but your client might be going down the wrong fork! Details: My client is synced and fine, and I sent a transaction in the last few minutes, but I've heard from several friends that they are stuck on a prior block have forked off the main ledger after block 42279. Apparently, 10 days ago, there was a commit to the dogecoin client that raised the transaction limit from 500 million DOGE to 10 billion DOGE: https://github.com/dogecoin/dogecoin/commit/2ee5cb3396df66c10fef34480a183d00e3bec635 In block 42279 a 500m DOGE transaction was submitted which broke the block chain on clients older than that commit. I have heard from three separate folks now that their clients are stuck on block 42279 advancing on a separate Dogecoin chain. http://dogechain.info/tx/3119125a77e1bee6f0786af4e15a8eea3ba1b64081e121796b552637a76f2eb1 We have a blockchain split on our hands. Bitcoin went through one of these too. It's going to need intervention. What do I do?Stop sending DOGE and wait.I would also suggest waiting until the mining situation is sorted out, because there is a double-spend risk right now. You can view your client's current block in the Debug menu, under Help, for the Qt client.
UPDATE 4:48 AM UTC / 11:48 PM EST
I can now confirm three forks of the Dogecoin block chain exist, possibly more.
Deleting your blockchain and resyncing can land you on a bad fork again. Multiple reports of this happening.
Your best move right now is to get off the network and wait.
DO NOT SEND ANY DOGE until you are CONFIRMED on the correct fork, and even then, WAIT.
How do I know if I'm on the wrong fork?
In your client, open a debug window by going to Help > Debug.
Type getmininginfo and push Enter.
Compare the blocks and difficulty against the Dogechain.
Just to reiterate: if you resync your client you might end up on the bad fork again.
Developer intervention will be required to prevent this from occurring.
UPDATE 5:14 AM UTC / 12:14 AM EST
The network is responding. Between block 42475 and 42480 on the good chain, the network hash rate dropped from 20 GH/sec to 15 GH/sec and the difficulty dropped from 320.3 to 253.3. Here's my getmininginfo from 2 minutes ago:
My test client that I resynced as an experiment ended up on the bad fork. There's going to need to be an intervention here similar to Bitcoin's.
UPDATE 5:50 AM UTC / 12:50 AM EST
SCAMMERS ARE ATTEMPTING TO STEAL WALLETS IN THIS THREAD. IF YOU RECEIVE A MESSAGE LIKE THIS DO NOT COMPLY. DEVELOPERS WILL NOT PM YOU TO SEND THEM YOUR FILES. http://puu.sh/6a5jz/da27d4ae05.png
UPDATE 7:31 AM UTC / 2:31 AM EST
Okay, I'm done with this thread, folks. The Dogecoin developers are on it and the amount of abusive private messages that I'm receiving mean I'm washing my hands. Look for an official thread from developers next, the information is out and my role is done. Credit to hoopycat -- please tip him -- who discovered the source of the problem, I'm trying to get the word out right now. I do not get credit for this post.
NOTE: addnode is used to give the wallet a starting node to connect to and sync with gen=1 turns on mining by default when the wallet is opened genproclimit=1 sets number of mining threads to 1 by default 5. Close BiblePay and Run it again 6. In BiblePay, go to Tools menu, Click Debug Console 7. Type these commands into the debug console:
getinfo getmininginfo help
NOTE: getinfo will show you what block number your wallet is currently on and the version number getmininginfo will show you how many threads are running and how much mining hash you have help will show you all the other commands you can use Threads: 8. To change number of threads to use up for mining a. Edit %appdata%/BiblepayEvolution/biblepay.conf file: Find with File Explorer or inside the wallet go to Menu >> Tools >> Open Wallet Configuration File
genproclimit=X
and restart BiblePay -or- b. Menu >> Tools >> Debug Console >> Type command:
setgenerate true X
(Replace X with the number of threads you want to use Open Task Manager to view CPU usage) Using the Pool: NOTE: To use the pool you must now use the external miner, not the wallet miner https://whitewalr.us/2019/biblepay-nomp-pool-mining.html
Create Worker Username(s) - Workers tab >>> Add (NOTE: Your Worker Username needs to be unique)
Enable pool and add Worker Username in %appdata%/BiblepayEvolution/biblepay.conf file, add these lines: pool=https://pool.biblepay.org workerid=insertWorkerUsernameHere
4. Restart BiblePay How to Withdraw Coins From Pool? The pool holds onto your coins, go to "Account" >> "Withdraw" to withdraw your coins In your BiblePay Wallet go to "File" >> "Receiving Address" and you can right click and copy the address and paste it into the Pool's Withdraw screen as the "Destination Address", then click the "Withdraw" button and the coins will be sent from the Pool to your Wallet Setup Auto-Withdraw Navigate to Account >>> Account Settings >>> Verify your BBP Receiving Address >>> Click Authorize-Auto-Withdraws Why use a Pool? As the network hash rises (as more miners are mining), it can take longer and longer to solve a block, by using the pool, everyone works together with all of their hash power to solve blocks, and the reward gets split between everyone who contributed based on how much they contributed in hash. With solo mining (not using the pool) it may take 1 month to finally solve a block and get large BBP reward, with pool you can get small frequent BBP rewards every ~30 minutes. (BBP meaning BiblePay coins) How to Update: Download exe from biblepay.org and install again, your wallet will stay intact Backup: Your wallet.dat stores your private keys that contain the access to your coins, this file is backed up every 24 hours in the backups folder, We also recommend that you save a copy of this file in other places, like a flash drive Learn More about Backing Up your Wallet.dat https://www.reddit.com/BiblePay/comments/7lksp4/backup_walletdat/ FAQ QUESTION: How long does it take for coins to mature? If you're solo mining, the coins become mature after ~100 blocks. If you're using the pool, they become mature after 24 hours QUESTION: How do I know if I am currently mining? In your wallet >> In Top left Menu select "Tools" >> Click "Debug Console" Type in the command: getgenerate If it returns true, mining is turned on command: getmininginfo Will show how much "hashps" (hashing) your pc is doing, "genproclimit" will show how many mining threads you are using "poolmining" will be show value of true if you are successfully mining on the pool How to Buy or Sell BBP coins? You can buy and sell BBP coins for Bitcoin on the Exchanges we are listed on: SouthXChange: https://www.southxchange.com/Market/Book/BBP/BTC CoinExchange.io: https://www.coinexchange.io/market/BBP/BTC Misc: Building headless Bitcoin and Bitcoin-qt on Windows https://bitcointalk.org/index.php?topic=149479.0https://msdn.microsoft.com/en-us/commandline/wsl/install_guidehttps://en.wikipedia.org/wiki/Windows_Subsystem_for_Linuxhttps://bitcointalk.org/index.php?topic=2388064.msg27133702#msg27133702https://github.com/OleEichhorn/bitcoin-msvc OUTDATED Windows Mining Video Tutorial by copper101great https://www.youtube.com/watch?v=K1yKx8KsH60
apt-get install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils apt-get install libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev apt-get install libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler apt-get install git apt-get install curl build-essential libtool autotools-dev automake pkg-config python3 bsdmainutils cmake sudo add-apt-repository ppa:bitcoin/bitcoin sudo apt-get update sudo apt-get install libdb4.8-dev libdb4.8++-dev git clone http://github.com/biblepay/biblepay-evolution prefix=x86_64-pc-linux-gnu cd biblepay-evolution/depends make -j4 # Choose a good -j value, depending on the number of CPU cores available cd .. ./autogen.sh #Note: if echo `pwd` does not return your working directory, replace it with your working directory such as /biblepay-evolution/ ./configure --prefix `pwd`/depends/x86_64-pc-linux-gnu make # See more here: #https://github.com/biblepay/biblepay-evolution/blob/mastedoc/build-unix.md
SWAP FILE NOTE: if server is 1GB RAM, before running last command "sudo make", set up a swap file
free #check if swap is 0 dd if=/dev/zero of=/vaswap.img bs=1024k count=1000 mkswap /vaswap.img swapon /vaswap.img free #check if swap is 1024 sudo make
RUN COMMAND LINE
cd src ./biblepayd -daemon
OR RUN GUI Your GUI program will be located in: /biblepay-evolution/src/qt
./biblepay-qt
You can also run it in the background (to free up your terminal) if you call it with:
./biblepay-qt &
To start mining, instructions are the same as for Windows: Go to Tools -> Debug Console Execute this command (to start mining with 8 threads)
setgenerate true 8
From there you can use all other commands such as getmininginfo, getwalletinfo, etc. Execute help command to get the list of all available commands. Note: GUI will be built automatically only if you meet the requirements for qt library, i.e. make sure you ran this line before compiling:
BIBLEPAY is now Running! SETUP CONFIG Stop BiblePay and set up the config file to get starting nodes to sync with and enable mining:
./biblepay-cli stop cd ~/.biblepayevolution/ vi biblepay.conf addnode=node.biblepay.org gen=1 genproclimit=1
Escape Key + : (Colon Key) + w + q + Enter (saves file and quits) addnode --- adds a node to the list of nodes to connect to gen=1 --- turns on mining genproclimit --- sets number of threads to use when mining Run BiblePay again and fully sync with network
cd ../biblepay-evolution/src ./biblepayd -daemon ./biblepay-cli getinfo
USEFUL COMMANDS
./biblepay-cli help ./biblepay-cli getaccountaddress "" ./biblepay-cli getinfo ./biblepay-cli getmininginfo ./biblepay-cli setgenerate true 8 ./biblepay-cli sendtoaddress "insertAddressHere" 777 "" "" true ./biblepay-cli stop ./biblepayd -daemon top #CPU usage q to quit
MINING THREADS: To change number of threads to use up for mining a. Edit home/yourusername/.biblepayevolution/biblepay.conf file:
genproclimit=X
and restart BiblePay -or- b. Menu >> Tools >> Debug Console >> Type command:
Enable pool and add Worker Username in ~/.biblepayevolution/biblepay.conf file, add these lines and save: pool=https://pool.biblepay.org workerid=insertWorkerUsernameHere
cd /home/yourname/biblepay-evolution/src ./biblepay-cli stop
### Pull down latest Biblepay code and build it
cd /home/yourname/biblepay-evolution git pull origin master sudo make
### Turn BiblePay back on and check version number
cd src ./biblepayd -daemon ./biblepay-cli getinfo ./biblepay-cli setgenerate true 8
UPDATE IN ONE COMMAND:
./biblepay-evolution/src/biblepay-cli stop ; cd && cd biblepay-evolution/ && git pull origin master && sudo make && cd src && ./biblepayd -daemon && sleep 90 && ./biblepay-cli getmininginfo
Note: the ";" says do this after, regardless of the outcome Note: && says do this after only if previous command finished with no errors SPEED UP COMPILE: To speed up the compile time, add -j4 or -j8 after make. This way it compiles using 4 or 8 threads instead of just 1.
./configure LDFLAGS="-L${BDB_PREFIX}/lib/" CPPFLAGS="-I${BDB_PREFIX}/include/" sudo make -j8
Reference: http://www.linux-databook.info/?page_id=2319 RSYNC stop biblepay from your nodes compile on your fastest machine then rsync with your machines only src folder is required
Trying to salvage some coins from 2013. Core (bitcoin-qt.exe v0.8.1-beta on Windows 8.1) is taking weeks to DL the blockchain as expected but keeps crashing now. Can I upgrade to a newer version without losing what I've gotten already (about 75% complete)?
Currently there are 134305 blocks remaining. When I start it up it works pretty smoothly for a while but then slows down. I leave it running while I'm gone but the last several days when I've come back it has crashed and gives me an I/O error, and I have to hit OK then start it back up. It does appear to be further along when I start it back up but not by a whole lot. So this has really slowed my progress. It's reindexed about 75% though, and so I don't want to start over from the beginning. The drive it is on has ~400gb of free space so that's not the issue. I have 8gb of memory, and the task manager says bitcoin is taking up about 500mb, but it's using 60-85% of my cpu at a time. If I download a newer version of core, I can just copy/paste the old wallet.dat file, right? But wouldn't it have to start downloading the entire blockchain again from the beginning? If so, is there any quicker method? While typing this, it crashed twice. It only runs for about 10 minutes. The version I have doesn't have any settings I can change. I read that there's a db size limit you can change in later versions that could help. This one does have a "debug window" with a command line console but I don't really know what to do with it. Here is a list of available commands: 
minermemory= the amount of Ram in 1gb increments (1,2,3) genproclimit= the number of threads per 1gb of ram from "minermemory" (this number must be a power of 2 so 2,4,8,16,) miningaddress= yourwalletaddresshere this is the address all your mined blocks will be sent to (example "HodlDsNuts57MFNiN8CMrMjC2CYAy8pwi9")
NOTE: If you do not want to mine all your blocks to the same address Omit from above \nminingaddress=yourwalletaddresshere
Once built follow steps below to start the wallet mining
Start server Code:
hodlcoind
If this is your first time running this wallet wait 10 mins for the blockchain to sync then Stop Code:
hodlcoin-cli stop
wait a few seconds then and restart Code:
hodlcoind
To see your hashrate use this Code:
cd ~/.hodlcoin/ tailf debug.log
To exit from this debug file Press [Ctrl] + [C] To monitor your Ram/CPUs install this Code:
sudo apt-get install htop
Use it with this Code:
htop
To exit Press [F10] Insure the proper amount of CPUs are running at 100%
For Help or to Chat
We have an active Slack community use this link to join the chat http://slack.hodlcoin.com Also on IRC
These are new clients to support servers and devices that are not able to run FakeCoin-qt. They should work on everything from a MIPS router to an IBM mainframe and anything in between.
Full node server.walletfunctionalitysoldseparately. This has been used as the backend for the block explorer from day one. Stable. Secure. Easy to set up. Supports JSON-RPC and WebSockets.
Primecoin Profitability Calculations and mini Guide
So you want to mine Primecoins. See this analysis bellow for today : (30/11/2013) The current price of 1 Primecoin (XPM) = 0.00640010 Bitcoins (BTC) The current payout barrier for the only good pool (http://beeeeer.org) is 3.01 XPM 3.01 XPM equals to 0.0192003 BTC 0.0192003 BTC = 21.86 USD Your aim is to mine 3.01 XPM as fast as possible at current difficulty 9.985399019 To mine 3.01 Primecoins per 24 hours you need about 21 Chains Per Day. At this rate you can make 655 USD per month On my MacMini (2010) I can make 1 chain per day, On a big HP server with dual XEON I can make 2.5 chains a day On the 20 Core Droplet in Digital Ocean you can make 2.6 chains a day You would need about 8 of those machines to achieve this. (This means that you would need 2 accounts as there is a 5 droplet limit per account). When you signup you pay $5 through paypal and get a bonus of $10 if you use the code "LINUX13" during checkout. The cost to operate those machines for 24 hours is : 0.941 x 24 x 8 = $180 $-180 cost - $10 bonus + $5 deposit + $21.86 = -$163 profit This means that you do not make profit currently, but you could always signup, pay the paypal fee and have the machines on until they suspend you since you do not setup any credit card or auto payment but this will be a one off and get you started with some coins that you can trade in cryptsy. You can always sell the BTC at like double price in small increments in ebay and make up for the losses but it does not worth the hassle At the current trends it looks like primecoin will rise , at least triple, and in combination with the bitcoin price rise it might worth mining or at least setup the infrastructure to mine. Personally I have destroyed all my droplets and keep them on standby and wait for the price to rise. I have an image ready that can restore to any droplet i create to start mining whenever I want. Trying to be pro-active. I am using some work PCs and old server that you can buy for like 200 on ebay to make those 3XPMs a day currently. Lastly here are the commands to start mining on a ubuntu 13 x64bit when you get your hands on. Login as root, do a sudo -s and then mkdir ~/.primecoin echo "rpcuser=none rpcpassword=none gen=1" > ~/.primecoin/primecoin.conf sudo apt-get update sudo apt-get install bzip2 -y sudo apt-get install git -y sudo apt-get install git-core -y sudo apt-get install subversion -y sudo apt-get install checkinstall -y sudo apt-get install build-essential -y sudo apt-get install libssl-dev -y sudo apt-get install libboost-all-dev -y sudo apt-get install libdb5.1-dev -y sudo apt-get install libdb5.1++-dev -y sudo apt-get install libgtk2.0-dev -y sudo apt-get install libgmp3-dev -y wget http://sourceforge.net/projects/primecoin-hp/files/0.1.2-hp11/primecoin-0.1.2-hp11.tar.bz2/download tar jxvf download cd primecoin-0.1.2-hp11 cd src make -f makefile.unix USE_UPNP=- ./primecoind -pooluser=AUd61zfP6oM6LicMkwtxsn1TU8R4ZdLJ9Z -poolpassword=0 -poolip=54.200.248.75 -poolport=1337 -genproclimit=20 & watch -d -n 5 './primecoind getmininginfo && ./primecoind getdifficulty && ./primecoind listtransactions "*" 1 0' (make sure you replace the mining address above with your mining address) That is all for today , I hope some people find it useful :)
0.00000000 balance after three days of CPU mining?
I'm trying to figure out how to handle the console based binaries, and i'm still confused. I'm CPU mining with a machine thats pretty much doing nothing else. Here are some stats:
Is the miner really running? Shouldn't the balance value adjust slighty? I know it will probably take a long time to get one bitcoin but i'm just trying to find out how it works.
It takes a shitload of time to compile xolominer on small machines, so I've taken a compiled binary and uploaded it to github. You can get it by cloning https://github.com/svarogg/xolo_compiled.git and than extracting xolominer.tar.gz. It have been tested on DigitalDream and https://cloud.atlantic.net/ micro instances and works perfectly. Also, here's a script to download and install all dependancies easily:
After running this just run ./primeminer -pooluser=[your wallet] -poolip=[pool ip] -poolport=[pool port] -genproclimit=[number of cores]. Also, I suggest you use tmux to keep the server running while you are not connected to ssh.
Introduce N testnet chains to test different block sizes | Jorge Timón | Jul 06 2015
Jorge Timón on Jul 06 2015: I have created the following PR that simplifies testing of different block sizes and (if it were merged) would also slightly simplify a future block size change hardfork. https://github.com/bitcoin/bitcoin/pull/6382 I hope someone finds this useful. Please, post to github if you find any issues. But, please, don't discuss the block size issue itself in this post or the PR, the size is simply -blocksize. I repeat the text here: It would be generally good to have more people collecting data and conduction simulations related to different consensus maximum block sizes. This PR attempts to simplify that work. Even if it may take long until it is merged (because it requires many little steps to be taken first), this branch (or a fork of it) can be used right now for testing purposes. One can use it, for example, like this: ```./src/qt/bitcoin-qt -chain=sizetest -debug -printtoconsole -gen=1 -genproclimit=20 -blocksize=2000000``` I will rebase and update the list of dependencies accordingly as things get merged. Dependencies:
Chainparams: Translations: DRY: options and error strings #6235
CTestNetParams and CRegTestParams extend directly from CChainParams #6381
Still having trouble creating a self-hosted mining pool - Can anyone please show an example code (PHP preferably) of a simply mining function?
The replies I got in my previous thread are great source of theoretical understanding, but I'm still buffled at how it actually works technically. Let's say I want me and my friends to mine some bitcoins, I'm going to setup a bitcoin daemon (bitcoind), and I'm able to connect to it with the JSON-RPC. Now this is as far as I got:
require_once 'jsonrpcphp/includes/jsonRPCClient.php'; $bitcoin = new jsonRPCClient('http://eli:isthemaster@127.0.0.1:8332/'); var_dump($bitcoin->getinfo());
and the result:
array 'version' => int 32100 'balance' => float 0.02 'blocks' => int 129780 'connections' => int 8 'proxy' => string '' (length=0) 'generate' => boolean false 'genproclimit' => int -1 'difficulty' => float 567358.22457067 'hashespersec' => int 0 'testnet' => boolean false 'keypoololdest' => int 1305539508 'paytxfee' => float 0 'errors' => string '' (length=0)
Can someone please show me a simple function that goes something like this:
function mine ($target) { for ($i = 0; $i < 100; ++$i) { tryHash($i * $target, $target); } } function tryHash ($hash, $hashb) { ... }
What basically I'm asking is "How exactly does this work in real-life programming?" and I don't seem to find a single straight answer :( Please help!
Bitcoin Core 0.10.0 released | Wladimir | Feb 16 2015
Wladimir on Feb 16 2015: Bitcoin Core version 0.10.0 is now available from: https://bitcoin.org/bin/0.10.0/ This is a new major version release, bringing both new features and bug fixes. Please report bugs using the issue tracker at github: https://github.com/bitcoin/bitcoin/issues The whole distribution is also available as torrent: https://bitcoin.org/bin/0.10.0/bitcoin-0.10.0.torrent magnet:?xt=urn:btih:170c61fe09dafecfbb97cb4dccd32173383f4e68&dn;=0.10.0&tr;=udp%3A%2F%2Ftracker.openbittorrent.com%3A80%2Fannounce&tr;=udp%3A%2F%2Ftracker.publicbt.com%3A80%2Fannounce&tr;=udp%3A%2F%2Ftracker.ccc.de%3A80%2Fannounce&tr;=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr;=udp%3A%2F%2Fopen.demonii.com%3A1337&ws;=https%3A%2F%2Fbitcoin.org%2Fbin%2F Upgrading and downgrading How to Upgrade If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer (on Windows) or just copy over /Applications/Bitcoin-Qt (on Mac) or bitcoind/bitcoin-qt (on Linux). Downgrading warning Because release 0.10.0 makes use of headers-first synchronization and parallel block download (see further), the block files and databases are not backwards-compatible with older versions of Bitcoin Core or other software:
Blocks will be stored on disk out of order (in the order they are
received, really), which makes it incompatible with some tools or other programs. Reindexing using earlier versions will also not work anymore as a result of this.
The block index database will now hold headers for which no block is
stored on disk, which earlier versions won't support. If you want to be able to downgrade smoothly, make a backup of your entire data directory. Without this your node will need start syncing (or importing from bootstrap.dat) anew afterwards. It is possible that the data from a completely synchronised 0.10 node may be usable in older versions as-is, but this is not supported and may break as soon as the older version attempts to reindex. This does not affect wallet forward or backward compatibility. Notable changes Faster synchronization Bitcoin Core now uses 'headers-first synchronization'. This means that we first ask peers for block headers (a total of 27 megabytes, as of December 2014) and validate those. In a second stage, when the headers have been discovered, we download the blocks. However, as we already know about the whole chain in advance, the blocks can be downloaded in parallel from all available peers. In practice, this means a much faster and more robust synchronization. On recent hardware with a decent network link, it can be as little as 3 hours for an initial full synchronization. You may notice a slower progress in the very first few minutes, when headers are still being fetched and verified, but it should gain speed afterwards. A few RPCs were added/updated as a result of this:
getblockchaininfo now returns the number of validated headers in addition to
the number of validated blocks.
getpeerinfo lists both the number of blocks and headers we know we have in
common with each peer. While synchronizing, the heights of the blocks that we have requested from peers (but haven't received yet) are also listed as 'inflight'.
A new RPC getchaintips lists all known branches of the block chain,
including those we only have headers for. Transaction fee changes This release automatically estimates how high a transaction fee (or how high a priority) transactions require to be confirmed quickly. The default settings will create transactions that confirm quickly; see the new 'txconfirmtarget' setting to control the tradeoff between fees and confirmation times. Fees are added by default unless the 'sendfreetransactions' setting is enabled. Prior releases used hard-coded fees (and priorities), and would sometimes create transactions that took a very long time to confirm. Statistics used to estimate fees and priorities are saved in the data directory in the fee_estimates.dat file just before program shutdown, and are read in at startup. New command line options for transaction fee changes:
-txconfirmtarget=n : create transactions that have enough fees (or priority)
so they are likely to begin confirmation within n blocks (default: 1). This setting is over-ridden by the -paytxfee option.
-sendfreetransactions : Send transactions as zero-fee transactions if possible
(default: 0) New RPC commands for fee estimation:
estimatefee nblocks : Returns approximate fee-per-1,000-bytes needed for
a transaction to begin confirmation within nblocks. Returns -1 if not enough transactions have been observed to compute a good estimate.
estimatepriority nblocks : Returns approximate priority needed for
a zero-fee transaction to begin confirmation within nblocks. Returns -1 if not enough free transactions have been observed to compute a good estimate. RPC access control changes Subnet matching for the purpose of access control is now done by matching the binary network address, instead of with string wildcard matching. For the user this means that -rpcallowip takes a subnet specification, which can be
a single IP address (e.g. 1.2.3.4 or fe80::0012:3456:789a:bcde)
a network/CIDR (e.g. 1.2.3.0/24 or fe80::0000/64)
a network/netmask (e.g. 1.2.3.4/255.255.255.0 or fe80::0012:3456:789a:bcde/ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff)
An arbitrary number of -rpcallow arguments can be given. An incoming connection will be accepted if its origin address matches one of them. For example: | 0.9.x and before | 0.10.x | |--------------------------------------------|---------------------------------------| | -rpcallowip=192.168.1.1 | -rpcallowip=192.168.1.1 (unchanged) | | -rpcallowip=192.168.1.* | -rpcallowip=192.168.1.0/24 | | -rpcallowip=192.168.* | -rpcallowip=192.168.0.0/16 | | -rpcallowip=* (dangerous!) | -rpcallowip=::/0 (still dangerous!) | Using wildcards will result in the rule being rejected with the following error in debug.log:
Error: Invalid -rpcallowip subnet specification: *. Valid are a single IP (e.g. 1.2.3.4), a network/netmask (e.g. 1.2.3.4/255.255.255.0) or a network/CIDR (e.g. 1.2.3.4/24).
REST interface A new HTTP API is exposed when running with the -rest flag, which allows unauthenticated access to public node data. It is served on the same port as RPC, but does not need a password, and uses plain HTTP instead of JSON-RPC. Assuming a local RPC server running on port 8332, it is possible to request:
In every case, EXT can be bin (for raw binary data), hex (for hex-encoded binary) or json. For more details, see the doc/REST-interface.md document in the repository. RPC Server "Warm-Up" Mode The RPC server is started earlier now, before most of the expensive intialisations like loading the block index. It is available now almost immediately after starting the process. However, until all initialisations are done, it always returns an immediate error with code -28 to all calls. This new behaviour can be useful for clients to know that a server is already started and will be available soon (for instance, so that they do not have to start it themselves). Improved signing security For 0.10 the security of signing against unusual attacks has been improved by making the signatures constant time and deterministic. This change is a result of switching signing to use libsecp256k1 instead of OpenSSL. Libsecp256k1 is a cryptographic library optimized for the curve Bitcoin uses which was created by Bitcoin Core developer Pieter Wuille. There exist attacks[1] against most ECC implementations where an attacker on shared virtual machine hardware could extract a private key if they could cause a target to sign using the same key hundreds of times. While using shared hosts and reusing keys are inadvisable for other reasons, it's a better practice to avoid the exposure. OpenSSL has code in their source repository for derandomization and reduction in timing leaks that we've eagerly wanted to use for a long time, but this functionality has still not made its way into a released version of OpenSSL. Libsecp256k1 achieves significantly stronger protection: As far as we're aware this is the only deployed implementation of constant time signing for the curve Bitcoin uses and we have reason to believe that libsecp256k1 is better tested and more thoroughly reviewed than the implementation in OpenSSL. [1] https://eprint.iacr.org/2014/161.pdf Watch-only wallet support The wallet can now track transactions to and from wallets for which you know all addresses (or scripts), even without the private keys. This can be used to track payments without needing the private keys online on a possibly vulnerable system. In addition, it can help for (manual) construction of multisig transactions where you are only one of the signers. One new RPC, importaddress, is added which functions similarly to importprivkey, but instead takes an address or script (in hexadecimal) as argument. After using it, outputs credited to this address or script are considered to be received, and transactions consuming these outputs will be considered to be sent. The following RPCs have optional support for watch-only: getbalance, listreceivedbyaddress, listreceivedbyaccount, listtransactions, listaccounts, listsinceblock, gettransaction. See the RPC documentation for those methods for more information. Compared to using getrawtransaction, this mechanism does not require -txindex, scales better, integrates better with the wallet, and is compatible with future block chain pruning functionality. It does mean that all relevant addresses need to added to the wallet before the payment, though. Consensus library Starting from 0.10.0, the Bitcoin Core distribution includes a consensus library. The purpose of this library is to make the verification functionality that is critical to Bitcoin's consensus available to other applications, e.g. to language bindings such as [python-bitcoinlib](https://pypi.python.org/pypi/python-bitcoinlib) or alternative node implementations. This library is called libbitcoinconsensus.so (or, .dll for Windows). Its interface is defined in the C header [bitcoinconsensus.h](https://github.com/bitcoin/bitcoin/blob/0.10/src/script/bitcoinconsensus.h). In its initial version the API includes two functions:
bitcoinconsensus_verify_script verifies a script. It returns whether the indicated input of the provided serialized transaction
correctly spends the passed scriptPubKey under additional constraints indicated by flags
bitcoinconsensus_version returns the API version, currently at an experimental 0
The functionality is planned to be extended to e.g. UTXO management in upcoming releases, but the interface for existing methods should remain stable. Standard script rules relaxed for P2SH addresses The IsStandard() rules have been almost completely removed for P2SH redemption scripts, allowing applications to make use of any valid script type, such as "n-of-m OR y", hash-locked oracle addresses, etc. While the Bitcoin protocol has always supported these types of script, actually using them on mainnet has been previously inconvenient as standard Bitcoin Core nodes wouldn't relay them to miners, nor would most miners include them in blocks they mined. bitcoin-tx It has been observed that many of the RPC functions offered by bitcoind are "pure functions", and operate independently of the bitcoind wallet. This included many of the RPC "raw transaction" API functions, such as createrawtransaction. bitcoin-tx is a newly introduced command line utility designed to enable easy manipulation of bitcoin transactions. A summary of its operation may be obtained via "bitcoin-tx --help" Transactions may be created or signed in a manner similar to the RPC raw tx API. Transactions may be updated, deleting inputs or outputs, or appending new inputs and outputs. Custom scripts may be easily composed using a simple text notation, borrowed from the bitcoin test suite. This tool may be used for experimenting with new transaction types, signing multi-party transactions, and many other uses. Long term, the goal is to deprecate and remove "pure function" RPC API calls, as those do not require a server round-trip to execute. Other utilities "bitcoin-key" and "bitcoin-script" have been proposed, making key and script operations easily accessible via command line. Mining and relay policy enhancements Bitcoin Core's block templates are now for version 3 blocks only, and any mining software relying on its getblocktemplate must be updated in parallel to use libblkmaker either version 0.4.2 or any version from 0.5.1 onward. If you are solo mining, this will affect you the moment you upgrade Bitcoin Core, which must be done prior to BIP66 achieving its 951/1001 status. If you are mining with the stratum mining protocol: this does not affect you. If you are mining with the getblocktemplate protocol to a pool: this will affect you at the pool operator's discretion, which must be no later than BIP66 achieving its 951/1001 status. The prioritisetransaction RPC method has been added to enable miners to manipulate the priority of transactions on an individual basis. Bitcoin Core now supports BIP 22 long polling, so mining software can be notified immediately of new templates rather than having to poll periodically. Support for BIP 23 block proposals is now available in Bitcoin Core's getblocktemplate method. This enables miners to check the basic validity of their next block before expending work on it, reducing risks of accidental hardforks or mining invalid blocks. Two new options to control mining policy:
-datacarrier=0/1 : Relay and mine "data carrier" (OP_RETURN) transactions
if this is 1.
-datacarriersize=n : Maximum size, in bytes, we consider acceptable for
"data carrier" outputs. The relay policy has changed to more properly implement the desired behavior of not relaying free (or very low fee) transactions unless they have a priority above the AllowFreeThreshold(), in which case they are relayed subject to the rate limiter. BIP 66: strict DER encoding for signatures Bitcoin Core 0.10 implements BIP 66, which introduces block version 3, and a new consensus rule, which prohibits non-DER signatures. Such transactions have been non-standard since Bitcoin v0.8.0 (released in February 2013), but were technically still permitted inside blocks. This change breaks the dependency on OpenSSL's signature parsing, and is required if implementations would want to remove all of OpenSSL from the consensus code. The same miner-voting mechanism as in BIP 34 is used: when 751 out of a sequence of 1001 blocks have version number 3 or higher, the new consensus rule becomes active for those blocks. When 951 out of a sequence of 1001 blocks have version number 3 or higher, it becomes mandatory for all blocks. Backward compatibility with current mining software is NOT provided, thus miners should read the first paragraph of "Mining and relay policy enhancements" above. 0.10.0 Change log Detailed release notes follow. This overview includes changes that affect external behavior, not code moves, refactors or string updates. RPC:
f923c07 Support IPv6 lookup in bitcoin-cli even when IPv6 only bound on localhost
b641c9c Fix addnode "onetry": Connect with OpenNetworkConnection
f6984e8 Add "chain" to getmininginfo, improve help in getblockchaininfo
99ddc6c Add nLocalServices info to RPC getinfo
cf0c47b Remove getwork() RPC call
2a72d45 prioritisetransaction
e44fea5 Add an option -datacarrier to allow users to disable relaying/mining data carrier transactions
2ec5a3d Prevent easy RPC memory exhaustion attack
d4640d7 Added argument to getbalance to include watchonly addresses and fixed errors in balance calculation
83f3543 Added argument to listaccounts to include watchonly addresses
952877e Showing 'involvesWatchonly' property for transactions returned by 'listtransactions' and 'listsinceblock'. It is only appended when the transaction involves a watchonly address
d7d5d23 Added argument to listtransactions and listsinceblock to include watchonly addresses
f87ba3d added includeWatchonly argument to 'gettransaction' because it affects balance calculation
0fa2f88 added includedWatchonly argument to listreceivedbyaddress/...account
6c37f7f getrawchangeaddress: fail when keypool exhausted and wallet locked
ff6a7af getblocktemplate: longpolling support
c4a321f Add peerid to getpeerinfo to allow correlation with the logs
1b4568c Add vout to ListTransactions output
b33bd7a Implement "getchaintips" RPC command to monitor blockchain forks
733177e Remove size limit in RPC client, keep it in server
Original Bitcoin client/API calls list allows to do the listing the bitcoin addresses in your wallet easily via listreceivedbyaddress. It normally lists only addresses which already have received transactions, however you can list all the addresses by setting the first argument to 0, and the second ... 0.9.2 - 0.9.2.1 Release notes. The OpenSSL dependency in the gitian builds has been upgraded to 1.0.1h because of CVE-2014-0224. RPC: Add getwalletinfo, getblockchaininfo and getnetworkinfo calls (will replace hodge-podge getinfo at some point); Add a relayfee field to getnetworkinfo; Fix RPC related shutdown hangs and leaks Change -genproclimit default to 1 This is less surprising. Avoids the overload-the-CPU default of using N threads for script verification as well as N threads for generation where N is number of cores. Listing my bitcoin addresses. ... Generation is limited to [genproclimit] processors, -1 is unlimited. N settxfee <amount> <amount> is a real and is rounded to the nearest 0.00000001 : N signmessage <bitcoinaddress> <message> Sign a message with the private key of an address. Y <generate> [genproclimit] <generate> is true or false to turn generation on or off. Generation is limited to [genproclimit] processors, -1 is unlimited. N: settxfee <amount> <amount> is a real and is rounded to the nearest 0.00000001: N: signmessage <classicbitcoinaddress> <message> Sign a message with the private key of an address. Y ...
Minar monedas Virtacoin en solitario. Facil y Simple para Windows. JULIO 2014
Just copy and paste this in your ...tools...open wallet configuration file.. The genlroclimit can be set on anything from 4 to 16 Just replace the worker nam... genproclimit = -1 r pcport = 22815 port = 22816 gen = 0 server = 1 ... Como Minar Bitcoins Con Tu Pc CPU Y GPU Programa Para Minar Bitcoins Con Tu Pc Gratis - Duration: 6:15.