text:
How can I convert bitcoins to Indian rupees and vice-versa?
How can I convert bitcoins into Indian rupees (INR) and get them in paper rupee notes?

We should have a working exchange that links to bank accounts during the first half of the year. There is a rock solid build coming up.

possible duplicate of How do you obtain bitcoins?

See Mahin's answer below for http://BuySellBitco.in
If you want physical cash without going through a bank then you'll find many individual traders here:

https://localbitcoins.com/country/in

And there are offers to buy and sell posted in threads on the India board:

http://bitcointalk.org/index.php?board=89.0

But as of December, 2012 there are no market exchanges that can do a domestic bank transfer, so cashing out bitcoins would incur costs as an international wire transfer.
There is an E-Currency exchange that will buy your coins (or sell bitcoins to you), including sending a bank transfer:

http://en.bitcoin.it/wiki/ECurrencyZone

Here is a forum thread of one reputable trader who can also send INR as a bank transfer:

http://bitcointalk.org/index.php?topic=108712.0

Stephen, it will be great if you can update your answer and list new options such as buysellbitco.in. Regards

If someone will want to sell bitcoins for Rupees, they might list it on LocalBitcoins. It's a good start.

Bitcoinary has traders willing to buy BTC for INR.
https://www.bitcoinary.com/

INRBTC allows you to buy/sell bitcoins in Indian Currency using the unique trading platform.
Place your order details and submit.
you will be asked to deposit 10% of your order value in Bitcoins, after the deposit is sent, the order will be confirmed.
As soon as your order is matched, a trade will be executed and you will be sent the trade details.
If the other party does not honor the Trade, you will be paid 5% of the order value as compensation from the counter-parties deposit.
After the successful completion of trade, the deposit will be refunded after deduction of commission.
More information about the Trading platform is available at INRBTC Info.
User reviews on using this platform is available at Reviews.
Note : A similar question has been asked at How do I transfer funds from India to an exchange? , the answer posted there has been posted here too.

Edit :
BuySellBitco.in is now Zebpay. You can buy, sell bitcoins in India. Available on Android and iPhone. Get bitcoins in one working day, normally few hours.
  - No fees. The rate you see is all inclusive. Locked in rate. Send payment to any of our bank account which includes ICICI, HDFC, Axis, Kotak, Yes, IndusInd.
  - Sell bitcoins and get paid in your bank account in working day, normally same day.
Disclaimer : I am co founder of Zebpay.com
You can sell bitcoin on BuySellBitco.in
We support NEFT payment to all Indian bank account same day.
Edit :

Rates are always displayed on website. You can also subscribe to
twitter feed for rate update @buysellbitcoin. Published rate are final rates and you do not need to pay/add anything extra to receive your funds.
Once you generate order via web site, you will be given a bitcoin address. Send your bitcoins to that address in 15 minutes to confirm your order.
We pay all orders via ICICI NEFT payment, so you should have funds in your bank account in maximum 2 to 4 hours.
our services are for verified Indian customers only. To verify you need to upload  copy of your PAN card on "get verified" tab on home page.

Thanks,
Mahin
Disclaimer : I work for buysellbitco.in

Hello Mahin,
welcome to bitcoin.SE. You might want to add additional bits such as an overview of the fees and other helpful information in order to make your answer even more useful.


text:
How to mine with Intel HD Graphics 4000?
I'd like to mine with my Intel HD Graphics 4000 (128SP 16C 350 MHz/1 GHz, 1.8 GB DDR3 1.6 GHz 64-bit, Integrated Graphics). I think it has support for OpenCL, as I ran benchmark software, and it said it has.
So I tried to use CGMiner on Windows in the single pool mode:
cgminer -o http://pool:port -u username -p password

But it said it could not find any devices:
 cgminer version 3.8.5 - Started: [2013-12-25 13:41:02]
--------------------------------------------------------------------------------
 (5s):0.000 (avg):0.000h/s | A:0  R:0  HW:0  WU:0.0/m
 ST: 2  SS: 0  NB: 2  LW: 5  GF: 0  RF: 0
 Connected to dogepool.pw diff 16 with stratum as user Zignd.igor
 Block: f190f72c...  Diff:472  Started: [13:41:07]  Best share: 0
--------------------------------------------------------------------------------
 [P]ool management [S]ettings [D]isplay options [Q]uit
--------------------------------------------------------------------------------

 [2013-12-25 13:41:00] Started cgminer 3.8.5
 [2013-12-25 13:41:01] No devices detected!
 [2013-12-25 13:41:01] Waiting for USB hotplug devices or press q to quit
 [2013-12-25 13:41:01] Probing for an alive pool
 [2013-12-25 13:41:02] Pool 0 difficulty changed to 16
 [2013-12-25 13:41:02] Network diff set to 472
 [2013-12-25 13:41:07] Stratum from pool 0 detected new block

What should I do?

The latest cgminer no longer supports GPU mining -- it is now exclusively for ASIC mining.
Here is the old 3.7.2 version, which is the last one to support GPU:
http://ck.kolivas.org/apps/cgminer/3.7/

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
Where is the configuration file of Bitcoin-Qt kept?
I keep getting this error:
EXCEPTION: N5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15
program_options26invalid_config_file_syntaxEEEEE
the options configuration file contains an invalid line 'XXXXXXXXXXX'

Where can I find the bitcoin.conf file?

The default location of bitcoin.conf depends on your operating system:

OS
Path

Windows XP
C:\Documents and Settings\<username>\Application Data\Bitcoin\bitcoin.conf

Windows Vista, 7, 10
C:\Users\<username>\AppData\Roaming\Bitcoin

Linux
/home/<username>/.bitcoin/bitcoin.conf

Mac OSX
/Users/<username>/Library/Application Support/Bitcoin/bitcoin.conf

Source
Not directly related to this question, but if you cannot find the configuration file at the above path: note that the configuration file is not necessary to run Bitcoin-Qt. If it is not yet present, you can simply create it with any text editor.

OSX -> OS X (e.g. ref. https://en.wikipedia.org/wiki/Mac_OS_X)

On my mac the bitcoin.conf file doesn't exist.  I'm not sure if simply creating it will cause it to be used by bitcoin-qt

@portforwardpodcast: Bitcoin Core will check for the existence of the file on startup, so yes, simply creating it is sufficient.

I use Linux Ubuntu(16.04 LTS) and i've found file /root/.config/Bitcoin/bitcoin.conf but it's content was not like a normal bitcoin.conf

@PeterMortensen macOS, not OS X.

I have windows 8.1 and I can't find any bitcoin.conf file in my user folder...

For Bitcoin Core, if the file doesn't exist go to Settings (or Preferences in the top menu on macOS) and click the button labeled "Open Configuration File". This will create a bitcoin.conf file and open it in a text editor. Make your changes and save, then restart Bitcoin Core.

Note that for Windows the location of the configuration folder where bitcoin.conf is located is saved in the registry.
Its default path is indeed C:\Users\<username>\AppData\Roaming\Bitcoin but if that location was changed then in order to find the current folder you will have to look in HKEY_CURRENT_USER\Software\Bitcoin\Bitcoin-Qt at the REG_SZ strDataDir.

I would guess that that refers to your bitcoin.conf.  There's platform-specific information on where to find it at: https://en.bitcoin.it/wiki/Running_Bitcoin#Bitcoin.conf_Configuration_File

In bitcoin-core version 0.14.2, it looks for it in the data-dir folder
https://en.bitcoin.it/wiki/Running_Bitcoin#Bitcoin.conf_Configuration_File
The bitcoin.conf file is not created by default, you will need to create it yourself.
And also, I never had a c:\users\[username]\appdata\roaming\bitcoin folder as many online answers will suggest, this is because when I installed the bitcoin core program, I chose to put my data directory in a different place than default.

authors: Андрей Аршинов

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Why is bitcoind so slow on VPSs?
Sometimes it takes bitcoind more than a minute to respond to basic RPC calls such as getbalance (and on average, it takes at least 5 seconds), even though the "STAT" according to the Linux 'ps' program remains "SLl" (Sleeping!). I've confirmed I was looking at the RPC server process and not the client process. How is this even reasonable?
It shouldn't be possible to run large-scale sites like Mt. Gox with those kind of response times. What special considerations need to be taken into account to get performance out of bitcoind?

It takes slightly over 0.0s when I run it.  Is your bitcoind trying to sync with the blockchain while you run the RPC commands?
chris@chris:~$ time bitcoind getbalance
5.72535335
real 0m0.020s
user 0m0.000s
sys 0m0.016s
chris@chris:~$

Are you using an encrypted filesystem?  Are you using the most recent release?

@Chris Moore bitcoind getblockcount matches the block count returned by Block Explorer, so it's fully synced.

@StephenGornick I have v0.6.2-beta. However, the problem has persisted through multiple upgrades. I had the problem back when the current version was 0.3.4. Also, it's not an encrypted filesystem, but it is on an OpenVZ VPS.

bitcoind is often very slow when running over a remote disks (such as on a VPS), especially if that disk is slow.  Check the load of incoming transactions in debug.log, which lock cs_main during processing (which the RPC thread does as well).  If you have the memory, try tmpfs, or increase the bdb cache.

If it's a disk problem, the STAT should read "D" (uninterruptible sleep), shouldn't it? However, the filesystem type is simfs, so perhaps you're right.

It may not be the RPC thread that is stuck waiting on IO, if any thread holding cs_main (which is most of them when they do IO) is waiting on IO, the RPC thread will have to wait for the other(s) to finish their work.


text:
Is using bitcoin for savings a risky choice?
I'd like to start saving money and there are a few options.

Cash provides anonymity but it's very susceptible to steal and I must have a physical space for it.
A bank account is much safer but I don't really like the system to keep track of my savings.
An offline bitcoin wallet would provide both safety and anonymity.

It seems the last option is the best choice because the money saved can even go up in value as bitcoin deflates. But, what if it never takes off as a mass used currency? What if it somehow gets deprecated by a similar cryptocurrency?
How big is the risk of saving in a bitcoin address?

Hi Tomas! There is no way to answer this objectively (is it risky? how risky it is?) so I'll close this as it is not a good fit for the Q&A format used at StackExchange. Perhaps try some of the forums?

Buying bitcoins shouldn't be thought of as savings, it's a very high-risk speculative investment. It could go way up in value, or way down.
Luckily, if you want Bitcoin's power of secure storage without exposure to the exchange rate, you can do that too, in theory at least. Use most of your funds to buy X bitcoins, and use the rest as collateral to short-sell X bitcoins. You'd have to pay a bit more for the exchange, pay an interest rate, and trust some of your money with the platform, and there aren't currently very good margin trading platforms, but it can be done and might be worth it if you're sufficiently averse to the traditional alternatives.

That sounds like hedging or am I mistaken ?

@JamesPoulson: Exactly, you store your wealth as bitcoins but hedge against changes in the BTC price.


text:
Is it legal to trade bitcoins on coinbase/mtgox in the US?
I am just wondering whether it is legal to trade bitcoins in the US just like we do for stocks? I see similar legal questions about selling OTC, but I am more interested in buying and selling in well known exchanges like coinbase/mtgox etc. Can I just trade them like normal stocks, as long as I pay taxes? Or do I need to register with FinCEN to trade?

I don't think anyone on this site is qualified to offer legal advice, and if they were, they wouldn't do so for free to a client they don't know. Voting to close.

Commodities exchange, yes.  Stock exchange, no.
Stocks are securities, so it wouldn't be appropriate to trade bitcoin on a stock exchange because they don't have any relation to the assets or liabilities of an underlying company.  Bitcoins are valuable (or not) only intrinsically.  This is closer to a commodities exchange, which is what CEX.io does and previously Mt. Gox did.
This is equivalent to trading gold, wheat, pork bellies, platinum, and so forth.  People on a commodities exchange can buy and sell options and forwards.  Which is economically a perfectly appropriate thing to do for an asset like Bitcoin.
As of right now, the legal situation is still confusing to the government, but this article argues that the CFTC does not regulate bitcoin trading even though it's a commodity.  FinCEN thinks that people who sell BTC for USD will presumptively have to register.  You will have to work out for yourself what rules might apply to BTC traders, if any.  I cannot provide much help on this front.
As a general tax rule, you need to observe Notice 2014-21 treating BTC as non-currency property and will have to report your transactions.  If you are buying and selling as a business, rather than holding BTC for anticipated appreciation, then you will need to file Schedule C and maybe create a business entity.  If your money comes from appreciation and long investment, then you are an investor and can make use of capital gains treatment.  If your money comes from quick trades and the short swings of the market, then you are a trader and if your money comes from charging other people fees to make their trades for them, then you are a dealer - either of which is a business that must be taxed at the less preferential ordinary income rate.  Remember to ignore any tax reporting on "currency gain" or loss from BTC, since the IRS says bitcoins are not currency (but if you trade in other currencies, that's a different issue).
Selling bitcoins is taxed like buying and selling other property.  It will be taxable accordingly as a basic IRC §1001 transaction, where [gain] = [amount realized] - [cost basis].


text:
Can more bitcoins be transferred to a paper wallet address once it is created?
I created a paper wallet from coinbase with some initial amount and secured it. I want to keep adding more bitcoins to the same address. Can I do that? Are there any issues doing it?

Yes, you can.
The wallet itself does not hold any money. It is just a private key, to which the coins will be associated.

Yes. I have done so myself. I gave my kids paper wallets with 10 millibits each and am now giving them a bitcoin allowance of 4 millibits per month.

Cool concept for allowance


text:
About a change in 0.8.6 - free transactions with less than 0.01 outputs
// This code can be removed after enough miners have upgraded to version 0.9.
// Until then, be safe when sending and require a fee if any output
// is less than CENT:
if (nMinFee < nBaseFee && mode == GMF_SEND)
{
    BOOST_FOREACH(const CTxOut& txout, tx.vout)
        if (txout.nValue < CENT)
            nMinFee = nBaseFee;
}

The above if clause was as below:
if (nMinFee < nBaseFee)

Gavin explains this change as:

Remove the rule that all outputs of free transactions must be greater
  than 0.01 XBT. Dust spam is now taken care of by making dusty outputs non-standard.

I don't see any other code change in the same commit. How is dust spam taken care of? Was it made non-standard in a previous version?

Initially, "dust" transactions were made nonstandard in commit 8de9bb53:

Define dust transaction outputs, and make them non-standard


text:
How can I test my receive address?
I downloaded the original software of Bitcoin at bitcoin.org.
I just created a receive-address. How do I know it will work? How can I test it?

If you received the BTC 0.0001 that I just sent you, then it works! ;-)

It worked. Thx!

@NateEldredge nice one ;)

