Bitcoin Forum
May 07, 2024, 10:47:24 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Is following possible with programming?  (Read 1631 times)
BTCIndia (OP)
Hero Member
*****
Offline Offline

Activity: 686
Merit: 500

vini, vedi, no vici.


View Profile
December 24, 2013, 03:23:23 PM
Last edit: December 24, 2013, 03:41:53 PM by BTCIndia
 #1



I tired asking following question to some techie during Mumbai conference but seems like he wasn't able to understand the question. I'm seeking help from people who understand's Bitcoin and programming.

Scenario: Aman, Bobby, Charlie and Davis sends 1 Bitcoin to our hypothetical receiver(say Nakamoto) at 2 O'clock 29 minutes and 30 milliseconds( at very same time). Nakamoto knows those, four people are registered by filling a form on his website and has their details(name,age,sex etc).

Aman, Male, 24
Bobby, Male 19
Charlie, Female, 22
Bobby, Male, 45

...And IP address if programming is capable of extracting IP without user's knowledge when he's busy filling up form.

Task: Nakamoto has somehow managed to make people sign up form with details. All he knows is those details that are send by user(Name, sex and age + IP). He neither knows their wallet number nor any other detail. What he wishes is- when a person sends 1 Bitcoin to his wallet, his database automatically updates so that he knows that Aman send 1 Bitcoin from that wallet, Bobby send 1 Bitcoin.. and blah blah blah. He wishes his database(Name, age, sex) to be automatically update with users wallet details so that he has final database with those filled up details and their wallet number. Is it possible?

What I think problem is:
1. All Bitcoin's are send at same time.
2. I don't know whether Bitcoin are 'fungible' or not.
3. If Aman registers today, login's next day and sends Bitcoin next day. Won't it create confusion?

He's Nick Sazbo from Washington. I've my answer. Or Hal? :O
1715078844
Hero Member
*
Offline Offline

Posts: 1715078844

View Profile Personal Message (Offline)

Ignore
1715078844
Reply with quote  #2

1715078844
Report to moderator
If you see garbage posts (off-topic, trolling, spam, no point, etc.), use the "report to moderator" links. All reports are investigated, though you will rarely be contacted about your reports.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715078844
Hero Member
*
Offline Offline

Posts: 1715078844

View Profile Personal Message (Offline)

Ignore
1715078844
Reply with quote  #2

1715078844
Report to moderator
1715078844
Hero Member
*
Offline Offline

Posts: 1715078844

View Profile Personal Message (Offline)

Ignore
1715078844
Reply with quote  #2

1715078844
Report to moderator
1715078844
Hero Member
*
Offline Offline

Posts: 1715078844

View Profile Personal Message (Offline)

Ignore
1715078844
Reply with quote  #2

1715078844
Report to moderator
gogodr
Sr. Member
****
Offline Offline

Activity: 434
Merit: 250



View Profile
December 24, 2013, 04:44:22 PM
 #2

* Because of how TCP/IP packets work over the internet network, collisions are not really a concern so sending them at the same time is not a problem.
* Problem with your concept: 1 person can have multiple wallets and the way transactions work is they get the bitcoin from any of your wallet addresses before sending.

♦ Best way to approach a system like that is with custom wallets, you can create a special receive wallet for each customer you have, that way there will be no confusion.
rarkenin
Hero Member
*****
Offline Offline

Activity: 784
Merit: 500



View Profile
December 24, 2013, 05:28:38 PM
 #3

This has been done many times on nearly every site that accepts bitcoins. For each user the server creates a new bitcoin address and tells the user to send funds there. Once the funds are sent the user is credited with getting those coins.

Anyway, until you learn more about Bitcoin I wouldn't try to do such a thing.
BurtW
Legendary
*
Offline Offline

Activity: 2646
Merit: 1136

All paid signature campaigns should be banned.


View Profile WWW
December 24, 2013, 05:34:28 PM
 #4

Just give each customer a unique address for each transaction.  In other words tread Bitcoin addresses just like invoice numbers and add these invoice numbers to the database information about each customer.  That way you know exactly who paid what and when.

