Bitcoin Forum
May 11, 2024, 11:05:48 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 [13] 14 15 »
241  Bitcoin / Development & Technical Discussion / Re: Separating web server and bitcoin server from a security POV on: February 10, 2014, 04:35:46 PM
Do you need to send and receive? If you don't need to send you don't need a bitcoin connection at all. Pre generate the keys and lock all but the public portion in a safe. Use blockexplorer to check balances.

If you need to send and receive use the same method as above for receiving. Accept/generate sends in your app server database.
Have your bitcoin installation somewhere else that periodically query your app server for withdrawal requests but have them unconnected at all other times.
Download the send list your bitcoin installation and have a script that translates the request to the local rpc server. Using this method bitcoin rpc never has to be opened up beyond the loopback address.

If you suspect something nefarious has happened on your site just don't run the send script until you investigate.
The bulk of your btc can be left offline and loaded on to your send machine as needed.



This sounds like an excellent approach.  However, how does one pre-generate addresses and keys?

Also, I would need to use testnet coins while I'm developing and testing.  BlockExplorer (http://blockexplorer.com/address/mudBLTzFRz4o17Y9CbaWRB9Qr8BkFeYiYj) and Blockchain (https://blockchain.info/q/addressbalance/1EzwoHtiXB4iFwedPr49iywjZn2nnekhoj?confirmations=6) do not seem to work with testnet addresses.  Is there a service that does work with testnet?
242  Bitcoin / Development & Technical Discussion / Best way to handle user withdrawals of bitcoin? on: February 10, 2014, 03:25:28 AM
I need to enable my users to send and withdraw bitcoin to and from my web app.  Ideally, this is done immediately or in near real-time.

Using a third-party payment processor, such as BitPay or Coinbase, is not an option for my service.

I've narrowed it down to two options, with only the first one that is able to automate withdrawals.  (Blockchain.info was ruled out due to complaints about unreliability.)

1)  USE BITCOIN'S API VIA JSON-RPC

In this option, I will run my web app, Bitcoin software (Bitcoin-QT/bitcoind) and wallet on the same server.  When the user wants to send bitcoin, I will use JSON-RPC to call getnewaddress() via Bitcoin's API and then show address to users.  I will use Bitcoin options such as walletnotify to notify me when a user has sent bitcoin to my wallet.  I will use blocknotify to prompt me to call gettransaction(), to get the number of confirmations on these transactions.  If the number of confirmations is > X, then my web app will tell the user that his bitcoins are now available in his account.  This can take up to an hour to wait for X confirmations.

When the user wants to withdraw, my web app will get the user's address and then use sendtoaddress() to send bitcoin to the user.

How do I secure Bitcoin and the wallet?  If an attacker hacks into my server, he can change my programs that call JSON-RPC or read the rpcuser and rpcpassword settings in bitcoin.conf and simply call sendtoaddress <attacker's address>.  Someone suggested that web apps run Bitcoin and the app on different servers.  However, I don't see how this will increase security.  If an attacker hacks into the Bitcoin server, I would think that he can easily empty the wallet by running curl commands to http://127.0.0.1:8332 or JSON-RPC commands.

Then I read on posts that people should keep a minimal amount of bitcoin on the server's wallet, such as keeping a maximum of BTC0.001 on the server.  I assume that the way to do this, is to send any balance in excess of BTC 0.001 to my offline wallet.

However, aren't there still security holes in this?  If an attacker hacks the server, he can change my code so that my code sends the excess BTC to his address instead of mine.  Or, he can change my code to call getnewaddress() from his wallet instead and show his address to my users. This way, my users will be sending bitcoin to the attacker instead of me.  Or, he can hack into my server repeatedly to steal BTC 0.001 each time.

How do we solve these security problems with Bitcoin?

2)  ADDRESSES ONLY (NO PRIVATE KEYS) ON SERVER

I understand that I can use Armory's watch-only online wallet on my server and Armory's offline wallet on my home computer to maximize security.  (I must be able to test with testnet coins.  Apparently, Armory supports testnet but Electrum does not, hence my choice with Armory.)  However, this means that anytime one of my users wants to withdraw, I would have to manually send the bitcoin to the user, which will make the user wait.  Has anyone had experience with this method?  Was this acceptable to your users and how many users requested withdrawals every day?  Can I use JSON-RPC to call Bitcoin's API to get addresses, balances, etc., from Armory's watch-only wallet?