An easy test is to sign a message using your private key and then verify the message using your public key (your receive address).  This can be done using Bitcoin-Qt by selecting File->Sign Message.

Sign a message by entering your receive address and some message text (anything you want).  Select Sign Message.  Copy the signature to the clipboard
Verify the message by entering your receive address and the message text (exactly as you entered it for signing).  Then paste the copied signature into the signature field.  Select Verify Message.
If everything is working correctly, you should get a message verified status.

The receive address is based on the private key used to sign it's transactions. If you can see it at all, it means the private key must exist. Further, the address contains a hash so you can't make a typo using it. You can be perfectly confident that it works.


text:
Can the fee be 10 times bigger than the amount that was sent?
I don't understand one thing : If I get paid an amount of 0.000055 BTC ore more, how come the fee is 0.0005 ? The fee is ten times bigger than the amount I was paid?

The tansaction fee is based mostly on the transaction size (in kilobytes), not its amount (in BTC).
Even more: the bitcoin protocol is quite unfriendly to small transactions to prevent spamming the network. If the transaction output is larger then 0.1 BTC, then the fee could be leveraged (more on fee generation algorithm here)

This is to avoid Spamming transactions that would take a lot of space in the block chain.
If you want spend this coins you should wait until transaction fees will be decreased by future updates.

Yes. Similarly if you used a courier to send a package containing $0.01, you could find that it would cost more to send it then the value of the contents.


text:
Transaction fees after 0.9 protocol update
As the changelog of bitcoind 0.9 tells, transaction fees should be greatly reduced. What are the implications of this?

How were transaction fees determined before the change and after the change?
How does this change affect third-party software developers (who do not use Bitcoin-Qt wallet) - do they need to mimic this change?
How does this change roll across the network? Do 51% of miners need to update to the new version before the change starts to be effective?

Transaction fees are 100% optional.

Thank you for your comment KJ, but it does not address any practicalities.

How were transaction fees determined before the change and after the
  change?

The fees were determined on the person sending the bitcoin, or the client in many cases. One can send a tx with no fee, but it has lower priority to get included in a block. They are still determined the same way. The "default" method for determining the fee is generally 0.000055 BTC/1kB. Technically, the fees help determine the priority for a transaction to get included in a block. The formula is: priority = sum(input_value_in_base_units * input_age)/size_in_bytes, therefore, it is a function of a few variables.

How does this change affect third-party software developers (who do
  not use Bitcoin-Qt wallet) - do they need to mimic this change?

The change needs to be implemented in wallet software that determines the transaction fee for the user (i.e. Multibit), or changed in a setting by the user (i.e. qt client).

How does this change roll across the network? Do 51% of miners need to update to the new version before the change starts to be effective?

The change rolls across the network as the miners update their qt client to the version with the updated protocol rules, otherwise, they will mine and still play by the rules in the old client. This change doesn't necessarily require 51% of the network to adopt the new version for the lower tx fees to take effect. Theoretically only one miner would need the new version and solve a block with the client for the new tx fee rules to take effect for that block. If one uses the lower tx fees while few miners have updated their clients, the fee will be considered low, and probably would be lower than lots of current transactions, so would be placed further down in the queue. If the update is done by a few major pools, the change would be effective, although using the new tx fee might cause a slight delay if a block is solved by a miner with old client and the block is full of transactions with higher priority.

Please note that fees are still completely optional and it depends on miners if they include your transactions in the block or not. As of now, you can still send trx without any fee but it might take a day until it makes it to a block.
This change only affected the original bitcoin core client which only relays transactions with some minimum fee. You can however still send out transaction with any (or no) fee. See paytxfee option.
The change was just a quick and temporary fix. In the future, fees will be calculated more dynamically, according to demand and supply rules. Perhaps we'll see this in 1.0.


text:
Doesn't GUIMiner work on Windows 8?
I use GUIMiner to mine bitcoins using my graphics card, and in a pool.
I've upgraded to Windows 8 this morning, but now GUIMiner won't launch!
All I get is the icon in the taskbar for a few seconds, and it disapears. I have no error message, no windows, and no error logs.
I have tried launching the application as an administrator, and in "Windows XP" and "Windows 7" compatibility modes.
How can I fix this problem?

What happens when you launch it from the command line? If you can get some kind of error message, post it on the GUIminer issues system.

Moreover, I'm not sure this question is a good fit for SE. It should actually probably better be filed there to boot.

This is getting weird, nothing is shown when launched via commandline either

I think you're best troubleshooting this on the issues system linked above. I had a friend try on Win8, and it at least starts up.

Yes, it feels like I'm the only one with this problem. I've added an issue.

Voting to close as too localized, since upgrading to windows 8 is a pretty specific scenario (and this site is mainly for the purposes of compiling lasting bitcoin knowledge).  Just wanted to comment so you knew it wasn't any poor reflection on you, Manu--this is just how these sites are curated.  Hope the GUIminer issues system can get you some help!

agreed, + it now works with the latest (beta) drivers from ATI :)


