Bitcoin.com Buy BTC & BCH News, prices, mining & wallet

Windows / Linux Guide to using Trezor with Bitcoin Core (HWI)

This is a guide to using your Trezor with Bitcoin Core. It may seem like more trouble than it's worth but many applications use Bitcoin Core as a wallet such as LND, EPS, and JoinMarket. Learning how to integrate your Trezor into a Bitcoin Core install is rather useful in many unexpected ways. I did this all through the QT interfaces, but it's simple to script. There is a much simpler guide available from the HWI github, and the smallest Linux TLDR is here
Unfortunately, I don't have access to a Coldcard or Ledger. I'm not sure how the setpin or -stdinpass parameters are handled on that HW.

( A ) Install TrezorCTL, HWI, and build GUI

You only need to set the wallet up once, but may repeat to upgrade

( A.I ) Download extract and install HWI

  1. Download and isntall Python
  2. Download https://github.com/bitcoin-core/HWI/archive/1.1.2.zip
  3. Extract it to a working folder (assumes C:\User\Reddit\src\HWI)
  4. Change Directory (cd) to working folder cd "C:\User\Reddit\src\HWI"
  5. Setup venv python -m venv .venv
  6. Enter venv .venv\Scripts\activate.bat 1
  7. Install dependencies python -m pip install -U setuptools pip wheel
  8. Install TrezorCTL python -m pip install trezor[hidapi]
  9. Install HWI python -m pip install hwi pyside2
  10. Download github.com/libusb/libusb/releases/download/v1.0.23/libusb-1.0.23.7z
  11. Extract MS64\dll\libusb-1.0.dll from the archive
  12. Copy to pywin copy libusb-1.0.dll .venv\Lib\site-packages\pywin32_system32\

( A.II ) Build the QT UI files

  1. Download and install MSYS2
  2. Launch a mingw64.exe shell
  3. CD to working folder cd "C:\User\Reddit\src\HWI"
  4. Enter venv source .venv/Scripts/activate 1
  5. Run UI build bash contrib/generate-ui.sh

( B ) Create a Trezor wallet in Bitcoin Core (testnet)

You only need to set the wallet up once, no private key data is stored, only xpub data

( B.I ) Retrieve keypool from HWI-QT

  1. Launch hwi-qt.exe --testnet (assuming testnet)
  2. Click Set passphrase (if needed) to cache your passphrase then click Refresh
  3. Select you trezor from the list then click Set Pin (if needed)
  4. Ensure your Trezor in the dropdown has a fingerprint
  5. Select Change keypool options and choose P2WPKH
  6. Copy all the text from the Keypool textbox