Our family was terrorized by Homeland Security.  Read all about it here:  http://www.jmwagner.com/ and http://www.burtw.com/  Any donations to help us recover from the $300,000 in legal fees and forced donations to the Federal Asset Forfeiture slush fund are greatly appreciated!
Cryddit
Legendary
*
Offline Offline

Activity: 924
Merit: 1129


View Profile
December 24, 2013, 05:41:32 PM
 #5

Y'all are not answering OP's question.

The issue is linking information.  In principle, when a retailer gets a BTC payment from an unknown BTC address, and has no other information, he does not know who has sent it, so he cannot know which of his known accounts to credit.

In practice, if he knows the IP address of his customer, he can look at the IP address the BTC payment originated from and link the payment to the customer.  But that's not 100% reliable because IP addresses change often. And you cannot do it after the fact; none of the IP details are recorded in the block chain, for example, so you have to be monitoring packets as they arrive to know where a BTC payment comes from.

But there is a way to do it 100% reliably with the customers' cooperation.  Each bitcoin transaction has a message field, and if your customers are cooperating with your efforts to link their accounts to their payments, then they can just stick their account number in the message field to make sure that the merchant can credit the correct account.
Cryddit
Legendary
*
Offline Offline

Activity: 924
Merit: 1129


View Profile
December 24, 2013, 05:43:12 PM
 #6

Just give each customer a unique address for each transaction.  In other words tread Bitcoin addresses just like invoice numbers and add these invoice numbers to the database information about each customer.  That way you know exactly who paid what and when.

Hey, that works too, and doesn't even require customer cooperation.  But it means you can't publish a merchant address in the normal way (ie, same address for everybody because you put it in a magazine ad or something).

jbis1
Newbie
*
Offline Offline

Activity: 50
Merit: 0



View Profile
December 24, 2013, 05:43:53 PM
 #7

The problem is you don't know the IP address of the person creating the transaction. Since transactions are relayed through the P2P network, chances are that you will see the transaction coming from the user's IP address. So you can't match the IP address you have stored with the IP address relaying the transaction.

Plus not everyone is running Bitcoin-qt on their computer. Some people use websites like blockchain.info, so the IP address initially relaying the transaction would be that of blockchain.info.

Bitcoin transactions don't include name, age, or sex, so it is not possible to match those.

So I don't see how this can work.
markm
Legendary
*
Offline Offline

Activity: 2940
Merit: 1090



View Profile WWW
December 24, 2013, 07:36:21 PM
 #8

If you will never have as many as one hundred million customers, then you can use the decimals of the amount to identify which customer sent the whole bitcoins part of the value that was sent.

So for example when customer number 12345678 send a bitcoin, have them send 1.12345678 bitcoins.

Either have them send it from a wallet they control so you can send the "change" (0.12345678 bitcoins) back to the sending address, or have a "change address" for each customer in your database so you know where to send the change.

If you do want to use the memo field, go ahead and use a coin that has a memo field. But bitcoin has no memo field per se yet.

See however the work that is going on toward a payments layer that will carry extraneous information between merchant and customer and vice-versa...

-MarkM-

Browser-launched Crossfire client now online (select CrossCiv server for Galactic  Milieu)
Free website hosting with PHP, MySQL etc: http://hosting.knotwork.com/
gamybtc
Member
**
Offline Offline

Activity: 112
Merit: 10


View Profile
December 24, 2013, 10:14:16 PM
 #9

It is possible to extract information and send customer to the bitcoin address checkout page. If three persons from different computers fills a form, and send the order, while they send the order, their order information should go straight ahead to database, and the order id should be generated and given to bitcoin checkout. So in that way, each order will get a unique order id, and each unique id should be sent to bitcoin checkout, so you can identify the payment.

BTC : 1fDTCkVcJ7SaVnoFjA5U1xfHQVfv1BWCb
jbis1
Newbie
*
Offline Offline

Activity: 50
Merit: 0



View Profile
December 25, 2013, 05:32:17 AM
 #10

It seems, based on the image in the post, that there is a single address that everyone is sending to. Therefore, the solution of giving each user a unique address won't work.
xocel
Full Member
***
Offline Offline