text:
How to connect to several Bitcoin nodes using Bitcoin
I'm looking for a way to connect to several Bitcoin nodes using Python...
I've been looking in different Bitcoin-for-Python libraries, but I haven't found anything :(
What should I do?

Not sure if this will help but check this out https://en.bitcoin.it/wiki/Fallback_Nodes - some sub functionality in there will do what you require.

If you want to communicate with several nodes, you can use existing JSON RPC libraries and issue requests via the API. Check out these libraries:

JSON-RPC
python-jsonrpc


text:
Bitcoin-Qt client: Easy way to using a wallet.dat not in its default location/when it asks for my password at all?
It doesn't have to be called "wallet.dat", right? That would be too obvious. Can you call it anything, with any extension?
Bitcoin-Qt is just not so trivial to me to use since the trivial way would be to have an option File -> Open wallet (at starting the program), then enter password if encrypted. TrueCrypt for example is trivial in this way, you select any volume, type in a password, mount, and dismount images.
I don't understand that either that you encrypt your wallet.dat file, close the client, open the client and it doesn't ask for your password?

You can do it with the -datadir option, but I can't think of a way to hide that you're using a wallet in a non-standard location.

Bitcoin-qt only asks for your password when you do an operation that requires it, such as sending coins.
Currently, wallet.dat must be called that and reside in the Bitcoin data directory. It might be possible to use symlinks to work around that.

And the only way to reach the developers to ask for a feature-request is through IRC?

No, they are available via email, the forum, mailing lists, github (the official place for bug reports I think), IRC etc. But you're definitely not the first to ask for a feature to specify wallet location and filename.

Do you mean this one is official? It does not state it clearly but if yes, good to know.

If I understand correctly, the bitcoin address(es) -hence, the balance- stored on the wallet are public data, anyone gets the wallet file can see it, only he can' spend the money without the password? So the easy solution is just to store your wallet.dat file in an encrypted file as it is not fully encrypted in itself - like your password manager's database.

Using a symlink would defeat the purpose of having a different name, as would having the alternate name stored in a config file with a known name. It might make sense only if you change it at compile time, but doing such a thing wouldn't boost your security by any significant amount.

It might make sense only if you change it at compile time Sorry, didn't understand. But my understanding is this: just store the wallet.dat file under another name on a USB (like file.dll) - of course, backed it up to many places - and only rename it back to wallet.dat when you want to spend from it and have to move it back to the data directory.


text:
Is there a way to monitor what bitcoin-qt is doing on a mac os x?
Using 0.6.6.2 on a mac mini; has been running for 56 hours now, still not fully synchronised; is there a way to monitor whether the program is actually doing something or just stuck? would the 0.8.x be faster?

Ah, one is supposed to hover the cursor around the spinning wheel in the lower right corner, then a notification appears ...

It takes forever and a day to have Bitcoin-Qt sync up with the Blockchain for the first time. Also try executing "netstat -n -P TCP | grep '.8333'" in a terminal window to see if you have eight concurrent socket connections into the Bitcoin network.

Yep. it's usually much, much faster to ask for the block-chain to be delivered to you on a DVD, or to download it - there are some torrents for it. Of course, theoretically you could be receiving a tampered blockchain, or a virus/trojan, etc. In practice, it's usually safe

Open a terminal window and enter this command:

tail -f ~/Library/Application\ Support/Bitcoin/debug.log

You will get a scrolling log of all the detailed activity of bitcoin-qt.

You could also go to Help -> Debug Window to see if you have active Connections and if the blocks are moving.

Run bitcoin-qt from command line and redirect the error and the standard output to a file :
bitcoin-qt 2>&1 /path/to/your/log/file

check your log file to find what's going on ..
You can see the log file in real time on screen by typing :
tail -f /path/to/your/log/file


text:
Where to buy non scam bitcoin with ICBC credit card?
I've tried several bitcoin sites which accept credit cards, but they didn't accept my bank's credit card (miicard require bank verification and ICBC is not on the list), so where can I buy bitcoin from a reliable exchange with an ICBC credit card?

You are likely to have trouble finding a place to buy Bitcoin with a credit card. A credit card transaction can often be charged back, in which case the seller has no way to recover the  bitcoins. Honest sellers may not want to take this risk, meaning they are probably far outnumbered by scammers.

As others have said, due to the fear of you asking to be charged back, almost no seller is going to accept a credit/debit card in exchange for Bitcoins.
If your bank allows you to get cash as a kind of "credit card transaction" (some do!) you might want to try that option and then pay in cash - you can always find people gladly selling in exchange for cash, and you can still pay monthly (in fiat) to your bank:
https://localbitcoins.com/

authors: Александр Орлов


text:
Partially filled orders on btc-e
I just started with btc-e however I seem to have a load of partially filled orders. What happens with these? Can I cancel them? and if so, how do I do that and what are the consequences? Some have a price tag of $100 so the chances they get filled are minimal.

You can cancel them in the Your current active orders section of the Trade tab by clicking the cancel link under Action. The remainder of the order is taken off the books and you can place new orders using the funds which are returned to your balance.

Do you still lose the percentage cut for BTC-e?  Your answer does not completely address his question

Without looking into it in detail immediately, I would expect the percentage to be taken as a percentage at the time the order is filled and so to be a percentage of the partial fill.

authors: Босиком На Татами


text:
Wallet Out of Sync and Bitcoin transfer
I bought bitcoins and sent them to the wallet, however the wallet is not synchronized and as a result I cannot see my bitcoins. Will I be able to see them as soon as the synch process finishes or have I lost them? And if I did, is there any way I can recover them?

The risk is zero. You are already the owner, just your software hasn't caught up to that information yet. – This was posted as an answer, but it does not attempt to answer the question. It should possibly be an edit, a comment, another question, or deleted altogether. Please refer to [about] for a quick overview on how Bitcoin.SE functions.

In case of an offline wallet such as Bitcoin-Qt, you will need to be synchronised/update before you see your wallet balance correctly. The Bitcoin client will download the whole blockchain if it is the first time. Once it has been downloaded and you synchronize daily, it will be much faster to do so.
There is an existing answer on this post.

authors: Δήμητρα Γεωργίου


text:
What's needed to host a competitive game site
Let's say I wanted to host a site in which

users create their own accounts
they deposit bitcoins in said accounts
a commission of, say, 0.05% is kept of all the bitcoins that are deposited in the site
users play a competitive game with each other (e.g. chess, or others for more players) for a bet
the winner gets the full bet
each user can withdraw their bitcoins any time they want

This, I figure, would be quite hard to get right due to all of the different aspects involved, such as user trust, security and technicalities.
My questions are:

How do current betting sites handle the deposits/withdrawals of bitcoins, and how do they keep a commission out of it?
Any small site could rely on trust and do this in a manual fashion, but I'd assume any professional site does not handle this manually. So, is there an existing library (I'll use Node.js, in case it matters) or third-party service for this? And should the bitcoins be stored in a conventional offline wallet(s)?
And last, is there a way to "prove" that the games are fair in order to establish trust? Are there any legal requirements regarding to this?

Obtaining the legal permits for operating a gambling site sounds more expensive than actually developing such a site.

The whole idea is weird too. Sounds like an exercise in sandbagging. The stronger player will win on average, so games will only happen if one of the players is misinformed about the other player's strength. For many games cheating is possible (e.g. for chess, computers are much stronger than humans) which causes further difficulties.

@CodesInChaos just like in betting games: twice the strength, double (or square) the payout. Think of it as probabilities. You could risk playing stronger players (say they could win you 75% of games) just to be paid more.

@kaoD That doesn't change the main issue: Players who don't try to misrepresent their strength will pay to players who do. It's a competition of who cheats hardest, not who plays best.

@CodesInChaos what do you mean? To misrepresent your strength you have to lose games, i.e. pay. If it can be balanced out (which you might be suggesting it can't?) the optimal strategy is to play players near your level and play legitimately.

@CodesInChaos Regarding obtaining legal permits for operating a gambling site, as far as I know you don't need any permits. Bitcoin is not a FIAT money, there are no gambling regulations on it what so ever, thus no gambling license is required (assuming the site doesn't accept FIAT money).

@BabyPuncher I don't think it's that easy. In my country there are gambling regulations regardless of the medium of exchange. As long as it has value, it's taxable. A country might even forbid gambling in non-fiat to avoid tax evasion.

I guess it could work as long as users are forced to go thru a series of matches vs. computer to assess their strength, you use a kind of handicap, either monetary (so a pro vs. a noobie has the noobie risking more) or as is done in shogi (Japanese chess) where the stronger player has some of their pieces removed. Of course, strength assessment should be updated after each game (a la Yahoo Games) and the initial assessment process must be long and tedious enough to disuade creating sock puppets for easy wins.

I only used chess as an example. But yes, it's not a trivial task to assess the players' ability to make it fair play. The whole point of making it a competitive game is to disassociate the site from making payments (and thus, risk) and only take a comission. @JoePineda that's a good idea. Matching players with a similar percentage of "won" games could be an alternative (faking that would imply having risked money and so, it'd naturally disuade malicious users to do it).

Aditionally, the "mechanics" of the game would have to be NP-hard (such as Tetris') so that there is no shortcut or smart algorithm that will solve them swiftly. Making it impossible to cheat.

The other idea just struck me is hosting a site to play a virtual version of a trading card game, like Yugi-oh or Magic-the-Gathering. Either you get a license for those or you design your own cards, with a game-play similar to those. You could then let the players play for free, charging a small fee for users exchanging cards or sell them directly some new ones your designers have created. In these games there's a lot of random (easier for newbies), and if you're willing to pay enough you can get powerful cards.

How do current betting sites handle the deposits/withdrawals of bitcoins, and how do they keep a comission out of it?

Just like any other payment: you track the blockchain and keep balances in your server database.

You can charge the commission on deposit (e.g. 0.5% fee, when depositing 10BTC just credit 9.95BTC)
You can charge per game (e.g. when each player bets 5BTC in a 2 player game = 10BTC, only pay the winner 4.95 from their rival) and keep 0.05 (0.5%).
In betting games you can also schew the long-term statistics against you so the house has an edge (just like casino roulettes have 0, and some even 00).

Any small site could rely on trust and do this in a manual fashion, but I'd assume any professional site does not handle this manually. So, is there an existing library (I'll use Node.js, in case it matters) or third-party service for this? And should the bitcoins be stored in a conventional offline wallet(s)?

This would work just like any other business, just browse this site. You can rely on external businesses to do this for you, or create the system yourself (leveraging libraries or not, you must listen to the blockchain events and act accordingly).

And last, is there a way to "prove" that the games are fair in order to establish trust?

If games are deterministic (like chess) the issue boils down to trust between users (is this guy going to cheat me using a chess engine?) since you couldn't influence the outcome anyways.
If games are based on chance, either the users must have faith in you or you have to provide a way for the user to verify you're not cheating him. How such a scheme could be implemented depends on the detailed mechanics of the game (you could even leverage Bitcoin's blockchain for this).

Are there any legal requirements regarding to this?

Dealing with the legal system is the hard part here. Just like any other legal matter... it depends on your jurisdiction! In my country you have to be audited before running a betting business.

