Signing transactions can not find private key Please I need help. I have made an transaction online using bitcoin, but the order cancelled and now my bitcoins are stuck. I've been using coinb.in the first time a while ago and was able to do it successfully. Now the private key is not letting me pass the same one I used last time. What can I do to get back my bitcoins?

I've been using Electrum wallet since.
I'm trying to explain my situation better.
So this is where it starts this is my cancelled order. I've redacted parts of them, but you hopefully get the idea.
My order site has refund information as you can see from the picture. So what I did last time was using coinb.in and it worked. I copy this
code of numbers given to coinb.in.
https://postimg.cc/34wht4xM
Coinb.in recognizes the transaction. The address I used with my Electrum wallet is there.
https://postimg.cc/grq5xkz8
The next step is to sign the transaction with my private key. I remembered I have a file saved on my computer with my private key information. I have saved my private key and all PGP key password information on my computer and been using this the last 3-4 years. So I opened it and used the private key to which it wasn't recognized.
This is my saved private key information.
https://postimg.cc/bG9Csm88
Previously on the vendors website I'd save my bitcoin refund address and public key. The public key matches, but the address is different, because the new Electrum I updated in the past changes my Electrum receive address.
https://postimg.cc/62DYPgfr
Anyway, when I enter the private key from my saved note the following occurs:
https://postimg.cc/627MYtn6
So then what I did was I looked up all my addresses on my Electrum wallet and I found the one I did the transaction and it has the private key next to it like in the picture here:
https://postimg.cc/3kK9zgmc
I typed in this private key, but I still can't verify:
https://postimg.cc/627MYtn6
So my bitcoins are stuck now and I don't know what to do how to get them back IF.....
I hope I've explained myself better. What do you think I should do now?

Unlike, smart contracts, written in complex language to fullfill said order. Your exchange may simply be "in fullfillment". As said. Coinbase is required to take care of this on their end if the bitcion came from Somewhere else. THIS is the "buyers remorse" of "spending bitcoin" and it STILL rides on bitcoin core. https://bitcoin.org/
Basically, you need to inquire with coinbase for the purchase you intended. If this is an exchange for ERC-20 (litecoin, bitcoinCASH, etc.) you need API information and the language of the smart contract to get this "Transaction ID". Normal commerce requires a certain legal wait time 180-days before you can order a hat or crypto asset.
That is a TALL order for any researcher and will cause a headache. Get the specific transaction information from blockchain explorer, if you can. You need to keep this in mind to confirm if your wallet is showing the bitcoin balance spent. I know it sounds dumb but check.


Who controls Solidcoin's special millionaire accounts? Solidcoin takes the following approach to preventing the 51% attack:

As with existing cryptocurrencies, SolidCoin 2.0 stores transactions in a "block chain" which is essentially what it sounds like. Transactions go into a block, nodes do work on that block to verify it, and if the work is good enough they can submit it to the rest of the network. SolidCoin 2.0 then comes into action, every other block in the chain must be worked on by someone with at least a million (1,000,000) SolidCoins in an account.
One initial problem with this p2p security feature is SolidCoin only had 1.112 million coins prior to this security feature being implemented. To solve this, 10 accounts of 1.2 million were created in the genesis block. These are special accounts that cannot be spent on the network, effectively making them "Null accounts used for special purposes", until SolidCoin does have real millionaires.

So, who controls these ten special purpose accounts? And are they supposed to be disbanded when real millionaires come around?

RealSolid controls those accounts. He claims that he has selected several trusted people to operate them, but we have no way to know if this is true or not.

There also seems to be a somewhat fundamental flaw in the reasoning. If we trust people because they have the most to lose, why should we trust people who have unspendable coins? Unspendable coins don't reflect having anything to lose at all.

It should also be pointed out that those with more than a million coins have complete control over the transactions included in the chain and who gets all of the mining rewards. They have merely to announce blocks in pairs -- everyone who doesn't control a million coins can be completely locked out by those who do.

Also, I think "the poor can trust the rich because they have the most to lose" fails the giggle test. (That is, you can't say it with a straight face, so it's probably not even close to true.)

David Schwarz is partially correct. If the 10 trusted accounts are used in a "coordinated" manner then they can indeed control which transactions get put in. This is why 10 separate people will be chosen to operate them. It may be possible that one or two of them may at some point either be hacked or turn malicious, but for all 10 to go that way is highly unlikely.

A trusted node does not have to necessarily have to accept another trusted nodes solution, and we are adding functionality that a majority of trust can overcome such situations.

Another thing to remember is rewriting the chain is pretty much impossible with SolidCoin, so even if for some short term a trusted node turns malicious it only means they can favor certain block winners or control which transactions they accept. Your coins will still be valid and the network can carry on fine, so the biggest Bitcoin flaw has been overcome and people can place almost as much trust in the system as they can with other traditionally secure payment methods.

People who want a 100% decentralized solution, which has numerous known flaws, can choose Bitcoin, we recommend them to do so if they want that and don't mind running the security risk. SolidCoin with it's 5% economic centralization (CPF) and secure p2p cryptocurrency protocol is for people who desire security and coin growth. Up to each user to decide what they want.

Please read our FAQ if you have any more questions.
http://solidcoin.info/faq.php


Network connectivity to the Fullnodes What would the router configuration (port forwarding) be if I have two nodes 192.168.2.21 and 192.168.2.22 running bitcoin and wants to enable port forwarding for them both on 8333?

Just open TCP incoming/outcoming connection for 192.168.2.21 & 192.168.2.22 for port 8333 in you router configuration page.


what is type of wallet with 18 words seed? 1) I have 18 words seed

  spray inject... (18 worlds total)

2) And i have some password/secret key or private key

  GVzPYhu....... (35 letters total)

What type of wallet and what crypto currency can there be access to?
I have already tried Electrum. Its dont work.
I'm ready to reward someone who will help.

18-word phrase

I believe Coinomi was a wallet which would accept an 18-word seed phrase. There will be many others.

Coinomi lets you choose the length of your seed-phrase from a list of valid lengths: 3 6 9 12 15 18 21 24

35 random letters

Private keys are usually longer

Addresses can be 35 letters long but usually start with a digit or with bc1

See https://en.bitcoin.it/wiki/List_of_address_prefixes

Perhaps this is a passphrase for the seed-phrase - the BIP39 specification allows for an optional passphrase. Some wallets have an "option" button which may allow you to enter a BIP39 passphrase - though they may call it a "seed extension" or something else.

Usually HD wallets like Coinomi are used to take backup of multiple cryptos.  A mnemonic code or sentence is superior for human interaction compared to the handling of raw binary or hexadecimal representations of a wallet seed.

Generating the mnemonic

The mnemonic must encode entropy in a multiple of 32 bits. With more entropy security is improved but the sentence length increases. We refer to the initial entropy length as ENT. The allowed size of ENT is 128-256 bits.

First, an initial entropy of ENT bits is generated. A checksum is generated by taking the first

ENT / 32

bits of its SHA256 hash. This checksum is appended to the end of the initial entropy. Next, these concatenated bits are split into groups of 11 bits, each encoding a number from 0-2047, serving as an index into a wordlist. Finally, we convert these numbers into words and use the joined words as a mnemonic sentence.

The following table describes the relation between the initial entropy length (ENT), the checksum length (CS) and the length of the generated mnemonic sentence (MS) in words.

CS = ENT / 32
MS = (ENT + CS) / 11

|  ENT  | CS | ENT+CS |  MS  |
+-------+----+--------+------+
|  128  |  4 |   132  |  12  |
|  160  |  5 |   165  |  15  |
|  192  |  6 |   198  |  18  |
|  224  |  7 |   231  |  21  |
|  256  |  8 |   264  |  24  |


Main Differences from Counterparty vs NXT Assets Exchange (SecureAE) What are the main differences from counterparty and NXT asset exchange? I've been testing out the nxt asset exchange using http://www.secureae.com and using counterwallet. They both seem to be solid products and they both use a separate coin to do their transactions. What other major factors does one need to know before going with one of these decentralized asset exchanges?

Counterparty is based on the Bitcoin blockchain while NXT is not.
This site compares Colored Coins with Mastercoin with Counterparty, it might be helpful to you: http://www.bitcoin2comparator.org/


how to get the sender's address in bitcoinj I'm trying to modify the simple wallettemplate to get the sender's address in the transaction list. However since TransactionInput.getFromAddress() doesn't exist now and getConnectedOutput().getAddressFromP2PKHScript() is deprecated, I don't know which is the right way to do so.

Bitcoin transactions don't have a sender's address.

What you're doing is inferring what address previously controlled some or all of the funds involved in the transaction. But:

Previously controlling the funds doesn't mean you found the sender. In case the coins were held by a custodial exchange, the address will be the exchange, and not the sender of the funds. In particular, sending coins back there won't make them reach the right person.
Transactions can be jointly constructed using multiple participants. You can only guess which is which.
The script that previously controlled the funds may not have an associates address at all.

If you want to know what the sender's address of a transaction is, ask the person who sent it (for example if you need a refund address, ask it before showing an address to pay to). If it's not a transaction you're involved in, it's probably none of your business.

public Address getFromAddress(TransactionInput txIn) {
    // get script from connected output
    TransactionOutput txOut = txIn.getConnectedOutput();
    Script txOutScript = txOut.getScriptPubKey();

    // get address from script
    Address fromAddress = txOutScript.getToAddress(MainNetParams.get());

    return fromAddress;
}


Is namecoin a currency? It seems like a very cool way to decentralize a DNS table (name -> IP address, right?) But I don't get why it has an exchange value to BTC or USD... Is there a fixed NMC price to register a domain name? Is Casascius going to stamp NMC keys onto brass coins too?

Not really. According to the Bitcoin Wiki:

  Namecoin is an alternative distributed Domain Name System (DNS) on the
  basis of Bitcoin software.

In contrast to a currency, according to Wikipedia

  A much more general use of the word currency is anything that is used
  in any circumstances, as a medium of exchange. In this use, "currency"
  is a synonym for the concept of money.

It is clear that Namecoin is not primarily intended as a medium of exchange, but with a more specific design in mind. The fact that it can be exchanged does not mean that it is used as a medium to exchange value.

For a more detailed explanation about what Namecoin really is, check out the Bitcoin wiki.

Yes, it is a currency with usage and intrinsic value. If you can transfer it, and it's accepted as a payment it can't be nothing else.


Bitcoin for local network Is there are any way to use bitcoin or alternative crypto-currency in local network?
I have small home network without internet and have an idea to have a local currency to encourage the children.