With this method, it still doesn't seem very secure because an attacker can hack my web app to bypass my wallet.  As an example, can't an attacker (such as the datacenter's employee or an attacker putting in an order to have a Virtual Keyboard and Mouse installed so that the attacker can get console access) hack my web app program so that it calls getnewaddress() from his wallet instead of my Armory watch-only wallet?  Again, this will make my web app show the attacker's address instead of mine and hence, the user will be sending bitcoin to the attacker instead of me.  Has any web app been hacked this way?

Another method is described at http://bitcoin.stackexchange.com/questions/10470/how-to-run-a-bitcoind-on-a-hosting-securely.  With this method, can't an attacker hack my server's database and replace my addresses with his?

Is there a way to automate user withdrawals without compromising security?  Or, must I send bitcoin to users from an offline wallet, which doesn't seem 100% secure and which will make users wait?  What is the best architecture for this?  Is there a solution?

I would think that if there weren't so many security issues, complexities and attackers/hackers associated with Bitcoin, Bitcoin adoption would be much more widespread as many more services, including mine, will be available to bitcoin users.
243  Bitcoin / Development & Technical Discussion / Re: Running bitcoind on Amazon AWS (EC2) help on: February 08, 2014, 04:10:14 AM
Linode is cheaper and better if you dont need all the various services provided by AWS. AWS is overpriced.

I just found this:  http://spectrum.ieee.org/tech-talk/computing/networks/thousands-of-bitcoins-stolen-in-a-hack-on-linode

Thieves stole Bitcoin from Linode clients.  If Linode is insecure, then shouldn't it be last choice for hosting?  Which hosting company, that provides virtual Linux servers, is secure?
244  Bitcoin / Development & Technical Discussion / Re: Bitcoin API on: February 08, 2014, 03:07:52 AM
1) bitcoind - I think this might be the same as configuring bitcoin to run as server. I believe it uses an RPC API to run transactions from the command line.
Pros: Everything stays on my server
Cons: I have to find a server that will let me compile and install this, rather than just some PHP/MySQL farm in the cloud, which is what I prefer