Thank you very much for this thorough answer! Would tracking the blockchain and keeping the balances in the server database manually be too primitive? Considering I do not expect the site to become huge. The only downside to this I see is that there would be a delay between a deposit or a withdraw to be reflected as I would have to verify the transaction myself.

@Robert there's nothing inherently wrong with that approach. The problem is there are hundreds of edge cases dealing with the blockchain (e.g. chain reorganizations) and a huge cost to run the payment infrastructure.

The way I've seen a lot of crypto-coin roulettes work is: they pre-generate the next pseudo-random selection of roulette, hash it, add a salt, then publish it BEFORE your bet. Once you place your bet and push the "Go" button, the pseudo-random number and the salt are revealed, so you can validate it against the published result. It'd be feasible, though computationally VERY expensive, for the virtual croupier to select a diff. number (to make you lose) then find a salt so that the published hash is the same, that's what creates a bit of trust.

An example:
http://dogespin.l8.lv/?r=dogecoin_roulette#provablyfair


text:
Compiling litecoin on Macosx: llvm-g++ not found
I'm trying to compile litecoin on macosx 10.8.5, I have Xcode installed along with command line tools and have built all recommended dependencies (boost db48 qt4-mac openssl miniupnpc).
When I run sudo make -f makefile.osx USE_UPNP=- I get the following error:
make[1]: llvm-g++: No such file or directory
make[1]: *** [db/builder.o] Error 1
make: *** [leveldb/libleveldb.a] Error 2

Any help in this matter would be greatly appreciated, all my google searches have been in vain.

For anyone who runs into this problem, the newest version of Xcode 5.0.2 and Oct 23 version of command line tools did not install the llvm-g++ file. I rolled back to Xcode 4.5 and installed the first mountain lion command line tool release and this fixed the problem.

You can also solve these problems by installing dependencies with homebrew http://brew.sh/
it may also fix the problem to run Xcode-select --install in Terminal


text:
Who receives the money when a bitcoin is purchased?
Where does the real money when someone buys a bitcoin?
I understand that if you buy from someone or an exchange you are paying them in real money but who gets the money for a newly mined bitcoin?

This does not appear to be a duplicate of the question in the above comment.  This question is about newly mined bitcoins.

@user70213 Other currencies are only involved when transacting. There is no other currency involved in mining - someone just gets a newly created BTC. They're free to sell it, or keep it, or give it away.

@MaxVernon It's at least a partial duplicate. The question about newly mined coins seems unrelated, as there is no other currency involved at all. Perhaps it's worth splitting the question up.

Newly mined bitcoins don't "cost" anything (I'm simplifying - there are costs such as electricity and the cost of the mining hardware).
New bitcoins are simply discovered by the miner who is lucky enough to discover them.  The concept is similar to finding gold in the ground.  Once you find the gold, you take it to a market and sell it to someone who wants gold, and is willing to provide money in return for gold.  In the case of bitcoin, a miner runs a large number of mathematical equations searching for an answer that matches the difficulty requirements, and other technical criteria.  Once the answer is found, a block is produced containing the answer along with a number of new bitcoins.  The miner then either retains the new bitcoins, or trades them for some other currency.


text:
16 word recovery phrase for blockchain wallet not working
I downloaded my blockchain wallet but now i forget the password and my recovery phrase is 16 word, so I tried them but they are not working. Can somebody please help me?

Above answers regarding seedrecover.py and BIP39 are wrong.
Blockchain.info legacy wallets can use any number of words from 15 to 21 or more. The number of words changes depending on your password length.
The words are NOT a part of the BIP39 seed words and seedrecover.py will NOT be able to find the missing words as it is based on a completly different algorithm.
Blockchain.info used their own wordlist composed of over 50000 words not compatible with the BIP39 wordlist pre 2016. From 2016 they started to use 12 word seeds compatible with BIP39.
Your seed is either missing a word or you have entered a wrong word.
The seed does not contain your private key like the BIP39 seed words, instead it has your wallet ID to login to blockchain.com and your password. In rare instances the seed only contains your username and pass, that is if it was created pre 2013.

BIP 39 backup seed words always come in triplets, e.g., 3, 6, 9, 12, 15, 18, 21, 24... Most wallets support 12, 18 or 24 words. The only thing that makes sense is that you might have a HD wallet that is using 15 seed words and an additional passphrase that was of you choosing, BIP 39 salt. Check to see if the first or last word in your list is not in the list of BIP 39 words documented here. If this is the case, this word might be acting a a passphrase, the BIP 39 salt.
Otherwise, you are almost SOL. If this is the case, you probably have substantial work ahead of you to figure the two missing BIP 39 seed words and their correct positions.
The morale of the the story is haste makes waste when writing down BIP 39 seed words.

You had to chose a password and write down the seed to make it secure. You can't access your wallet without password or seed. Otherwise, someone could easily steal the coins. So your only possibilities are
(1) remembering the password.
(2) You said that your seed (16 words) did not work. Maybe you wrote them down incorrectly. If your wallet supports the default BIP-0039, you could look up the words and check them here: https://github.com/bitcoin/bips/blob/master/bip-0039/english.txt
Maybe you wrote "odd" instead of "add" or smth. like this down.

If it's a BIP39 recovery seed, it's 12, 15, 18, 21, or 24 words long.

Blockchain.info uses either 17 or 12 recovery words.  Looks like you are missing a word.  You can use seedrecover.py to try to get your missing word back.

can I still use the suggestion you gave on encrypted blockchain wallet. I downloaded it since

No.  You can either try to brute force the encrypted wallet or recover the missing words.

So, this script can be configured or changed to brute-force then? - I suppose I am right that the process may take a while?

Yes.  If you only have the last word missing, it should not take more than a second to find the missing word.


text:
I mistakely Deposit my BTC to my Yobit.net BCC Address, How can i Get it Back
Help me,
I am not able to Contact Yobit for help, Can anyone give me there email
I By Mistake sent my BTC to my BCC Address of Yobit, Can I get it recovered
I heard That BTC and BCC have same Structure Thus BTC and BCC have same address and Private key, Thus I Think Yobit has BCC address and Private Key thus They also Can Get my BTC Using That, I need help
I am new to It, I need to get my BTC, Hope Someone Hears me and Reply with Help and Help me resolving it with Yobit...
Thanks for help

Sorry man but you are not able to get your money back unless someone from Yobit sends it back. Try to get in touch with their support team.


text:
How to split into BTC and BTG
I have bitcoin in blockchain.info (where i control the private keys) before 25 Oct.
Which exchange/wallet can i use to split the bitcoin into BTC and BTG so that i can sell them separately before 1 Nov 2017?

At the time of the snapshot, the coins which you controlled in your wallet would exist in both the original BTC blockchain, and the newly split BTG blockchain.
You can redeem these BTG coins for BTC (or another Cryptocurrency) via an exchange which supports these tokens (eg Bitfinex, Yobit,  etc) once the BTG blockchain is being publicly mined, and transactions can begin.
Selling before this time would have to be done via a futures contract, although I do not believe there are any major platforms trading BTG futures at this time.

I don't plan to sell BTG yet. But I need to sell my BTC before 1 Nov (need cash urgently), so how could I do that while keeping my BTG? If i send BTC to Bitfinex etc, would it automatically split it into BTC and BTG? If not how can i instruct it to?

BTC can be sold through any normal exchange right now, without affecting the BTG. Just send the BTC to the exchange as normal, the transaction will not appear on the BTG chain as it occurred after the snapshot date.

So I simply have to retain my private keys, so even if blockchain.info show my BTC balance as 0, i'd still have my BTG with these private keys? So my BTG are tagged to my private keys and as long as I don't touch them, blockchain will not remove/alter them?
Then in the future I can deposit into a BTG wallet using these private keys?

Correct. If blockchain.info does not support BTG you will have to export the keys to a wallet which supports sending transactions on the BTG network.


text:
Will I be losing my BTG by sending BTC to bitfinex
I have my BTC in my trezor wallet (had it for a while before the BTG fork), now I would like to send some BTC to Bitfinex, but I am worried that if I do so, it will also send my BTG to the same address on Bitfinex and so losing my BTG. Can anyone tell me if my assumption is correct ? Thanks

until the BTG fork is complete, sending bitcoin to a 3rd party might risk your access to BTG.
that said, sending anything to bitfinex might be a risk in itself, given that there is accusations public that bitfinex has no bank accounts and may be involved in multiple accounts of fraud.
always do your due diligence.
never trust random strangers (me included).

As of right now (October 25), the Bitcoin Gold fork is not yet finished, despite being already forked, and nobody is still sure how it will work.
So it might indeed get replayed on the Bitcoin Gold chain, but it also might not. If you want to be sure, you cannot send Bitcoin to other people's addresses until Bitcoin Gold is live.
In my opinion, Bitcoin Gold is not worth it, but that's up to you.

authors: Андрей Юшкевич


text:
How safe is it to use online wallets?
I want to know if it is safe to use online wallets? Can we trust online storages which stores our privkeys, passphase and wallet.dat files?
I read that at least one android wallet was hacked so I think this is not safe when private keys stored into foreign remote storage. Maybe I misunderstood something?

If you use an online wallet you put your entire trust in the service provider. If the service provider is hacked, goes down or, disappears into the night then so does your BTC, permanently. They own all the private keys.
The risk of attack is generally considered to be greater for an online wallet provider than it is for a wallet on a personal PC since online wallets are believed to house so many more BTC's under one roof, although, if their security is good it may be easier to take over one single user's PC sitting at home if their security is not so good but the reward then is usually much lower. Online providers have been hacked and cleaned out more than once in the past.
The same risk applies to online exchanges. You should not keep more balance online than you absolutely need to at any one time.
The most sincere advice I can offer at a personal level is to use a reputable wallet from the official source at http://bitcoin.org/ and choose one that suits your needs.

I would only store as much in an online wallet as you would carry cash in your wallet...
Just like cash - online wallets are very practical - but not 100% safe.
Remember online wallets are NOT REGULATED. They are not like a bank - they do not have auditors or compliance officers etc... In fact they can just be some undergraduate sat in his bedroom.
If you are going to keep more than this - say what you earn in a week/month then do some due-diligence on the company - at least check they are more than a one-man-band and there is some hope they get someone to PEN test them (i.e. an external expert to try to hack them).

Holy war question in fact.
Yes, using online wallets means that you trust their developers. But the same situation is in standalone applications - you should trust their developers.
Many online wallets do not store your private keys. But it does not mean that they do not have an ability to steal/lose your funds