( B.II ) Create the wallet in Bitcoin QT

  1. Launch Bitcoin Core (testnet) (non-pruned) 2
  2. Select Console from the Window menu
  3. Create a wallet createwallet "hwi" true
  4. Ensure that hwi is selected in the console wallet dropdown
  5. Verify walletname using the getwalletinfo command
  6. Import keypool importmulti '' (note ' caging)
  7. Rescan if TXNs are missing rescanblockchain 3

( C.I ) Grab Tesnet coins

  1. Select the Receive tab in Bitcoin Core (testnet)
  2. Ensure that the Wallet dropdown has hwi selected
  3. Select Create new receiving address and copy address
  4. Google "bitcoin testnet faucet" and visit a few sites
  5. Answer captcha and input your addressed copied from C.I.3

( D ) Spending funds with HWI

This is how you can spend funds in your Trezor using Bitcoin Core (testnet)

( D.I ) Create an unsigned PSBT

  1. Select the Send tab in Bitcoin Core (testnet)
  2. Ensure that the Wallet dropdown has hwi selected
  3. Verify your balance in Watch-only balance
  4. Rescan if balance is wrong (see B.II.7) 3
  5. Craft your TXN as usual, then click Create Unsigned
  6. Copy the PSBT to your clipboard when prompted

( D.II ) Sign your PSBT

  1. In HWI-QT click Sign PSBT
  2. Paste what you copied in D.I.6 in PSBT to Sign field
  3. Click Sign PSBT
  4. Copy the text for PSBT Result

( D.III ) Broadcast your TXN

  1. Select the Console window in Bitcoin Core (testnet)
  2. Ensure that the Wallet dropdown has hwi selected
  3. Finalize PSBT: finalizepsbt
  4. Copy the signed TXN hex from the hex field returned
  5. Broadcast TXN: sendrawtransaction

Final Thoughts

I did this all through the GUI interfaces for the benefit of the Windows users. Windows console is fine, but the quote escaping in windows console is nightmarish. Powershell would be good, but that throws this on a whole another level for most Windows folks.
There is also the need to use HWI-QT due to a bug in blank passphrases on the commandline. You can work around it by toggling passphrase off or on, but again, it's more than I wanted to spell out.
Footnotes:
  • 1. - Later version of python put the activate script under 'bin' instead of 'Script'
  • 2. - You can run pruned, but you need to have a fresh wallet
  • 3. - Rescan is automatic on 'importmulti' but I was pruned so it was wierd
submitted by brianddk to Bitcoin [link] [comments]

Windows Guide to using Trezor with Bitcoin Core (HWI)

This is a guide to using your Trezor with Bitcoin Core. It may seem like more trouble than it's worth but many applications use Bitcoin Core as a wallet such as LND, EPS, and JoinMarket. Learning how to integrate your Trezor into a Bitcoin Core install is rather useful in many unexpected ways. I did this all through the QT interfaces, but it's simple to script. There is a much simpler guide available from the HWI github, and the smallest TLDR is here

( A ) Install TrezorCTL, HWI, and build GUI

You only need to set the wallet up once, but may repeat to upgrade

( A.I ) Download extract and install HWI

  1. Download and isntall Python
  2. Download https://github.com/bitcoin-core/HWI/archive/1.1.2.zip
  3. Extract it to a working folder (assumes C:\User\Reddit\src\HWI)
  4. Change Directory (cd) to working folder cd "C:\User\Reddit\src\HWI"
  5. Setup venv python -m venv .venv
  6. Enter venv .venv\Scripts\activate.bat 1
  7. Install dependencies python -m pip install -U setuptools pip wheel
  8. Install TrezorCTL python -m pip install trezor[hidapi]
  9. Install HWI python -m pip install hwi pyside2
  10. Download github.com/libusb/libusb/releases/download/v1.0.23/libusb-1.0.23.7z
  11. Extract MS64\dll\libusb-1.0.dll from the archive
  12. Copy to pywin copy libusb-1.0.dll .venv\Lib\site-packages\pywin32_system32\

( A.II ) Build the QT UI files

  1. Download and install MSYS2
  2. Launch a mingw64.exe
  3. CD to working folder cd "C:\User\Reddit\src\HWI"
  4. Enter venv source .venv/Scripts/activate 1
  5. Run UI build bash contrib/generate-ui.sh

( B ) Create a Trezor wallet in Bitcoin Core (testnet)

You only need to set the wallet up once, no private key data is stored, only xpub data

( B.I ) Retrieve keypool from HWI-QT

  1. Launch hwi-qt.exe --testnet (assuming testnet)
  2. Click Set passphrase (if needed) to cache your passphrase then click Refresh
  3. Select you trezor from the list then click Set Pin (if needed)
  4. Ensure your Trezor in the dropdown has a fingerprint
  5. Select Change keypool options and choose P2WPKH
  6. Copy all the text from the Keypool textbox

( B.II ) Create the wallet in Bitcoin QT

  1. Launch Bitcoin Core (testnet) (non-pruned) 2
  2. Select Console from the Window menu
  3. Create a wallet createwallet "hwi" true
  4. Ensure that hwi is selected in the console wallet dropdown
  5. Verify walletname using the getwalletinfo command
  6. Import keypool importmulti '' (note ' caging)
  7. Rescan if TXNs are missing rescanblockchain 3

( C.I ) Grab Tesnet coins

  1. Select the Receive tab in Bitcoin Core (testnet)
  2. Ensure that the Wallet dropdown has hwi selected
  3. Select Create new receiving address and copy address
  4. Google "bitcoin testnet faucet" and visit a few sites
  5. Answer captcha and input your addressed copied from C.I.3

( D ) Spending funds with HWI

This is how you can spend funds in your Trezor using Bitcoin Core (testnet)

( D.I ) Create an unsigned PSBT

  1. Select the Send tab in Bitcoin Core (testnet)
  2. Ensure that the Wallet dropdown has hwi selected
  3. Verify your balance in Watch-only balance
  4. Rescan if balance is wrong (see B.II.7) 3
  5. Craft your TXN as usual, then click Create Unsigned
  6. Copy the PSBT to your clipboard when prompted

( D.II ) Sign your PSBT

  1. In HWI-QT click Sign PSBT
  2. Paste what you copied in D.I.6 in PSBT to Sign field
  3. Click Sign PSBT
  4. Copy the text for PSBT Result

( D.III ) Broadcast your TXN

  1. Select the Console window in Bitcoin Core (testnet)
  2. Ensure that the Wallet dropdown has hwi selected
  3. Finalize PSBT: finalizepsbt
  4. Copy the signed TXN hex from the hex field returned
  5. Broadcast TXN: sendrawtransaction

Final Thoughts

I did this all through the GUI interfaces for the benefit of the Windows users. Windows console is fine, but the quote escaping in windows console is nightmarish. Powershell would be good, but that throws this on a whole another level for most Windows folks.
There is also the need to use HWI-QT due to a bug in blank passphrases on the commandline. You can work around it by toggling passphrase off or on, but again, it's more than I wanted to spell out.
Footnotes:
  • 1. - Later version of python put the activate script under 'bin' instead of 'Script'
  • 2. - You can run pruned, but you need to have a fresh wallet
  • 3. - Rescan is automatic on 'importmulti' but I was pruned so it was wierd
submitted by brianddk to TREZOR [link] [comments]

How-to: setup your multisignature Cold wallet in Bitcoin Core 0.20 (highest security setup)

Last release of Core is amazing !
The main new feature is sortedmulti descriptor. This allows you to import your multisig setup in Core almost as if it was Electrum when combine to the new PSBT export in GUI !
As it needs command line and some weird checksum, you also need to input very long command in the console and if you made a mistake, you cannot copy the last command you made. So take your time when the commands are long to check everything and don't miss anything, use copy paste before validating the long command. You only have to do this once fortunately :)
I detail here how you do it with a k of n setup, good luck:
And you are DONE ! You should get the exact same addresses than Electrum and you can created receiving addresses in Qt ! To send money, just go to the send section, use the new coin control feature and export a partially signed transaction. You can use HWI or Electrum to sign it with your hardware wallets !
Notice: You can import more or less than 2000 addresses of each type. If less, blockchain rescan is faster but you may need to redo what we have done here later when all addresses will have been used once. If more, it is the contrary.

You now have the most possibly secure setup in one software: multisig with hardware on the full node wallet. When Bitcoin Core 0.21.0 will be out, we will also have native descriptor wallet so maybe we will have HD version of this. But for now, this is the best you can do ! Enjoy :)

P.S. : if you like doing things in one shot you can do the last two steps in one big command: importmulti '[{"desc": "wsh(sortedmulti(k,[path1]xpub1.../0/*,[path2]xpub2.../0/*,...,[pathn]xpubn/0/*))#check_sum0", "timestamp": birth_timestamp, "range": [0,2000], "watchonly": true, "keypool": true}, {"desc": "wsh(sortedmulti(k,[path1]xpub1.../1/*,[path2]xpub2.../1/*,...,[pathn]xpubn/1/*))#check_sum1", "timestamp": birth_timestamp, "range": [0,2000], "watchonly": true, "internal": true}]'
submitted by Pantamis to Bitcoin [link] [comments]

Megacoin MΣC 1.9.9.x - Release Notes - Short Overview

Megacoin MΣC 1.9.9.x - Release Notes - Short Overview

https://preview.redd.it/3ex64pfi6k251.jpg?width=1452&format=pjpg&auto=webp&s=c029b11966e1215b4bb95be70756923830c150a6

Masternodes
Megacoin MΣC 1.9.9.x brings along a masternode system for Bitcore. The collateral for one masternode is 4,200 MΣC . This allows up to 10,000 masternodes to support the network. The masternodes receive half of all generated bitcores. It is possible to setup a masternode with the minimum version 1.9.9.x or higher. A government system is included in the new core
Datacarriersize

https://preview.redd.it/jyf7ka176k251.jpg?width=1288&format=pjpg&auto=webp&s=cd6f881532ffb0b26f02bc19ca73ecb52882748a
Megacoin MΣC 1.9.9.x increase the default datacarriersize up to 220 bytes. More infos con you find here | here no 2. | here no 3.
Command fork system
Different forks can be activated remotely in the future. This way we can ensure that all critical updates are only activated once all important network participants are ready.
Wallet changes
Megacoin MΣC 1.9.9.x introduces full support for segwit in the wallet and user interfaces. A new `-addresstype` argument has been added, which supports `legacy`, `p2sh-segwit` (default), and `bech32` addresses. It controls what kind of addresses are produced by `getnewaddress`, `getaccountaddress`, and `createmultisigaddress`. A `-changetype` argument has also been added, with the same options, and by default equal to `-addresstype`, to control which kind of change is used.
A new `address_type` parameter has been added to the `getnewaddress` and `addmultisigaddress` RPCs to specify which type of address to generate.
A `change_type` argument has been added to the `fundrawtransaction` RPC to override the `-changetype` argument for specific transactions.
All segwit addresses created through `getnewaddress` or `*multisig` RPCs explicitly get their redeemscripts added to the wallet file. This means that downgrading after creating a segwit address will work, as long as the wallet file is up to date.
All segwit keys in the wallet get an implicit redeemscript added, without it being written to the file. This means recovery of an old backup will work, as long as you use new software.
All keypool keys that are seen used in transactions explicitly get their redeemscripts added to the wallet files. This means that downgrading after recovering from a backup that includes a segwit address will work
Note that some RPCs do not yet support segwit addresses. Notably, `signmessage`/`verifymessage` doesn't support segwit addresses, nor does `importmulti` at this time. Support for segwit in those RPCs will continue to be added in future versions.
P2WPKH change outputs are now used by default if any destination in the transaction is a P2WPKH or P2WSH output. This is done to ensure the change output is as indistinguishable from the other outputs as possible in either case.
BIP173 (Bech32) Address support ("mec.." addresses)

https://preview.redd.it/kzg55cg36k251.jpg?width=1288&format=pjpg&auto=webp&s=288ac36af63f4f5040ca2d20c9d8f07b78d99a5a

Full support for native segwit addresses (BIP173 / Bech32) has now been added.
This includes the ability to send to BIP173 addresses (including non-v0 ones), and generating these addresses (including as default new addresses, see above).
A checkbox has been added to the GUI to select whether a Bech32 address or P2SH-wrapped address should be generated when using segwit addresses. When launched with `-addresstype=bech32` it is checked by default. When launched with `-addresstype=legacy` it is unchecked and disabled.
HD-wallets by default
Due to a backward-incompatible change in the wallet database, wallets created with version 0.15.2 will be rejected by previous versions. Also, version 0.15.2 will only create hierarchical deterministic (HD) wallets. Note that this only applies to new wallets; wallets made with previous versions will not be upgraded to be HD.
Replace-By-Fee by default in GUI
The send screen now uses BIP125 RBF by default, regardless of `-walletrbf`.There is a checkbox to mark the transaction as final.
The RPC default remains unchanged: to use RBF, launch with `-walletrbf=1` oruse the `replaceable` argument for individual transactions.
Wallets directory configuration (`-walletdir`)
Megacoin MΣC 1.9.9.x now has more flexibility in where the wallets directory can belocated. Previously wallet database files were stored at the top level of thebitcoin data directory. The behavior is now:
For new installations (where the data directory doesn't already exist), wallets will now be stored in a new `wallets/` subdirectory inside the data directory by default.
For existing nodes (where the data directory already exists), wallets will be stored in the data directory root by default. If a `wallets/` subdirectory already exists in the data directory root, then wallets will be stored in the `wallets/` subdirectory by default.- The location of the wallets directory can be overridden by specifying a
`-walletdir=` option where `` can be an absolute path to a directory or directory symlink.
Care should be taken when choosing the wallets directory location, as if itbecomes unavailable during operation, funds may be lost.
Support for signalling pruned nodes (BIP159)


Pruned nodes can now signal BIP159's NODE_NETWORK_LIMITED using service bits, in preparation forfull BIP159 support in later versions. This would allow pruned nodes to serve the most recent blocks. However, the current change does not yet include support for connecting to these pruned peers.
GUI changes
We have added a new Walletdesign. The option to reuse a previous address has now been removed. This was justified by the need to "resend" an invoice, but now that we have the request history, that need should be gone.- Support for searching by TXID has been added, rather than just address and label.- A "Use available balance" option has been added to the send coins dialog, to add the remaining available wallet balance to a transaction output.- A toggle for unblinding the password fields on the password dialog has been added
Security
We change the coinbase maturity via command fork from 100 to 576 blocks. Also we have pumb the default the protoversion to 70006. It is possible later to disconnect the old version via command fork.
Hashalgorythm
Megacoin MΣC 1.9.9.x supports a completely new hashalgo "Mega_MEC".
Sources
Bitcoin Core, Dash Core, FXTC Core, LTC Core, PIVX Core, Bitcoin Cash Core, Bitcore BTX Odarhom
submitted by limxdev to megacoinmec [link] [comments]

Odarhom - Release Notes - Short Overview - First Draft

Odarhom - Release Notes - Short Overview - First Draft

Odarhom
Masternodes
Odarhom brings along a masternode system for Bitcore. The collateral for one masternode is 2,100 BTX. This allows up to 10,000 masternodes to support the network. The masternodes receive half of all generated bitcores. It is possible to setup a masternode with the minimum version 0.90.8.x or higher. A government system is included in the new core and can be activated later, if necessary.
Datacarriersize

https://preview.redd.it/csrmknzl58q41.jpg?width=1267&format=pjpg&auto=webp&s=85c59b3e5753009f397505c3000e6d70892188b7
Odarhom increase the default datacarriersize up to 220 bytes. More infos con you find here | here no 2. | here no 3.
Command fork system
Different forks can be activated remotely in the future. This way we can ensure that all critical updates are only activated once all important network participants are ready.
Wallet changes
Odarhom introduces full support for segwit in the wallet and user interfaces. A new `-addresstype` argument has been added, which supports `legacy`, `p2sh-segwit` (default), and `bech32` addresses. It controls what kind of addresses are produced by `getnewaddress`, `getaccountaddress`, and `createmultisigaddress`. A `-changetype` argument has also been added, with the same options, and by default equal to `-addresstype`, to control which kind of change is used.
A new `address_type` parameter has been added to the `getnewaddress` and `addmultisigaddress` RPCs to specify which type of address to generate.
A `change_type` argument has been added to the `fundrawtransaction` RPC to override the `-changetype` argument for specific transactions.
All segwit addresses created through `getnewaddress` or `*multisig` RPCs explicitly get their redeemscripts added to the wallet file. This means that downgrading after creating a segwit address will work, as long as the wallet file is up to date.
All segwit keys in the wallet get an implicit redeemscript added, without it being written to the file. This means recovery of an old backup will work, as long as you use new software.
All keypool keys that are seen used in transactions explicitly get their redeemscripts added to the wallet files. This means that downgrading after recovering from a backup that includes a segwit address will work
Note that some RPCs do not yet support segwit addresses. Notably, `signmessage`/`verifymessage` doesn't support segwit addresses, nor does `importmulti` at this time. Support for segwit in those RPCs will continue to be added in future versions.
P2WPKH change outputs are now used by default if any destination in the transaction is a P2WPKH or P2WSH output. This is done to ensure the change output is as indistinguishable from the other outputs as possible in either case.
BIP173 (Bech32) Address support ("btx..." addresses)

https://preview.redd.it/q0c26p3fx7q41.jpg?width=1278&format=pjpg&auto=webp&s=bd2b8c5d583dca703caae940aa44e01a365f080c
Full support for native segwit addresses (BIP173 / Bech32) has now been added.
This includes the ability to send to BIP173 addresses (including non-v0 ones), and generating these addresses (including as default new addresses, see above).
A checkbox has been added to the GUI to select whether a Bech32 address or P2SH-wrapped address should be generated when using segwit addresses. When launched with `-addresstype=bech32` it is checked by default. When launched with `-addresstype=legacy` it is unchecked and disabled.
HD-wallets by default
Due to a backward-incompatible change in the wallet database, wallets created with version 0.15.2 will be rejected by previous versions. Also, version 0.15.2 will only create hierarchical deterministic (HD) wallets. Note that this only applies to new wallets; wallets made with previous versions will not be upgraded to be HD.
Replace-By-Fee by default in GUI
The send screen now uses BIP125 RBF by default, regardless of `-walletrbf`.There is a checkbox to mark the transaction as final.
The RPC default remains unchanged: to use RBF, launch with `-walletrbf=1` oruse the `replaceable` argument for individual transactions.
Wallets directory configuration (`-walletdir`)
Odarhom now has more flexibility in where the wallets directory can belocated. Previously wallet database files were stored at the top level of thebitcoin data directory. The behavior is now:
For new installations (where the data directory doesn't already exist), wallets will now be stored in a new `wallets/` subdirectory inside the data directory by default.
For existing nodes (where the data directory already exists), wallets will be stored in the data directory root by default. If a `wallets/` subdirectory already exists in the data directory root, then wallets will be stored in the `wallets/` subdirectory by default.- The location of the wallets directory can be overridden by specifying a
`-walletdir=` option where `` can be an absolute path to a directory or directory symlink.
Care should be taken when choosing the wallets directory location, as if itbecomes unavailable during operation, funds may be lost.
Support for signalling pruned nodes (BIP159)

https://preview.redd.it/fctdedmwx7q41.jpg?width=1283&format=pjpg&auto=webp&s=20dafb6385f46a072f68d49fd0e9a294341be684
Pruned nodes can now signal BIP159's NODE_NETWORK_LIMITED using service bits, in preparation forfull BIP159 support in later versions. This would allow pruned nodes to serve the most recent blocks. However, the current change does not yet include support for connecting to these pruned peers.
GUI changes
We have added a new Walletdesign. The option to reuse a previous address has now been removed. This was justified by the need to "resend" an invoice, but now that we have the request history, that need should be gone.- Support for searching by TXID has been added, rather than just address and label.- A "Use available balance" option has been added to the send coins dialog, to add the remaining available wallet balance to a transaction output.- A toggle for unblinding the password fields on the password dialog has been added
Security
We change the coinbase maturity via command fork from 100 to 576 blocks. Also we have pumb the default the protoversion to 80004. It is possible later to disconnect the old version via command fork.
Hashalgorythm
Odarhom supports already lots of Hashalgorythms so can we later with an update new Hashalgorythms for mining. A final decision will be agreed with the community. Odarhom can work with timetravel10, scrypt, nist5, lyra2z, x11, x16r.
Sources
Bitcoin Core, Dash Core, FXTC Core, LTC Core, PIVX Core, Bitcoin Cash Core
submitted by limxdev to bitcore_btx [link] [comments]

Is Crypto Currency truly at risk due to Quantum Computers, and what can you do about it?

Is Crypto Currency truly at risk due to Quantum Computers, and what can you do about it?

There is no denying that the Quantum revolution is coming. Security protocols for the internet, banking, telecommunications, etc... are all at risk, and your Bitcoins (and alt-cryptos) are next!
This article is not really about quantum computers[i], but, rather, how they will affect the future of cryptocurrency, and what steps a smart investor will take. Since this is a complicated subject, my intention is to provide just enough relevant information without being too “techy.”

The Quantum Evolution

In 1982, Nobel winning physicist, Richard Feynman, hypothesized how quantum computers[ii] would be used in modern life.
Just one year later, Apple released the “Apple Lisa”[iii] – a home computer with a 7.89MHz processor and a whopping 5MB hard drive, and, if you enjoy nostalgia, it used 5.25in floppy disks.
Today, we walk around with portable devices that are thousands of times more powerful, and, yet, our modern day computers still work in a simple manner, with simple math, and simple operators[iv]. They now just do it so fast and efficient that we forget what’s happening behind the scenes.
No doubt, the human race is accelerating at a remarkable speed, and we’ve become obsessed with quantifying everything - from the everyday details of life to the entire universe[v]. Not only do we know how to precisely measure elementary particles, we also know how to control their actions!
Yet, even with all this advancement, modern computers cannot “crack” cryptocurrencies without the use of a great deal more computing power, and since it’s more than the planet can currently supply, it could take millions, if not billions, of years.
However, what current computers can’t do, quantum computers can!
So, how can something that was conceptualized in the 1980’s, and, as of yet, has no practical application, compromise cryptocurrencies and take over Bitcoin?
To best answer this question, let’s begin by looking at a bitcoin address.

What exactly is a Bitcoin address?

Well, in layman terms, a Bitcoin address is used to send and receive Bitcoins, and looking a bit closer (excuse the pun), it has two parts:[vi]
A public key that is openly shared with the world to accept payments. A public key that is derived from the private key. The private key is made up of 256 bits of information in a (hopefully) random order. This 256 bit code is 64 characters long (in the range of 0-9/a-f) and further compressed into a 52 character code (using RIPEMD-160).
NOTE: Although many people talk about Bitcoin encryption, Bitcoin does not use Encryption. Instead, Bitcoin uses a hashing algorithm (for more info, please see endnote below[vii]).
Now, back to understanding the private key:
The Bitcoin address “1EHNa6Q4Jz2uvNExL497mE43ikXhwF6kZm” translates to a private key of “5HpHagT65TZzG1PH3CSu63k8DbpvD8s5ip4nEB3kEsreAnchuDf” which further translates to a 256 bit private key of “0000000000000000000000000000000000000000000000000000000000000001” (this should go without saying, but do not use this address/private key because it was compromised long ago.) Although there are a few more calculations that go behind the scenes, these are the most relevant details.
Now, to access a Bitcoin address, you first need the private key, and from this private key, the public key is derived. With current computers, it’s classically impractical to attempt to find a private key based on a public key. Simply put, you need the private key to know the public key.
However, it has already been theorized (and technically proven) that due to private key compression, multiple private keys can be used to access the same public key (aka address). This means that your Bitcoin address has multiple private keys associated with it, and, if someone accidentally discovers or “cracks” any one of those private keys, they have access to all the funds in that specific address.
There is even a pool of a few dedicated people hunting for these potential overlaps[viii], and they are, in fact, getting very efficient at it. The creator of the pool also has a website listing every possible Bitcoin private key/address in existence[ix], and, as of this writing, the pool averages 204 trillion keys per day!
But wait! Before you get scared and start panic selling, the probability of finding a Bitcoin address containing funds (or even being used) is highly unlikely – nevertheless, still possible!
However, the more Bitcoin users, the more likely a “collision” (finding overlapping private/public key pairs)! You see, the security of a Bitcoin address is simply based on large numbers! How large? Well, according to my math, 1.157920892373x1077 potential private keys exist (that number represents over 9,500 digits in length! For some perspective, this entire article contains just over 14,000 characters. Therefore, the total number of Bitcoin addresses is so great that the probability of finding an active address with funds is infinitesimal.

So, how do Quantum Computers present a threat?

At this point, you might be thinking, “How can a quantum computer defeat this overwhelming number of possibilities?” Well, to put it simple; Superposition and Entanglement[x].
Superposition allows a quantum bit (qbit) to be in multiple states at the same time. Entanglement allows an observer to know the measurement of a particle in any location in the universe. If you have ever heard Einstein’s quote, “Spooky Action at a Distance,” he was talking about Entanglement!
To give you an idea of how this works, imagine how efficient you would be if you could make your coffee, drive your car, and walk your dog all at the same time, while also knowing the temperature of your coffee before drinking, the current maintenance requirements for your car, and even what your dog is thinking! In a nutshell, quantum computers have the ability to process and analyze countless bits of information simultaneously – and so fast, and in such a different way, that no human mind can comprehend!
At this stage, it is estimated that the Bitcoin address hash algorithm will be defeated by quantum computers before 2028 (and quite possibly much sooner)! The NSA has even stated that the SHA256 hash algorithm (the same hash algorithm that Bitcoin uses) is no longer considered secure, and, as a result, the NSA has now moved to new hashing techniques, and that was in 2016! Prior to that, in 2014, the NSA also invested a large amount of money in a research program called “Penetrating Hard Targets project”[xi] which was used for further Quantum Computer study and how to break “strong encryption and hashing algorithms.” Does NSA know something they’re not saying or are they just preemptively preparing?
Nonetheless, before long, we will be in a post-quantum cryptography world where quantum computers can crack crypto addresses and take all the funds in any wallet.

What are Bitcoin core developers doing about this threat?

Well, as of now, absolutely nothing. Quantum computers are not considered a threat by Bitcoin developers nor by most of the crypto-community. I’m sure when the time comes, Bitcoin core developers will implement a new cryptographic algorithm that all future addresses/transactions will utilize. However, will this happen before post-quantum cryptography[xii]?
Moreover, even after new cryptographic implementation, what about all the old addresses? Well, if your address has been actively used on the network (sending funds), it will be in imminent danger of a quantum attack. Therefore, everyone who is holding funds in an old address will need to send their funds to a new address (using a quantum safe crypto-format). If you think network congestion is a problem now, just wait…
Additionally, there is the potential that the transition to a new hashing algorithm will require a hard fork (a soft fork may also suffice), and this could result in a serious problem because there should not be multiple copies of the same blockchain/ledger. If one fork gets attacked, the address on the other fork is also compromised. As a side-note, the blockchain Nebulas[xiii] will have the ability to modify the base blockchain software without any forks. This includes adding new and more secure hashing algorithms over time! Nebulas is due to be released in 2018.

Who would want to attack Bitcoin?

Bitcoin and cryptocurrency represent a threat to the controlling financial system of our modern economy. Entire countries have outright banned cryptocurrency[xiv] and even arrested people[xv], and while discrediting it, some countries are copying cryptocurrency to use (and control) in their economy[xvi]!
Furthermore, Visa[xvii], Mastercard[xviii], Discover[xix], and most banks act like they want nothing to do with cryptocurrency, all the while seeing the potential of blockchain technology and developing their own[xx]. Just like any disruptive technology, Bitcoin and cryptocurrencies have their fair share of enemies!
As of now, quantum computers are being developed by some of the largest companies in the world, as well as private government agencies.
No doubt, we will see a post-quantum cryptography world sooner than most realize. By that point, who knows how long “3 letter agencies” will have been using quantum technology - and what they’ll be capable of!

What can we do to protect ourselves today?

Of course, the best option is to start looking at how Bitcoin can implement new cryptographic features immediately, but it will take time, and we have seen how slow the process can be just for scaling[xxi].
The other thing we can do is use a Bitcoin address only once for outgoing transactions. When quantum computers attack Bitcoin (and other crypto currencies), their first target will be addresses that have outgoing transactions on the blockchain that contain funds.
This is due to the fact that when computers first attempt to crack a Bitcoin address, the starting point is when a transaction becomes public. In other words, when the transaction is first signed – a signed transaction is a digital signature derived from the private key, and it validates the transaction on the network. Compared to classical computers, quantum computers can exponentially extrapolate this information.
Initially, Bitcoin Core Software might provide some level of protection because it only uses an address once, and then sends the remaining balance (if any) to another address in your keypool. However, third party Bitcoin wallets can and do use an address multiple times for outgoing transactions. For instance, this could be a big problem for users that accept donations (if they don’t update their donation address every time they remove funds). The biggest downside to Bitcoin Core Software is the amount of hard-drive space required, as well as diligently retaining an up-to-date copy of the entire blockchain ledger.
Nonetheless, as quantum computers evolve, they will inevitably render SHA256 vulnerable, and although this will be one of the first hash algorithms cracked by quantum computers, it won’t be the last!

Are any cryptocurrencies planning for the post-quantum cryptography world?

Yes, indeed, there are! Here is a short list of ones you may want to know more about:

Full disclosure:

Although I am in no way associated with any project listed above, I do hold coins in all as well as Bitcoin, Litecoin and many others.
The thoughts above are based on my personal research, but I make no claims to being a quantum scientist or cryptographer. So, don’t take my word for anything. Instead, do your own research and draw your own conclusions. I’ve included many references below, but there are many more to explore.
In conclusion, the intention of this article is not to create fear or panic, nor any other negative effects. It is simply to educate. If you see an error in any of my statements, please, politely, let me know, and I will do my best to update the error.
Thanks for reading!

References

[i] https://www.youtube.com/watch?v=JhHMJCUmq28 – A great video explaining quantum computers.
[ii] https://www.doc.ic.ac.uk/~nd/surprise_97/journal/vol4/spb3/ - A brief history of quantum computing.
[iii] https://en.wikipedia.org/wiki/Apple_Lisa - More than you would ever want to know about the Apple Lisa.
[iv] https://www.youtube.com/watch?v=tpIctyqH29Q&list=PL8dPuuaLjXtNlUrzyH5r6jN9ulIgZBpdo - Want to learn more about computer science? Here is a great crash course for it!
[v] https://www.collinsdictionary.com/dictionary/english/quantify - What does quantify mean?
[vi] https://en.bitcoin.it/wiki/Private_key - More info about Bitcoin private keys.
[vii] https://www.securityinnovationeurope.com/blog/page/whats-the-difference-between-hashing-and-encrypting - A good example of the deference between Hash and Encryption
[viii] https://lbc.cryptoguru.org/stats - The Large Bitcoin Collider.
[ix] http://directory.io/ - A list of every possible Bitcoin private key. This website is a clever way of converting the 64 character uncompressed key to the private key 128 at a time. Since it is impossible to save all this data in a database and search, it is not considered a threat! It’s equated with looking for a single needle on the entire planet.
[x] https://uwaterloo.ca/institute-for-quantum-computing/quantum-computing-101#Superposition-and-entanglement – Brief overview of Superposition and Entanglement.
[xi] https://www.washingtonpost.com/world/national-security/nsa-seeks-to-build-quantum-computer-that-could-crack-most-types-of-encryption/2014/01/02/8fff297e-7195-11e3-8def-a33011492df2_story.html?utm_term=.e05a9dfb6333 – A review of the Penetrating Hard Targets project.
[xii] https://en.wikipedia.org/wiki/Post-quantum_cryptography - Explains post-quantum cryptography.
[xiii] https://www.nebulas.io/ - The nebulas project has some amazing technology planned in their roadmap. They are currently in testnet stage with initial launch expected taking place in a few weeks. If you don’t know about Nebulas, you should check them out. [xiv] https://en.wikipedia.org/wiki/Legality_of_bitcoin_by_country_or_territory - Country’s stance on crypto currencies.
[xv] https://www.cnbc.com/2017/08/30/venezuela-is-one-of-the-worlds-most-dangerous-places-to-mine-bitcoin.html - Don’t be a miner in Venezuela!
[xvi] http://www.newsweek.com/russia-bitcoin-avoid-us-sanctions-cryptocurrency-768742 - Russia’s plan for their own crypto currency.
[xvii] http://www.telegraph.co.uk/technology/2018/01/05/visa-locks-bitcoin-payment-cards-crackdown-card-issue - Recent attack from visa against crypto currency.
[xviii] https://www.ccn.com/non-government-digital-currency-junk-says-mastercard-ceo-rejecting-bitcoin/ - Mastercards position about Bitcoin.
[xix] http://www.livebitcoinnews.com/discover-joins-visa-mastercard-barring-bitcoin-support/ - Discovers position about Bitcoin.
[xx] http://fortune.com/2017/10/20/mastercard-blockchain-bitcoin/ - Mastercard is making their own blockchain.
[xxi] https://bitcoincore.org/en/2015/12/21/capacity-increase/ - News about Bitcoin capacity. Not a lot of news…
[xxii] https://learn.iota.org/faq/what-makes-iota-quantum-secure - IOTA and quantum encryption.
[xxiii] https://eprint.iacr.org/2011/191.pdf - The whitepaper of Winternitz One-Time Signature Scheme
[xxiv] https://cardanoroadmap.com/ - The Cardano project roadmap.
[xxv] https://eprint.iacr.org/2017/490 - More about the BLISS hash system.
[xxvi] https://www.ethereum.org/ - Home of the Ethereum project.
[xxvii] https://en.wikipedia.org/wiki/SHA-3#Security_against_quantum_attacks – SHA3 hash algorithm vs quantum computers.
[xxviii] https://en.wikipedia.org/wiki/Lamport_signature - Lamport signature information.
[xxix] https://theqrl.org/ - Home of the Quantum Resistant Ledger project.
submitted by satoshibytes to CryptoCurrency [link] [comments]

[Prediction] Someone is going to "delete" $100k+ in the near future

I keep seeing these posts of new money looking to invest, what are obviously relatively large sums to them, without really understanding even the basics of what Bitcoin is. This is a disaster waiting to happen.
A whale is going to make a purchase and then not understand the keypool and end up with coins in an address they can't access. Or they'll copy the wrong wallet or overwrite it with an old version, or any number of things. Imagine the mistakes your nan/parents make on a computer, only replace the .png file of last xmas that she's struggling to open, with a wallet.dat file. Think of the unsecured computers. The people with 28 toolbars running norton.
Before you had to be at least interested in tech to have heard about bitcoin. This is where the two worlds collide and i'm pretty sure some people are going to get burnt pretty bad.
submitted by _james to Bitcoin [link] [comments]

How can I make test-net?

I've tried to make test-net for mining pool test. There's no information or seed node for testnet. and find reddit and add testnet node to conf, but, testnode ip is very old , not working now. Is there latest information for make testnet? thanks,
(update)
my config also have a testnet=1 addnode=nz.nutty.one:20888 from searched community .
-- here's logs --
2018-03-12 13:38:46 Bitcoin version v0.14.2.5-6ad93ba 2018-03-12 13:38:46 InitParameterInteraction: parameter interaction: -whitelistforcerelay=1 -> setting -whitelistrelay=1 2018-03-12 13:38:46 Assuming ancestors of block ff983c72147a81ac5b8ebfc68b62b39358cac4b8eb5518242e87f499b71c6a51 have valid signatures. 2018-03-12 13:38:49 Default data directory /home/nomp/.myriadcoin 2018-03-12 13:38:49 Using data directory /home/nomp/nomp_chaindata/myriadcoin-test/testnet 2018-03-12 13:38:49 Using config file /home/nomp/nomp_chaindata/myriadcoin-test/myriadcoin.conf 2018-03-12 13:38:49 Using at most 125 automatic connections (1024 file descriptors available) 2018-03-12 13:38:49 Using 32 MiB out of 32 requested for signature cache, able to store 1048576 elements 2018-03-12 13:38:49 Using 2 threads for script verification 2018-03-12 13:38:49 scheduler thread start 2018-03-12 13:38:49 HTTP: creating work queue of depth 16 2018-03-12 13:38:49 Config options rpcuser and rpcpassword will soon be deprecated. Locally-run instances may remove rpcuser to use cookie-based auth, or may be replaced with rpcauth. Please see share/rpcuser for rpcauth auth generation. 2018-03-12 13:38:49 HTTP: starting 4 worker threads 2018-03-12 13:38:49 Using BerkeleyDB version Berkeley DB 4.8.30: (April 9, 2010) 2018-03-12 13:38:49 Using wallet wallet.dat 2018-03-12 13:38:49 init message: Verifying wallet... 2018-03-12 13:38:51 CDBEnv::Open: LogDir=/home/nomp/nomp_chaindata/myriadcoin-test/testnet/database ErrorFile=/home/nomp/nomp_chaindata/myriadcoin-test/testnet/db.log 2018-03-12 13:38:51 Bound to [::]:10898 2018-03-12 13:38:51 Bound to 0.0.0.0:10898 2018-03-12 13:38:51 Cache configuration: 2018-03-12 13:38:51 * Using 2.0MiB for block index database 2018-03-12 13:38:51 * Using 8.0MiB for chain state database 2018-03-12 13:38:51 * Using 440.0MiB for in-memory UTXO set (plus up to 286.1MiB of unused mempool space) 2018-03-12 13:38:51 init message: Loading block index... 2018-03-12 13:38:51 Opening LevelDB in /home/nomp/nomp_chaindata/myriadcoin-test/testnet/blocks/index 2018-03-12 13:38:59 Opened LevelDB successfully ... 2018-03-12 13:43:39 keypool added key 100, size=100 2018-03-12 13:43:42 keypool added key 101, size=101 2018-03-12 13:43:43 keypool reserve 1 2018-03-12 13:43:44 keypool keep 1 2018-03-12 13:43:50 wallet 282608ms 2018-03-12 13:43:50 setKeyPool.size() = 100 2018-03-12 13:43:50 mapWallet.size() = 0 2018-03-12 13:43:50 mapAddressBook.size() = 1 2018-03-12 13:43:51 UpdateTip: new best=0000017ce2a79c8bddafbbe47c004aa92b20678c354b34085f62b762084b9788 height=0 version=0x00000002 algo=0 (sha256d) log2_work=17.678071 tx=1 date='2014-02-20 06:06:33' progress=0.000003 cache=0.0MiB(0tx) 2018-03-12 13:43:51 mapBlockIndex.size() = 1 2018-03-12 13:43:51 Failed to open mempool file from disk. Continuing anyway. 2018-03-12 13:43:51 nBestHeight = 0 2018-03-12 13:43:51 torcontrol thread start 2018-03-12 13:43:51 AddLocal(x.x.2x.x:10898,1) 2018-03-12 13:43:51 Discover: IPv4 enp3s0: 175.2x.x.x 2018-03-12 13:43:51 init message: Loading addresses... 2018-03-12 13:43:51 ERROR: Read: Failed to open file /home/nomp/nomp_chaindata/myriadcoin-test/testnet/peers.dat 2018-03-12 13:43:51 Invalid or missing peers.dat; recreating 2018-03-12 13:43:52 init message: Loading banlist... ... 2018-03-12 13:55:05 addcon thread start 2018-03-12 13:55:05 opencon thread start 2018-03-12 13:55:05 dnsseed thread start 2018-03-12 13:55:05 net thread start 2018-03-12 13:55:05 connect() to 75.19.27.27:20888 failed after select(): Connection refused (111) 2018-03-12 13:55:06 connect() to 75.19.27.28:20888 failed after select(): Connection refused (111) 2018-03-12 13:55:16 Loading addresses from DNS seeds (could take a while) 2018-03-12 13:55:17 3 addresses found from DNS seeds 2018-03-12 13:55:17 dnsseed thread exit 2018-03-12 13:55:17 connect() to 75.19.27.27:20888 failed after select(): Connection refused (111) 2018-03-12 13:55:18 connect() to 75.19.27.28:20888 failed after select(): Connection refused (111) 2018-03-12 13:55:22 connect() to 75.19.27.27:20888 failed after select(): Connection refused (111) 2018-03-12 13:55:23 connect() to 75.19.27.28:20888 failed after select(): Connection refused (111) 2018-03-12 1 ....
same forever until today. can't encrease test node heights.
submitted by trustfarmhub to myriadcoin [link] [comments]

Lost most of my Doge late 2013. There may be one last solution to getting some back. Does anyone have a copy of "DogeCoin version v0.6.4.0-unk-beta" or know which release it is directly linked to?

My keys corrupted and i didn't have a recent backup, after the upgrade lost all the doges.

I think there might be one more hope of finding some, and would appreciate if anyone knows which version " v0.6.4.0-unk-beta" which is on the debug.log output.

Noticed after all this time after digging through Bitcoin release notes that before bip32/hd wallets came in or as a matter of fact As they came in too (thanks devs). Most if not everyone i asked thought backing up the wallet.dat file is good enough, or the old --salvagewallet nor -zapwalletxes. They either aggressively scrambled the wallet making it more likely destroy even more keys, sure saved a few coins but most of the addresses in the keypool which has a size of 100 didn't have a corresponding private key anywhere in the wallet AFAIKT,
Sorry before i rant, i just need some info on if this wallet if linked to a specific Dogecoin version and just happens to say v0.6.4.0 in the debug log file.

I can't update directly to any other version without the wallet breaking up. Apparently i need the exact version that was last used, and turn it off extra safely so the log files which hold some parts of the keys go back to the Wallet.dat or something.

I tried all solutions, this might just work. from the "Bitcoin version 0.7.1 Readme file."
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).
If you were running on Linux with a version that might have been compiled with a different version of Berkeley DB (for example, if you were using an Ubuntu PPA version), then run the old version again with the -detachdb argument and shut it down; if you do not, then the new version will not be able to read the database files and will exit with an error.
Explanation of -detachdb (and the new “stop true” RPC command): The Berkeley DB database library stores data in both “.dat” and “log” files, so the database is always in a consistent state, even in case of power failure or other sudden shutdown. The format of the “.dat” files is portable between different versions of Berkeley DB, but the “log” files are not– even minor version differences may have incompatible “log” files. The -detachdb option moves any pending changes from the “log” files to the “blkindex.dat” file for maximum compatibility, but makes shutdown much slower. Note that the “wallet.dat” file is always detached, and versions prior to 0.6.0 detached all databases at shutdown.
or on shut down the coin client using the -detatchdb comas coins use both log and dat files with berkeley.

Thanks,

D_M


submitted by doge_messiah to dogecoin [link] [comments]

Stratis - Breeze Wallet with Privacy Protocol Mainnet Release

Stratis Update:
Breeze Wallet with Privacy Protocol Mainnet Release https://stratisplatform.com/2018/08/01/breeze-with-privacy-protocol-mainnet-release/
User Guide https://stratisplatform.com/wp-content/uploads/2018/08/Breeze-Wallet-with-Privacy-Protocol-User-Guide-v1.0.pdf
TumbleBit https://cs-people.bu.edu/heilman/tumblebit/
Paper https://eprint.iacr.org/2016/575.pdf
Source Code https://github.com/NTumbleBit/NTumbleBit https://github.com/BUSEC/TumbleBit/
TumbleBit vs CoinJoin https://medium.com/@nopara73/tumblebit-vs-coinjoin-15e5a7d58e3
BiblePay, being a fork of DASH, has the PrivateSend Feature (that uses CoinJoin)
How to use PrivateSend? https://www.reddit.com/BiblePay/comments/7orn50/privatesend_testing/
NOTE: Coin mixing can use up hundreds of wallet keys, this could cause the need for new backups of your wallet, I think BiblePay wallet generates 1,000 keys by default, https://github.com/biblepay/biblepay/blob/83aed83c3ecec63a9a26180407d8872518e573ff/src/wallet/wallet.h#L45 there is a config option/flag named "keypool" to set the number of keys
How many possibly bitcoin addresses are there? https://bitcointalk.org/index.php?topic=24268.0
BiblePay is experimenting with porting over our code (C++) to Stratis (C#)
BiblePay Stratis Roadmap https://wiki.biblepay.org/Stratis_Roadmap
Stratis https://coinmarketcap.com/currencies/stratis/ https://stratisplatform.com/ https://bitcointalk.org/index.php?topic=1512202.0
submitted by togoshige to BiblePay [link] [comments]

Backup Wallet.dat

"1) I can backup my wallet by exporting a wallet.dat file. Do I have to do this everytime I receive more BBP? Or just whenever I add a new key? 2) How do I add new keys? 3) Can I generate and see the private key so that I can write it down/print it and store it somewhere safe?" -znffal
1) think of your wallet.dat file as your passbook in a passbook savings account. You have to have that .dat file to be able to access (and prove you SHOULD have access) to the BBP stored in your account addresses. Exporting it once is all you need.
2) Adding new keys? The passphrase (password) you use is the only "key" you would have in an encrypted wallet (besides the .dat file). If you mean new addresses, you can get those by going under File and Sending (or Receving) Addresses and hit "new".
3) Clicking Encrypt Wallet will be where you choose a passphase, I don't know you can see it other than when you enter it.
To put a real world example or two.
Example One: You don't ever encrypt or backup your wallet. If I borrowed/stole/hacked your computer, I could send all your coins to my wallet (no passphrase).
Example Two: You encrypt your wallet with the passphrase "secret" but don't backup the wallet.dat file, then your computer crashes and you lose all your data. Since you didn't have a copy of the wallet.dat file, your coins would be lost.
Example Three: You backup your wallet.dat but don't encrypt it. Your computer crashes and all your data is lost, but you re-download the QT program, restore your wallet.dat, all your coins are still in you wallet. But if you lose your USB drive that has the wallet.dat on it, and I find it, I can put your wallet.dat on another computer and send all your coins to my wallet.
Example Four: You encrypt your wallet and back up the wallet.dat file. If I hack/borrow your computer, unless I guess your passphrase your coins are safe. If you computer crashes, your can restore your wallet.dat file to another computer and your coins are safe.
In short, Encrypt your wallet (passpharse) and then backup (copy) the wallet.dat file to at least two locations." -616westwarmoth
"Find your wallet.dat file, copy it to a flash drive or any other secure place. If your computer crashes, you'll always have the wallet.dat and can put it on a new machine. It will have to resync a bit when you do, but you'll never lose your "key" to the wallet. Speaking of keys, you should password protect your wallet and make sure to remember it!"
"Yes you must have a copy of the wallet.dat somewhere. So multiple back up copies are a good idea. If you lose the wallet.dat file the coins will be in limbo but there will be no way to recreate the file. One thing to remember is it doesn't matter if the wallet.dat file is "current", it can be 10 years old on a flash drive and you can download a new client, put the wallet.dat file into the machine and you'll be good." -616westwarmoth
"In addition to this, whenever you reboot the node after more than 24 hours of being synced, we back your wallet.dat up into the "backups" folder. This is useful if you ever accidentally delete your wallet.dat.
Also, if you want a paper backup, you can do a 'dumpprivkey accountaddress' command from the RPC." -Rob
"wallet is a collection of private keys"
"there are other ways to achieve high security. You can make a new wallet, encrypt it with a long password, send coins to it, put it on a flash drive and put it in cold storage, then download the hard drive cleaning program and erase the wallet.dat sectors from your PC. And of course, keep a printed copy of the private key on paper and put it in a safe. Put the usb in the safe also. Burn a cd rom with the wallet.dat file and put it in the safe." -Rob
How to safely back up your wallet https://dashpay.atlassian.net/wiki/spaces/DOC/pages/1867878/How+to+safely+back+up+your+wallet
Keep Your Crypto #SAFU (CZ's Tips) https://www.binance.com/en/blog/421499824684900429/Keep-Your-Crypto-SAFU-CZs-Tips
References: https://bitcointalk.org/index.php?topic=2042657.msg23955128#msg23955128 http://forum.biblepay.org/index.php?topic=27.0 https://bitcointalk.org/index.php?topic=2388064.msg27797529#msg27797529
To Read: https://en.bitcoin.it/wiki/Wallet https://en.bitcoin.it/wiki/Storing_bitcoins https://bitcoin.org/en/secure-your-wallet
NOTE: As of version 1.4.3.1 we have updated to HD wallets, so you should not need to worry about keypools anymore if you have upgraded
"Regarding the Sanctuary, you receive payments always to the same address (key), so the keypool is not consumed for those payments. But when you click to generate a new address on the "Receive" tab, one key will be deducted from the keypool. Also, sometimes new addresses are automatically generated and the keypool is consumed, for example when solo mining and finding a block, a new address could be used for the block reward.
You can always check your current keypool size by typing "getwalletinfo" in the RPC console and see "keypoolsize" and "keys_left". It's only concerning if they are a low number and you plan to generate new addresses in your wallet. They start from 1000. If the number gets too low, you can just type "keypoolrefill" to refill them back to 1000 and then you should backup the wallet. But from my experience the wallet automatically refills the keypool from time to time (or after certain actions like transactions), because I see that my wallet file keeps getting larger and the "keys_left" returns to 1000.
The only issue is if you actively use your wallet on multiple computers (for example cloud mining or simply sometimes using the wallet on your laptop), then one wallet could refill the keypool with new addresses and the other one will not, or they will generate different new addresses. If I understand this correctly, for example, you could receive a payment on a new address generated in one wallet; your old balance will be there on both wallets, but only the one wallet where you generated the new address would show the new payment. Then you should copy the wallet.dat file to other computers, to update them.
If you use the wallet on just one computer, you should just backup the wallet from time to time (or when you see it has increased in size). Qt also backups wallet.dat automatically, those can be found in the folder %AppData%\BiblepayCore\backups, you will see that they also have timestamps in their names and possibly different sizes." -inblue
https://bitcointalk.org/index.php?topic=2388064.msg27391534#msg27391534
submitted by togoshige to BiblePay [link] [comments]

[ FAQ ] Beginners guide - Your way to your wallet

Hello guys, I've noticed day by day that new shibes joining our community with next to none experience in how cryptocurrencies wallets works, and have seen many questions here and there.
And I've decided to collect the common questions [ FAQ ] and try my best to answer them in a beginner-friendly way that might be helpful to the new shibes out here =)
I do not intend to compete with the other getting started guides over the community, but having a one place with common beginners questions is nice.
If you couldn't find enough answers in this post, feel free to ask in the comments, I'm sure that me and other helpful shibes will be around to help!
Dogecoin Wallet Getting Started.
The wallet is used to store your coins and to make transactions, it's the one place that will store your addresses to send and receive coins.
The hard, official, safe way:
Go to HERE and select your operating system.
Yes, this is the Hard way as it might take forever to sync and get started with this wallet when you run it for the first time, there are easier ways to get a wallet, but I do not, and will never Recommend that you use any other methods than this. Be safe and get this one AND only this one to store your coins. Why? Because it's the official and safest client.
The easy way, suggested by flickerkuu .. The creator of http://www.dogedoor.net/
A light wallet can be found here: http://multidoge.org/
There is a file called " Wallet.dat " which your wallet reads to get all the data, basically; all your coins, addresses, and transactions are stored within this file. Imagine that this file was not " Protected enough " and someone has access to it? Yes, that's right, they will have access to everything in your wallet. By encrypting your wallet, you're adding a second layer of protection to your file, so even if someone has access to your " Wallet.dat ", they will still be unable to do anything with it without the password, so make sure that you DO NOT FORGET TO ENCRYPT YOUR WALLET!
Run your Dogecoin-Qt.exe you downloaded from the first step, click Settings, encrypt my wallet, include everything that is possible in the password, lowercase, caps, [email protected]#$, whatever you would like. Make it long enough and easy to remember! Forgetting your password means your coins will be gone, forever.
Open your wallet, click on Much Receive, this is the place where you can use or generate new addresses. Copy the address and add it to the Pool, or whatever method you use to get coins. You can create a new address if you wish to!
Yes it is, Why? Imagine that your hardware fails? Your data gets lost? Or for whatever reason your wallet data file disappeared? Backup your wallet and stay safe!
It's simple! Run your Dogecoin-Qt, click on File, Backup wallet, call it something like wallet.dat and SAVE IT IN A COLD STORAGE ( USB Drive, External HDD, whatever you prefer ). For your safety, having it saved in multiple destinations isn't a bad idea. Saving in on a cloud storage ( Dropbox, etc) is! NEVER HAVE IT STORED ONLINE!
I've been searching around for an answer, and I'm here to share the most convenient answer that I found, because it makes sense to me rather than the rest answers asking you to backup after EACH transaction. This answer is bitcoin wallet client related, but should apply for Dogecoin-Qt as well.
I personally backup as much as possible! It takes seconds and it never hurts!

Quote "

The Bitcoin-Qt/bitcoind client's keypool has by default 100 Bitcoin addresses. Each spend transaction that has change chews up one of those addresses. Additionally each click on New Address will consume an address from the keypool as well. So you should be able to get by without a new backup until after 100 spend transactions plus any requests for a New Address.
So if you do 10 spend transactions a month, and receive funds 5 times a month you would be fine with a backup every 4 months maybe.
A backup plan should consider that backups fail, so multiple backups don't hurt anything.
The size of the keypool can be configured so that frequent use can occur without having to make backups as frequently. For instance, weekly backups would be fine for a wallet that does 100 transactions a week but the keypool has size of 250.
When the wallet is encrypted, no keys are added to the pool until an action that requires the passphrase to be entered. Backup strategy should take this into account.
And finally, if you import a private key, that key will not exist in any previously made backups.
Source: http://bitcoin.stackexchange.com/questions/13277/how-frequently-should-one-update-wallet-backup

" End Quote

This sub can help you get started if you have any questions regarding your mining setup.
http://www.reddit.com/dogemining
More information can be found on the official website: http://dogecoin.com/get-started
If you liked this post, save it, and share it with others who have interest in getting started.
submitted by YousefMTW to dogecoin [link] [comments]

12-03 14:53 - 'How do i take backup of (getnewaddress) new wallet addresses private key each time' (self.Bitcoin) by /u/pavaya66 removed from /r/Bitcoin within 1996-2006min

'''
I am working on website which will receive and store users bitcoins (safe vault kind of system )
As of my knowledge bitcoind generate new address for each user with rpc call getnewaddress Each address has its own private key which is limited to 100 key pool for bitcoind So how would i backup each users privatekey because bitcoind will generate new keypool
'''
How do i take backup of (getnewaddress) new wallet addresses private key each time
Go1dfish undelete link
unreddit undelete link
Author: pavaya66
submitted by removalbot to removalbot [link] [comments]

Question, I backed up my wallet about 6 months ago, since then I've done about 10 transactions and transferred the coins from one address to another within the same wallet. Will I still have my balance when I restore the wallet?

SEE UPDATE AT BOTTOM
Thank you, I think I may have messed up.
I believe I created the address and transferred my balance to that address. Then I lost my wallet. Did the address that has my balance in my wallet, even though I created it after backing it up?
After reading this, i'm not sure how this works:
The wallet contains a pool of queued keys. By default there are 100 keys in the key pool. The size of the pool is configurable using the "-keypool" command line argument. When you need an address for whatever reason (send, “new address”, generation, etc.), the key is not actually generated freshly, but taken from this pool. A brand new address is generated to fill the pool back to 100. So when a backup is first created, it has all of your old keys plus 100 unused keys. After sending a transaction, it has 99 unused keys. After a total of 100 new-key actions, you will start using keys that are not in your backup. Since the backup does not have the private keys necessary for authorizing spends of these coins, restoring from the old backup will cause you to lose Bitcoins. Creating a new address generates a new pair of public and private keys, which are added to your wallet. Each keypair is mostly random numbers, so they cannot be known prior to generation. If you backup your wallet and then create more than 100 new addresses, the keypair associated with the newest addresses will not be in the old wallet because the new keypairs are only known after creating them. Any coins received at these addresses will be lost if you restore from the backup.
UPDATE
Just got it all thank you... needed to download all the block chains to get my balance and it took a long time.
I was actually fairly confident I would get my coins back before the balance came through as I could trace which account was holding the coins using blockchain.info and doing the following:
I had the address of my first address in Bitcoin-QT, it was in my address book when I loaded the backed up wallet. I located the address on blockchain.info then followed transactions until I found an account that had a balance I recognized. Then I was able to use the debug function part of bitcoin-qt to see that I owned the public and private key in my backed up wallet. I used the following method:
-validateaddress 1BZZnJG6q95aJqPZweSCGnno2rxcXyfaLo
submitted by onowahoo to Bitcoin [link] [comments]

Bitcoin Core 0.13.2 released | Wladimir J. van der Laan | Jan 03 2017

Wladimir J. van der Laan on Jan 03 2017:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Bitcoin Core version 0.13.2 is now available from:
https://bitcoin.org/bin/bitcoin-core-0.13.2/
Or by bittorrent:
magnet:?xt=urn:btih:746697d03db3ff531158b1133bab5d1e4cef4e5a&dn;=bitcoin-core-0.13.2&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%2Ftracker.leechers-paradise.org%3A6969&ws;=https%3A%2F%2Fbitcoin.org%2Fbin%2F
This is a new minor version release, including various bugfixes and
performance improvements, as well as updated translations.
Please report bugs using the issue tracker at github:
https://github.com/bitcoin/bitcoin/issues
To receive security and update notifications, please subscribe to:
https://bitcoincore.org/en/list/announcements/join/
Compatibility

Microsoft ended support for Windows XP on April 8th, 2014,
an OS initially released in 2001. This means that not even critical security
updates will be released anymore. Without security updates, using a bitcoin
wallet on a XP machine is irresponsible at least.
In addition to that, with 0.12.x there have been varied reports of Bitcoin Core
randomly crashing on Windows XP. It is not clear
what the source of these crashes is, but it is likely that upstream
libraries such as Qt are no longer being tested on XP.
We do not have time nor resources to provide support for an OS that is
end-of-life. From 0.13.0 on, Windows XP is no longer supported. Users are
suggested to upgrade to a newer version of Windows, or install an alternative OS
that is supported.
No attempt is made to prevent installing or running the software on Windows XP,
you can still do so at your own risk, but do not expect it to work: do not
report issues about Windows XP to the issue tracker.
but severe issues with the libc++ version on 10.7.x keep it from running reliably.
0.13.1 now requires 10.8+, and will communicate that to 10.7 users, rather than crashing unexpectedly.
Notable changes

Change to wallet handling of mempool rejection
When a newly created transaction failed to enter the mempool due to
the limits on chains of unconfirmed transactions the sending RPC
calls would return an error. The transaction would still be queued
in the wallet and, once some of the parent transactions were
confirmed, broadcast after the software was restarted.
This behavior has been changed to return success and to reattempt
mempool insertion at the same time transaction rebroadcast is
attempted, avoiding a need for a restart.
Transactions in the wallet which cannot be accepted into the mempool
can be abandoned with the previously existing abandontransaction RPC
(or in the GUI via a context menu on the transaction).
0.13.2 Change log

Detailed release notes follow. This overview includes changes that affect
behavior, not code moves, refactors and string updates. For convenience in locating
the code changes and accompanying discussion, both the pull request and
git merge commit are mentioned.

Consensus

RPC and other APIs

Block and transaction handling

P2P protocol and network code

Build system

GUI

Wallet

Tests and QA

Miscellaneous

Credits

Thanks to everyone who directly contributed to this release:
As well as everyone that helped translating on Transifex.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEcBAEBCgAGBQJYa2IbAAoJEHSBCwEjRsmmiQsIALbkHVVwO7nViQKH1Ub2qpD4
TplOuAP0/4vYotizuI12Gqdnu8SjPmhKwAgIXhVinE6TS4OzGNjy+6LtWGzpcpud
B1pcziZ72Mlfxdbdd1UhDMWEjoBumS9RmXMSqzTlMVlHRv4iiISzdaAROu1jHvdF
YTsnmKXB8OvcXOecxRMY9LrnpSzLALM2MYTDmYwlhhExHIA8ZqI2niky6GCfyfDi
KD7bgfIFJzlgFTpAdhQXOXtWoRV5iHqN7T29ot8Y+yIhVCRhHYXS93Z50GKbkqYV
MXsVAkpZF3qqcKYSPFjbif7faMdrMqcEiII6QhXdDTRGI/35IfuTDbWzzQlnVyY=
=ncCY
-----END PGP SIGNATURE-----
original: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-January/013412.html
submitted by dev_list_bot to bitcoin_devlist [link] [comments]

How do i take backup of (getnewaddress) new wallet addresses private key each time

I am working on website which will receive and store users bitcoins (safe vault kind of system )
As of my knowledge bitcoind generate new address for each user with rpc call getnewaddress Each address has its own private key which is limited to 100 key pool for bitcoind So how would i backup each users privatekey because bitcoind will generate new keypool
submitted by pavaya66 to Bitcoin [link] [comments]

[Meta] Re: Bitcoin Core 0.13.2 released | Luke Dashjr | Jan 07 2017

Luke Dashjr on Jan 07 2017:
I don't think release announcements are really appropriate for the bitcoin-dev
mailing list. People who want these can subscribe to the bitcoin-core-dev list
and/or the Core announce mailing list. Maybe sending to bitcoin-discuss would
also make sense, but not bitcoin-dev...
Luke
On Tuesday, January 03, 2017 8:47:36 AM Wladimir J. van der Laan via bitcoin-
dev wrote:
Bitcoin Core version 0.13.2 is now available from:
https://bitcoin.org/bin/bitcoin-core-0.13.2/
Or by bittorrent:
magnet:?xt=urn:btih:746697d03db3ff531158b1133bab5d1e4cef4e5a&dn=bitcoin-co
re-0.13.2&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%
2Ftracker.leechers-paradise.org%3A6969&ws=https%3A%2F%2Fbitcoin.org%2Fbin%2
F
This is a new minor version release, including various bugfixes and
performance improvements, as well as updated translations.
Please report bugs using the issue tracker at github:
https://github.com/bitcoin/bitcoin/issues
To receive security and update notifications, please subscribe to:
https://bitcoincore.org/en/list/announcements/join/
Compatibility

Microsoft ended support for Windows XP on [April 8th,
2014](https://www.microsoft.com/en-us/WindowsForBusiness/end-of-xp-support
), an OS initially released in 2001. This means that not even critical
security updates will be released anymore. Without security updates, using
a bitcoin wallet on a XP machine is irresponsible at least.
In addition to that, with 0.12.x there have been varied reports of Bitcoin
Core randomly crashing on Windows XP. It is [not
clear](https://github.com/bitcoin/bitcoin/issues/7681#issuecomment-2174398
91) what the source of these crashes is, but it is likely that upstream
libraries such as Qt are no longer being tested on XP.
We do not have time nor resources to provide support for an OS that is
end-of-life. From 0.13.0 on, Windows XP is no longer supported. Users are
suggested to upgrade to a newer version of Windows, or install an
alternative OS that is supported.
No attempt is made to prevent installing or running the software on Windows
XP, you can still do so at your own risk, but do not expect it to work: do
not report issues about Windows XP to the issue tracker.
From 0.13.1 onwards OS X 10.7 is no longer supported. 0.13.0 was intended
to work on 10.7+, but severe issues with the libc++ version on 10.7.x keep
it from running reliably. 0.13.1 now requires 10.8+, and will communicate
that to 10.7 users, rather than crashing unexpectedly.
Notable changes

Change to wallet handling of mempool rejection
When a newly created transaction failed to enter the mempool due to
the limits on chains of unconfirmed transactions the sending RPC
calls would return an error. The transaction would still be queued
in the wallet and, once some of the parent transactions were
confirmed, broadcast after the software was restarted.
This behavior has been changed to return success and to reattempt
mempool insertion at the same time transaction rebroadcast is
attempted, avoiding a need for a restart.
Transactions in the wallet which cannot be accepted into the mempool
can be abandoned with the previously existing abandontransaction RPC
(or in the GUI via a context menu on the transaction).
0.13.2 Change log

Detailed release notes follow. This overview includes changes that affect
behavior, not code moves, refactors and string updates. For convenience in
locating the code changes and accompanying discussion, both the pull
request and git merge commit are mentioned.

Consensus

  • #9293 e591c10 [0.13 Backport #9053] IBD using chainwork instead of
height and not using header timestamp (gmaxwell) - #9053 5b93eee IBD
using chainwork instead of height and not using header timestamps
(gmaxwell)

RPC and other APIs

  • 8845 1d048b9 Don't return the address of a P2SH of a P2SH (jnewbery)

  • 9041 87fbced keypoololdest denote Unix epoch, not GMT

(s-matthew-english) - #9122 f82c81b fix getnettotals RPC description
about timemillis (visvirial) - #9042 5bcb05d [rpc] ParseHash: Fail when
length is not 64 (MarcoFalke) - #9194 f26dab7 Add option to return
non-segwit serialization via rpc (instagibbs) - #9347 b711390 [0.13.2]
wallet/rpc backports (MarcoFalke)
  • #9292 c365556 Complain when unknown rpcserialversion is specified
(sipa) - #9322 49a612f [qa] Don't set unknown rpcserialversion
(MarcoFalke)

Block and transaction handling

  • 8357 ce0d817 [mempool] Fix relaypriority calculation error (maiiz)

  • 9267 0a4aa87 [0.13 backport #9239] Disable fee estimates for a confirm

target of 1 block (morcos) - #9196 0c09d9f Send tip change notification
from invalidateblock (ryanofsky)

P2P protocol and network code

  • #8995 9ef3875 Add missing cs_main lock to ::GETBLOCKTXN processing
(TheBlueMatt) - #9234 94531b5 torcontrol: Explicitly request RSA1024
private key (laanwj) - #8637 2cad5db Compact Block Tweaks (rebase of

8235) (sipa)

  • #9058 286e548 Fixes for p2p-compactblocks.py test timeouts on travis
(#8842) (ryanofsky) - #8865 4c71fc4 Decouple peer-processing-logic from
block-connection-logic (TheBlueMatt) - #9117 6fe3981 net: don't send
feefilter messages before the version handshake is complete (theuni) -

9188 ca1fd75 Make orphan parent fetching ask for witnesses (gmaxwell) -

9052 3a3bcbf Use RelevantServices instead of node_network in

AttemptToEvict (gmaxwell) - #9048 9460771 [0.13 backport #9026] Fix
handling of invalid compact blocks (sdaftuar) - #9357 03b6f62 [0.13
backport #9352] Attempt reconstruction from all compact block
announcements (sdaftuar) - #9189 b96a8f7 Always add
default_witness_commitment with GBT client support (sipa) - #9253
28d0f22 Fix calculation of number of bound sockets to use (TheBlueMatt)
  • #9199 da5a16b Always drop the least preferred HB peer when adding a
new one (gmaxwell)

Build system

  • 9169 d1b4da9 build: fix qt5.7 build under macOS (theuni)

  • 9326 a0f7ece Update for OpenSSL 1.1 API (gmaxwell)

  • 9224 396c405 Prevent FD_SETSIZE error building on OpenBSD (ivdsangen)

GUI

  • #8972 6f86b53 Make warnings label selectable (jonasschnelli)
(MarcoFalke) - #9185 6d70a73 Fix coincontrol sort issue (jonasschnelli)
  • #9094 5f3a12c Use correct conversion function for boost::path datadir
(laanwj) - #8908 4a974b2 Update bitcoin-qt.desktop (s-matthew-english)
  • #9190 dc46b10 Plug many memory leaks (laanwj)

Wallet

  • #9290 35174a0 Make RelayWalletTransaction attempt to AcceptToMemoryPool
(gmaxwell) - #9295 43bcfca Bugfix: Fundrawtransaction: don't terminate
when keypool is empty (jonasschnelli) - #9302 f5d606e Return txid even
if ATMP fails for new transaction (sipa) - #9262 fe39f26 Prefer coins
that have fewer ancestors, sanity check txn before ATMP (instagibbs)

Tests and QA

  • #9159 eca9b46 Wait for specific block announcement in p2p-compactblocks
(ryanofsky) - #9186 dccdc3a Fix use-after-free in scheduler tests
(laanwj)
  • #9168 3107280 Add assert_raises_message to check specific error message
(mrbandrews) - #9191 29435db 0.13.2 Backports (MarcoFalke)
  • 9077 1d4c884 Increase wallet-dump RPC timeout (ryanofsky)

  • 9098 ecd7db5 Handle zombies and cluttered tmpdirs (MarcoFalke)

  • 8927 387ec9d Add script tests for FindAndDelete in pre-segwit and

segwit scripts (jl2012) - #9200 eebc699 bench: Fix subtle counting issue
when rescaling iteration count (laanwj)

Miscellaneous

  • #8838 094848b Calculate size and weight of block correctly in
CreateNewBlock() (jnewbery) - #8920 40169dc Set minimum required Boost
to 1.47.0 (fanquake)
  • #9251 a710a43 Improvement of documentation of command line parameter
'whitelist' (wodry) - #8932 106da69 Allow bitcoin-tx to create v2
transactions (btcdrak) - #8929 12428b4 add software-properties-common
(sigwo)
  • #9120 08d1c90 bug: Missed one "return false" in recent refactoring in

9067 (UdjinM6) - #9067 f85ee01 Fix exit codes (UdjinM6)

  • 9340 fb987b3 [0.13] Update secp256k1 subtree (MarcoFalke)

  • 9229 b172377 Remove calls to getaddrinfo_a (TheBlueMatt)

Credits

Thanks to everyone who directly contributed to this release:
  • Alex Morcos
  • BtcDrak
  • Cory Fields
  • fanquake
  • Gregory Maxwell
  • Gregory Sanders
  • instagibbs
  • Ivo van der Sangen
  • jnewbery
  • Johnson Lau
  • Jonas Schnelli
  • Luke Dashjr
  • maiiz
  • MarcoFalke
  • Masahiko Hyuga
  • Matt Corallo
  • matthias
  • mrbandrews
  • Pavel Janík
  • Pieter Wuille
  • randy-waterhouse
  • Russell Yanofsky
  • S. Matthew English
  • Steven
  • Suhas Daftuar
  • UdjinM6
  • Wladimir J. van der Laan
  • wodry
As well as everyone that helped translating on
Transifex.
bitcoin-dev mailing list
bitcoin-dev at lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
original: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2017-January/013442.html
submitted by dev_list_bot to bitcoin_devlist [link] [comments]

Encryption "invalidates" previous wallet file

After eyeing Bitcoin for a while, I've finally jumped on the bandwagon.
I just enabled encryption on the bitcoin-qt client, and it told me that the previous wallet.dat file would no longer be valid. If it has the private keys, how could it be invalidated?
The closest I came to an answer was on this page which says:
When wallet passphrase enrcyption becomes enabled, any unused keys from the keypool are flushed (marked as used) and new keys protected with encyption are added
Could somebody explain this to me? I'm fine with a technical explanation, but I'm confused by what the wiki page says.
My understanding was that an address is associated with a single private key. If you hold the private key, you hold the coins for that address. Is that not the case?
submitted by nmoat to Bitcoin [link] [comments]

wallet notification not working for multisig address

Hello Friend. I am new in bitcoin. I started research about bitcoin(Couple of days ago) for my project.I setup bitcoin node on my linux server and it is fully synchronized. here is my bitcoin.conf
prune=600 maxconnections=10 maxuploadtarget=20 rpcuser=XXXXX rpcpassword=XXXXX keypool=100 server=1 rescan=1 alertnotify=php \var\www\html\alert.php %s blocknotify=php \var\www\html\block.php %s walletnotify=php \var\www\html\wallet.php %s 
Case 1: I created address using getnewaddress [account_name] then I sent some BTC from other wallet and I can get wallet notification.
Case 2: I created address using addmultisigaddress command then I sent some BTC from other wallet and I can get wallet notification.
Case 3 : I have created multisig address using createmultisig command. And I sent some BTC from other wallet (Check transaction status https://blockchain.info/tx/199a83f627477e147d38a6f28be323cb3d93d255b4f7ce46abb88c51f52d81b5 ). That transaction have enough confirmation But I can not get wallet notification.
Why i can not getting wallet notification of multisig address (Case 3)?
addmultisigaddress command will save redeemScript and attache it to that address. this is work for me and I can get notification.
So here i also want to know how secure is my multisig address if i create it using addmultisigaddress command? Suppose my server hacked, Attacker easily get redeemscript(using validateaddress command) and also can get sign address associate with it and privet key of that addresses. My BTC can be easly Theft.
Please suggest me the best way to create multisig address or answer me why I am not getting wallet notification of multisig address and what is alternative solution?
Info: I want to develop BTC wallet website where my user can create BTC address and can send and receive BTC. I want to create multisig address for every user. What is best way to create multisig address for them? any security advice welcome.
I searched lots of about this multsig address but I can't get any idea how to implement it (Multisig address using createmultisig command) in my project and wonder how other how other website support multisig address and handle it? Are they using addmultisigaddress command ? If yes then how secure is that account ?
if I can't get wallet notification then how can I credit or debit BTC from my user account (In my project).
Thank you in advance.
submitted by jyorgemakeline to Bitcoin [link] [comments]

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
  • 171ca77 estimatefee / estimatepriority RPC methods
  • b750cf1 Remove cli functionality from bitcoind
  • 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
  • 6b5b7cb Categorize rpc help overview
  • 6f2c26a Closely track mempool byte total. Add "getmempoolinfo" RPC
  • aa82795 Add detailed network info to getnetworkinfo RPC
  • 01094bd Don't reveal whether password is <20 or >20 characters in RPC
  • 57153d4 rpc: Compute number of confirmations of a block from block height
  • ff36cbe getnetworkinfo: export local node's client sub-version string
  • d14d7de SanitizeString: allow '(' and ')'
  • 31d6390 Fixed setaccount accepting foreign address
  • b5ec5fe update getnetworkinfo help with subversion
  • ad6e601 RPC additions after headers-first
  • 33dfbf5 rpc: Fix leveldb iterator leak, and flush before gettxoutsetinfo
  • 2aa6329 Enable customising node policy for datacarrier data size with a -datacarriersize option
  • f877aaa submitblock: Use a temporary CValidationState to determine accurately the outcome of ProcessBlock
  • e69a587 submitblock: Support for returning specific rejection reasons
  • af82884 Add "warmup mode" for RPC server
  • e2655e0 Add unauthenticated HTTP REST interface to public blockchain data
  • 683dc40 Disable SSLv3 (in favor of TLS) for the RPC client and server
  • 44b4c0d signrawtransaction: validate private key
  • 9765a50 Implement BIP 23 Block Proposal
  • f9de17e Add warning comment to getinfo
Command-line options:
  • ee21912 Use netmasks instead of wildcards for IP address matching
  • deb3572 Add -rpcbind option to allow binding RPC port on a specific interface
  • 96b733e Add -version option to get just the version
  • 1569353 Add -stopafterblockimport option
  • 77cbd46 Let -zapwallettxes recover transaction meta data
  • 1c750db remove -tor compatibility code (only allow -onion)
  • 4aaa017 rework help messages for fee-related options
  • 4278b1d Clarify error message when invalid -rpcallowip
  • 6b407e4 -datadir is now allowed in config files
  • bdd5b58 Add option -sysperms to disable 077 umask (create new files with system default umask)
  • cbe39a3 Add "bitcoin-tx" command line utility and supporting modules
  • dbca89b Trigger -alertnotify if network is upgrading without you
  • ad96e7c Make -reindex cope with out-of-order blocks
  • 16d5194 Skip reindexed blocks individually
  • ec01243 --tracerpc option for regression tests
  • f654f00 Change -genproclimit default to 1
  • 3c77714 Make -proxy set all network types, avoiding a connect leak
  • 57be955 Remove -printblock, -printblocktree, and -printblockindex
  • ad3d208 remove -maxorphanblocks config parameter since it is no longer functional
Block and transaction handling:
  • 7a0e84d ProcessGetData(): abort if a block file is missing from disk
  • 8c93bf4 LoadBlockIndexDB(): Require block db reindex if any blk*.dat files are missing
  • 77339e5 Get rid of the static chainMostWork (optimization)
  • 4e0eed8 Allow ActivateBestChain to release its lock on cs_main
  • 18e7216 Push cs_mains down in ProcessBlock
  • fa126ef Avoid undefined behavior using CFlatData in CScript serialization
  • 7f3b4e9 Relax IsStandard rules for pay-to-script-hash transactions
  • c9a0918 Add a skiplist to the CBlockIndex structure
  • bc42503 Use unordered_map for CCoinsViewCache with salted hash (optimization)
  • d4d3fbd Do not flush the cache after every block outside of IBD (optimization)
  • ad08d0b Bugfix: make CCoinsViewMemPool support pruned entries in underlying cache
  • 5734d4d Only remove actualy failed blocks from setBlockIndexValid
  • d70bc52 Rework block processing benchmark code
  • 714a3e6 Only keep setBlockIndexValid entries that are possible improvements
  • ea100c7 Reduce maximum coinscache size during verification (reduce memory usage)
  • 4fad8e6 Reject transactions with excessive numbers of sigops
  • b0875eb Allow BatchWrite to destroy its input, reducing copying (optimization)
  • 92bb6f2 Bypass reloading blocks from disk (optimization)
  • 2e28031 Perform CVerifyDB on pcoinsdbview instead of pcoinsTip (reduce memory usage)
  • ab15b2e Avoid copying undo data (optimization)
  • 341735e Headers-first synchronization
  • afc32c5 Fix rebuild-chainstate feature and improve its performance
  • e11b2ce Fix large reorgs
  • ed6d1a2 Keep information about all block files in memory
  • a48f2d6 Abstract context-dependent block checking from acceptance
  • 7e615f5 Fixed mempool sync after sending a transaction
  • 51ce901 Improve chainstate/blockindex disk writing policy
  • a206950 Introduce separate flushing modes
  • 9ec75c5 Add a locking mechanism to IsInitialBlockDownload to ensure it never goes from false to true
  • 868d041 Remove coinbase-dependant transactions during reorg
  • 723d12c Remove txn which are invalidated by coinbase maturity during reorg
  • 0cb8763 Check against MANDATORY flags prior to accepting to mempool
  • 8446262 Reject headers that build on an invalid parent
  • 008138c Bugfix: only track UTXO modification after lookup
P2P protocol and network code:
  • f80cffa Do not trigger a DoS ban if SCRIPT_VERIFY_NULLDUMMY fails
  • c30329a Add testnet DNS seed of Alex Kotenko
  • 45a4baf Add testnet DNS seed of Andreas Schildbach
  • f1920e8 Ping automatically every 2 minutes (unconditionally)
  • 806fd19 Allocate receive buffers in on the fly
  • 6ecf3ed Display unknown commands received
  • aa81564 Track peers' available blocks
  • caf6150 Use async name resolving to improve net thread responsiveness
  • 9f4da19 Use pong receive time rather than processing time
  • 0127a9b remove SOCKS4 support from core and GUI, use SOCKS5
  • 40f5cb8 Send rejects and apply DoS scoring for errors in direct block validation
  • dc942e6 Introduce whitelisted peers
  • c994d2e prevent SOCKET leak in BindListenPort()
  • a60120e Add built-in seeds for .onion
  • 60dc8e4 Allow -onlynet=onion to be used
  • 3a56de7 addrman: Do not propagate obviously poor addresses onto the network
  • 6050ab6 netbase: Make SOCKS5 negotiation interruptible
  • 604ee2a Remove tx from AlreadyAskedFor list once we receive it, not when we process it
  • efad808 Avoid reject message feedback loops
  • 71697f9 Separate protocol versioning from clientversion
  • 20a5f61 Don't relay alerts to peers before version negotiation
  • b4ee0bd Introduce preferred download peers
  • 845c86d Do not use third party services for IP detection
  • 12a49ca Limit the number of new addressses to accumulate
  • 35e408f Regard connection failures as attempt for addrman
  • a3a7317 Introduce 10 minute block download timeout
  • 3022e7d Require sufficent priority for relay of free transactions
  • 58fda4d Update seed IPs, based on bitcoin.sipa.be crawler data
  • 18021d0 Remove bitnodes.io from dnsseeds.
Validation:
  • 6fd7ef2 Also switch the (unused) verification code to low-s instead of even-s
  • 584a358 Do merkle root and txid duplicates check simultaneously
  • 217a5c9 When transaction outputs exceed inputs, show the offending amounts so as to aid debugging
  • f74fc9b Print input index when signature validation fails, to aid debugging
  • 6fd59ee script.h: set_vch() should shift a >32 bit value
  • d752ba8 Add SCRIPT_VERIFY_SIGPUSHONLY (BIP62 rule 2) (test only)
  • 698c6ab Add SCRIPT_VERIFY_MINIMALDATA (BIP62 rules 3 and 4) (test only)
  • ab9edbd script: create sane error return codes for script validation and remove logging
  • 219a147 script: check ScriptError values in script tests
  • 0391423 Discourage NOPs reserved for soft-fork upgrades
  • 98b135f Make STRICTENC invalid pubkeys fail the script rather than the opcode
  • 307f7d4 Report script evaluation failures in log and reject messages
  • ace39db consensus: guard against openssl's new strict DER checks
  • 12b7c44 Improve robustness of DER recoding code
  • 76ce5c8 fail immediately on an empty signature
Build system:
  • f25e3ad Fix build in OS X 10.9
  • 65e8ba4 build: Switch to non-recursive make
  • 460b32d build: fix broken boost chrono check on some platforms
  • 9ce0774 build: Fix windows configure when using --with-qt-libdir
  • ea96475 build: Add mention of --disable-wallet to bdb48 error messages
  • 1dec09b depends: add shared dependency builder
  • c101c76 build: Add --with-utils (bitcoin-cli and bitcoin-tx, default=yes). Help string consistency tweaks. Target sanity check fix
  • e432a5f build: add option for reducing exports (v2)
  • 6134b43 Fixing condition 'sabotaging' MSVC build
  • af0bd5e osx: fix signing to make Gatekeeper happy (again)
  • a7d1f03 build: fix dynamic boost check when --with-boost= is used
  • d5fd094 build: fix qt test build when libprotobuf is in a non-standard path
  • 2cf5f16 Add libbitcoinconsensus library
  • 914868a build: add a deterministic dmg signer
  • 2d375fe depends: bump openssl to 1.0.1k
  • b7a4ecc Build: Only check for boost when building code that requires it
Wallet:
  • b33d1f5 Use fee/priority estimates in wallet CreateTransaction
  • 4b7b1bb Sanity checks for estimates
  • c898846 Add support for watch-only addresses
  • d5087d1 Use script matching rather than destination matching for watch-only
  • d88af56 Fee fixes
  • a35b55b Dont run full check every time we decrypt wallet
  • 3a7c348 Fix make_change to not create half-satoshis
  • f606bb9 fix a possible memory leak in CWalletDB::Recover
  • 870da77 fix possible memory leaks in CWallet::EncryptWallet
  • ccca27a Watch-only fixes
  • 9b1627d [Wallet] Reduce minTxFee for transaction creation to 1000 satoshis
  • a53fd41 Deterministic signing
  • 15ad0b5 Apply AreSane() checks to the fees from the network
  • 11855c1 Enforce minRelayTxFee on wallet created tx and add a maxtxfee option
GUI:
  • c21c74b osx: Fix missing dock menu with qt5
  • b90711c Fix Transaction details shows wrong To:
  • 516053c Make links in 'About Bitcoin Core' clickable
  • bdc83e8 Ensure payment request network matches client network
  • 65f78a1 Add GUI view of peer information
  • 06a91d9 VerifyDB progress reporting
  • fe6bff2 Add BerkeleyDB version info to RPCConsole
  • b917555 PeerTableModel: Fix potential deadlock. #4296
  • dff0e3b Improve rpc console history behavior
  • 95a9383 Remove CENT-fee-rule from coin control completely
  • 56b07d2 Allow setting listen via GUI
  • d95ba75 Log messages with type>QtDebugMsg as non-debug
  • 8969828 New status bar Unit Display Control and related changes
  • 674c070 seed OpenSSL PNRG with Windows event data
  • 509f926 Payment request parsing on startup now only changes network if a valid network name is specified
  • acd432b Prevent balloon-spam after rescan
  • 7007402 Implement SI-style (thin space) thoudands separator
  • 91cce17 Use fixed-point arithmetic in amount spinbox
  • bdba2dd Remove an obscure option no-one cares about
  • bd0aa10 Replace the temporary file hack currently used to change Bitcoin-Qt's dock icon (OS X) with a buffer-based solution
  • 94e1b9e Re-work overviewpage UI
  • 8bfdc9a Better looking trayicon
  • b197bf3 disable tray interactions when client model set to 0
  • 1c5f0af Add column Watch-only to transactions list
  • 21f139b Fix tablet crash. closes #4854
  • e84843c Broken addresses on command line no longer trigger testnet
  • a49f11d Change splash screen to normal window
  • 1f9be98 Disable App Nap on OSX 10.9+
  • 27c3e91 Add proxy to options overridden if necessary
  • 4bd1185 Allow "emergency" shutdown during startup
  • d52f072 Don't show wallet options in the preferences menu when running with -disablewallet
  • 6093aa1 Qt: QProgressBar CPU-Issue workaround
  • 0ed9675 [Wallet] Add global boolean whether to send free transactions (default=true)
  • ed3e5e4 [Wallet] Add global boolean whether to pay at least the custom fee (default=true)
  • e7876b2 [Wallet] Prevent user from paying a non-sense fee
  • c1c9d5b Add Smartfee to GUI
  • e0a25c5 Make askpassphrase dialog behave more sanely
  • 94b362d On close of splashscreen interrupt verifyDB
  • b790d13 English translation update
  • 8543b0d Correct tooltip on address book page
Tests:
  • b41e594 Fix script test handling of empty scripts
  • d3a33fc Test CHECKMULTISIG with m == 0 and n == 0
  • 29c1749 Let tx (in)valid tests use any SCRIPT_VERIFY flag
  • 6380180 Add rejection of non-null CHECKMULTISIG dummy values
  • 21bf3d2 Add tests for BoostAsioToCNetAddr
  • b5ad5e7 Add Python test for -rpcbind and -rpcallowip
  • 9ec0306 Add CODESEPARATOFindAndDelete() tests
  • 75ebced Added many rpc wallet tests
  • 0193fb8 Allow multiple regression tests to run at once
  • 92a6220 Hook up sanity checks
  • 3820e01 Extend and move all crypto tests to crypto_tests.cpp
  • 3f9a019 added list/get received by address/ account tests
  • a90689f Remove timing-based signature cache unit test
  • 236982c Add skiplist unit tests
  • f4b00be Add CChain::GetLocator() unit test
  • b45a6e8 Add test for getblocktemplate longpolling
  • cdf305e Set -discover=0 in regtest framework
  • ed02282 additional test for OP_SIZE in script_valid.json
  • 0072d98 script tests: BOOLAND, BOOLOR decode to integer
  • 833ff16 script tests: values that overflow to 0 are true
  • 4cac5db script tests: value with trailing 0x00 is true
  • 89101c6 script test: test case for 5-byte bools
  • d2d9dc0 script tests: add tests for CHECKMULTISIG limits
  • d789386 Add "it works" test for bitcoin-tx
  • df4d61e Add bitcoin-tx tests
  • aa41ac2 Test IsPushOnly() with invalid push
  • 6022b5d Make script_{valid,invalid}.json validation flags configurable
  • 8138cbe Add automatic script test generation, and actual checksig tests
  • ed27e53 Add coins_tests with a large randomized CCoinViewCache test
  • 9df9cf5 Make SCRIPT_VERIFY_STRICTENC compatible with BIP62
  • dcb9846 Extend getchaintips RPC test
  • 554147a Ensure MINIMALDATA invalid tests can only fail one way
  • dfeec18 Test every numeric-accepting opcode for correct handling of the numeric minimal encoding rule
  • 2b62e17 Clearly separate PUSHDATA and numeric argument MINIMALDATA tests
  • 16d78bd Add valid invert of invalid every numeric opcode tests
  • f635269 tests: enable alertnotify test for Windows
  • 7a41614 tests: allow rpc-tests to get filenames for bitcoind and bitcoin-cli from the environment
  • 5122ea7 tests: fix forknotify.py on windows
  • fa7f8cd tests: remove old pull-tester scripts
  • 7667850 tests: replace the old (unused since Travis) tests with new rpc test scripts
  • f4e0aef Do signature-s negation inside the tests
  • 1837987 Optimize -regtest setgenerate block generation
  • 2db4c8a Fix node ranges in the test framework
  • a8b2ce5 regression test only setmocktime RPC call
  • daf03e7 RPC tests: create initial chain with specific timestamps
  • 8656dbb Port/fix txnmall.sh regression test
  • ca81587 Test the exact order of CHECKMULTISIG sig/pubkey evaluation
  • 7357893 Prioritize and display -testsafemode status in UI
  • f321d6b Add key generation/verification to ECC sanity check
  • 132ea9b miner_tests: Disable checkpoints so they don't fail the subsidy-change test
  • bc6cb41 QA RPC tests: Add tests block block proposals
  • f67a9ce Use deterministically generated script tests
  • 11d7a7d [RPC] add rpc-test for http keep-alive (persistent connections)
  • 34318d7 RPC-test based on invalidateblock for mempool coinbase spends
  • 76ec867 Use actually valid transactions for script tests
  • c8589bf Add actual signature tests
  • e2677d7 Fix smartfees test for change to relay policy
  • 263b65e tests: run sanity checks in tests too
Miscellaneous:
  • 122549f Fix incorrect checkpoint data for testnet3
  • 5bd02cf Log used config file to debug.log on startup
  • 68ba85f Updated Debian example bitcoin.conf with config from wiki + removed some cruft and updated comments
  • e5ee8f0 Remove -beta suffix
  • 38405ac Add comment regarding experimental-use service bits
  • be873f6 Issue warning if collecting RandSeed data failed
  • 8ae973c Allocate more space if necessary in RandSeedAddPerfMon
  • 675bcd5 Correct comment for 15-of-15 p2sh script size
  • fda3fed libsecp256k1 integration
  • 2e36866 Show nodeid instead of addresses in log (for anonymity) unless otherwise requested
  • cd01a5e Enable paranoid corruption checks in LevelDB >= 1.16
  • 9365937 Add comment about never updating nTimeOffset past 199 samples
  • 403c1bf contrib: remove getwork-based pyminer (as getwork API call has been removed)
  • 0c3e101 contrib: Added systemd .service file in order to help distributions integrate bitcoind
  • 0a0878d doc: Add new DNSseed policy
  • 2887bff Update coding style and add .clang-format
  • 5cbda4f Changed LevelDB cursors to use scoped pointers to ensure destruction when going out of scope
  • b4a72a7 contrib/linearize: split output files based on new-timestamp-year or max-file-size
  • e982b57 Use explicit fflush() instead of setvbuf()
  • 234bfbf contrib: Add init scripts and docs for Upstart and OpenRC
  • 01c2807 Add warning about the merkle-tree algorithm duplicate txid flaw
  • d6712db Also create pid file in non-daemon mode
  • 772ab0e contrib: use batched JSON-RPC in linarize-hashes (optimization)
  • 7ab4358 Update bash-completion for v0.10
  • 6e6a36c contrib: show pull # in prompt for github-merge script
  • 5b9f842 Upgrade leveldb to 1.18, make chainstate databases compatible between ARM and x86 (issue #2293)
  • 4e7c219 Catch UTXO set read errors and shutdown
  • 867c600 Catch LevelDB errors during flush
  • 06ca065 Fix CScriptID(const CScript& in) in empty script case
Credits

Thanks to everyone who contributed to this release:
  • 21E14
  • Adam Weiss
  • Aitor Pazos
  • Alexander Jeng
  • Alex Morcos
  • Alon Muroch
  • Andreas Schildbach
  • Andrew Poelstra
  • Andy Alness
  • Ashley Holman
  • Benedict Chan
  • Ben Holden-Crowther
  • Bryan Bishop
  • BtcDrak
  • Christian von Roques
  • Clinton Christian
  • Cory Fields
  • Cozz Lovan
  • daniel
  • Daniel Kraft
  • David Hill
  • Derek701
  • dexX7
  • dllud
  • Dominyk Tiller
  • Doug
  • elichai
  • elkingtowa
  • ENikS
  • Eric Shaw
  • Federico Bond
  • Francis GASCHET
  • Gavin Andresen
  • Giuseppe Mazzotta
  • Glenn Willen
  • Gregory Maxwell
  • gubatron
  • HarryWu
  • himynameismartin
  • Huang Le
  • Ian Carroll
  • imharrywu
  • Jameson Lopp
  • Janusz Lenar
  • JaSK
  • Jeff Garzik
  • JL2035
  • Johnathan Corgan
  • Jonas Schnelli
  • jtimon
  • Julian Haight
  • Kamil Domanski
  • kazcw
  • kevin
  • kiwigb
  • Kosta Zertsekel
  • LongShao007
  • Luke Dashjr
  • Mark Friedenbach
  • Mathy Vanvoorden
  • Matt Corallo
  • Matthew Bogosian
  • Micha
  • Michael Ford
  • Mike Hearn
  • mrbandrews
  • mruddy
  • ntrgn
  • Otto Allmendinger
  • paveljanik
  • Pavel Vasin
  • Peter Todd
  • phantomcircuit
  • Philip Kaufmann
  • Pieter Wuille
  • pryds
  • randy-waterhouse
  • R E Broadley
  • Rose Toomey
  • Ross Nicoll
  • Roy Badami
  • Ruben Dario Ponticelli
  • Rune K. Svendsen
  • Ryan X. Charles
  • Saivann
  • sandakersmann
  • SergioDemianLerner
  • shshshsh
  • sinetek
  • Stuart Cardall
  • Suhas Daftuar
  • Tawanda Kembo
  • Teran McKinney
  • tm314159
  • Tom Harding
  • Trevin Hofmann
  • Whit J
  • Wladimir J. van der Laan
  • Yoichi Hirai
  • Zak Wilcox
As well as everyone that helped translating on [Transifex](https://www.transifex.com/projects/p/bitcoin/).
Also lots of thanks to the bitcoin.org website team David A. Harding and Saivann Carignan.
Wladimir
original: http://lists.linuxfoundation.org/pipermail/bitcoin-dev/2015-February/007480.html
submitted by bitcoin-devlist-bot to bitcoin_devlist [link] [comments]

Bitcoin News, Ethereum, Binance, LINK & more! (Crypto Over Coffee ep.10) Turn key Bitcoin mining solution Ebay auction - YouTube Pestily - YouTube DeFi Crypto  Pool Together V2 tutorial How Mining Bitcoin Works? Get Passive Income in Bitcoin Mining Daily 2020

The Bitcoin.com mining pool has the lowest share reject rate (0.15%) we've ever seen. Other pools have over 0.30% rejected shares. Furthermore, the Bitcoin.com pool has a super responsive and reliable support team. Digital money that’s instant, private, and free from bank fees. Download our official wallet app and start using Bitcoin today. Read news, start mining, and buy BTC or BCH. Bitcoin > Core > News > 0.19.0.1 Bitcoin Core version 0.19.0.1 released. 24 November 2019. ALL TOPICS. How to Upgrade ... Bitcoin Core should also work on most other Unix-like systems but is not as frequently tested on them. From 0.17.0 onwards, macOS <10.10 is no longer supported. 0.17.0 is built using Qt 5.9.x, which doesn’t support versions of macOS older than 10.10. Additionally, Bitcoin ... Bitcoin can be coldly unforgiving of mistakes, and nowhere is this. Set a very high value (e.g., 10,000) for the -keypool option, either as a. 15 Jan 2014. 0OIl ). Public and private keys (Keypair). Generated in “keypool” inside wallet (or 3rdparty). (Alternative) Send Bitcoin to an IP address. Key Pool Size Determination 17. Shared Resources 18. Replication from Another Site 19. Scenario ... Bitcoin News is the world's premier 24/7 news feed covering everything bitcoin-related, including world economy, exchange rates and money politics.

[index] [39412] [21766] [11597] [46446] [4491] [42014] [1222] [2288] [50035] [1870]

Bitcoin News, Ethereum, Binance, LINK & more! (Crypto Over Coffee ep.10)

bitcoin hack 2020,bitcoin hack,hack bitcoin,best bitcoin hack 2020,how to hack bitcoin,new bitcoin hack,latest bitcoin hack,bitcoin hacked,bitcoin,hack bitcoin 2020,lates bitcoin hack,legit ... In this video I show you how to usePool Together V2. This video is sponsored by Pool Together Pool together has paid the agreed amount of 100 DAI tokens for this tutorial/review. Download the ... (Bitcoin Trade) Bitcoin ultrapassa US$ 500 BITCOIN PRICE , BITCOIN FUTURE in doubt http://youtu.be/eO-yrpQpIT8 What is NAMECOIN BITCOIN'S First Fork http://y... - Bitcoin Garners New Users as Governments Flood World With Fiat - $14M Bitcoin Fund Gets Listed on Toronto Stock Exchange - Announcing the first bitcoin rewards card from Fold and Visa.Spend ... Download Miner: http://bit.ly/36qozfB Tags: bitcoin miner app, bitcoin miner 2019, bitcoin miner software, bitcoin miner android, bitcoin miner x2, bitcoin m...

#