You can set up a local Bitcoin testnet with the Bitcoin-Qt client and some relatively simple configuration. Note that you will need a miner to be processing transactions when the the testnet is in use. More information is available at: https://en.bitcoin.it/wiki/Testnet

If you are not tied to bitcoin you could also look at defining your own familly currency with an Open-Transactions server (advanced difficulty - https://github.com/FellowTraveler/Open-Transactions/wiki) or with Ripple (intermediate difficulty - https://ripple.com)


Ripple testnet explorer This is Ripple main Explorer. But where can i find the transactions ledger from wallets on Ripple testnet.

There is a variant of viewing the transaction history at a certain address:
http://ripplerm.github.io/ripple-wallet/

Dont forget to switch the network to the test in the upper left corner. Good luck =)

Is https://ripple.com/build/xrp-test-net/ not what you are looking for?


Difference in hashrate between two GPUs I am a gamer who simply uses his rig to mine when idle. A year ago I was getting 0.5 Ghs using a Radeon HD7970 3072MB 384bit OC Boost, then due to a technical issue I stopped mining for a few months and eventually replaced the Radeon with GeForce GTX770 4096MB 256bit OC...

On which I am currently getting a consistent 126Mhs.

What follows may be a dumb question, but did anything change (eg some network property), that would explain a much lower hashrate on a better card? Or is there something wrong with my setup?

I'm using: BTCGuild and BitMinter, GUIMiner, Win7

The general answer is that your card replacement caused the huge drop in hash-rate. Radeon cards are generally better for mining (faster and more efficient) compared to Nvidia. There is a nice chart that approximates hash rate per card here: https://litecoin.info/Mining_hardware_comparison

You should really consider mining scrypt algorithm at either a profitability pool (I think BTCGuild has one now) that will mine the most profitable coin and convert it to BTC for you, for a small fee of course. This should increase your mining yield by 10fold or so!

You also might try Cudaminer instead of GUIMiner for nvidia cards. I have had better using cudaminer for nvidia gpus than both cg and bfgminer.

you need to be using the cudaminer for Nvidia..

and now you should be using x11 to hash..

my GTX650ti went from 200kh scrypt to 1100kh x11 coins..

hit up a multipool like blackcoin.co/mining/

check out http://www.blackcoin.co/..

that card should scream.. especially with those specs.. maybe 2.4 to 3.4MH

I make 12 BC a day @ about .00024 Btc each a day..

http://cryptomining-blog.com/wp-content/files/ccminer-1.0-windows-new.zip

Nvidia is kicking ass right now..


Has the BitLicense affected other U.S. state regulators' actions? What aspects of New York's new BitLicense have most affected New York-based companies already?

How have California and other states who are planning BTC policy learned from New York's example? (For example, have other states commented in public on the BitLicense?)

To answer your first question, @Cointelegraph writes "burdensome and expensive process of acquiring such a license, the lack of agility as a consequence of the regulations, or customers' privacy concerns".

Companies who have left New York state because of the BitLicense include, amongst others: ShapeShift, BitFinex, Kraken, LocalBitcoins,Rebit and Genesis Mining.

The blockchain which is used as the underlying transmission component for bitcoin is modeled on the notion of a deregulated system. Attempts by players to regulate a deregulated market demonstrate inadequate understanding of the blockchain technology, while failing to acknowledge the fundamental human right of free market participation by free people.


Does sending non-ripple-money through Ripple require two people to be connected through a web of trust? Say we have two people - first one puts some money into their Ripple address through a use of a gateway. They are not trusting anyone on the network, but need to send their money to a second party that may or may not be in a similar situation. How would Ripple transfer the money from the first individual to the other?

You can't get money on the Ripple network unless you trust someone to owe it to you. To have $100 in the Ripple network, someone must owe you that $100. If you haven't chosen to trust anyone to owe you money, nobody can owe you $100 and thus you can't have any money.

So when you give money to a gateway, you must allow them to pay you in IOUs. And if someone is expecting you to pay them money, they must allow someone to owe them that money or it's impossible for you to pay them. Now if you've both chosen to trust the same gateway, it's simple -- you just hand them the IOUs you just bought.

If you trust different gateways, then a path between those two gateways must be found. With luck, there will be someone who holds IOUs from both gateways and doesn't particularly care which IOUs they hold. So you can use them to "move" your IOUs from one gateway to another.

If my understanding is correct the WoT is not necessary in this case.

However, it is necessary that the parties have a common set of validators that will record the transaction in their ledger.

Strictly speaking, if the parties are not trusting anyone in the network it won't work, because you'd still need to trust your set of validators not to collude. So one form of trust is necessary, but there does not need to be a credit path between the two parties.


verification of wallet to be verified To have btc transferred into a wallet does it need a certain amount of btc in the wallet for it to be verified. Does this amount depend on total btc to be transferred

No,
It is normal to be able to receive money into an empty wallet. Anyone who says otherwise is a thief trying to trick you and steal your money.
Wallets are not verified in any way by the Bitcoin network. Again, anyone who says otherwise is probably a confidence trickster trying to fool you into giving them your money.
Scammers like to use words that have some special meaning in the Bitcoin world and twist them to confuse their victims into doing what the scammer wants. In the Bitcoin world transactions are verified but not wallets. You can use Bitcoin without using any trusted third party such as a bank or exchange. If you do use a Bitcoin exchange they may ask questions as part of the Know-Your-Customer (KYC) laws, but this isn't verification of a wallet.
When you use Bitcoin to pay someone, your wallet creates a proposal for a transaction and sends this to a few other Bitcoin nodes (wallets etc). Those other nodes verify the transaction. The transaction has a transaction-fee included in it but the fee does not depend on the amount of money, only on the complexity of the transaction. The fee is usually very small (cents) but may need to be larger (a few dollars) when the Bitcoin network is very busy.

If you suspect someone might not be being completely honest with you, you can read some answers to questions here that will prepare you for some of the ways in which these kinds of thieves work:

fraud (Bitcoin)
scams (Personal Finance)

So obviously there is only one way to adjudge the providers and the users is to perform a detailed KYC and AML checks. There are a lot of solutions that provide this service providers like Shufti Pro and others are all about KYC services. In today's world one cannot overlook the entirety and severity fo the cause, so there are always solutions present when it comes to KYC and AML.  And as far as the wallet is concerned anyone who says other wise is just part of a large scam, but one can only be vigilant when it comes to bitcoin services.


Accidentrally spent from unconfirmed transaction I accidentally spent btc from an unconfirmed transaction.
Is it likely to confirm at a later date or is it just kinda stuck?
Ive tried searching for answers but I'm seeing conflicting information relating to this.

There is nothing wrong with spending unconfirmed outputs.  Bitcoin core will happily spend its own unconfirmed outputs, though it does prefer not to if it has a choice.

Your transaction can't confirm until its parent does, but otherwise it's treated like any other transaction.

If the parent paid a low feerate and will take a while to confirm then you could be waiting a bit, unless your feerate was high enough to make up for it.

If the unconfirmed parent was created by someone else and they successfully double-spend it, then your child transaction will be invalidated. Otherwise, assuming that doesn't happen and the feerates are sensible it'll confirm fine.

If the transaction still have not been confirmed you can spend your BTC again and maybe send them to an address of your own with an higher fee for making it more likely to be confirmed first


How do miners select which transactions to include in a block? Where and how do you view and select which transactions to include in the block you are trying to create?

Do you look on the blockchain?

Is there some tool that you can use that allows you to see the fees as well?