I think we can trust Bitcoin Core much much more then any other private wallets. Because it is opensorce and community supported.


text:
You Have 1 Bitcoin in your account
I continue to receive text messages on my mobile advising I've got 1 bitcoin in my account, to go to: http:// (etc) to confirm my account.  However, when I follow the link, there's nothing relevant
Can you help please?

Do you expect to receive text messages like this? If not, then they are probably spam/phishing messages and all the sender wants to do is to get  you to click on a link and infect your phone with a virus. There are unlikely to be any bitcoins for you.

A bitcoin is currently worth about 6000USD, give or take. I would judge the credibility of such messages accordingly.

It's a scam. Do NOT click. Will be a virus your take your passwords

At this time (2017) no one is going to give you free Bitcoin unless you have bought it from somewhere or something similar.
It is most likely a spam/phishing attempt as @Greg said.

Yup scam. Mine lead back to text.id a domain registered by Christopher Boyd. A security researcher, think someone is trying to frame him. Catch two birds with one stone so to speak. Think the hackers got the info from Gravatar and combined that with some google searching. Either that or a dodgy mining pool where registration is required.


text:
How to obtain inputs and outputs of a bitcoin block more quickly, using JSON RPC or similar
Currently, it takes me almost 1.5 hours to obtain all inputs and outputs of a bitcoin block from January using JSON RPC. At this pace, it will take a significant amount of time to go all the way back to genesis. I am starting to think that I am using the wrong API call, or doing something else wrong. I would be greatly thankful if any of you could review the calls that I am currently using (pasted below) and perhaps tell me what I am doing wrong, or if bitcoind is the appropriate client for this.
from bitcoinrpc.authproxy import AuthServiceProxy, JSONRPCException
import json
import requests
import pprint
import time
import os

objectivestart_time=time.time()
pp= pprint.PrettyPrinter(indent=4)

rpc_user='n'
rpc_password='n'

url=("http://%s:%s@1"%(rpc_user, rpc_password))

def req(payload):
    return requests.post(url,data=json.dumps(payload)).json()

def BlockHash_JsonRPCpayload(number):
    dic={

    "jsonrpc":"2.0",
    "method": "getblockhash",
    "params": [number] ,
    "id": 1

    }
    return (dic)

def Block_JsonRPCpayload(h):
    dic={

    "jsonrpc":"2.0",
    "method": "getblock",
    "params": [str(h)] ,
    "id": 1

    }
    return (dic)

def rawtx_JsonRPCpayload(tx):
    dic={

    "jsonrpc":"2.0",
    "method": "getrawtransaction",
    "params": [tx, True] ,
    "id": 1

    }
    return (dic)

def rawvin_JsonRPCpayload(tx,vin):
    block_payload={

    "jsonrpc":"2.0",
    "method": "getrawtransaction",
    "params": [tx,1] ,
    "id": 1

    }

    request=req(block_payload)
    value=request['result']['vout'][int(vin)]['value']

    return float(value)

BTC_dic={}

hash_payload=[]
start_time=time.time()

block_start=481101
block_end=490000
start=block_start
end= block_start

while end < block_end:
    block_tries=0
    while True:
        try:

            end=start+100
            hash_payload=[]
            print ( 'start', 'end', start, end )
            for i in range(start,end):
                hash_payload.append(BlockHash_JsonRPCpayload(i))

            start_time=time.time()
            print ( 'mark 1 ')
            hash_response=requests.post(url, data=json.dumps(hash_payload)).json()
            print('time to get hash batch',start, "_", end, time.time()-start_time)
            print ( 'success in getting hashes for ranges', start, "_ ", end )

            time.sleep(0.4)

            block_payload=[]
            for i in hash_response:
                h=i['result']
                block_payload.append(Block_JsonRPCpayload(h))
            start_time=time.time()
            block_response=requests.post(url,data=json.dumps(block_payload)).json()
            print ( 'time to get block batch ',start, "_", end, time.time()-start_time)
            print ( 'success in getting blocks for ranges', start, "_ ", end )

            time.sleep(0.4)

            for i in range(len(block_response)):

                block=block_response[i]['result']

                height=block['height']
                print('getting', len(block['tx']),'transactions for block ', height)
                BTC_dic[height]=block
                tx_payload=[]
                for tx in block['tx']:
                    tx_payload.append(rawtx_JsonRPCpayload(tx))

                try_errors=0
                while True:
                    try:
                        #print ( len(tx_payload), 'number of transactions in block ', height)
                        start_time=time.time()
                        transaction=requests.post(url,data=json.dumps(tx_payload)).json()
                        time.sleep(0.5)
                        #print ('time to get tx', time.time()-start_time)
                        print ( 'success in getting transactions for block ', height )
                    except:
                        try_errors+=1
                        print ( '!! Try error !!')
                        print ( try_errors, ' transaction tries for block height', height)
                        time.sleep(3)
                        continue

                    break

                for  i in range(len(transaction)):

                    tx_result=transaction[i]['result']
                    vin=tx_result['vin']
                    vout=tx_result['vout']

                    try:
                        fees=0
                        for j in range(len(vout)):
                            fees -= tx_result['vout'][j]['value']

                        for j in range(len(vin)):

                            vout=vin[j]['vout']
                            txid=vin[j]['txid']

                            vin_error=0
                            while True:
                                try:
                                    value=rawvin_JsonRPCpayload(txid,vout)
                                except:
                                    print ( '!! vin error !!')
                                    print ( 'attempt', vin_error )
                                    vin_error+=1

                                    time.sleep(0.4)
                                    continue
                                break

                            fees+=value
                            tx_result['vin'][j]['value']=value

                        tx_result['fees']=fees
                    except:
                        tx_result['vin'][0]['value']='No Inputs (Newly Generated Coins)'
                        tx_result['fees']=0

                    BTC_dic[height]['tx'][i]=tx_result

                if len(BTC_dic) >= 100:
                    print ( 'len BTC_dic =', len(BTC_dic))

                    for block in BTC_dic:
                        block_fee=0
                        transactions= BTC_dic[block]['tx']

                        #pp.pprint(transactions)
                        for j in transactions:
                            fee=j['fees']
                            block_fee+=fee
                        BTC_dic[block]['block fees']=block_fee

                    block_array=[]
                    for block in BTC_dic:
                        block_array.append(block)

                    file_name='jcampbell_btc_txdata'+str(min(block_array))+'_'+str(max(block_array))+'.json'
                    print ('saving', file_name, 'time', time.time()-objectivestart_time)

                    with open(file_name, 'w') as outfile:
                        json.dump(BTC_dic,outfile)
                    BTC_dic={}

            start=end

        except:
            block_tries+=1
            print(block_tries, 'tries to get data for block range ', start,"_",end)
            time.sleep(5)
            continue
        break

for block in BTC_dic:
    block_fee=0
    transactions= BTC_dic[block]['tx']

    #pp.pprint(transactions)
    for j in transactions:
        fee=j['fees']
        block_fee+=fee
    BTC_dic[block]['block fees']=block_fee

block_array=[]
for block in BTC_dic:
    block_array.append(block)

file_name='jcampbell_btc_txdata'+str(min(block_array))+'_'+str(max(block_array))+'.json'
print ('saving', file_name, 'time', time.time()-objectivestart_time)
with open(file_name, 'w') as outfile:
    json.dump(BTC_dic,outfile)

Background
If we want BTC to go mainstream, we need a better way of showing Economic Activity. I need you to help me prove that Bitcoin is more than a speculative instrument.
I come from academia (Economics, specifically), and I often find it difficult to convincingly describe to my peers the growth of the Bitcoin ecosystem in numbers that translate to economic value.
Given the rapid growth this market has experienced, when people think about Bitcoin, price is often the first thing the comes to mind. For those of us that for some time have been researching Bitcoin, six thousand US dollars per bitcoin is, irrefutably, an incredible indicator of popularity. However, we need a better metric to show actual economic activity, which has also increased substantially in the past couple of years. If Bitcoin is a peer-to-peer electronic cash system, we need a better indicator of BTC volume between network peers. I have started doing research on Bitcoin Days Destroyed, but I often find this metric difficult to be explained as it does not accurately answers the question: how much value is being exchanged within the network?
I understand that a completely accurate answer to this question is nearly impossible due to Bitcoin's UTXO model, but we need more accurate estimations. Blockchain.info provides estimated transaction volume on a per day basis, but random samples I have processed indicate that their methodology significantly underestimates volume. After months of testing random samples and manually looking at addresses, I believe I have a developed a more accurate methodology to estimate on-chain volume. I plan to share this methodology with the community once I can test my hypothesis using fuller blocks, but the challenge now is to obtain all inputs and outputs from more recent blocks.
I believe a more realistic volume estimation backed by a peer reviewed methodology would increase interest from academia and add credibility to the Bitcoin network. If you are not familiar with JSON RPC, I would appreciate if you could please upvote this post so that more people see it.
Thank you.
-JC

Welcome to the site! It's a good question, but we need to keep questions clear so that we can get good answers, so I've edited the question to try to improve clarity. Feel free to update it if you can see any way of improving it.

I like the background information, and the underlying assumptions, with the risk of going into a value based discussion, instead of answering directly, how RPC calls can be improved... :-)

If we want BTC to go mainstream, we need a better way of showing
  Economic Activity. I need you to help me prove that Bitcoin is more
  than a speculative instrument.
I come from academia (Economics, specifically), and I often find it
  difficult to convincingly describe to my peers the growth of the
  Bitcoin ecosystem in numbers that translate to economic value.