Activity: 121
Merit: 100



View Profile
December 25, 2013, 05:44:06 AM
 #11

Attempting to use IP is a bad idea imo. What if Bobby registers from his home computer, but keeps his coins in an online wallet or on an exchange?

As many people have mentioned normally a service would generate multiple addresses, one (or more) for each depositor. If you do want to have only the one receiver address you could use transaction messages, e.g bobby attaches message containing 'bobby' to transaction. Although that restricts which coins you could use, as not all support messages, but its an option I guess.

BTCIndia (OP)
Hero Member
*****
Offline Offline

Activity: 686
Merit: 500

vini, vedi, no vici.


View Profile
December 25, 2013, 06:16:26 AM
 #12

Y'all are not answering OP's question.

The issue is linking information.  In principle, when a retailer gets a BTC payment from an unknown BTC address, and has no other information, he does not know who has sent it, so he cannot know which of his known accounts to credit.

In practice, if he knows the IP address of his customer, he can look at the IP address the BTC payment originated from and link the payment to the customer.  But that's not 100% reliable because IP addresses change often. And you cannot do it after the fact; none of the IP details are recorded in the block chain, for example, so you have to be monitoring packets as they arrive to know where a BTC payment comes from.

But there is a way to do it 100% reliably with the customers' cooperation.  Each bitcoin transaction has a message field, and if your customers are cooperating with your efforts to link their accounts to their payments, then they can just stick their account number in the message field to make sure that the merchant can credit the correct account.


Thanks Cryddit! You seem to understand my problem perfectly. Here, I'm working on to trace a unknown wallet so that I can link anonymity with identity(Name, sex, age). People are not going to send me 1 BTC without reason.. but I've a plan. Actually, I'm not interested in 1 BTC. My interest is linking those information in fill up form to wallet address from which I'll be receiving. I dream to spy on their ledger and transaction. And for that thing, I need to link identity with anonymity. I can't tell them to write a note with transaction and even if I say, they're not gonna write it. This is my hurdle!

He's Nick Sazbo from Washington. I've my answer. Or Hal? :O
BTCIndia (OP)
Hero Member
*****
Offline Offline

Activity: 686
Merit: 500

vini, vedi, no vici.


View Profile
December 25, 2013, 06:20:46 AM
 #13

If you will never have as many as one hundred million customers, then you can use the decimals of the amount to identify which customer sent the whole bitcoins part of the value that was sent.

So for example when customer number 12345678 send a bitcoin, have them send 1.12345678 bitcoins.

Either have them send it from a wallet they control so you can send the "change" (0.12345678 bitcoins) back to the sending address, or have a "change address" for each customer in your database so you know where to send the change.

If you do want to use the memo field, go ahead and use a coin that has a memo field. But bitcoin has no memo field per se yet.

See however the work that is going on toward a payments layer that will carry extraneous information between merchant and customer and vice-versa...

-MarkM-


Beautiful thought! Smiley I love your logic's! What if I'll be accepting 83 Satoshi from all of them?

He's Nick Sazbo from Washington. I've my answer. Or Hal? :O
rarkenin
Hero Member
*****
Offline Offline

Activity: 784
Merit: 500



View Profile
December 25, 2013, 01:06:54 PM
 #14

Just saying, I don't want a service collecting information about me that way. Unless it's banking or something else official I completely randomize the details I give.
BTCIndia (OP)
Hero Member
*****
Offline Offline

Activity: 686
Merit: 500

vini, vedi, no vici.


View Profile
December 25, 2013, 03:13:54 PM
 #15

Just saying, I don't want a service collecting information about me that way. Unless it's banking or something else official I completely randomize the details I give.

You want to stay anonymous and I don't want you too stay. You play your hands and I'll play mine.

He's Nick Sazbo from Washington. I've my answer. Or Hal? :O
Cryddit
Legendary
*
Offline Offline

Activity: 924
Merit: 1129


View Profile
December 25, 2013, 05:11:20 PM
 #16

It's a race, for sure. 

The next generation of cryptocurrencies is going to have much harder anonymity. 

