Bitcoin Forum
November 06, 2024, 11:32:01 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Some Questions  (Read 764 times)
Sant001 (OP)
Full Member
***
Offline Offline

Activity: 182
Merit: 100


View Profile
July 05, 2012, 04:50:36 AM
Last edit: July 05, 2012, 05:03:13 AM by BTCCHINA
 #1

General question I still have about Bitcoin:

1. What happens if I try to send money and input the address incorrectly?

2. What happens if I try to send money to myself (to an address that belongs to my own wallet)?

3. I have many receiving addresses saved on my Bitcoin client, what happens if I delete one? Can I still receive money on this address?

4. How many unique addresses can a wallet generate? How to make sure the address is unique if they're generated randomly (I assume)?

5. When I upgrade the client say from version 0.62beta to 0.63 is there a risk of corrupting or losing the wallet?

And some questions regarding accepting Bitcoins on a web store:

6. How can I generate a couple thousand different addresses? Is there an easy way to do so?

7. I can check whether an address received a payment simply by using the BlockExplorer, correct?

8. So a way to automate the payment confirmation at my web store would be to keep checking the BlockExplorer for the corresponding address for a certain period of time, say 15 minutes that would be the expiration for that order. But what if I had a huge amount of orders/addresses to check, is there a less bandwidth consuming way to check whether an order has been paid? I'm not interested on 3rd party services at this point such as Bitpay.

If you know the answer to any the questions please share it, thanks!   Smiley
CIYAM
Legendary
*
Offline Offline

Activity: 1890
Merit: 1086


Ian Knowles - CIYAM Lead Developer


View Profile WWW
July 05, 2012, 05:04:58 AM
 #2

1. What happens if I try to send money and input the address incorrectly?

The addresses contain a "checksum" at the end so if the address if you put in an invalid address then that will be detected and no sending will occur. If you put in the *wrong* address (but one that is *valid*) then bad luck - bitcoins are gone (so be careful)!

2. What happens if I try to send money to myself (to an address that belongs to my own wallet)?

No problem to do that at all.

3. I have many receiving addresses saved on my Bitcoin client, what happens if I delete one? Can I still receive money on this address?

I don't think the client actually has any way to delete an address but if you were to somehow *lose* the private key to an address you would effectively no longer own that address (and likely nor would anyone else).

4. How many unique addresses can a wallet generate? How to make sure the address is unique if they're generated randomly (I assume)?

A very huge number - so big that the chance of any collision (or *birthday*) is probably less likely than our entire universe being a computer simulation. Smiley

5. How can I generate a couple thousand different addresses? Is there an easy way to do so?

Just change the "keypool=<n>" setting in bitcoin.conf to 2000 (and restart the client).

6. I can check whether an address received a payment simply by using the BlockExplorer, correct?

Yes - and also http://blockchain.info.

7. So a way to find out if an order was paid is to keep checking the BlockExplorer for the corresponding address for a certain period of time, say 15 minutes that would be the expiration for that order. But what if I had a huge amount of orders/addresses to check, is there a less bandwidth consuming way to check whether an order has been paid? I'm not interested on 3rd party services at this point such as Bitpay.

Not sure why you would want to use a 3rd party to be doing this as the client itself will tell you when you each tx is received automatically (so no need to use a website or service for that).


HTH,

Ian.

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
Sant001 (OP)
Full Member
***
Offline Offline

Activity: 182
Merit: 100


View Profile
July 05, 2012, 05:36:03 AM
 #3

7. So a way to find out if an order was paid is to keep checking the BlockExplorer for the corresponding address for a certain period of time, say 15 minutes that would be the expiration for that order. But what if I had a huge amount of orders/addresses to check, is there a less bandwidth consuming way to check whether an order has been paid? I'm not interested on 3rd party services at this point such as Bitpay.

Not sure why you would want to use a 3rd party to be doing this as the client itself will tell you when you each tx is received automatically (so no need to use a website or service for that).


HTH,

Ian.


Thanks for the answers Ian!

I want my web store to confirm payments automatically, so I'm trying to come up with a simple way to do that.

I thought of setting up a cronjob at our linux server to keep checking for payments, upon finding a payment it will check if the amount is correct and check the order status to Paid.
CIYAM
Legendary
*
Offline Offline

Activity: 1890
Merit: 1086


Ian Knowles - CIYAM Lead Developer


View Profile WWW
July 05, 2012, 05:43:59 AM
 #4

I want my web store to confirm payments automatically, so I'm trying to come up with a simple way to do that.

I thought of setting up a cronjob at our linux server to keep checking for payments, upon finding a payment it will check if the amount is correct and check the order status to Paid.

I think what you are probably going to need to study is this: https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_Calls_list

You can use the "bitcoind" console interface to check for recent transactions (see the command *listtransactions*) which you could schedule to run at regular intervals (you just then need to be able to parse the returned JSON formatted data).

The following is a simple usage example:

Code:
./bitcoind -rpcpassword=needs_a_password_here listtransactions

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
Sant001 (OP)
Full Member
***
Offline Offline

Activity: 182
Merit: 100


View Profile
July 05, 2012, 05:57:03 AM
 #5

I want my web store to confirm payments automatically, so I'm trying to come up with a simple way to do that.

I thought of setting up a cronjob at our linux server to keep checking for payments, upon finding a payment it will check if the amount is correct and check the order status to Paid.

I think what you are probably going to need to study is this: https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_Calls_list

You can use the "bitcoind" console interface to check for recent transactions (see the command *listtransactions*) which you could schedule to run at regular intervals (you just then need to be able to parse the returned JSON formatted data).

The following is a simple usage example:

Code:
./bitcoind -rpcpassword=needs_a_password_here listtransactions


Would that require the private keys to be kept on the server?
CIYAM
Legendary
*
Offline Offline