First thing is "who is we"? I met people wo are perfectly ok, that bitcoin is a usable value transfer mechanism, that provides me with some anonymity features, and is apparently censorship resistant. So it wold fulfill already my requirements (values), and in this case bitcoin could  be already too mainstream. When greed comes into the game, and people are too limited to create their own group with a clever invention to benefit from, then is it legitimate, to apply "their" rules to "my" bitcoin world? (hypothetical question)
On economics: imho the perspective of economics is mostly gain oriented. Something must have a value, so I can gain from or with it. If there is no intrinsic value, nothing to gain from it: like digging a hole in the desert. And this seems to be what we do with Bitcoin mining. Digging holes... Every other work tries to create something with value, crafting a sculpture, drawing a picture - mostly in the sense of tangible assets. And writing computer programs. In bitcoin world digging holes is to secure the network, this whole idea is not yet understood. That's why it is compared to the tulip bubble in the Netherlands. The value behind is not recognized. Time will be a very good judge, if bitcoin is or is not a bubble.
A provocative question: do "we" really need to convince more people, with a price beyond 6000 US$? I would say no :-) I went into the game at less than 100, so I am ok (and mostly done). It was my toy to play with bitcoins, and I was lucky to benefit from it. But all newcomers probably entered at 5800, or 5900, or even 6000. They are too late, and lost the opportunities. So all these 58, 59 or 6000 entry guys are desperately looking for a way to achieve the same "gain", just without risk and very little effort. I don't see, why "these" guys should have this benefit - they should stay in the economics, invent something on their own, e.g. create s.th. of value for society, sell it to the society, and get this way rich. But I doubt, they are able to do so...

how much value is being exchanged within the network?
  I understand that a completely accurate answer to this question is
  nearly impossible due to Bitcoin's UTXO model

not sure what you want to prove here. As we can decompose each block (it is a public ledger!), we can see the transactions inside, and see how much value was moved from a to b - independant of the UTXO model. Simply you don't know, and should never know (anonymity!), how often I tumbled my bitcoins, or even how many addresses I own. A transaction then doesn't mean, I have exchanged value - maybe I just shifted from my hot wallet to my cold storage system, and vice versa. So I come to the conclusion, that your effort is either government (or interest group) oriented, to further control individuals. Bitcoin's design goal was to prevent things like this. With this regard, the question to improve RPC/JSON doesn't make sense... Apologies, as non native speaker I don't want to appear being to arrogant, just my two cents in the economics debate, which is not yet ripe to understand the tidal wave of change coming along...


text:
Will I double my money after a bitcoin hard fork?
Could anyone please explain to me how this fork will work?
Examples would be greatly appreciated. The way I'm understanding is, if I have 1 BTC on Coinbase, they will match it. So after the fork I will have my 1 BTC and 1 B2X (Bitcoin 2x). Let's just say I sold my 1 BTC, will I still have my 1 B2X to sell? Does this mean free money?

No, it doesn't mean free money.
When a cryptocurrency forks into 2 separate cryptocurrencies, then the market sets the value for each.
Much of the value of Bitcoin is based on several things, such as the existing base of businesses that accept it, the efficacy and reliability of the developers maintaining it, and the familiarity by people that use it.
After a fork, that value becomes reduced, as many users or businesses pick one or the other to use.
New value may be created by new functionality added by the changes that caused the fork, or overall value (ie the sum of both forks) may become reduced due to a loss of trust in the system.
A more reasonable expectation is probably that the overall value, between both forks, is roughly the same as before the fork, but becomes split between two.
However, given the speculative nature of a sizeable proportion of the market, any small change may trigger large market movements, so it's anyone's guess as to what will actually happen.
After the fork, if you sell your BTC, then yes you will still have your B2X to sell (assuming that the wallet service you're using gives you access to it, or that you run your own wallet).

The number of coins technically doubles, but you are holding coins backed by different blockchain and miners
In an irrational market, the price of the forked coins can trade higher than what you may think as seen from https://www.coingecko.com/en/price_charts/bitcoin-cash/usd and https://www.coingecko.com/en/price_charts/bitcoin-gold/usd

Yes.
Hard fork with common history does mean free cryptocurrency in your wallet (or your exchange account, if the exchange supports both the original and the new cryptocurrency).
Common sense will tell us that the fiat value of one cryptocurrency after the fork should fall in proportion to the gain in the other, but this is not what was observed during Bitcoin Cash fork. One day after the fork BCH (Bitcoin Cash) was worth about 400 USD, while BTC (Bitcoin) has risen in price.


text:
How to make Bitcoin-Qt client portable? (Windows)
It is a nice project and all, but I think in 2013 it shouldn't be a challenge to save all of an application's files into its own folder (maybe even by default), so you can use it without installing/uninstalling.
I just don't have that much space on drive C. I use drive D for stuff. Is there a solution?
Google just brought me to this discussion which lead to all the fancy alternatives to the original client. I just want to try original Bitcoin-Qt first.
Would no one be interested in a portable Bitcoin-Qt? It would be very useful in my opinion.

Asking about how to change the default storage location has been posted many, many times. The future canonical question is probably Bitcoin-Qt setup: Change block-chain file location, settings? documentation?. Possible duplicate of Bitcoin-Qt setup: Change block-chain file location, settings? documentation?.

Put the bitcoin-qt.exe binary in the folder
Create a bitcoin.bat file
Open the file with notepad
Add the following line: bitcoin-qt.exe -datadir=.
From now on you can start by double-clicking the bat

You can also create a shortcut, modify the shortcut properties, and add -datadir=. there.

This should work for any foobarCoin-Qt client.

Go to https://bitcoin.org/en/download and get Windows zip file (like bitcoin-27.0-win64.zip).
In archive get bin/bitcoin-qt.exe and copy it to your new folder. Only this file is needed.
Make a folder called "data" in your new folder with bitcoin-qt.exe.
In a batch file, develop this code:
.\bitcoin-qt.exe -datadir=.\data

In data folder create folder wallets and move your wallet.dat to this folder.
bitcoin.conf will be located in data folder if you need to add any settings.
For updating get archive from link above and replace bitcoin-qt.exe with new one.


text:
Manual for Bitcoin-Qt on Mac OS X
Is there a manual for Bitcoin-Qt on the Mac OS X?
Specifically, I'd like to move my wallet.dat to a different folder (a TrueCrypt volume) and if/how I may configure bitcoin.conf so that the software autopoints to that folder upon launch. Is it possible to have wallet.dat in one directory and the blockchain files in a separate directory?
Secondarily, I'd like to learn about all possible configuration settings - both from the shell prompt as well as from bitcoin.conf. Can bitcoin.conf contain just one or two lines for desired configuration settings?

Start Bitcoin-qt,
click help,
click debug window,
click show below command-line options,
click show details

Thanks! That helped. I also found this wiki page https://en.bitcoin.it/wiki/Running_Bitcoin#Bitcoin.conf_Configuration_File


text:
What is opcode 252?
Writing my own blockchain parser, I have come across an unrecognized opcode in block number 142312. The relevant section of the transaction input is this:
"in":[
         {
             "prev_out":{
                 "hash": "0000000000000000000000000000000000000000000000000000000000000000",
                 "n": 4294967295
             },
             "coinbase": "fc70035c7a81bc6f4876c6036e4bc4080eaf81377bc9672828061491e79df5d4ddf1d65b058ccb30563f1f1c14f658607bd2c7138e87e480bcec3f5b91d041d041"
         }
     ],

fc corresponds to opcode 252, which is not listed in the Bitcoin wiki. How should I interpret this script value?
My block parsing program gives me the following raw coinbase script value:
fc70035c7a81bc6f4876c6036e4bc4080eaf81377bc9672828061491e79df5d4ddf1d65b058ccb30563f1f1c14f658607bd2c7138e87e480bcec3f5b91d041d041

That is, there isn't any opcode before the above hexadecimal string.

It's possible for invalid scripts to exist in the chain. Scripts are only checked for validity when spent, and coinbase scriptsigs are never checked. You should just interpret coinbase scriptsigs as a chunk of arbitrary data that's usually (not always) a valid script. ScriptPubKeys can also be invalid: blockexplorer.com will print the script as "[error]" in such cases.

i know they aren't but i have parsed the block myself and this is how the coinbase script starts - there is no op_pushdata before 'fc'. i will update the question with the full coinbase script value in a sec

@mulllhausen Actually, I forgot that blockexplorer.com prints coinbase scriptsigs differently than other scripts. It does start with 0xFC. This is legal: coinbase scriptsigs can be invalid scripts, even if they usually are valid. You can't interpret it as a script because it isn't one.

ah right. how can i identify whether the script element is a coinbase scriptsig? i'm guessing it would be wrong to assume that the first transaction in the block is always the coinbase transaction?

@mulllhausen No, that's right.

you mean it is identified as being the first transaction in the block?

@mulllhausen Yes, the coinbase tx is always the first tx in a block, and every block must have a coinbase tx.


text:
Why is my Bitcoin wallet always out of sync?
Why is my Bitcoin wallet always out of sync?
What can cause this?

Desktop or Android?

New blocks are continuously being created (about once every 10 minutes).
So if you don't leave your client continuously connected, or when you're connecting for the first time, then when you do connect it will be out of sync and need to download and verify new blocks.
There are SPV (Simplified Payment Verification) clients (e.g., MultiBit and Bitcoin Wallet for Android), client-server clients (e.g., Electrum), and hosted (shared) EWallet web services (e.g., CoinBase, Paytunia, and others) -- each of which either lessen or eliminate the need to sync.
One method that brings the convenience of an EWallet but keeps the private keys local and not stored with the provider is Blockchain.info/wallet.

http://www.Blockchain.info/wallet

That might be a better client if keeping your client connected continuously is a problem for you.

Bitcoin clients with the exception of SPV clients like Multibit need to download the entire blockchain history before consolidating the wallet. Currently the blockchain size is around 22 Gb and increasing. The time it takes for your client to sync will depend on your internet connection. Also if you do not keep your client connected, the next time you connect it will have to download all the blocks that were created in the meantime.
SPV clients like Multibit do not download the entire blockchain history. They only fetch the relevant blocks that contain your transactions. Hence they do not take time to sync with the blockchain.


text:
Please break it down: Bitcoin for dummies
Bitcoin for dummies:

Is this like time banking/ time exchanges?
Is this like barter?
How do I get-earn-buy-create a bitcoin from nothing?
Do I have to buy a bitcoin?
If so, with what do I buy one?
If this is anonymous, how do I track the coins I have?

This site is better for answering specific questions. It seems like reading the wikipedia page would be a good start given you have so many questions.

The best is to come to IRC chat where lots of people are ready to answer all your questions.
The most active Bitcoin chat room is #bitcoin on freenode network. Follow the link or use the mIRC software.
Please also read the article What is Bitcoin? The future digital currency explained and the follow-up comments.
~~~
Just search for: "Bitcoin explained with slices of pizza"
for this article,
Bitcoin is like an open book to all in digital format, with the registration of all balances of each bitcoin address, actually, with the record of all transactions between bitcoin addresses in chronological order.
All that help keep this book's transactions and balances, and they are called "miners" - in analogy to the exploration of gold - and actually nothing is created, crafted or minted, but you may happen to get a few slices of a huge "digital pizza" with a limit of twenty-one million slices, as a reward for verifying transactions and keep the book open to all and reliable on a distributed computer network - that is, without a central point of failure.
These rewards - or pizza slices - are called Bitcoin coins but note that they actually exist only as balances associated with a Bitcoin address and corresponding private key.
What is kept private is these private keys of each Bitcoin address and this information is stored in a special file called a wallet (wallet.dat) that protects this information, making it invisible and hermetic as much as possible.
The work of the mining computers is to make transactions become irreversible, using trial and error until they find a place in the chain of blocks which make them irreversible. The difficulty level of this trial and error to find a place in the so-called blockchain is the scheme that makes transactions irreversible and avoids double-spending from bitcoins from these addresses in the chain of transactions, and it is adjusted every two weeks, so that a new block is inserted every ten minutes - no matter the amount of computational power of the network -, with corresponding reward of pizza slices, not coins, to "miners" that actually created the last block to be added - usually collaborating in pools with other miners in order to have more chances of not missing the reward.
They receive the pizza slices, not coins to the Bitcoin address they designate for that purpose.
This reward is called coinbase and is what makes the value of bitcoin coins for circulation. Yes, they are coins, not slices of pizza. But if you want to think about it with slices of pizza, you can happily say that actually there are no coins: simply the "miners" receive slices of pizza in their designated Bitcoin addresses, thus allowing transactions between bitcoin addresses.
The numbers used by the mysterious Big Daddy of bitcoin, Satoshi Nakamoto, are somewhat arbitrary and empiric, but they work well and seem to have been inspired by gold mining anologies, as well as to provide a reasonable monetary mass, that could become comparable to the U.S. dollar by 2030.
The private key and Bitcoin address form a pair and are like a key and a locker, or as a password and your bank account. But their mathematical properties are very particular, because it is possible to calculate in some fractions of a second bitcoin address, in a pair, from its private key. But the reverse would take countless millions, if not billions of years as it would have to be done by trial and error, even if quantum computers were used.
It is possible to think that with a lot of luck you could find a private key and generate a pair so that the corresponding Bitcoin address had balance worth stealing, but the probability of this happening is certainly much less than three lightnings falling upon the same person and him remaining alive, though that may have already happened in the past.
To decrease the risk you must have many Bitcoin addresses in your wallet. Having the bitcoins well distributed in our(s) wallet(s) ensures it will be much less likely there will be a chance of seeing all your bitcoins disappear magically.
If you encrypt your wallet and have the bitcoins distributed in many addresses, you must be safe.
The limit of 21 million bitcoins results from the accumulation of 50 bitcoins reward each ten minutes during the first four years (50 x 6 x 24 x 365 x 4 = 10,512,000), plus, half, 25 bitcoins reward each ten minutes during the following four years (5,256,000 + 10,512,000= 15,768,000), plus, half, 12.5 bitcoins reward each ten minutes during the following four years (2,628,000 + 5,256,000 + 10,512,000 = 18,396,000)... and so on and so forth, till the reward of the fours years before is so that it doesn't add nothing to the total of "almost" 21 million, more precisely: 20999999.97690000 BTC.
Here is the code that imposes this limitation,
//In main.cpp

int64 static GetBlockValue(int nHeight, int64 nFees)
{
    int64 nSubsidy = 50 * COIN;

    // Subsidy is cut in half every 210000 blocks, which will occur approximately every four years.
    nSubsidy >>= (nHeight / 210000);

    return nSubsidy + nFees;
}

Here are some links that may be helpful:

A Bitcoin Primer by Chris Koss and Mike Koss
Bitcoin Non-Technical FAQ by Oleg Andreev

My goodness, that's the longest single block of text I've seen on this site! Some paragraphs would certainly help your answer be easier on the eyes... and perhaps would also help make it "suitable for dummies" as this question requests

I should also add that code is very definitely inappropriate on an answer "for dummies"!

Maybe read a basic article like the one on ZDNet, Bitcoin: A guide to the future of currency, to get a basic overview. They have a video on that page, too. This site is more focused on specific questions.
1) Bitcoins are units of currency that use encryption algorithms to ensure their authenticity.
2) It's kind of like bartering... The same way a dollar is.
3,4,5) You can purchase bitcoins from an exchange, or you can get someone to pay you in bitcoins (by selling a product or service). You can also "mine" bitcoins... which is a whole other question.
6) Bitcoins are anonymous in that there is no central tracking.