Anoncoin is optimized for use by Tor -- in fact IIRC requires it.  There is not and never will be linking via IP address there.  StableCoin keeps talking about an 'automatic decentralized coin tumbling service' - which, if implemented, will make it impossible to link transactions via the blockchain.  Several people are talking about 'decentralized exchanges', envisioning single commodity transactions having literally hundreds of buyers and sellers. Even without any efforts toward privacy, that'd make it pretty impossible to track the transactions of individuals by keeping track of which txouts belong to them.   When somebody puts $10 into an exchange transaction with $1M of other buyers' money, and then that same transaction pays out to a thousand sellers?  If you want to keep track of that somebody, he now has some small part of $1M worth of the exchange commodity, and you cannot know which part.  If you're keeping track of the commodity, the person you're interested in now has 1 / 100K of the commodity that you can link to his money.  If he then turns around and sells his $10 worth of commodity in the next exchange transaction, he gets his $10 back (more or less) but if you're trying to track it through the blockchain, the guy you're interested in now has $10, which is only one part in ten trillion linkable to the money you were trying to track.

And the next generation of snoops is going to take advantage of an increasingly rigged infrastructure to try to break it.

Lots and lots of crooks, plus various commercial enterprises and the intelligence and law enforcement agencies of various nations, will be trying to de-anonymize people, and as we've recently seen, the people whom we trust for privacy, can't be trusted.  They can be bribed, they can be blackmailed, they can be served with subpeonas requiring them to reveal secrets and gag orders to prevent them from talking about it, they can succumb to extortion, they can owe far too much money to the mob, they can be tricked into buying bugged routers and switches, they can have electronic bugs planted in their buildings, they can have wayward employees walk out the door with a million people's private data on their thumb drives,  they can be subject to MITM and Sybil attacks, they can even directly attack the security of their customers and try to install rootkits.  They can be tricked into using "standards" that have backdoors built in, the people who know about the backdoors can be tricked into revealing them to crooks, and even nations that have privacy laws find it nearly impossible to prevent trades in customer data.

So...  Just saying, the competition is stiff. 

BurtW
Legendary
*
Offline Offline

Activity: 2646
Merit: 1136

All paid signature campaigns should be banned.


View Profile WWW
December 25, 2013, 06:43:40 PM
 #17

Not only will most of us here not help you, we will be doing everything in our power to make it impossible for you to do this.

Our family was terrorized by Homeland Security.  Read all about it here:  http://www.jmwagner.com/ and http://www.burtw.com/  Any donations to help us recover from the $300,000 in legal fees and forced donations to the Federal Asset Forfeiture slush fund are greatly appreciated!
Cryddit
Legendary
*
Offline Offline

Activity: 924
Merit: 1129


View Profile
December 25, 2013, 07:23:17 PM
 #18

Not only will most of us here not help you, we will be doing everything in our power to make it impossible for you to do this.

Seconded.  If you're trying to link people's transactions without their active consent and cooperation, then you're working directly against their interests.  Good people will be trying to stop you.

BTCIndia (OP)
Hero Member
*****
Offline Offline

Activity: 686
Merit: 500

vini, vedi, no vici.


View Profile
December 26, 2013, 02:04:05 PM
 #19

Not only will most of us here not help you, we will be doing everything in our power to make it impossible for you to do this.

Seconded.  If you're trying to link people's transactions without their active consent and cooperation, then you're working directly against their interests.  Good people will be trying to stop you.



Good people will be trying to stop me? 

If you see from my frame of mind then, I'd say bad people will be trying to stop me. I'm just working on some hypothetical concepts here, dude. You might be amazed to know that I got flunked on C++ three times.  Grin
You expect me to go against your community with these skills? I'm just being dreamer here. Chillax!

He's Nick Sazbo from Washington. I've my answer. Or Hal? :O
rarkenin
Hero Member
*****
Offline Offline

Activity: 784
Merit: 500



View Profile
December 26, 2013, 03:39:41 PM
 #20

The point is, someone will be wanting to stop you. Nobody really likes such harvesting of information without their consent, to some degree or another.
Pages: [1] 2 »  All
  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!