You can run the front-end on one server and the back-end on another (and communicate via JSON-RPC over HTTPS).  That's how I'm able to run the Faucet and ClearCoin on Google's App Engine (they talk with bitcoind processes running on linode.com and aws.amazon.com servers).  bitcoind doesn't take much memory, bandwidth, or CPU (just don't turn on coin generation), so, for now, anyway, you can even use an Amazon "micro" server (which costs something like $100 per year).

I'm not selling anything so can't comment on the shopping cart interfaces.  Screen-scraping web pages is a bad idea for lots of reasons.


What is the speed/performance like if one runs the web app and bitcoind on two separate remote servers?  Won't the speed be slow?

The JSON-RPC in the web app sends the user name and password to access the bitcoind API.  Do both the web app's server and the bitcoind server need HTTPS, or just the bitcoind server is sufficient?

Which hosting company is best for this type of architecture?  Google App Engine, AWS EC2, DigitalOcean or Linode?

What about security?  Do I need to encrypt the wallet on the server?  How do I ensure that nobody at the hosting company accesses my server, reads the rpcuser and rpcpassword in bitcoin.conf and then starting sending Bitcoins out of my wallet?  If I move away, how do I ensure that the hosting company or the next customer doesn't take a copy of my wallet?
245  Bitcoin / Development & Technical Discussion / Re: Running bitcoind on Amazon AWS (EC2) help on: February 08, 2014, 03:01:45 AM
Aws has it's advantages, it takes away a lot of the security headaches and give a true global distributed footprint to any startup, allowing them to deploy nodes all over the world for fast access. Trying to do all that on your own is a nightmare.

But i really hate their pricing structure, nick and dime you for every little resource usage.

I am currently using linode.com, $20 a month true root access, no issues.

Did you find linode.com to be cheaper and better overall than AWS?

Do you plan on running your web app and bitcoind on one or two remote servers?
246  Bitcoin / Bitcoin Technical Support / Should I use Blocknotify to update my unconfirmed transactions? on: February 04, 2014, 01:54:24 AM
I'm trying to integrate and accept Bitcoin on my web app.

I'm using Bitcoin's walletnotify to tell me if a customer has sent Bitcoins to the address that I provided him/her.  Then I call the "gettransaction" RPC call to the Bitcoin API to get the transaction ID and unconfirmed amount and store this with the address into my database.  Then I'm using Bitcoin's blocknotify to prompt me when maybe one or more of my unconfirmed transactions might be confirmed (6? times).  When I get a blocknotify, I will find all of the transactions in my database that are unconfirmed and then use "gettransaction" to get the number of confirmations for those transactions.

I found out, through the "getblock" RPC call to the Bitcoin API, that the block will include many transactions that did not send to nor receive Bitcoins from my wallet.  With the array of transactions returned from "getblock", I called "gettransaction" on those transactions.  I got the following error on many of these transactions:

error: {"code":-5,"message":"Invalid or non-wallet transaction id"}

According to the following posting, this means those transactions are not involved with my wallet:

https://bitcointalk.org/index.php?topic=100824.0

This makes me think that blocknotify will pompt me thousands or hundreds of thousands of times, as there must be millions of transactions on the Bitcoin network that are unrelated to my wallet.  Am I correct?  If so, this doesn't seem that blocknotify is a viable method to update the confirmations on my transactions.

Did anyone use this method and if so, did your server spent a lot of resources in processing blocknotifies?  What is a better way to update the transaction confirmations?  If there a way to use blocknotify or something else from Bitcoin-QT/bitcoind?
247  Bitcoin / Development & Technical Discussion / Re: TP's TestNet Faucet - a faucet and eWallet for TestNet on: February 03, 2014, 04:50:08 PM
Hey - I just wanted to say thank you for running the faucet.  We used it a LOT during testing for our project. 

My random eWallet at http://tpfaucet.appspot.com appears once in a while, but quite often I get the following error:

API error 5 (urlfetch: DEADLINE_EXCEEDED)

On a few occasions, I'm able to send coins, but quite often I get the above error when I try to send.

Do you know of any other eWallets for testnet?
248  Bitcoin / Development & Technical Discussion / Re: How to use Walletnotify? on: January 31, 2014, 08:55:42 PM

How do I use argc/argv?

See above.  Basically, argc is the number of arguments on the command line, including the name of the script.  argv is an array of the command line elements, starting with argv[0] set to the name of the script.


I got it to work with argc and argv.  I put the following into bitcoin.conf:

walletnotify=/usr/bin/php /path/to/walletnotify.php %s

I have the following in walletnotify.php:

Code:
<?php
if(2==$argc){
require_once 'jsonRPCClient.php';
$bitcoin = new jsonRPCClient('http://username:password@127.0.0.1:8332/');

$walletinfo $bitcoin->getinfo();
$trxinfo $bitcoin->gettransaction($argv[1]);

// Append data to the file
$new "\n\nTransaction hash: ".$argv[1]."\nGetinfo balance: ".$walletinfo["balance"]
."\n Gettransaction amount: ".$trxinfo["amount"]
."\n Gettransaction confirmations: ".$trxinfo["confirmations"]
."\n Gettransaction blockhash: ".$trxinfo["blockhash"]
."\n Gettransaction blockindex: ".$trxinfo["blockindex"]
."\n Gettransaction blocktime: ".$trxinfo["blocktime"]
."\n Gettransaction txid: ".$trxinfo["txid"]
."\n Gettransaction time: ".$trxinfo["time"]
."\n Gettransaction timereceived: ".$trxinfo["timereceived"]
."\n Gettransaction account: ".$trxinfo["details"][0]["account"]
."\n Gettransaction address: ".$trxinfo["details"][0]["address"]
."\n Gettransaction category: ".$trxinfo["details"][0]["category"]
."\n Gettransaction amount: ".$trxinfo["details"][0]["amount"]
//."\n Gettransaction fee: ".$trxinfo["details"][0]["fee"]  // According to https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list, fee is returned, but it doesn't seem that way here
;

$fp=fopen("/tmp/notify_wallet.txt","a");
fwrite($fp,$new);
}
?>

When I send testnet coins from my eWallet to my Bitcoin-QT, the above walletnotify.php fetches the transaction's data from the wallet and writes it to the text file.  It works well.

I didn't need the following code:

Code:
!/bin/php

Thanks for your help!
249  Bitcoin / Development & Technical Discussion / Re: How to use Walletnotify? on: January 31, 2014, 03:34:27 PM
Is ? a valid means of passing arguments to PHP on the command line?  I've never tried it.  I always use argc/argv, but my quick google search suggests that you can also use CGI style arguments:

/path/to/php /path/to/script.php trxhash=%s

and trxhash will be populated in $_GET, etc.

The following works with ? as a means of passing arguments to PHP:

walletnotify=curl http://localhost:8888/script.php/?trxhash=%s

How do I use argc/argv?

I tried the following by entering it in my Mac terminal and it works:

/usr/bin/php /path/to/script.php

I tried the following by entering them in my Mac terminal, but they do not work:

/usr/bin/php /path/to/script.php/?wallethash=testing

The above returns this error:

Could not open input file: /usr/bin/php /path/to/script.php/?wallethash=testing

/usr/bin/php /path/to/script.php?wallethash=testing

The above returns this error:

Could not open input file: /usr/bin/php /path/to/script.php?wallethash=testing

I put in the following into my PHP program:

print_r($_GET['blockhash']);
print_r($_SERVER['QUERY_STRING']);


I tried the following in my Mac terminal:

/usr/bin/php /path/to/script.php wallethash=testing

The above returns this error:

PHP Notice:  Undefined index:  wallethash in /path/to/script.php on line 17
PHP Notice:  Undefined index:  QUERY_STRING in /path/to/script.php on line 18

I welcome any other suggestions.
250  Bitcoin / Bitcoin Technical Support / Re: Easiest way to accept BTC and test on: January 31, 2014, 02:17:40 PM
That id might have to go in params

Thanks.  I had tried the following in the past, but it didn't work:

curl --user bituser --data-binary '{"id":"t0", "method": "gettransaction", "params": [c92d655f850a0feae01d785733a74e4d610fc07d0da4d7c086f363569f550ec8] }' http://127.0.0.1:8332/

I tried putting in quotes and it worked:

curl --user bituser --data-binary '{"id":"t0", "method": "gettransaction", "params": ["c92d655f850a0feae01d785733a74e4d610fc07d0da4d7c086f363569f550ec8"] }' http://127.0.0.1:8332/
251  Bitcoin / Bitcoin Technical Support / Re: Easiest way to accept BTC and test on: January 31, 2014, 05:31:41 AM
When you get a rush of users, then I assume that this becomes an issue only if they all want to withdraw bitcoins.  I assume that if your holding account runs out of bitcoins, then you can tell your users to wait as you manually move some bitcoins from your cold (which I assume is the same as offline) storage?


Exactly.  We'll only hold enough in the hot wallet to cover expected withdrawls.  If we get a rush of withdrawals, users will get an error, and we'll be notified.  It's not the best customer experience but it should rarely happen, and it's better than losing a hot wallet.


I don't understand what you mean by:  "We don't do the sweep currently on the live site".  Can you explain or elaborate?

Eventually, we'll sweep funds from the account the user deposits to, directly to the holding account and maintain their balance in the database.  Right now, we don't sweep those funds into the holding account because we're using the built-in account system with no problems.

If you're going to hold just enough in the hot wallet to cover expected withdrawals, doesn't this imply that you are sweeping bitcoins from user accounts to your holding account and moving the bitcoins out of the holding account to your offline wallet?  If so, then I'm confused when you write that you "don't sweep those funds into the holding account..."  Can you elaborate?

blocknotify happens each time a block is found on the network.  That's the only time a confirmation changes on a deposit.  A confirmation is defined as a new block found that includes the transaction.  This happens on average every 10 minutes.  So your server gets a block notify every ten minutes, and checks only the accounts that have unconfirmed funds from a recent deposit.  Once a user's account has 100% of the balance confirmed by 4 transactions, we don't have to check them again on the next blocknotify.

I've been playing around with jsonRPCClient.php (from https://en.bitcoin.it/wiki/API_reference_(JSON-RPC)) and getblock to get the information on the block identified by the block hash sent from blocknotify.  I've been trying to find the structure of the data returned by getblock and it seems to be similar to what Luke-Jr entered in his second code box at https://bitcointalk.org/index.php?topic=89725.0.  Is this correct?  If so, then it seems that getblock can return many transaction IDs in the "tx" array.  If so, then it seems that one possible approach is to process each one of the transaction IDs to find the user accounts and number of confirmations and then update your database accordingly.  Based on what you wrote previously, it seems that you do not prefer to do it this way, but you prefer to query your database for users with unconfirmed funds and then call getbalance [account] [minconf=0] and getbalance [account] [minconf=4] on each user account and if the amount of BTCs is the same for both getbalance calls, then you update/indicate the user's BTC amount as all confirmed.  Correct?

Yea - that's SSL between the rpc client and the bitcoind rpc server.  If it's on the same machine, you may be able to forego ssl.  We have it enabled.

I'm wondering if I can get by having both the RPC client and bitcoind RPC server on the same machine.  I assume that this is less secure than having the RPC client and bitcoind RPC server on different machines.  If so, do you know how much less secure it is or what the risks are?  Am I correct to assume that when you get a *notify on the bitcoind RPC server, it runs a curl command that invokes the RPC client which processes the data by running jsonRPCClient (https://en.bitcoin.it/wiki/API_reference_(JSON-RPC))?

Do you know the syntax for the curl command for gettransaction or getblock?  I tried the following:

curl --user bituser --data-binary '{"id":"t0", "method": "gettransaction c92d655f850a0feae01d785733a74e4d610fc07d0da4d7c086f363569f550ec8", "params": [] }' http://127.0.0.1:8332/

but i get an error:

{"result":null,"error":{"code":-32601,"message":"Method not found"},"id":"t0"}
252  Bitcoin / Development & Technical Discussion / Re: How to use Walletnotify? on: January 31, 2014, 04:02:20 AM
KJJ is saying the path to the PHP executable NOT the script, you have that.

Depending on your system it will most likely be something like

/usr/bin/php /Users/JLP/git_source/src/bin/walletnotify.php %s

if your on a linux-ish system (Mac, linux) you can run `whereis php` and that should tell you

Thanks for clarifying it.

I ran `whereis php` and terminal replied with:

/usr/bin/php

I changed bitcoin.conf so that it has the following:

walletnotify=/usr/bin/php /Users/JLP/git_source/src/bin/walletnotify.php/?trxhash=%s

...but it still does not work.  I changed it to the following:

walletnotify="/usr/bin/php /Users/JLP/git_source/src/bin/walletnotify.php/?trxhash=%s"

...but it still does not work.  Does anyone have any suggestions on how to get this to work?
253  Bitcoin / Development & Technical Discussion / Re: bitcoind testnet rpc is no longer working on: January 30, 2014, 07:43:42 PM
The other problem was using 127.0.0.1:8332 which didn't work, but localhost:8332 did work

I'm having a similar problem.  I'm running Bitcoin-QT on my Mac.  The following command in terminal works when I'm running Bitcoin-QT in mainnet:

curl --user bituser --data-binary '{"id":"t0", "method": "getinfo", "params": [] }' http://127.0.0.1:8332/

But I get 'curl: (7) couldn't connect to host' when I'm running Bitcoin-QT in testnet mode.  I've tried the following but it still does not work in testnet mode:

curl --user bituser --data-binary '{"id":"t0", "method": "getinfo", "params": [] }' http://localhost:8332/

My Library\Application Support\Bitcoin\bitcoin.conf file has the following:

rpcuser=bituser
rpcpassword=password
server=1
testnet = 1


I've put a copy of this bitcoin.conf file into the Library\Application Support\Bitcoin\testnet3 folder, but this does not fix the problem.

Does anyone have any suggestions?

Update:  I just got it to work by adding the following to bitcoin.conf.  I don't know why this is needed for testnet but not mainnet.

rpcport=8332
254  Bitcoin / Development & Technical Discussion / Re: How to use Walletnotify? on: January 30, 2014, 07:08:09 PM
Specify the path to php.

I'm not sure if your posting is in reply to my question about invoking my PHP program.  If so, I'm not sure what you mean.  I had specified the path to the php file.  It is /Users/JLP/git_source/src/bin/walletnotify.php in the following string:

walletnotify=php /Users/JLP/git_source/src/bin/walletnotify.php %s

If I can get this to work, isn't this the preferred method than to use curl, which seems like a roundabout way?
255  Bitcoin / Development & Technical Discussion / Re: How to use Walletnotify? on: January 30, 2014, 05:14:51 PM
Hi,

I am trying to use the -walletnotify option to run a php script which updates a log file/sql db with transaction id of new transaction affecting wallet.

For some reason I cannot get it working. I am using bitcoin version 80100.

I have tried this in my bitcoin.conf:

walletnotify=php /home/blahblah/Downloads/btcdev/walletnotify.php %s

and..

walletnotify="php /home/blahblah/Downloads/btcdev/walletnotify.php %s"


and also run bitcoind with and without the walletnotify commandline options: bitcoind -datadir=/home/blahblah/Downloads/testnet -testnet -debug -printtoconsole -walletnotify=php /home/blahblah/Downloads/btcdev/walletnotify.php %s

I can see the new transactions coming in but neither bitcoin-qt or bitcoind seem to try to run my script or error.

Any suggestions? Grin

Inca

I can get walletnotify to run a shell script.  Similar to user Inca, I cannot get walletnofiy to run a PHP program.

I am using Bitcoin-QT version 0.8.6 in testnet mode on a Mac OSX.  I have tried this in my bitcoin.conf:

walletnotify=php /Users/JLP/git_source/src/bin/walletnotify.php %s

and..

walletnotify="php /Users/JLP/git_source/src/bin/walletnotify.php %s"

I ran this in my terminal:

chmod a+x /Users/JLP/git_source/src/bin/walletnotify.php

but still to no avail.  Can someone help?

Update:  I found out how to invoke the php program.  I used curl:

walletnotify=curl http://localhost:8888/walletnotify.php/?transactionhash=%s

Is this transaction hash equal to the transaction id as required by the gettransaction command from https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list?
256  Bitcoin / Development & Technical Discussion / Re: TP's TestNet Faucet - a faucet and eWallet for TestNet on: January 30, 2014, 02:43:27 PM
Fixed.

Thanks!

I was able to create a random account, send and receive.  However, I cannot use the account anymore.  When I try to go to that account now, it gives me this error:

API error 5 (urlfetch: DEADLINE_EXCEEDED)

Update:  The problem seems to be intermittent.  I refreshed the page and now I see the account.  But when I tried to send BTC, it gave me the error again.  The BTC was sent nevertheless, but now I cannot see my account as I get the above error again.
257  Bitcoin / Bitcoin Technical Support / Re: Cannot synchronize with Bitcoin in testnet mode - No block source available on: January 29, 2014, 07:22:55 PM
I hope you noticed that "USERJLP" is to be substituted with your actual windows login name.

Yes, had noticed that and substituted with my windows login name.  Thanks.

If you open windows explorer, and type the %appdata% in, it will take you to your user profile directory and show you the actual path, where you will see "bitcoin", and below that "testnet3".

Thanks.  %appdata% parses to C:\Users\USERJLP\AppData\Roaming

You should download the installer version of Bitcoin, and install it the normal way; it is much easier to support when you install it the same way as everyone else. Located here: http[Suspicious link removed]/download

When I went to get the wallet the first time for Windows, I clicked on Windows (zip) on http://bitcoin.org/en/download, which took me to http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.8.6/bitcoin-0.8.6-win32.zip/download.  I had unzipped the file and double clicked on bitcoin-qt.exe.  It sounds like bitcoin.org should remove the zip file option.  Taking your advice, I downloaded http[Suspicious link removed]/download and installed it, which installed bitcoin-qt.exe into C:\Program Files\Bitcoin folder.  When I launch Bitcoin-QT, it still does not run in testnet mode (I still have testnet=1 in C:\Users\USERJLP\AppData\Roaming\Bitcoin\bitcoin.conf and in C:\Users\USERJLP\AppData\Roaming\Bitcoin\testnet3\bitcoin.conf).

Yes, if you already have blockchain downloaded (which means something was working at some point), then you will need to add the -reindex option. If you don't know why you would need this, and are just playing around, you can probably just omit -txindex.

Bitcoin-QT in testnet did not download any of the blockchain.  However, Bitcoin-QT in mainnet was downloading the blocks but I shut Bitcoin-QT down after it downloaded only a couple of weeks.  Maybe this is causing Bitcoin-QT in testnet mode to think that the blockchain is downloaded?

I'm not playing around as I would like to accept bitcoins on my web app.  To do this, I need to test the Bitcoin API by sending and receiving testnet coins.  However, I don't know why I would need -txindex, so I'll omit it.

The only bitcoin.conf you should be worrying about is the one in the correct bitcoin\testnet3 data directory, nothing else is looked at. If you have done the above and have problems establishing connections to peers (hover over the cel phone bars in lower right and see how many connections), then likely something with your VM configuration or router is interfering with the connection.

I still have C:\Users\USERJLP\AppData\Roaming\Bitcoin\testnet3\bitcoin.conf with testnet=1 as the only option.

I started C:\Program Files\Bitcoin\bitcoin-qt.exe in testnet mode by running bitcoin-qt.exe -testnet but it is still not synchronizing and still showing "No block source available...".  There are no cell phone bars in the lower right of the Bitcoin window.  However, there is an icon showing two screens and a red X.  Hovering over shows the message:  "0 active connections to Bitcoin network".  Does this mean that my VM configuration or router is interfering?  If so, do you have any ideas on how to fix this?  Why would they interfere with the connection in testnet mode but not mainnet mode?

Does it need to be synchronized in order for me to send or receive testnet coins?

258  Bitcoin / Development & Technical Discussion / Re: TP's TestNet Faucet - a faucet and eWallet for TestNet on: January 29, 2014, 05:20:19 PM
I can't think of many testing scenarios where people won't be actually running their own Bitcoin software. I posted a reply in your "can't get bitcoin-qt working" thread.

I'm indifferent to using testnet on my own machine or via an eWallet, but I still cannot do either.  Thanks for replying to my "Cannot synchronize with Bitcoin in testnet mode - No block source available" thread at https://bitcointalk.org/index.php?topic=437907.  Your reply helped a little.  I posted a reply to your reply.
259  Bitcoin / Bitcoin Technical Support / Re: Cannot synchronize with Bitcoin in testnet mode - No block source available on: January 29, 2014, 05:16:17 PM
The first thought is that you have created a text file and have file extensions hidden. In Control Panel, choose Folder Options. On the "View" tap, uncheck the checkbox for "Hide extensions for known file types" (along with unchecking other buttons for dummies if you want). Now when you re-open Windows Explorer, you will see the true name of the file you created.

Thanks!  That helped.  It showed that the file was named bitcoin.conf.txt.  I changed it to bitcoin.conf for both copies in the following folders:

C:\Users\USERJLP\Downloads\bitcoin-0.8.6-win32\bitcoin-0.8.6-win32
C:\Users\USERJLP\AppData\Roaming\Bitcoin


The location for the bitcoin.conf file that will start Bitcoin in testnet mode is %appdata%\Bitcoin - the same as normal Bitcoin.

I'm not sure what %appdata% means.  C:\Users\USERJLP\AppData\Bitcoin did not exist, so I created this folder and I put a copy of bitcoin.conf into it.  I double clicked on the icon for the following file, but it started in mainnet mode, not testnet mode:

C:\Users\USERJLP\Downloads\bitcoin-0.8.6-win32\bitcoin-0.8.6-win32\bitcoin-qt.exe

Should I move bitcoin-qt.exe into the C:\Users\USERJLP\AppData\Bitcoin or C:\Users\USERJLP\AppData\Roaming\Bitcoin folder?

Instead, it is preferable to use the command-line option, so that a separate bitcoin.conf file, used is solely for testnet, is located at %appdata%\Bitcoin\testnet3\bitcoin.conf. The full location will be C:\Users\USERJLP\AppData\Roaming\Bitcoin\testnet3\.

I put a copy of bitcoin.conf (which only has testnet=1 in it) into C:\Users\USERJLP\AppData\Roaming\Bitcoin\testnet3\

You can create a .cmd (batch file) to start testnet for you, save this line to a text file renamed Start-Testnet.cmd:
bitcoin-qt.exe -testnet -txindex

(txindex because it's useful for "testing")

I did as you suggested and ran Start-Testnet.cmd.  It gave me a pop-up with this error:

You need to rebuild the databases using -reindex to change -txindex

Should I rebuild the databases using bitcoin-qt.exe -testnet -reindex?

Options inappropriate for testnet in your main bitcoin configuration file may be causing your problems.

The only option I have in all of the bitcoin.conf files is testnet=1.

I started Bitcoin-QT in testnet mode by running bitcoin-qt.exe -testnet but it is still not synchronizing and still showing "No block source available...".  Does it need to be synchronized in order for me to send or receive testnet coins?
260  Bitcoin / Development & Technical Discussion / Re: TP's TestNet Faucet - a faucet and eWallet for TestNet on: January 29, 2014, 03:10:23 PM
When I tried to get a eWallet at http://tpfaucet.appspot.com/ via Random account, Create and account or use an account with my email, I get an error message:

API error 5 (urlfetch: DEADLINE_EXCEEDED)

Is this related to your grant proposal at https://bitcoinfoundation.org/forum/index.php?/topic/60-grant-proposal-testnet-faucet-ewallet-and-node/?

Are there any other Testnet eWallets out there?
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 [13] 14 15 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!