text:
How can we trust supply won't be increased in 2140 by just a few lines of code?
How can we trust supply won't be increased by just a few lines of code?

I'd say a bigger worry in 2140 would be the size of the block chain ledger and whether or not there is enough bandwidth to efficiently pass it around the internet. It's already up to 350 GB...

There are several arguments that would help quelm this. For starters, not every user on the network has to have a copy of the entire blockchain. They may only require the last $n$ blocks to sync with the network. Not every user must be a full node. The full nodes would store the entire blockchain. Additionally, Moores law states that size should not be an issue in 2140.

Relying on Moore's Law to solve the issue with large chain size is unrealistic, especially given that Moore's Law has slowed significantly in recent years.  I like the argument of having lighter nodes for the average user, and have seen plenty of blockchains take this approach.

@HamishGibson Moore's law has both been shown to be incorrect in recent years and has nothing to do with internet transfer speeds or the cost of storage space

The bitcoin network is composed of 'bitcoin full nodes', which are computers located all around the world, each one running independently to verify the state of the network.
Part of that verification includes making sure that the right number of coins are being created with each passing block, such that the total number of coins in existence is known, and predictable.
To change this 'coin issuance schedule', you would have to change the code running on all of those computers, so that they would all independently agree on some new issuance schedule, and could all continue to verify which blocks are valid (or not), in independent consensus. If you could only change the code on some of those computers, then those computers would start to follow blocks which the remaining bitcoin network nodes would consider invalid, effectively creating an altcoin-fork of the network (similar to what happened with 'bitcoin cash').
Anybody, at any point in time, could create some software that changes the issuance schedule. Thats easy. The hard part is convincing everyone that is running a bitcoin full node to switch to this new code, which creates more coins. Nobody has the authority to push such a change onto the network (top-down governance), rather it is the independent choices of all of the network's nodes (bottom-up governance) that defines the network.
So the answer is that you don't have to trust someone to not increase the supply. You just have to run some code that will verify that they haven't.

Small point, but wouldn't you have to change the code on just a majority of the computers?

@Jiminion doing so would simply cause those computers to fork off (creating an altcoin network), & any computers running the original code would just ignore them, and continue on as normal. There is some nuance (ie, how much hashpower each network would have pointed at it), but importantly: even if a majority of nodes try to change the rules, that would not force the remaining nodes to follow suit. You may be confusing this with a majority attack, in which the attacker controls >50% of the hashpower (but such an attacker would not be able to arbitrarily change the network rules either).

The thing is that if majority ofplayers are convinced to follow the fork, then the remaining ones in the old network will be screwed. That's another thing though.

"you would have to change the code running on all of those computers" doesn't this happen each time the core codebase is updated for non-backward-compatible changes such as some performance, most bug fixes, the proposed switch to proof-of-stake or other reasons anyway?

There has never (that I'm aware of) been a credible proposal to switch bitcoin to proof of stake. And no, generally speaking new releases of Bitcoin Core do not contain backward-incompatible changes. (That's one of the key differences between Bitcoin and, say, Ethereum.)

@GlennWillen Did not know this. So early bitcoin client of 2011 or before will still be valid node for all other peers and allowed to host a valid wallet? I think taproot is probably going to be change this.

I don't think this addresses OPs question. It's not about a "hacker" changing the code. It's about the actual code changing, for real. And I don't think there's a way around it other than hoping the demand will remain high enough to accomodate 2x the amount of coins. Pretty much like a stock split.

I think you're missing the point of the answer, the code technically can't change for real.  The Bitcoin blockchain is made up of the network of nodes, users, businesses, etc... that operate on it.  Bitcoin could be forked, but which of the two chains is considered "Bitcoin" all comes down to what the miners and the community choose to support. The answer here is stating that the code can't change on the current network, and whatever happens with forks is probably for the best.  For examples you can look at Bitcoin and Bitcoin Cash or Ethereum and Ethereum Classic.

@thevikas yes, old clients can still sync to the network (with the nuanced exception of the consensus split when bitcoin-core upgraded to levelDB in v0.8.0, iirc software older than that needs a small tweak to the database memory lock limits in order to properly sync to the network). Taproot does not change this, the taproot code is still backwards compatible. Centralized altcoins can (and do) hardfork ad infinitum, but imo it would be almost impossible to convince users to hardfork the bitcoin network without encountering some absolutely critical bug that warranted such a thing.

There are some technicalities -- old clients can sync the network past major changes like segwit/taproot, but they will not understand or validate scripts from the "new world" -- they will treat them as automatically true. However, they will also never generate addresses of their own which use such scripts, so this does not threaten their own security. Depending on their age, and the address format used, they may or may not be able to send to newer scripts they don't understand.

Well, the title is the only question, how can we trust supply wont be increased by just a few lines of code?

Just don't make any such changes to your code and you will never see an increased supply. You control the code running on your computer. If you never want to see an increased supply, never change your code in that way.
You can, of course, only interoperate with people who also don't want to see an increased supply. So the real issue has nothing to do with changes in code, it has to do with wanting a guarantee that there will still be people who don't want changes in the supply for you to interoperate with.
But you cannot ever force anyone to interoperate with you if they don't want to.

Watching Bitcoin desync because half the world wants to increase supply and half doesn't would be fun.

Great answer that explains in laymans terms the underlying technical details.  I especially liked the way the second paragraph is worded and the fact that it doesn't use "fork" or other technical terms.

The bitcoin network is composed of 'bitcoin full nodes'... to change this 'coin issuance schedule', you would have to change the code running on all of those computers