Activity: 1890
Merit: 1086


Ian Knowles - CIYAM Lead Developer


View Profile WWW
July 05, 2012, 06:20:10 AM
 #6

Would that require the private keys to be kept on the server?

Well the wallet would need to be on the server, however, if it has been encrypted then the private keys should be safe (as the listtransactions command doesn't actually need to see the private keys to work).

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
mollison
Full Member
***
Offline Offline

Activity: 157
Merit: 100



View Profile
July 05, 2012, 06:48:57 AM
 #7

I want my web store to confirm payments automatically, so I'm trying to come up with a simple way to do that.

https://bit-pay.com/

I think MtGox may have something to do this as well.
Sant001 (OP)
Full Member
***
Offline Offline

Activity: 182
Merit: 100


View Profile
July 05, 2012, 03:31:05 PM
 #8

I want my web store to confirm payments automatically, so I'm trying to come up with a simple way to do that.

https://bit-pay.com/

I think MtGox may have something to do this as well.

I believe they're currently accepting US based businesses only. From their website:

Quote
Bit-pay is now available to businesses in the United States!

We don't have every possible feature yet, so we are asking merchants to apply and tell us about their business and their specific payment needs. Applications are reviewed within 24 hours.

Besides that, I will be processing initially very small volume of coins so I will have no need to have them converted instantly to fiat, so no need for a payment processor for me now.
mollison
Full Member
***
Offline Offline

Activity: 157
Merit: 100



View Profile
July 06, 2012, 08:54:23 AM
 #9

One thing you could do is accept payments in MtGox BTC coupons. MtGox has an API that makes this reasonable to do. (I am not sure if it's compatible with their TOS, but I would assume so.)

So a customer would deposit BTC at MtGox, create a coupon of the desired amount, and input that coupon to a form on your website.

It only takes a few lines of code for you to redeem that coupon, which just places the equivalent BTC in your MtGox balance. And their API will tell you how much the coupon was worth, so you can verify that you really got the BTC.

I'm planning to use this technique for a little project I'm working on. In my case, I also will allow users to withdraw BTC from my service by producing a coupon for them (which can also easily be done with the API).
Meni Rosenfeld
Donator
Legendary
*
Offline Offline

Activity: 2058
Merit: 1054



View Profile WWW
July 06, 2012, 09:30:07 AM
 #10

5. When I upgrade the client say from version 0.62beta to 0.63 is there a risk of corrupting or losing the wallet?
There shouldn't be a problem, but the risk is there. It's always a good idea to back up your wallet, both regularly and specifically before upgrading the client.

I believe they're currently accepting US based businesses only. From their website:
...
Besides that, I will be processing initially very small volume of coins so I will have no need to have them converted instantly to fiat, so no need for a payment processor for me now.
You don't have to convert to USD with Bit-Pay, you can simply let them handle the BTC payments for you and have them worry about checking that the coins were sent. They also have all sorts of apps, buttons and forms. Their fee for BTC payments is about 1%, and I think it's not limited to any country.

1EofoZNBhWQ3kxfKnvWkhtMns4AivZArhr   |   Who am I?   |   bitcoin-otc WoT
Bitcoil - Exchange bitcoins for ILS (thread)   |   Israel Bitcoin community homepage (thread)
Analysis of Bitcoin Pooled Mining Reward Systems (thread, summary)  |   PureMining - Infinite-term, deterministic mining bond
Sant001 (OP)
Full Member
***
Offline Offline

Activity: 182
Merit: 100


View Profile
July 07, 2012, 01:46:47 AM
 #11

I want my web store to confirm payments automatically, so I'm trying to come up with a simple way to do that.

I thought of setting up a cronjob at our linux server to keep checking for payments, upon finding a payment it will check if the amount is correct and check the order status to Paid.

I think what you are probably going to need to study is this: https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_Calls_list

You can use the "bitcoind" console interface to check for recent transactions (see the command *listtransactions*) which you could schedule to run at regular intervals (you just then need to be able to parse the returned JSON formatted data).

The following is a simple usage example:

Code:
./bitcoind -rpcpassword=needs_a_password_here listtransactions


So I'm taking the next step which is install the bitcoind. I first tried doing it by myself, downloaded the source code and was reading the build instructions.

I then installed the dependencies such as Boost etc, all went without issue. But when I tried to compile the bitcoind it failed with errors related to Boost, I think it didn't find it's header files or something...

I have then tried the script made available here, it's a script to install bitcoind on CentOS which is the system Im using.

The script first downloads and builds all dependencies and while compiling Boost it produced errors.

This boost software seems rather problematic in Centos...

Any tips or links on how to install bitcoind on Centos will be much appreciated
CIYAM
Legendary
*
Offline Offline

Activity: 1890
Merit: 1086


Ian Knowles - CIYAM Lead Developer


View Profile WWW
July 07, 2012, 04:22:40 AM
 #12

I have then tried the script made available here, it's a script to install bitcoind on CentOS which is the system Im using.

The script first downloads and builds all dependencies and while compiling Boost it produced errors.

This boost software seems rather problematic in Centos...

Any tips or links on how to install bitcoind on Centos will be much appreciated

From that thread there was a link to this: https://github.com/weex/bitcoind-centos in which the README contains the following:

Code:
This was tested on both 32 and 64-bit versions of CentOS 5.

Are you using the same version?

With CIYAM anyone can create 100% generated C++ web applications in literally minutes.

GPG Public Key | 1ciyam3htJit1feGa26p2wQ4aw6KFTejU
Sant001 (OP)
Full Member
***
Offline Offline

Activity: 182
Merit: 100


View Profile
July 07, 2012, 02:29:00 PM
 #13

Are you using the same version?

I believe mine is 5.5 or 5.6
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!