A bitcoin node's (bitcoin's standard client acts as one) first function is to relay transactions on a best effort basis, it only relays valid transaction. The miner which also is a node will try to solve a block on the transaction it received, but in the end the miner has last word he can decide to arbitrarily discard some transaction (like one with no miner's fee)

Just look up block 289791 from today at blockchain.info. No transactions included at all. Obviously that miner is speeding up his calculation by omitting them and got lucky today.


How does the Bitcoin Network verify whether the wallet has enough bitcoins for the transaction? How does the Bitcoin Network verify whether the wallet has enough bitcoins for the transaction?

I understand that it is verifiable by scanning the entire blockchain and see whether the wallet has the enough bitcoin in it so that it is possible to make the transaction.

However isn't it feasible if the size of the blockchain becomes really large? Is there any practical way that the current nodes verify whether the transaction is valid?

How does the Bitcoin Network verify whether the wallet has enough bitcoins for the transaction?

It doesn't. The network doesn't care about wallets or accounts at all. Those are constructs used by other programs to manage bitcoins.

The network just checks to make sure that the inputs a transaction uses are valid.

  However isn't it feasible if the size of the blockchain becomes really large? Is there any practical way that the current nodes verify whether the transaction is valid?

Nodes keep an efficient index of unspent outputs. They can then check the inputs of a new transaction to make sure they're in the index of unspent outputs. You have to scan the whole blockchain to build this index, but once it's built, accessing and maintaining it is cheap and efficient.

You can think of an account as a key and unspent outputs as locks. The nodes just have to check that the key fits the lock. It doesn't matter what other locks the key might or might not open. The person who holds a key wants to know what locks it will open, but to know if access is allowed, we just have to check if the key fits the lock it's being put in.

Bitcoin wallet does not have any bitcoins. All bitcoins are in blockchain.
Wallet only have private keys. That gave access to bitcoins in blockchain.
You do not need to scan whole blockchain to find out how many bitcoins you have. You just need to check your public address for example through blockchain.info


Is there any way to buy bitcoins online without a fee? I'm new to bitcoins, and my experience is from something like E*Trade buying on the NASDAQ, so that's my frame of reference. I paid a small broker fee for every buy or sell, and I trusted the exchange and the software 100%.

But I thought the big advantage of bitcoin was no middle man. Hence I assumed no fees.

But perhaps contrary to that first assumption, in my second assumption I thought there would be this big trusted website where you go and buy / sell anonymously without having to trust the other party. You would just need to trust the exchange itself.

Can I buy bitcoins anywhere without a fee?

Can I buy bitcoins anywhere with 0 risk of getting ripped off, as in a flea market?

Can I get both positive things in one place (ideal)?

Thanks.

EDIT

Coinbase Pro allows me to do limit buys for free. The trick there is to set the limit price to the current price and keep changing the price if necessary to get the desired quantity purchased.

Coinbase had been charging me 1% on large buys. So for small buys ok; large buys, it adds up!

CEX.IO on the other hand, gave me large limits and they charge a flat fee of $10. So for a buy of $3000 this is only .33 percent; much better!

Also, something I need to watch out for is the buy price. The exchanges mess with that to make extra margin I think. So I need to shop for best price before committing to buy. Compare the total price including fee based on buy price.

Of course you may trade bitcoins with just anyone without having to pay fees to a centralized exchange.

I think Bisq (formerly BitSquare) may be the best answer to the question; decentralized, free for some definitions of "free", and very low risk due to the escrow system - but not completely without fees, indeed as of 2017 one may end up paying quite much higher fees on Bisq than on some of the centralized exchanges.  Well, let's walk through this ...

Fees and costs

You probably won't get away completely without fees:

There is the bitcoin transaction fee, a fee for getting the transaction included in the network.  Basically, you can't withdraw your funds from the exchange or move it from one wallet to another without paying a network fee (though internal transfers i.e. on an exchange may be for free).  As of 2017 it has become significant (i.e. 0.001 BTC, but can vary a lot), though not that bad if you want to turn over significant amounts of money (i.e. 1 BTC).  According to the protocol the fee is not mandatory, but a regular transaction without a fee paid is very unlikely to be included in the blockchain.
With many exchanges, one pays the exchange a withdrawal fee instead of paying the network fee.  The withdrawal fee is usually constant, and usually higher than the average network fee paid by the exchange.
Fees to the exchange ... any commercial centralized market place do eventually have costs and hopes to get investments recovered; I would be vary of a site claiming to be for free - though, some exchanges takes in most of the profits on margin traders.  Sometimes market makers pays less fee than market takers - sometimes it's opposite (on Localbitcoins market makers pay the full fee).
Arbitrator fee - on peer-to-peer-platforms (Bisq) where arbitration may be needed, one may have to pay a fee for that.
Spread - on any exchange there will be a difference between the bid and the offer.  If you need to buy bitcoins instantly, you will have to cover the spread.  If you have the time, then place a bid/offer just marginally better than the competition and wait for the other party to take your offer and cover the spread.  On the exchanges with highest volume, the spread will anyway be insignificant compared to the volatility.
Banking fees, for converting fiat to/from exchanges and/or other peers selling bitcoins.
Currency converting costs.  YMMV, but for me this is a relatively significant and a somewhat hidden cost of sending fiat to an exchange.  The exchange typically don't do trades in my local currency, and my bank gives me a pretty bad exchange rate when I send money to the exchange.
Even meeting up with other people to trade cash may be costly wrg of transportation costs and time taken.
Time is money - spend hours searching for the cheapest offers, and how many dimes did you save on it? (And how much did the bitcoin market value rise while you were searching for it?)

Risks

No method are without risks.

Bankruptcy - as for the centralized exchanges this is probably the biggest risk - one day you send money to the exchange, the next day the exchange is gone.  It does happen from time to time.
Funds on a centralized exchange being frozen for other reasons.  Your funds may be frozen for a variety of reasons - it does happen from time to time.
Bitcoin transactions getting stuck.  Not so much an issue when transferring from the bigger exchanges, but due to the block size issue a transaction may stay pending for arbitrary long if it appears the transaction fee was too low.  I have personally experienced twice that a transaction from an honest seller using "wrong" wallet software was timing out after 72 hours.  This became less of an issue in late 2017, as the default timeout has been increased to two weeks and because there is more often periods with idle capacity in the blockchain.
Money lost or stalled due to other technical issues - seldom an issue, but if using a "shitty" exchange it may happen.
Simple scams (mostly an issue if buying or selling bitcoins to random strangers without a proper escrow system in place).  Some payment methods are also reversible (particularly credit card payments and paypal payments) or easy to fraud.
Fake exchange scams (mostly an issue when selling btc); there exists several sites looking like legit exchanges, except they will just eat up your bitcoin if you transfer btc there.  It has also happened that an attacker has managed to highjack the DNS entry and get a valid SSL certificate for the exchange (openledger.info).
Money laundring; lots of the money in circulation comes from criminal sources, and you may become suspected of money laundry.  This may cause your funds to get frozen on centralized exchanges.  This may cause troubles with law enforcement if trading peer-to-peer.  Laws may vary between different jurisdictions, unless it ought to be obvious that the money comes from criminal sources you generally should be on the right side of the law, but having to spend time answering questions from the police is still within my definition of "trouble".  Some banks may even decide to freeze your account just because you're sending money to the exchanges.
Third party scams; mostly an issue when selling bitcoins (anonymous money) for bank deposits (trackable money), not so much when buying bitcoins - a fraudster tricks a victim (or gains unauthorized access to the bank) into sending money to the bitcoin seller, and tricks the bitcoin seller into sending bitcoins to the fraudster.  The victim gets angry with the bitcoin seller i.e. because he's expecting the bitcoin seller to send him an iPhone.
Outright robbery - may be a risk if doing cash trades (I've encountered some attempts on robbery myself when doing cash trades), especially when appointing meetings with random strangers in dark alleys, or if counting bigger amounts of cash on a public place with the wrong person watching.  If you expose that you have a lot of bitcoins i.e. through Localbitcoins and your identity and address can be found out, you may also receive threats ("pay one bitcoin to address 1... or else something bad may happen to your family" - I've experienced that, too).
Software bugs and malicious software; can you trust the wallet software, etc?  How to tell that i.e. Bisq does it's job, without any severe bugs causing bitcoins to be lost?

Other answers here are focusing on the best or cheapest exchanges.  I'll skip that and try to make an overview of alternative market places:

Bisq (formerly Bitsquare)

Bitsquare is a free and decentralized market place, it comes with a good escrow protection.  It does have some drawbacks though:

I managed to buy bitcoins through a "same bank"-offer, using my local domestic bank account.  However, I did need to know the SWIFT-code for my bank, and I did need to know how to convert an IBAN to a local account number.  YMMV, but I think this is a bit too difficult for quite a lot of people wanting to buy bitcoins.
It's an application, not a web site - meaning you need to install special software to access it.  Also, it's a graphical monolithic application that is supposed to be running 24/7, difficult to use on/from laptops and mobile devices.
You can't buy bitcoins without already owning bitcoins - you will need to seed the application wallet with enough bitcoins to cover transaction fees and escrow deposit
As far as I can see, there is no way to do free-text communication with the seller there.
There is a max limit for how much can be transferred in a single trade
Beware of the potential chain split in November - the maintainer has promised to follow the 1X-chain, so if SegWit2X should be successful, one may end up at the wrong side of a chain split.

Bisq supports bank payments (including local currencies and local banks) and convertions to/from altcoins, as far as I can see cash is not an option there.

You will eventually need to cover banking fees, and the bitcoin transaction fees will be higher than normal due to the complexity of the escrow transactions.

(Note: the author haven't tried Bisq for quite some time, the information above may be out-of-date).

IRC

The IRC channel #bitcoin-otc on freenode is also place where it's possible to trade coins with no middleman taking commissions.  I've never tried it though.

Mycellium

The mycellium wallet (android) has a cash-transaction built-in marketplace which is (as for now) without any fees - but if it ever becomes popular, the Mycellium team may decide to slap a fee on it.  During the last year, I've gotten close to 0 trades through the Mycellium platform, so I've given it up.

LocalBitcoins

With a 1% fee (paid by the advertiser), LocalBitcoins.Com (LBC) is an unlikely candidate on this list - but still, the fee is not mandatory to pay, one can "sneak" away from it, without violating the ToS.

If you search for offers on LBC, you will most likely find that there is a relatively big gap between the offers and bids.  If you don't need to buy bitcoins immediately, you can "turn the table" and put out your own "i buy bitcoin"-ad.

Telegram

On the telegram chat service there is a bot BTC_CHANGE_BOT.  I haven't tested it though, don't even know if it has fee structures.

In my opinion, your BANK should offer sending money to your designated bitcoin wallet - and grab the 1% fee while no-one else have. At least we all trust our banks, don't we? Yet for some reason they're not interested.


Does the block reward comes from a bitcoin treasury? If yes, then how is it issued? The miner adds the relevant block reward to himself (i.e. 12.5 bitcoin as of now) in something called the coinbase transaction.

Where do these 12.5 bitcoins come from? Does it comes from bitcoin treasury? If yes, then how is it issued?

Could I get a less-technical and self explanatory answer please?

Note that my question is not sufficiently answered on Where does the money I get from mining bitcoin come from? which was suggested as a potential duplicate.

There is no treasury. The Bitcoin is generated out of nothing. The coinbase transaction has special rules. It is allowed to have only one input which has no previous output and really no value. It is allowed to create outputs which have a total value of the block subsidy (currently 12.5 BTC) plus the transaction fees from that block. Those coins aren't issued by any entity; the miner just creates the output(s) and is allowed to do so. This rule is enforced by all of the full nodes on the network who will reject that miner's block if he pays himself too much money.

Simply put, the miner is allowed to just pay himself money that is produced out of nothing.

They are not issued, they are created by the mining process. The specification defines precisely what it means for a bitcoin to exist. Prior to the block being mined, those bitcoins did not exist. But after that block is mined, because they meet the specification, they are now bitcoins (or, to be more precise, will be in the near future). Anyone who follows the specification will accept them as compared to all other bitcoins previously in existence. (think of it this way): when a person buys bitcoin on a website like Coinbase or the like, the transaction costs them a fee to purchase a portion of an existing bitcoin and that is how the company selling the coin makes money.... but the transaction also includes a hidden fee, a "mining fee" that is when enough transactions are made by a number of individuals----->the total hidden fees equal 12.5 bitcoins of worth at the current valuation of a bitcoin {a new BLOCK is created}. When miners, who are basically confirming the transactions by themselves or as a pool confirm a BLOCK as true they get a share of that 12.5 bitcoin that was stored in the block. These hidden fees are generated when a "slice" of a bitcoin is added to the BLOCK REWARD as an attribute. it's like every purchase was done by debit card has a small fee yet a portion of a penny is placed in a jar for the bitcoin miners reward for confirming the transactions. So the bitcoin miners don't create anything out of midair. They are being paid for doing the credit card companies job of confirming those blocks actually happened and the balances in a way. The bitcoin core being in multiplex helps confirm the source has enough to transfer and the transfer includes a mining a.k.a. confirmation fee of sorts.


Scanning QR codes with Electrum 3.0.1 When trying to scan QR codes with Electrum 3.0.1 it asks for zbar software. I'm not sure which one to download as some of them might be unsafe. Which Zbar QR scanner should we download?

Electrum does not support QR code scanning on Mac OSX as stated on download page:

  Note: The QR code scanner is not supported in OSX binaries

There has been several related bugs, but as of v3.2.2 the issue has not been resolved by anyone.  Some related discussion and attempts to debug.

Ubuntu 18.04:
sudo apt-get install zbar-tools


Is there network split risk for Taproot activation with two releases (Bitcoin Core and Bitcoin Taproot)? In this article from Aaron van Wirdum he states there is a risk of a network split with two releases (Bitcoin Core and Bitcoin Taproot) not following exactly the same activation mechanism(s)? Is this true?
This question was asked by Andrew Asmakov and has been paraphrased.

No. With a softfork, a network split is only possible if miners create invalid blocks. This is something they can do with or without a softfork, so it is not an issue specific to softforks.
It is important for the economy to use their own full nodes to avoid the risk of being led off by a miner attack in the form of invalid blocks. This remains true with softforks, where upgrading is necessary to retain full node security.

Every soft fork or consensus change involves a (very small) non-zero risk of a network split. That risk is considerably lower for a soft fork than say a hard fork (where all nodes need to upgrade). That's why soft forks aren't attempted every month or year. All you can do is minimize that risk.
Aaron lays out some scenarios that are theoretically possible. Any incompatibility between "Bitcoin Core" and "Bitcoin Taproot" during the Speedy Trial deployment is in my view highly unlikely. If Speedy Trial fails to activate and we reach November 2022 (please note 2022 not 2021) without miners activating then we are in a similar scenario to the UASF in 2017 where it depends on what the economic majority is running. I can't predict what the economic majority would be running in November 2022 but I highly suspect the delaying of Taproot activation would be at the top of everyone's minds.
Andrew Chow adds in the comments that false signaling in the period after Speedy Trial has failed to activate (Bitcoin Core has no activation mechanism in this period though this could obviously change in the future whilst Bitcoin Taproot is running a BIP 8 deployment) could cause a chain split.

Furthermore, a malicious miner could take advantage of these competing activation rules and false signaling in order to induce a chain split which leaves the UASF nodes stuck on an orphan chain. This is in contrast to the typical chain split caused by false signaling which can be resolved by the majority of hash rate building on the chain enforcing the new rules.

You do have to weigh up these risks of a network split with miners deliberately blocking Taproot activation potentially forever. If we were to say no more UASFs ever again because we don't want to take any network split risk that would be handing miners a permanent veto to block the activations of soft forks that have community consensus. So you have to weigh up the risk of the latter which would be just as concerning (if not more concerning) to people.
So in summary these are subtle trade-offs. A number of developers have worked hard to minimize the risk of a network split. But it doesn't get to zero unless you literally never try a soft fork again. And that would mean that Bitcoin would never seriously improve again.


Does hoarding really hurt Bitcoin? Some people believe that hoarding hurts the Bitcoin economy.
But are they really right?
As long as corresponding goods vendors and services will be here to stay and reinforce people's faith in Bitcoin, hoarded bitcoins simply do not take part in daily business and do not hurt anyone.
Quite the contrary, they will decrease the supply of bitcoins in active circulation, thus increase the demand for bitcoins, and thus raise their over-all value, right?
Update: This question also comes with a premise or insight that Bitcoin "power users" have savings and spendings wallets or similar setups, and that those two forms of wallets will not tend to "compete" with each other so much. The bitcoins in the spendings wallets will rather compete with the fiat money that respective users will use to buy for goods and services. The bitcoins in the savings wallets will rather compete with more traditional forms of assets and investments.

TL;DR: No. The argument is basically that hoarding will make Bitcoins so valuable that nobody will be willing to offer people enough to part with them. Does that pass the giggle test? Another way of stating the argument is this, "If gold is $2,000/oz today but people think it will be $5,000/oz next year, nobody will trade any gold today." Again, think about it. Does that pass the giggle test either?

Hoarding increases the value of Bitcoins, increasing the profits from mining. This encourages more people to mine, increasing the total hashing power and thus the security of the system.

It also makes holding Bitcoins more profitable. This helps to encourage people to accept them in trade because they are less worried about them decreasing in value while they are holding them. Using Bitcoins as a currency inevitably means people sometimes have to hold them and having them drop in value while you hold them is a risk. Hoarding reduces this risk. But it also makes it harder to price things in Bitcoins because the value will tend to change more. Merchants don't like to change their prices twice a day.

Contrary to claims, it should not affect the trading volume or the willingness of people to use Bitcoins to pay for things.

The argument that increasing value means people would prefer to hold Bitcoins rather than spend them is specious. While it will make people want to have Bitcoins more, it will also make people want to convince others to give them Bitcoins more so they can have them.

Think about it, do people prefer to pay for goods in dollars or garbage? By the reasoning of this argument, they should prefer to pay for goods in garbage, since they'd rather hold their dollars and get rid of their garbage. But, of course, people don't like paying in garbage because nobody wants garbage. If you can pay with the currency others want, you can get a better deal. So you actually prefer to spend the currencies sellers most want.

If Bitcoins are valuable because inflation doesn't deprive them of value, then a merchant would rather get my Bitcoins than my dollars, so he'll accept fewer of them. This will cancel out the effect of me preferring to pay in dollars rather than Bitcoins. So it should be a wash.

Or, put another way, whatever the present and future prospects, there should always be some equivalence between dollars and Bitcoins that people roughly agree on. So whether I pay X dollars or Y bitcoins, where X and Y are in this ratio, will purely depend on whether I prefer the characteristics of dollars or Bitcoins for the transaction.

A consequence of this is that hoarding won't negatively affect the trading volume either because that's only dependent on people's use of Bitcoins to buy and sell things. If hoarding makes Bitcoins worth twice as much, only half as many will be used to buy and sell things and the volume (the total value traded) will be the same.

I don't believe it's lost opportunity either. It's not like people who want to trade Bitcoins can't get them because they're all being hoarded. (Nor will it ever be likely to be an issue, since that would just raise the price and thus fewer would be needed. Bitcoins have effectively unlimited divisibility.)

So why do so many people think currency hoarding is bad? Because it usually is, and empiric studies even show that it is. But the logic of why currency hoarding is bad doesn't apply to Bitcoins, especially when it's a minority currency.

Bitcoins are different enough from physical fiat currencies that empirical studies don't apply unless the suspected mechanisms for the observed effects are believed to apply to Bitcoins too. For example, if a penny were enough money to buy a car, how useful would dollars be?

I think hoarding is a major problem with the bitcoin. Allow me to copy an excerpt from a rant I published online about just this, available at https://bitcointalk.org/index.php?topic=53683.0.

  We'll begin with a background where the economy is growing. Everything is fine, until the bitcoin mines run dry: all 21 million bitcoins have been harvested. In order to adjust to the growing economy, an individual bitcoin becomes more valuable (deflation). During a period of deflation, money becomes more valuable even when it is unused. People realize this: why should they risk loss in investment when their money will gain value risk-free by letting it sit? As such, people stop investing and let their money sit untouched. Companies are no longer able to take out loans. Companies wither and die, people lose jobs. New companies cannot start as they cannot get their initial loan money. Due to the lack of production, the bitcoin shrinks sharply. The people who just kept their money away suffer, too, as the bitcoin is no longer backed by an economy. Bitcoins suddenly lose value and face hyperinflation. Now we're back we've a shattered economy, the bitcoin's a 21st-century [counterpart to the] German Mark after WW1 (i.e., worth practically nothing), and literally everybody involved has suffered. How is this supposed to be avoided?

A growing bitcoin economy leads to deflation. Deflation means that hoarding is preferred to investing. Hoarding money decreases the money supply, causing more deflation so it becomes even better to hoard. Lack of investment means lack of capital. Lack of capital means that existing businesses cannot survive and new businesses cannot form. Production shrinks. The bitcoin suddenly loses much value and faces hyperinflation. Everyone, even the hoarders, suffers. I can't see how to get around this.


Where can I find market volume data with greater resolution than 24hr periods? I have scraper that pulls data from coinmarketcap for all coins for all historic periods (down to 15min intervals) however, the only volume info available is 24hr volume. Does anyone know if it's possible to get 15m/1hr volume data (historic) from coinmarketcap? Failing that, any reasonable approach for converting the 24hr data to 1hr/15m? It would only be a rough estimate, I know. I don't know why they don't provide hourly volume data as well.

You could do your own price comparison.

So if you scrape every 15 minutes. Store that 15 minute price data and create your own percentage based on the history of the data you collected.

If you have the data every 15 minutes you could even do the difference in 15 minutes intervals.

Example:
Price now is $1.00.
Our database says the price 1 hour ago was $1.15
Change of -13% over the past hour.

Again, store all the 15 minute scraping price data in your database and then use that data to make the percent based on whatever time frame you want.


Is it possible to get all transactions from a single address with bitcoind? Is it possible to get all transactions from a single address with bitcoind?

For an address that is in your wallet, you can use the listreceivedbyaddress command. You would use the command as follows to get the transactions related to an address <address>:

bitcoin-cli listreceivedbyaddress 0 true true <address>

The 0 means list all transactions, including unconfirmed ones. The first true indicates that the address should still appear in the output even if there are no transactions; it just won't have any transactions listed under it. The second true means to include watching only addresses in the output. This only matters if your address is a watch only address.

If the address is not in your wallet, you cannot get all transactions for an address. This is because that would require maintaining an address index which Bitcoin Core does not do. Address indexes require more computing power and are not useful to the functioning of the node.

You can use command "listtransaction".

http://chainquery.com/bitcoin-api/listtransactions

Good luck =)


How to invest bitcoins? Are there any websites where bitcoin holders can invest their money? Such as by buying shares or giving out loans. For example there is a ShareHolder service for WebMoney. Is there something similar for Bitcoin?

A list of Bitcoin-related financial investment services:

http://en.bitcoin.it/wiki/Trade#Financial

You could invest IN bitcoins or you could invest your bitcoins.. Slight difference. There are several companies that offer cash gold silver etc investments that now allow you to invest your bitcoins too. Google finds few results as yet but they are out there. I use a non-profit investment company at www.bitcointrustgroup.org as they seem to offer good returns but on the downside they only offer long term investments if you dont want to suffer penalties for early withdrawal.


What happens when transferring bitcoins to no address? What happens on the blockchain if I try to transfer bitcoins without providing  a recipient address?

Most wallet software won't let you send to a null address. If you have a transaction without an output script, that's invalid and won't be accepted by the network. If you have an output script that's simply an OP_RETURN or otherwise unspendable, those coins are lost forever.

Generally, you should be using a wallet to transfer bitcoins and if you don't provide an address using a wallet, you'll most likely not be able to send it.

Most wallet sites such as blockchain won't allow you to send the coin if you don't provide an address.

On the other hand, if you use a 3rd part local wallet, it may send depending on the script, and you won't have those coins anymore.


How to get Master Chain Code I'm using NBitcoin and I created an ExtKey object. Now I need to get the Master Chain Code (see page 89 of Mastering Bitcoin for a good explanation) for this HD node. How do I do this?

According to Mastering Bitcoin a root seed is used with HMAC-SHA512 to create a 512-bits output. The left 256 bits are used for the master private key, the right 256 bits are used for the master chain code. When I call GetBytes() on my ExtKey object, however, it returns a byte[74] array. This corresponds to 592 bits. I don't know what the extra 80 bits are so I can't just take the right 256 bits.

I solved this with a pull request that adds a property to ExtKey and ExtPubKey that allows you to call the ChainCode property. See pull request 156.

It has been merged into NBitcoin 3.0.0.28 which is available on NuGet.

Here are a few things what you can do, I noted what you need in comment:

var masterPrivateKey = new ExtKey();
var masterPublicKey = masterPrivateKey.Neuter();

// This is what you need:
var masterMainNetPrivateKey = masterPrivateKey.GetWif(Network.Main);
var masterTestNetPrivateKey = masterPrivateKey.GetWif(Network.TestNet);

var masterMainNetPublicKey = masterPublicKey.GetWif(Network.Main);
var masterTestNetPublicKey = masterPublicKey.GetWif(Network.TestNet);

You might want to check the corresponding section of the C# Bitcoin book.


How much will difficulty increase when ASIC miners become generally availible in the coming months? I am considering buying a 5/Ghs Butterfly Labs ASIC miner. My question is, will the difficulty increase caused by large quantities of ASIC miners being shipped in the coming months make the miner in question unprofitable?

I'm guessing this has now been asked like a million times.  Exponentially at first - once hw is available and it becomes more mainstream for the average person to buy asic hardware and setup at their own house...we will see difficulty plateau at a steady rate.  However by the time the plateau occurs, most 50GH/s hardware will only be able to mine a few USD a month...people will have already shifted over to alt-coins and GPUs will be targeting Scrypt Related stuff by that point.  I think we will see a shift of asic hardware from smaller groups  being used on other sha256 altcoins such as PPC, TRC, and FRC.

I predict Difficulty will hit 120 Million by December 300 Million by June and 1 billion by Dec 2014 at the next block reward halving event.  This won't be because of the small guys I mentioned in the prior paragraph either...difficulty will steadily rise and plateau because there will be dozens if not hundereds of commercial medium and large scale mining operations that came online to 'milk' the system.

Nobody knows the future difficulty, but the current path has it increasing 20% or more every ten days.

If profitability is revenue less the cost of inputs (electricity), then current ASICs should be profitable for quite some time.

The problem in making a call whether that profit is sufficient has to do with the cost of the hardware.  If the hardware becomes obsolete in six months, then it possibly an investment in mining hardware ends up being a money-losing venture.


Help with Coinbase? Confused BCC address with BTC one As a newbie a friend who owed me some money suggested I get Coinbase and let him pay me in bitcoin.  I got the address but didn’t realize I got the address to my BCC wallet instead of bitcoin wallet.  It is quite a lot of money and I have no idea what to do.  Am i just out of luck?  Thanks a lot for any help.

Did he actually send you the bitcoins to the BCC address? If yes, and the transaction has been sent to the blockchain, then you are indeed out of luck and can't recover that.
Sorry!


Can there be more than one result of decoding a raw transaction? I was looking in rpcrawtransaction.cpp and came across the signrawtransaction rpc method. While reading through this method, I thought these lines seemed strange:

    vector<CTransaction> txVariants;
    while (!ssData.empty())
    {
        try {
            CTransaction tx;
            ssData >> tx;
            txVariants.push_back(tx);
        }
        catch (std::exception &e) {
            throw JSONRPCError(RPC_DESERIALIZATION_ERROR, "TX decode failed");
        }
    }

Why is a vector of transaction variants needed here? Could decoding a raw transaction ever have more than one solution?

Maybe this has something to do with unfinished transactions, specifically?

I noticed that sendrawtransaction doesn't have the same loop, but rather just has:

    CTransaction tx;

    // deserialize binary data stream
    try {
        ssData >> tx;
    }
    catch (std::exception &e) {
        throw JSONRPCError(RPC_DESERIALIZATION_ERROR, "TX decode failed");
    }

The below seems relevant, too. It happens near the end of signrawtransaction.

    // ... and merge in other signatures:
    BOOST_FOREACH(const CTransaction& txv, txVariants)
    {
        txin.scriptSig = CombineSignatures(prevPubKey, mergedTx, i, txin.scriptSig, txv.vin[i].scriptSig);
    }

Maybe this has something to do with multisig?

Could decoding a raw transaction ever have more than one solution?

Decoding raw transaction is just a human-readable representation of transaction data. So, the answer is "no" and "yes"

There is only one decoding for transaction.

But another client/version may add some other fields for json


How to restore the original mnemonics from shares? I just read that an original mnemonic can be split into parts, I am a little confused about how the system can restore the original mnemonic from these mnemonic pieces.
example i have mnemonic
radar warm pizza grief worth attack van ribbon milk surface guitar bachelor

and then i split and get 5 shares mnemonic
1. demise reopen sort defy forward gorilla live cannon scan large thing action
2. arch peasant act box try install indicate organ tourist hungry biology thought
3. gun win grace exhaust movie sail cable news bundle glide bright minimum
4. load sunny bicycle dragon ghost sort turtle buzz orbit slender bargain photo
5. recipe snake submit gentle squirrel tattoo boy penalty sail summer tongue dove

The three 3 shares that I combined, turned out to be really the original mnemonic. but here I have a question. If I only remember 2 of the 5 mnemonic shares, can I recover my original mnemonic? if possible please show me how?
thank you

You can select what subset of the shares are enough to reconstruct the original secret. That's why it's called m of n. So set m to 2 and n to 5 and you have what you need.
If you haven't done this before splitting the secret then 2 shares will not be enough.


What is the best language to use for making API orders? I have heard that python is at a disadvantage when it comes to making API requests. It’s built on C which makes it slower. Are there any languages that are low level enough to make fast requests and still API accessible?

Go - easy concurrency, productive and effcient


Convert list of BTC address(base58) to Ripemd16(base16) Are there online tool or repositories that can convert multiple base58  (BTC address) to base16 simultaneously?

In Go, you can do this very easily:

package main

import (
    "fmt"

    "github.com/btcsuite/btcutil/base58"
)

var addresses = []string{
    "1Nh7uHdvY6fNwtQtM1G5EZAFPLC33B59rB",
    "1Le1ttNd2GQ79212Epyciw39JDy2E6DYWf",
    "1LpRieyPAZfFyUSMGiZhwAarQoJw1Y8pEx",
}

func main() {
    for _, address := range addresses {
        ripemd160, _, err := base58.CheckDecode(address)
        if err != nil {
            fmt.Printf("Failed to decode address %s: %s\n", address, err)
            continue
        }

        fmt.Printf("HASH160 %x from address %s\n", ripemd160, address)
    }
}

When you have Go installed, you can run this code very easily in your terminal:

$ go get github.com/btcsuite/btcutil/base58
$ go run thefile.go
HASH160 edf10a7fac6b32e24daa5305c723f3de58db1bc8 from address 1Nh7uHdvY6fNwtQtM1G5EZAFPLC33B59rB
HASH160 d76a86f903b33835f06d7b18a1429a8f249f3ab1 from address 1Le1ttNd2GQ79212Epyciw39JDy2E6DYWf
HASH160 d96292e45d045d2269a818b96b13422555557d85 from address 1LpRieyPAZfFyUSMGiZhwAarQoJw1Y8pEx

static const QByteArray convert ( const QLatin1String& buf )
{
  QByteArray ret;
  ret.resize ( 20 );
  quint8 addr [30];
  BASE58::decodeBase58 ( buf.latin1 ( ), addr, 26, true );
  memcpy ( ret.data ( ), addr + 1, 20 );
//printf ( "%s\n", ret.toHex ( ).constData ( ) );
  return ret.toHex ( );
}

Oups, sorry. This is not an answer if you are looking for online solution


Can I use Bitcoin so that my non-bitcoin friend finally receives CNY? Can I send money to my friend's Chinese Bank account using Bitcoin? How easy and safe are the resources for a Chinese person to convert Bitcoin to cash?

There are services that allow you to withdraw bitcoins to a third person's bank account. In that case your friend will not need to convert bitcoin to cash. I believe it will be quite easier - there also are bitcoin to bank/cash exchanges in China, but due to their regulations, such exchanges are operating using personal accounts or some schemes that are rather risky and hard to understand for the newbie.

No, you cannot send money to your friends Chinese bank account with Bitcoin Legally.

They are quite unsafe as those reliable exchanges available are all but nonexistent - safe and reliable resources do not exist in the form of centralized Chinese exchange posts.

As a result of the 2013 legal regulations put into motion by the People's Republic, now what we have a a collection of vaguely enforceable rules with little to no precedent.

[China's Proposed Bitcoin Laws]http://www.bloomberg.com/news/articles/2013-12-05/china-s-pboc-bans-financial-companies-from-bitcoin-transactions

Can your friend receive another form of Money in his bank account that you sent and paid for with Bitcoin? Perhaps, however please consider that months later, the perpetrators of MyCoin are still unknown.

[see MyCoin]http://thecryptosphere.com/2015/02/09/ten-percent-of-all-bitcoin-in-circulation-was-just-stolen/

The remittance tag appears not to exist.


How to calculate Hashes per Second How exactly do you calculate how many hashes your hardware is generating?

Most mining software will have that number available for you.  Or you can join a pool for a day or two and most of the bigger ones (eg slush, 50btc) make these stats available for your miner(s).

If you are trying to programmatically calculate this for software you are writing probably best to take an average every minute or so. As in most cases, the formula is built right into the unit -- num of hashes per (ie divided by) num of seconds.

Actually it's Mh/s (1,000,000 hash/sec) usually now so more like (Num hashes / 1,000,000) / sec

lol the Q/A contains far too much flaming and too little answers.

Obviously, hashes per second can be computed by some sort of some of hashes per time frame, divided by time in frame.

like... 0% of mining hardware will deliver its full-on however-millions-of-hashes directly to the mining software. From what I can tell, there's 2 other ways to measure the metric:

# of qualified nonces to produce hash. As far as I know, this figures in the 'difficulty 1' mask. Some mining software when dealing with pools will throw out a great number of these unless they match the suggested share difficulty. Brings me to metric #2
# of submitted shares, given current share difficulty. I believe this is how pools calculate your H/s. It's more variant because of the lower number of shares. I believe this can be computed by your 'accepted' rate, the share difficulty, and the block difficulty (i think???)

Any clarification on these would be.... really awesome


What happens when the 21 million cap is reached? I've just recently gotten into bitcoin, but I'm a bit confused about this 21 million bitcoin cap. From what I've read, computers on the bitcoin network validate transactions, which confirms the transfer of bitcoins between addresses. As a reward, these nodes receive bitcoins. My question is once the 21 million bitcoin cap is reached, doesn't that mean there's no incentive to validate transactions anymore? Won't the whole network essentially cease to function? Thanks!

Miners (who will no longer be mining, but will be validating transactions in the blockchain) will earn transaction fees. What those fees amount to or are to be interpreted as are hypothetical at this point, but might be imagined to be a transaction cost that ensures the security of the ledger.

I don't think the 21 million cap will ever be 'reached'. It will be approached, but it is designed similarly to an asymptote. The rewards will just be halved indefinitely. The idea is the reward will increase in value with the deflation of bitcoin together with the accumulated transaction fees of the network.


btcchina how to deposit with mastercard? https://vip.btcchina.com

I'm trying to "Fund CNY" to use in my bitcoin trades.
The problem is, whichever bank I choose, it redirects to a login page asking for a password or mobile payment option which I don't know how to use.

I only have the mastercard payment option. How can I fund?

you need to make a wire transfer to a china bank or fund your account with bitcoins


Why my Bitcoin Cash coins moved to another wallet if i did it on original Bitcoin on 12/12/2017? I have very old Bitcoin wallet from 2012 year. The last operation was 12/12/2017 - this was movement all sum to my another wallet.

I was very surprised today when i first time load this wallet into Bitcoin-ABC (bitcoin cash) and see this transaction inside it!!! I see exactly same transaction (moving same sum to same wallet alias on same date 12/12/2017) inside Bitcoin Cash blockchain.

Can you explain me how is it possible? As I understand Bitcoin Cash has separate blockchain from August 2017 so i should not see the last operation on December 2017.

I used this command to load my wallet into Bitcoin-ABC (bitcoin cash)
bitcoin-abc-0.16.1/bin/bitcoin-qt -wallet=my_bitcoin_wallet.dat -datadir=path_to_bitcoin_cash_blockchain

I see exactly same transaction (moving same sum to same wallet alias
  on same date 12/12/2017) inside Bitcoin Cash blockchain. Can you
  explain me how is it possible?

Bitcoin and BitcoinCash have the same history before August'17


How can I create the input of raw transaction through the previous UTXO hash and the unspent index in bitcoinj？ I want to create a raw transaction’s input and output, and sign it then broadcast to testnet. Now I know how to create the output, but I want to refer the transaction that I can input the UTXO hash and the unspent index, then add the input to this raw transaction.

here's how to create an unsigned raw transaction in typescript with one input and one output.

import * as bitcoin from 'bitcoinjs-lib'

const reverseHexBytes = (hex: string) => {
  const buff = Buffer.from(hex, 'hex')
  return buff.reverse().toString('hex')
}

const fixedPoint = (num: number): number => {
  return parseFloat(num.toFixed(8))
}

const outputAmount = 100
const inputTxHash = 'tx-hash-goes-here'
const index = 5
const fee = 0.001
const numOutputs = 1
const outputAddress = 'address-to-send-to-goes-here'

// input
const txInputs = '01'
const txHash = reverseHexBytes(inputTxHash)
const outputIndex = '0' + txIndex.toString() + '000000'
const script = ''
const sequence = 'ffffffff'
let tx = txVersion + txInputs + txHash + outputIndex + script + sequence
// output
const countHex = numOutputs.toString(16)
const countByte = (countHex.length === 1) ? '0' + countHex : countHex
tx += countByte
const amount = fixedPoint(outputAmount - fee)
const outputAmount = Math.floor(amount * (10**8))
let outputAmountHex = outputAmount.toString(16)
while (outputAmountHex.length < 16) {
  outputAmountHex = '0' + outputAmountHex
}
const outputAmountBytes = reverseHexBytes(outputAmountHex)
tx += outputAmountBytes
const pubkey = bitcoin.address.fromBase58Check(outputAddress).hash.toString('hex')
tx += '1976a914' + pubkey + '88ac'
// lock time
tx += '00000000'

check out the protocol documentation for more specific information: https://en.bitcoin.it/wiki/Protocol_documentation#tx

note: i copied and edited from something i've implemented previously, so if there's a mistake just let me know and i'll update it.


How can I generate a vanity Bitcoin address? I once found a program that was capable of creating Bitcoin addresses with specific words in them, but can't find it now.  Is there a trusted program, in the Ubuntu repositories for example, that can generate these 'vanity' addresses?

I guess you mean Vanitygen:
https://bitcointalk.org/index.php?topic=25804.0
From that page:

Vanitygen is a command-line vanity bitcoin address generator.
Vanitygen accepts as input a pattern, or list of patterns to search
for, and produces a list of addresses and private keys.  Vanitygen's
search is probabilistic, and the amount of time required to find a
given pattern depends on how complex the pattern is, the speed of your
computer, and whether you get lucky.

The problem is if someone else manages to generate the same vanity address with the same private key, then that person will have access to your bitcoins.

So I personally prefer giving out the "ugly" addresses as it would be unlikely someone else will have the private key to that one.


What problems exist with the alt coin Namecoin and what can be done to fix them? I like the concept of using a key/value store that is separate from the Bitcoin chain (preventing bloat), but utilizing the Bitcoin hashpower for security.

What are the dominant issues working against Namecoin today?
What can be done to correct those issues?
If you were to reboot the Namecoin project, what changes or improvements would you make?

First, NMC is not worthless, it have a value and is traded on bitparking ( https://exchange.bitparking.com/main )  and btc-e ( https://btc-e.com/exchange ), with decent daily trading volume; people saying nmc is worthless are just people wanting to attract you to other altchains( most of them being scams imo ) .

Second, namecoin is an opensource network, it cant really die as long as people use it.
 Also, namecoin is the oldest and most serious alternative coin ( altchain ) to bitcoin.
 NMC price have gone down with merged mining ( increased supply ), but merged mining also made namecoin very secure and long lasting.
 As long as someone will maintain the software ( https://github.com/namecoin/namecoin ) namecoin will rock as the oldest and best altchain.

Real issues are :

possibility to store small files in the blockchain, could lead to increased blockchain size ( see https://bitcointalk.org/index.php?topic=145278.0 and https://github.com/runn1ng/namecoin-files )
small community, not enough tools, websites, graphical client . . . )

What are the domainant issues working against Namecoin today?

Namecoin is worthless and doomed to fail due to their policy of having the domain registration and renewal cost next to nothing.

With the current Namecoin generation rate, you could register or renew ~2500~5000 new domains every 10 minutes, which doesn't make sense.

Since registering domains is basically free, anyone could cheaply squat them all. And no one bothers to to it precisely because it could be done so easily.

This is the most prominent reason why Namecoin failed. Other reasons are that they didn't even realise they should have considered what to do when NMCs would stop being generated, and that using Namecoin is actually useless since no popular DNS server supports it (as opposite to Bitcoin which can be exchanged with other currencies, i.e. it works as a currency, its intended goal).

  What can be done to correct those issues?

It won't happen.

That said, anything short of resetting it changing the rules to:

namecoin fixed (non-decreasing) block reward
domain registration and renewal fixed, and much higher than now (either fixed, or somehow automatically adjusting)

And convincing some popular DNS server (8.8.8.8, 4.2.2.1) to support it.

Obviously such a thing won't happen: if it could, it would already did.


How could the dogecoin increase the limit of money supply? As far as I know, Dogecoin will only have 100,000,000,000 coins in total. But how can the supply of coins remain uncapped? How could it produce unlimited dogecoins? Is there any specific skill to make the block provide unlimited coins?

The amount of bitcoins is not set by a hard coded limit, but indirectly through the rules of Bitcoin's reward schedule.
Bitcoin's reward started out at 100 bitcoins per block, and halves every 210,000 blocks (approximately four years) until the block reward drops to less than a satoshi when it just stops.

On the other hand, Dogecoin's reward will only halve five times.
Then instead of halving again, it will go to a flat reward of 10k dogecoins indefinitely starting from Block 600,001. Therefore, it will continue to grow slowly without limit.

Also see my answer here: Reward schedule and maximum number of dogecoins?.


Is there any software that allows me to make a single multi-recipient transaction? I would like to do a payment to multiple addresses in the same transaction on a regular basis. The scenario is this:

Collect addresses via QR or string (these may change on each occasion)
Use all the collected addresses to send an equal amount of BTC
pay an appropriate network fee
execute only one transaction

I don't thing QT or multibit can do this, but I could be wrong. If not are there any other software that could do this with relative ease?

Bitcoin-QT can do this.  When you click the "Send" tab you will see a button "Add Recipient" at the bottom of the screen.

You can also do it using the RPC interface, with the sendmany command.

You can do this with Electrum.
See here:

  Can I do bulk payments with Electrum?[edit]
  You can use the CSV import feature to make bulk payments. It can accept either a CSV file or CSV entered into a text box. The rough format is:

"ADDRESS","AMOUNT"
"ADDRESS","AMOUNT"


Can I force my company to pay me in Bitcoin I just got my bank account closed.

  Reason: International payment were not supported

I don't like to waste my time in bank formalities. I am a programmer. I wish to stay technical for most of the part.

Probably not - I mean you're not in an absolute position to demand them to compensate you via bitcoin.  Can you possibly get an E-checking account with someone like INGDirect then have your BTC automatically dispursed via bitwage or even lawnmower...I think you could even do an auto-rebuy with coinbase if you felt inclined to do so.

Paolo from BITWAGE here; we at Bitwage can help you get paid in bitcoin without your employer even knowing you are availing of our Bitcoin Payroll Service and earning a "bit wage" from Bitwage.

HOW IT WORKS: 1. We give you a bank account number. 2. You tell your employer to send any percentage of your payroll deposit to that number. 3. We put bitcoin, local currency in your preferred bitcoin wallet address the next day after deposit.

If you have further questions or need help with the sign up, please feel free to reach out to me anytime at: paolo.huelgas@bitwage.com


Recovering LTC coin sent to a BTC address I have mistakenly sent LTC coin(Using bittrex) to my BTC wallet(Zebpay). I have not received the coins yet.

The transaction is showing 6+ confirmations on blockcypher and not showing anything in blockchain.info.

Following to this, Bittrex has advised me to research how to remove a private key from a Bitcoin address and import it into a LTC wallet to recover these coins or contact someone from the LTC community for help.

Does anyone know how to resolve this problem?

I sent my LTC to my Trezor BTC wallet. There is a Trezor recovery function that will recover it if it was sent to a Trezor address.

Hope that helps anyone with a Trezor out!

Hate to be the bearer of bad news but those puppies are gone.  Two entirely different blockchains with entirely different wallet address formats.  Hopefully it wasnt a large amount.


Why does every "defi" thing only support garbagecoins and never Bitcoin? I swear, I seriously feel like I've already gone insane and I can't even trust my senses at this point. I've been chewing through website after website listed as "defi", repeatedly finding the exact same thing:
Bitcoin is not supported, and they all want me to "connect my wallet" inside the browser.
What's with this? Why do they support 927 different garbagecoins I've never heard of (outside of these websites) but never Bitcoin (BTC)?
I honestly believe that all of those websites are made by the same entity, and that they are all some kind of elaborate scam. But what I can't figure out is why none of them even support Bitcoin -- the only real crypto currency.
What am I missing?

Bitcoin is pushing most use cases and applications to second layers (e.g Lightning, sidechains) because blockchains don't scale. Most "DeFi" apps use the blockchain for transactions, filling up blocks and raising onchain transaction fees. Development is easier if you assume blockchains scale and can stay decentralized as they scale (which they can't).
It is true that Ethereum's Solidity is more expressive than Bitcoin Script (allows for infinite loops etc) but you can still do a lot with Bitcoin Script. Ethereum has found a niche of making it very easy to issue tokens and selling them at vast prices. It is much harder to support an infinite number of tokens moving over say Lightning where channels are primarily denominated in Bitcoin.
There are some projects buildings "DeFi" like applications on Lightning e.g. discreet log contracts (DLCs) but it takes a lot longer to build if you actually want to keep it decentralized rather than merely labelling it "Decentralized" (De).

Bitcoin does not support the kind of turing-complete "smart contracts" (decentralized code) that DeFi projects typically require to function, hence these kind of projects are usually built on top of the Ethereum blockchain (which does support it) or other Ethereum-like projects.


What are the most comprehensive APIs for cryptocurrency market data? I'm looking for a well documented, easy to use API that provides data on the majority of cryptocurrencies. That data should include the 1 hr, 24hr, and 7 day price changes, as well as the entire history of the volume, and price for each crypto. I've looked into some APIs but none have provided this sort of comprehensive information. There are many great sites that have access to this sort of data, so it must be out there. Any help is appreciated! Thanks!

Most exchanges offer API solutions for market data. Here are some examples:

GDAX
Bittrex
Kraken
WAVES DEX

CryptoCompare has an API that aggregates data from many exchanges, and they also offer many query parameters. Link: CryptoCompareAPI

Additionally, many block explorers provide APIs for blockchain account information.
This ZChain Playlist shows how to use PowerShell to query the ZChain ZCash block explorer API.

We use https://bitdataset.com/api/ It is free for our tasks.


Historical transaction/trade ratio. Available? Useful? Blockchain.info lists both "Trade Volume" and "Estimated Transaction Volume" in both BTC and USD. It occurred to me that the ratio of one to the other might be a useful metric in determining how much of the Bitcoin market is currently speculative versus how much is actually being used for trade.

I would be interested to see if there were, for example, a much higher trade:transaction ratio during the buildup of the bubble than in previous or current days. It might also be a useful metric for determining whether the bubble is truly over and for predicting Bubble 2.0, should one ever occur.

Does anyone know of a good historical source for this data, or perhaps have both the programming acumen and time available to create a simple graph? Or have I missed something important, economically, that makes this information less useful than I'm currently assuming it to be?

You can access the data for each currency on each exchange with the Markets API from BitcoinCharts:

For example, for USD:

http://bitcoincharts.com/charts/chart.json?m=thUSD
http://bitcoincharts.com/charts/chart.json?m=mtgoxUSD

[Update: The stats page does show Trade Volume, apparently the number of BTCs traded on an exchange or all exchanges?]

There is no "Trade Volume"  There is "Total Volume" and "Estimated Transaction Volume".

Are you possibly misunderstanding what the "Estimated Transaction Volume" reflects?

That metric is: "Similar to the total output volume with the addition of an algorithm which attempts to remove change from the total value. This maybe a more accurate reflection of the true transaction volume."

As far as a source of the daily summarized totals, the html source from the chart includes the data for each point.  That data is also the source for the "Output Volume (BTCs)" column of this Bitcoin Time Series spreadsheet.


Why did the lightning network implement a gossip protocol? As pointed out by many lightning developers in the past (e.g. Rusty's 1 million channel challenge) the gossip protocol is quite noisy and a part of the BOLTs causing many engineering challenges.

Today, I learned that Ethereum's Raiden network does not have a gossip protocol. Since all channels in Raiden are smart contracts that live in the Ethereum blockchain, Raiden nodes are supposed to learn about the network topology by looking at the Ethereum blockchain.

I believe funding transactions could have been designed to store information about Lightning nodes. Why was that not done?

Reasons I see:

With our design we can have private channels
blockspace is valuable, so we did not want to store more info on chain than necessary
we needed a transport and communication protocol between nodes anyway, so why not add the Gossip protocol?

My feeling is that there must have been other reasons for that design decision. So what am I missing?

The main idea of Lightening Network is to make the Transactions as fast as possible and to solve blockchain Network scalability issues. Whereas the main essence of the Gossip protocol is that each participant randomly selects a peer and exchanges state. As it can be seen that  Gossip approach is converging in O(logN) gossip rounds where N is the number of participants. Whereas communication on off-chain Network is only O(1) hence reducing the space on the blockchain. Applying Gossip protocol to the lightening Network on defeats the property of 'Lightening' and makes the network massively less scalable. Hope you like the answer.

I have no idea why the decision was made, but I can say why I would have made the same decision.

Gossip protocols are a well established way to find peers in p2p networks. Peer discovery is not very suitable for a permanent store like a blockchain, since peers frequently appear and disappear from the network and the network topology constantly changes. It makes sense to keep balances on-chain for settlement, but it's not an appropriate store for ephemeral data. Entirely too expensive and not scalable.

btw, sorry if this isn't a proper answer, but this new account doesn't have enough rep to comment. :shrug:


What technical properties does a confirmed Tx have that an unconfirmed Tx does not? From a user perspective, each block confirmation reduces the probability that a transaction payment will be reversed.

However from the perspective of the software, what happens when a transaction is confirmed? For example, I know it is removed from the mempool. Is there any other technical difference between confirmed and unconfirmed transactions? Are both outputs stored in the same UTXO set? Does anything happen on any lower level (data storage, etc) inside a node or on the network or in the protocol once a Tx is included in a block?

Do confirmed transactions have any special properties besides the human perception of safety?

when we speak about specific transaction: no. The unconfirmed transaction looks exactly the same as the same transaction with 1,2.. confirmations.

yes. There are 3 types of transaction: confirmed, unconfirmed, and nonexistent

example of nonexistent are those 10BTC I'll give you tomorrow.

difference between unconfirmed and nonexistent is not "obvious"

When you see an Unconfirmed tx on your PC, this does not "guarantee" that everybody else sees it too. If internet connectivity fails, you may be precisely the only person who sees it.

Unconfirmed transactions can be very different from confirmed, in many ways:

Unconfirmed transaction can spend funds that already have been spend, or funds that never existed.

Unconfirmed transaction get lost in the Internet (never get confirmed).

Unconfirmed transaction can be reversed and be replaced by different Unconfirmed transaction sending the funds to somebody else.

Unconfirmed transaction can contain technical error that prevent it to be confirmed.

Unconfirmed transaction can have low fee (less than dust limit) and this can cause confirmation delay of 12 or more hours.

Unconfirmed transaction can be one of many abusive (spam) transaction (in an attack). Such Unconfirmed transactions will typically never get confirmed and most likely all miners will delete these abusive transactions.

Unconfirmed transaction can be censored by all miners. This can happen if some address belongs to a person who is anti-bitcoin or some large corporation that has a conflict of interest with bitcoin (like a large bank). If all miners agree that they do not wish such entity to transact on bitcoin, they may decide to censor the activity of such an entity or person. This transaction may never get confirmed.

Technically speaking, the difference between a confirmed transaction and an unconfirmed transaction is that confirmed transactions have been hashed into a block, where the header of that block hashes to an extremely unlikely value. They are set in stone within the block and cannot be changed as long as that block remains part of the best chain. Unconfirmed transactions live by themselves, just a few kilobytes of data floating around the network, waiting to be hashed into a block.


What block numbers & hashes were discarded by the March 2013 blockchain fork? When exactly (GMT) were these blocks mined?

The following blocks were abandoned (along with a few more along that chain as the quickly dwindling set of 0.8.0 miners plugs along) when the 0.7 blockchain caught up with the 0.8.0 blockchain at 2013-03-12 06:19:32.  Thankfully, you can see that the 0.8.0 chain has slowed down to just one block in the two hours after 03:28:41 UTC.

Also note that, as I understand it, most transactions are showing up in both blockchains.

Source: https://blockchain.info/blocks/1363065244022  (where the ones to abandoned were labeled "Main Chain" until the current "Orphaned" chain caught up, at which point the labels swapped)

Update: I added 7 more blocks since the 0.8.0 chain was abandoned, up to 225461.  The rate of continued mining there is a bit less than one block per hour.

Update 2: As of another day later, there haven't been any more blocks in the orphaned chain.  There is only one block at height 225462 (http://blockchain.info/block-height/225462) so the orphaned chain may end at a record 32 blocks.

Height  Time (UTC)             Hash

225461  2013-03-12 16:21:02  00000000000002d74c31d9c9f8e4768c0b51c3f145be07be7e77af0146144c30
225460  2013-03-12 15:05:56  00000000000002afb9088485b05a2b8a1dfa6b82e3e915fa0765879a05061461
225459  2013-03-12 14:36:39  000000000000036e459f26b1dc02683c9beeb061eedf18689995143354467245
225458  2013-03-12 12:18:23  00000000000000620d78c08bd345aa489b02a52c5f823f0324d3c42212577c24
225457  2013-03-12 09:48:00  0000000000000067fa40b890799ef9814e1e427abd5fc9f4751ffb3ef6512d14
225456  2013-03-12 07:59:29  000000000000031ce5f5c447dbe06ebd62f988c6718e1a17d14b9dcd8ff9605c
225455  2013-03-12 07:14:21  000000000000009d2dee89c7732b5bc912845d96a6bee38cab815949cfa60d23
225454  2013-03-12 05:17:11  00000000000000df96f272c3b1e9dd15272b55750966cbd239219b94756c73ec
225453  2013-03-12 03:28:41  000000000000031803e492a0103154d243c9945ef78dbdba42a1ecfdb5bc5dbb
225452  2013-03-12 03:05:29  0000000000000190f5944e56c52600e9d8d4d5416432e03b324bc85c51629bcd
225451  2013-03-12 02:06:07  00000000000003bdcc4424dea94de83e9f54ca158ae3eac59c2e97c2f90a32ad
225450  2013-03-12 02:01:28  000000000000026a105de544bfbe71bca0820ac3963ba132c75ec40411b5f162
225449  2013-03-12 01:50:05  00000000000001f15726ea57dc7702407a3ebc097ed801cb3d7b0e8a450807cb
225448  2013-03-12 01:38:10  00000000000001f9fd0b0cab82deca5f53030911b33ba7dd7ce3fd77ad2c5a55
225447  2013-03-12 01:34:55  00000000000000ec24f812807f81aadb7a665ef4ab8b8aa49df5ef789cdc13ff
225446  2013-03-12 01:30:40  00000000000000757de9173ee2f01c9f957c8aa3b4f71b901b0fa19683ab1fa1
225445  2013-03-12 01:14:54  00000000000000ec0df675972dddf0c2bdb1d436064672a6f0b79ce65ffcade6
225444  2013-03-12 01:07:00  00000000000003381ed79de2fa810c0e4f0e9c0cd5d307380b779e2b5ffa982e
225443  2013-03-12 01:05:42  0000000000000213874009d269b90be16ea5c1f6a83a79ae2be3813d8972a2a3
225442  2013-03-12 00:50:25  0000000000000229cd059490b7607ca4c191c52bb40405fa052c48d72bfda8b0
225441  2013-03-12 00:39:25  0000000000000372a4c37e27587255ca77a6377391c1974f13ea55ec1d3bc01b
225440  2013-03-12 00:20:11  00000000000003264ac7a6a74ca779997ee637b30f84debcb6ba6c26e2d09f4b
225439  2013-03-11 23:49:08  000000000000015aab28064a4c521d6a5325ff6e251e8ca2edfdfe6cb5bf832c
225438  2013-03-11 23:47:25  000000000000019881625f04eac2046512fa1e1bd7193f56f39595d802bbbd04
225437  2013-03-11 23:34:58  000000000000000016b3a292d63f9eea6b8177b8ba8dfd621d36fd828e5cb187
225436  2013-03-11 23:34:35  00000000000001a23b3f38106f210493795a1ef6b21dd559f87ada8dfc84181b
225435  2013-03-11 23:22:47  00000000000000947452b814ed008f750023e64c8fd03bb19b3865716eeb243d
225434  2013-03-11 23:08:53  00000000000002528688a366a9f42c07089268cd8a474961c49f787cb385807e
225433  2013-03-11 23:07:54  00000000000001b3c862fd66689712bc1cdd44fc004c008ada6c1b51367686f2
225432  2013-03-11 22:56:44  00000000000002c9e42c23f6eed2b9f9152a440610dcfaf992357c3cbff3689c
225431  2013-03-11 22:46:35  00000000000002d2012cc1b3fc0cceb8c156f0e698db40bf4413a210eca056c3
225430  2013-03-11 22:39:09  000000000000015c50b165fcdd33556f8b44800c5298943ac70b112df480c023


Historical prices of currencies Where can I get historical prices for coins, with the ability to store the information. I understand that most APIs do not allow you to save their information, any that do?

Have a look at cryptoarchive.com.au for historical crypto data.

Take a look at coinmarketcap OR bitcoincharts. I think it what you're looking for.


What is the preferred way to denote orders of magnitude in BTC? If I have 36,235.97 BTC, would I shorten that by writing that I have 36.2k BTC or would I write 36.2 kBTC?

It seems that latter is proper for SI units, while the former is used more often for money, at least in the U.S.

I would write 36.2K BTC.

On the other hand, if I had 0.0362 BTC, I would write 36.2 mBTC.

As BTC is written on the right side of the amount, it suggests being more like a science quantity, rather than a currency, which usually have their signs on the left side. So I'd argue that if you want to write 36,235.97 BTC, you should do it like 36.2 kBTC, but if you wanted to write BTC36,235.97, you'd write BTC36.2k. I haven't seen the latter version used, so probably the first one would be preferred, but then again, nobody would notice anyway...


What other whitepapers are there for coin distribution models like POW (proof of work) and POS (proof of stake)? I'm looking for other types of distribution models for crypto coins that are like POW (proof of work) and POS (proof of stake). I'm assuming these are a type of distribution model for coins, or is there a better term for it? I mainly want to find other systems that have unique ways of distributing a coin. Is there a list somewhere?

I don't know of any such list yet, but no reason we can't start making one. :) Others should feel free to add their findings via an edit.

Proof of Work
Proof of Stake
Proof of Activity
Proof of Storage
Proof of Knowledge
Proof of Stake Velocity
Proof of Burn
Dual Purpose Proof of Work (Primecoin)
Proof of Lock (Tendermint)
Delegated Proof of Stake (Bitshares)
Stellar Consensus Protocol (Stellar)
Xoken Consensus Protocol (Xoken)

Here is an interesting new whitepaper.
https://arxiv.org/pdf/1607.01341.pdf


How does one attain 1,000+ connections like blockchain.info? At this moment, blockchain.info has over 1,900 nodes connected to their bitcoin client.

I have been running an m1.small ubuntu 12.04 server and bitcoind for ~4 days straight now with no reboots. My bitcoind client still only shows ~60 connections maximum when performing a "./bitcoind getinfo" command.

How can I achieve 1,000+ connections to my bitcoind client? And is it "worth it" in your opinion?

EDIT: I have re-started my bitcoind client with the -maxconnections=1000 and -timeout=15000 parameters but after ~12 hours of running bitcoind, the number of connections is only up to ~40. And I don't seem to be maxing out my CPU, RAM, or bandwidth just yet.

EDIT 2: I have not seen a "connected time" over 8 hours in the list provided by blockchain.info so that tells me they must restart their server every 8 hours or so. Either that, or connections drop and refresh after 8 hours? I am beginning to think that blockchain.info keeps track of IP addresses running bitcoin in a database of sorts... and forefully connects to them every time their bitcoind reboots. Am I right?

Bitcoin by default will not make more than 8 outgoing connections, and -maxconnections only controls how many incoming connections you allow. Feel free to set this higher, but it will take time before others connect to you in large numbers.

Please don't change this, as there is no need. Connectable peers on the network are a scarce resource, and essential to the decentralization. If people go try connect to all of them like some sites do, we'll very quickly run out.

In case you're a merchant or miner, you perhaps want to set up a few fixed connections to trusted others (see the -addnode command line/config option), but having more connections does not mean stronger verification (the reference client always verifies everything) or even faster relaying (as you'll slow down by distributing new blocks and transactions to all your peers). It is mostly a matter of providing a service to the network.

To check whether you allow incoming, use this: https://bitnodes.21.co
There is a button to check your ip and if it results in green, you are fine to have incoming connection. Once you have that, I was told you can have more outgoing connection.  Good luck.


Is Electrum Cryptographically Secure? Electrum seems very user friendly, thin and convenient, but is it cryptographically secure?  One of the ways to attack any cryptographic system is to exploit weaknesses in the key generation algorithm.  Electrum uses a deterministic algorithm based on a pseudo-random seed to derive the public and private keys.  Is this a cryptographically secure way of generating keys?

The seed generated by Electrum is a 128-bit random number. It is encoded as a sequence of 12 words, for the purpose of memorization. However, it is important to understand that it has 128-bits of entropy.

https://bitcointalk.org/index.php?topic=153990.msg1632127#msg1632127

https://electrum.org/faq.html#seed

No, it`s not!
My wallet just got hacked, and about 0.15 BTC were taken from the wallet. Luckily, they were dumb enough to do it 4 minutes after my last transaction... and to the same address.

In other words, avoid Electrum!


Where is the Mycelium wallet file stored? I have a fairly straightforward question that's still unanswered after googling for days for a definite answer, I hope you guys can help me out with this one here.

Background: I have Mycelium Bitcoin Wallet installed on my Android phone [ROOT], I have backed up my HD wallet which also contains Local Trader account, and have been successful in restoring said backup[s] (by means of un-installing app, wiping it's old data and re-installing / loading wallet from backup (Master seed)). I also have redundant backups of the app and it's data (I assume that includes the wallet file?) made with Titanium Backup.

Question: I however still do not know where Mycelium's wallet resides, is it on my SD extCard? SD Card? Data  partition? Protected Storage? Is it just determined by the Master Seed and hence resides nowhere?

Final Note: I'm eagerly awaiting this piece of information to be at ease with my policies, knowing that  I can manually backup/encrypt my wallet file (if there is one) is really important to me.

Thanks in advance!

For Mycelium, the actual file that contains the encrypted keys are in the sqlite3 file. You can see in the source code that though there is in-memory storage, it's used mostly for testing and that the main way in which Mycelium data is stored is in a sqlite3 file. Sqlite, if you aren't familiar, is a very simple relational database that contains the whole database in a single file.

You can see the actual relational database table layout in the source code.

To answer the question about exactly where the wallet is, mycelium does not have the installLocation attribute and therefore is only going to be stored in internal storage, or on the phone itself.

I was just looking for this very same information. My response is based on the current version of Mycelium (Sep 2016). This is what I found:

The backup is embedded in the 12 words Mycelium generates. So let's say you drop your phone in the ocean and get a new one. When you install the Mycelium app and restore the wallet, Mycelium will regenerate the wallet from those 12 words. Nothing is stored outside of the phone or on a server.