Regardless of how many times this statement is repeated (and upvoted on SE!), it is obviously wrong to anyone willing to spend even a few minutes thinking about it.
Except for a few special ones (like ones that happened to be running at Coinbase and other influential places like that), full nodes have no influence on the block chain whatsoever.  Nodes do not create blocks, miners do. It is the code that is running on the miners' machines that matters. And, at some point, incentives will align for the miners to do something to replace revenue from the waning block rewards, and the politics will incentivize the few influential nodes to follow this new chain since it will have the hashpower behind it (continuing to follow an underpowered chain could have disastrous results).
If you still believe that full nodes matter at all, consider this: there are generally 10's of thousands of full nodes on the network at any given moment. I could, sitting here at my desk, easily spin up 100,000 full nodes and get them integrated into the network within the next 24 hours without even maxing out my credit cards. I would then control the vast majority of full nodes. So why don't I do this? (Or more importantly, why doesn't anyone else with more resources than me do it?) Because there is no benefit to controlling any number of non-influential nodes. None. There are only a few dozen nodes on earth that matter, and they are the only ones that matter, and they are controlled by a small number of people who may someday have incentives to allow the increase the supply of bitcoins.
See longer answer here...
https://bitcoin.stackexchange.com/a/108202/113175
Note that it is very likely that this answer will be heavily downvoted and will attract comments vehemently scolding me for being an idiot- while never offering any actual rebuttal to my argument. This too is a signal!

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
How do I move a client/wallet to a different machine?
I have a client/wallet on a work machine of which I cannot control the proxy and allow the client to synchronise properly. Before I knew this however, I sent coins to the wallet. How do migrate this wallet to my home machine, so I can receive the transaction?
I am using Bitcoin-Qt.

Copy the wallet.dat onto another machine, put it in the appropriate folder and either sync your Bitcoin from the Genesis Block with the network, or run it with -rescan option.

-rescan is probably unnecessary. According to sipa, from a certain version (much earlier than what the OP is using) the wallet.dat file keeps track of which is the latest block it knows, and automatically rescans from that point onward.

Since 0.3.21, in fact (april 2011).


text:
Can I configure Bitcoin (Linux) with a custom wallet location?
The default setup on Linux/Ubuntu has Bitcoin storing the data in the ~/.bitcoin folder, which is usually not encrypted with TrueCrypt.
Suppose I do now want to rely on the internal Bitcoin encryption system, but instead want to save the wallet to disk on using TrueCrypt encryption. Currently, I have a separate TrueCrypt data file, that I mount to a partition, copy files from it to ~/.bitcoin, and when I'm finished, I copy the files back to the truecrypt volume, and shred+delete the copies on ~/.bitcoin.
This is bothersome and error prone.
Can I configure Bitcoin to only take the wallet from /media/trucrypt, but keep the blockchain data in ~/.bitcoin?

I haven't tried, but maybe you could copy once to /media/trucrypt and then bind mount to ~/.bitcoin with mount -B /media/trucrypt ~/.bitcoin?

Asking about how to change the default storage location has been posted many, many times. The future canonical question is probably Bitcoin-Qt setup: Change block-chain file location, settings? documentation?. Possible duplicate of Bitcoin-Qt setup: Change block-chain file location, settings? documentation?.

The bitcoin startup argument -datadir=<dir> allows you to specify a data directory, including the wallet file.
That'll still require you to pass a custom argument I'm afraid. The config file is also in the data dir, hence there's a chicken-and-the-egg problem that makes it impossible to configure up ahead. Unless you're savvy enough to change the default constant in the source and recompile, which might be okay since you're already running Linux.

Symlink the wallet.dat file into the truecrypt volume

A solution has been discussed, but not implemented:
 - http://github.com/bitcoin/bitcoin/issues/68 https://github.com/bitcoin/bitcoin/pull/287

Hmm, it appears I'm actually already following that issue.

Maybe this can help you, it seems quite easy to do:
https://en.bitcoin.it/wiki/Securing_your_wallet#Making_a_new_wallet

authors: Юра Ткаченко


text:
How do I create a new address in the Bitcoin-Qt client?
I am using a Mac and downloaded Bitcoin-Qt as my wallet, and it has "synchronised". However, I am unable to use this program to generate a new address. I click on "new address", and all it makes me do is enter an address and name it…
Is it safe to use a website like Instawallet to "create" an address for me, and then  use this address to receive coins with Bitcoin-Qt?
If two different people are using the same Bitcoin address, in a client like Bitcoin-QT, and if both receive money to the very same address, how will the network know who "owns" the bit coins associated to that address?
What is this "Private Key"? Is there a private key for every Bitcoin address? Where do I find it?
Lastly, if I want to sell my bitcoins, how does the "Private Key" play into all of this?

The address field is unused and disabled - you can't put anything in even if you wanted. It is probably an artifact of reusing the dialog for adding a new sending address.
So you can't use Instawallet to create an address and import it; and even if such a strange procedure was possible, it would not be safe because then Instawallet would have your private key, which should be kept secret.
Since the address is generated locally using pseudorandom data, it is inconceivably improbable that 2 people will share an address (it is less likely that it will ever happen to anyone than that I will be struck by lightning while writing this answer). In this highly unlikely event, funds in this address can be spent by either of them, whoever gets to first.
Every address has an associated private key, which must be kept secret and is what allows the owner to claim funds in that address. Bitcoin-qt stores private keys in the wallet.dat file in the application data directory.
When sending bitcoins to someone (whether to sell them, donate them or to pay with them), the software internally uses the private key to prove prior ownership of them and announce to the network that they shall now belong to the owner of address X. You don't give your own private key to anyone; the new owner will use his own key to send them from his address.

I always assumed the disabled address field was a symptom of GUI reuse -- specifically, the dialog box shown when creating a new address is identical to the one used when adding an address to your address book, but in the latter case, the field is enabled to allow you to enter the address.

@Herohtar: Yeah, this seems like a more probable explanation. Edited.

The fact that this causes confusion means that it probably should be considered a bug. Feel free to file one on http://github.com/bitcoin/bitcoin/issues

I click on "new address" and all it makes me do is enter an address and name it…

Disregard the 'address' field in this dialog, just fill in the 'label' field and hit 'ok'.
If you are running 7.0 the newly created address will be selected, in earlier versions you will have to search your newly created adddress by its 'label'.
I don't know what the 'address' field is for, it never shows a value...


text:
How much memory and bandwidth does bitcoind take up on a CentOS Linux system?
I'm thinking about installing bitcoind on my web server that runs on CentOS. How much memory and bandwidth might it take up and would it affect my other sites on my server?

not mining... just installing for ecommerce site

I run bitcoind 0.8.3 on a VPS. In May and June, the VPS used between 250 and 300 GB of bandwith per month. Most of that (~98%) was incoming traffic.
I'm not sure if all traffic is due to bitcoind. Of course, we ran updates on the server. But it is only used for bitcoind. No other webservices are active.

That seems extremely high, given that the transactions recorded in the block chain typically amount to just a few megabytes per day.

It's not high at all.  My bitcoind-only server generated 154gb of outbound traffic in the last 7 days.  12.73gb inbound traffic. I have 89 connections right now, and I've had over 150 in the past. If you're a stable, well-connected node, you will use a lot of bandwidth.

So clearly it's not just the bandwidth consumed in passively receiving the blocks, but the one spent in retransmitting them as well plus the wasted one in receiving/rebroadcasting blocks that ultimately get orphaned...

You have it set to way more than the default number of connections, which I believe is 8. I understand there is some debate over the benefits of doing that.


text:
How would the OpenBazaar or NXT decentralized marketplace / eBay / Craigslist work?
Since NXT and OpenBazaar are building a decentralized marketplace, how would this work since there is no middle party to mediate if an issue arises?
What are some proposed solutions to a decentralized marketplace so far?

One solution is to use Nash equilibrium in order to force people to cooperate.
The concept is quite simple. Both the seller and the buyer make a deposit.
If the entire buy/sell process goes fine they can recover their deposit, if it don't they both lose their deposit.
So it isn't profitable to go away with the money without sending the good nor to get the good without releasing the payment to the seller.
This solution has already been discussed. If you google bitcoin+nash+equilibrium you will find more informations.

Another way is with an arbitrator and multi-sig addresses. Payment is made to a multi-sig address where the sender, receiver, and an arbitrator each have a key. If the transaction goes well the sender and buyer each sign. In case of a dispute the arbitrator rules and signs either with the buyer to pass the money on or with the sender to return the money.

We are currently using notaries as a third party in a multisig transaction with arbiters serving as dispute resolution if there is an issue. You can read more at: https://github.com/OpenBazaar/OpenBazaar/wiki


text:
Want to buy bitcoin from Bangladesh
I'm from Bangladesh. I would like to buy bitcoins. So I went to Buybitcoin.com  and filled an order. Later I googled that site and read a lot about if being a scam site. So I'm a bit scared now. do not want to be scammed.
I've already tried ecurrencyzone.com but they do not take bank deposits from Bangladesh. this is terrible. Anyway can any of you fellow Indians guide me to proper genuine links where I can buy Bitcoins. My options are Western Union, Moneygram and best option is Bank deposit.

possible duplicate of How do you obtain bitcoins?

The easyest way for you would be somthing like localbitcoins. But you can use any exchange where you can transfer money to from your bank (Bitstamp, Justcoin, Bitcurex, ...)

I user localbitcoins too and would also recommend it, having similar problems in the UK. It removes the middle-man-bank to an extent.

This does not answer the question as localbitcoins do not facilitate bitcoin buying in Bangladesh. The main problem seems to be that you cannot transfer money away from Bangladesh normally.


text:
How to use bitcoin from command line in Windows?
In Windows, how can I get what I get with "bitcoind getinfo" in Linux?

If it's QT:
go to "Help" -> "Debug Window" -> "console"
type rpc command here
Or go from the commandline to the folder your bitcoin daemon is in and run a command from the bitcoin exe. NOTE: you may need to add server=1 to your bitcoin.conf in %APPDATA%

Where is the daemon? I can find only bitcoin-qt.exe

not sure what you are asking?

bitcoin-qt.exe is in the installation directory and bitcoind.exe is in the daemon subdirectory.

@ScripterRon : thanks. The question originally was just a block quote from my answer.

For working bitcoind command in windows, you have to go to dir C:\Program Files\Bitcoin\daemon and Execute these commands. Using Bitcoin core version 16 on windows 10.

bitcoind getinfo in Linux
bitcoind -h in windows

Use this command after changing directory like shown in pic