Bitcoin Forum
November 12, 2024, 05:55:37 AM *
News: Check out the artwork 1Dq created to commemorate this forum's 15th anniversary
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Bitcoin Sender identifizieren  (Read 3223 times)
Matono.de (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
June 26, 2011, 05:39:24 PM
 #1

Hallo,

habe mal eine Frage zu den Bitcoin Überweisungen.

Ich möchte gerne Bitcoins auf meiner Adresse empfangen. Die Leute, die mir Bitcoins senden, möchte ich irgendwie identifizieren können, um die "überwiesenen Bitcoins" den Aufträgen (z.B. bei einem Onlineshop) zuordnen zu können. Leider kann der Sender ja keinen Betreff verfassen und dadurch z.B. die Rechnungsnummer anfügen, mit der ich das zuordnen könnte.

Wie kann ich Bitcoin-Überweisungen eindeutig einem Käufer zuordnen? Was muss mir der Käufer mitteilen? Ich rede hier nicht von "mal einem Käufer" sondern von sagen wir mal "mehreren Käufern pro Stunde". Wie kann ich das auflösen und "die Ware" an den richtigen senden?

LG
Marc
Müller
Newbie
*
Offline Offline

Activity: 56
Merit: 0


View Profile
June 26, 2011, 05:40:35 PM
 #2

Gib jedem Käufer eine andere Adresse. Wenn auf einer Adresse Geld an kommt, weißt Du, welcher Verkäufer das ist.
Matono.de (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
June 26, 2011, 05:43:35 PM
 #3

Gib jedem Käufer eine andere Adresse. Wenn auf einer Adresse Geld an kommt, weißt Du, welcher Verkäufer das ist.

Wenn ich das NICHT kann... weil ich die Wartezeit für die Käufer nicht haben will? Ich möchte nicht, dass die Käufer erst auf meine Adresse warten müssen. Das dauert u.U. zu lange. Was kann ich sonst noch tun? Gibt es eine Möglichkeit?
mauline
Member
**
Offline Offline

Activity: 110
Merit: 10


View Profile
June 26, 2011, 06:17:28 PM
 #4

Gib jedem Käufer eine andere Adresse. Wenn auf einer Adresse Geld an kommt, weißt Du, welcher Verkäufer das ist.
Wenn ich das NICHT kann... weil ich die Wartezeit für die Käufer nicht haben will? Ich möchte nicht, dass die Käufer erst auf meine Adresse warten müssen. Das dauert u.U. zu lange. Was kann ich sonst noch tun? Gibt es eine Möglichkeit?

Schwer zu sagen, wenn Du nicht beschreibst, wie Dein Geschäft aussieht.

Irgendwie müssen die Leute an eine Bitcoin Adresse von Dir kommen. Wenn Du einen Online Shop hast, dann kannst Du die Adresse z.B. dynamisch generieren, wenn der Benutzer auf "Zur Kasse gehen" klickt. Das geht z.B. über den bitcoind: https://en.bitcoin.it/wiki/API_reference_%28JSON-RPC%29.

Instawallet (http://www.instawallet.org/) generiert z.B. bei jedem Aufruf so eine Adresse.

Mauline
phantastisch
Legendary
*
Offline Offline

Activity: 2271
Merit: 1363



View Profile
June 26, 2011, 06:20:06 PM
 #5

Gib jedem Käufer eine andere Adresse. Wenn auf einer Adresse Geld an kommt, weißt Du, welcher Verkäufer das ist.

Das hier ist deine einzige Möglichkeit.
Machs doch einfach automatisiert , entweder du hälst bereits generierte Adressen vor oder generierst sie on-the-fly per Skript und speicherst welche du welchem Käufer gegeben hast.
Nichts schwieriges.
Auf die Bestätigungen der Transaktionen musst du ja auch warten.


HOWEYCOINS   ▮      Excitement and         ⭐  ● TWITTER  ● FACEBOOK   ⭐       
  ▮    guaranteed returns                 ●TELEGRAM                         
  ▮  of the travel industry
    ⭐  ●Ann Thread ●Instagram   ⭐ 
✅    U.S.Sec    ➡️
✅  approved!  ➡️
redd
Full Member
***
Offline Offline

Activity: 244
Merit: 103



View Profile
June 26, 2011, 06:23:36 PM
 #6

Hi Matono,
wenn du auf deinem Server kein bitcoind laufen hast, dann wäre die einzige Möglichkeit, dir mit dem Client mehrere Bitcoin-Adressen zu erzeugen und deinen Webshop so zu programmieren, dass ein neuer Kunde eine Adresse aus diesen erzeugten Adressen erhält.

Alternativ, wenn alle Kunden die gleiche Adresse benutzen sollen, müsste dir der Kunde mitteilen, mit welcher Adresse er die Bitcoins gesendet hat, dann ist ja eine Zuordnung auch wieder möglich Wink (Dann sieht aber jeder Kunde deinen Umsätze, was auch nicht so toll ist)

Redd

1reddHnqZzhVyDK2KRMuQRKnoz4qQiTmq
Müller
Newbie
*
Offline Offline

Activity: 56
Merit: 0


View Profile
June 26, 2011, 06:31:54 PM
 #7

Gib jedem Käufer eine andere Adresse. Wenn auf einer Adresse Geld an kommt, weißt Du, welcher Verkäufer das ist.

Wenn ich das NICHT kann... weil ich die Wartezeit für die Käufer nicht haben will? Ich möchte nicht, dass die Käufer erst auf meine Adresse warten müssen. Das dauert u.U. zu lange. Was kann ich sonst noch tun? Gibt es eine Möglichkeit?


Warum kannst Du das nicht? Was kannst Du nicht?Binde doch die API in Deinen Server ein? Wo ist da das Problem?

CoinBoerse.com
Sr. Member
****
Offline Offline

Activity: 277
Merit: 250


View Profile
June 26, 2011, 07:15:01 PM
 #8

Alternativ, wenn alle Kunden die gleiche Adresse benutzen sollen, müsste dir der Kunde mitteilen, mit welcher Adresse er die Bitcoins gesendet hat, dann ist ja eine Zuordnung auch wieder möglich

Da ich vor exakt demselben Problem stand habe ich mich auch nach dieser Möglichkeit erkundigt: Eine vorher eindeutige Absenderkennug gibt es nicht, da ein Zahlungsbetrag aus mehreren Adressen stammen kann.
Matono.de (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
June 26, 2011, 07:31:28 PM
Last edit: June 26, 2011, 07:44:26 PM by Matono.de
 #9

Also:

Ich habe bitcoind nicht auf einem Server laufen. Ich kann daher auch nicht "on-the-fly" eine Adresse erzeugen und dem Kunden zur Verfügung stellen. Gibt es eine Möglichkeit, dass ich per Script lokal einige Adressen erzeugen kann, die ich dann als "Einmaladresse" in einer Datenbank ablege, die dann nur einmal zugewiesen wird?

Bzw: Kann ich, wenn mir der Sender seine Adresse gibt, diese dann identifizieren?
CoinBoerse.com
Sr. Member
****
Offline Offline

Activity: 277
Merit: 250


View Profile
June 26, 2011, 07:43:57 PM
 #10

An einer solchen Lösung wäre ich auch interessiert.

ich habe es momentan in Handarbeit erledigt.
mauline
Member
**
Offline Offline

Activity: 110
Merit: 10


View Profile
June 26, 2011, 07:52:29 PM
 #11

Ich habe bitcoind nicht auf einem Server laufen.

Du musst das Programm nicht auf dem Server laufen haben. Es kann auch eine Verbindung zu einem laufenden Server auf einem anderen Rechner aufbauen, um dort die Bitcoin Datenbank anzufragen.

Gibt es eine Möglichkeit, dass ich per Script lokal einige Adressen erzeugen kann, die ich dann als "Einmaladresse" in einer Datenbank ablege, die dann nur einmal zugewiesen wird?

Auf dem Rechner, auf dem sich Dein Wallet befindet, den Bitcoin Client starten. Dann:

mauline@trixie:~$ bitcoin help getnewaddress
getnewaddress [account]
Returns a new bitcoin address for receiving payments.  If [account] is specified (recommended), it is added to the address book so payments received with the address will be credited to [account].


Bzw: Kann ich, wenn mir der Sender seine Adresse gibt, diese dann identifizieren?

Entweder im GUI Bitcoin Client oder:

mauline@trixie:~$ bitcoin help listtransactions
listtransactions [account] [count=10] [from=0]
Returns up to [count] most recent transactions skipping the first [from] transactions for account [account].


Mauline
wareen
Millionaire
Legendary
*
Offline Offline

Activity: 910
Merit: 1001

Revolutionizing Brokerage of Personal Data


View Profile
June 26, 2011, 08:20:44 PM
 #12

Gibt es eine Möglichkeit, dass ich per Script lokal einige Adressen erzeugen kann, die ich dann als "Einmaladresse" in einer Datenbank ablege, die dann nur einmal zugewiesen wird?

Klar, unter Linux (mit laufendem Bitcoin-client) in einer Konsole einfach folgendes eingeben:
Code:
for ((i=0;i<1000;i++)); do bitcoind -rpcuser=username -rpcpassword=password getnewaddress "Rechnungsnummer-$i"; done
...oder sowas in der Art.

        ▄▄▀▀▄▄
    ▄▄▀▀▄▄██▄▄▀▀▄▄
▄▄▀▀▄▄█████▄████▄▄▀▀▄▄
█▀▀█▄█████████████
█▄▄████▀   ▀██████
███████     █▄████
█████▀█▄   ▄██████
█▄█████▌   ▐█████
█████▀█     ██████
██▄███████████████
▀▀▄▄▀▀█████▀████▀▀▄▄▀▀
    ▀▀▄▄▀▀██▀▀▄▄▀▀
        ▀▀▄▄▀▀
.PDATA..
.
TOKEN..
██
██
██   ██
██   ██
██   ██
██   ██
██   ██
██   ██

██   ██
██   ██

██   ██
██
██
██
██
██  ██
██  ██
██  ██
██  ██
██  ██
██  ██

██  ██
██  ██

██  ██
██
██
██
██
██   ██
██   ██
██   ██
██   ██
██   ██
██   ██

██   ██
██   ██

██   ██
██
██
TELEGRAM     BITCOINTALK     FACEBOOK
MEDIUM    SLACK    TWITTER    YOUTUBE
▬▬▬▬▬▬▬   E M A I L   ▬▬▬▬▬▬▬
██
██
██  ██
██  ██
██  ██
██  ██
██  ██
██  ██

██  ██
██  ██

██  ██
██
██
BitCoinBaron
Member
**
Offline Offline

Activity: 98
Merit: 10



View Profile
June 26, 2011, 08:27:47 PM
 #13

Du kannst sicherlich auch deine erzeugte Adresse deinem Kunden zuordnen und diese dann in der DB ablegen. Wenn der Kunde das nächste Geschäft oder was auch immer tätigt, fragst du einfach ob schon eine Adresse erzeugt wurde, wenn nicht bekommt er eine neu, wenn er schon eine hat erzeugst du keine sondern nimmst die aus der DB. Denke das wird dann nicht so ganz unübersichtlich.
Wenn ein Kunde 10 Geschäfte getätigt hat und er 10 Adressen erzeugt wird es doch für alle beteiligten sehr kaotisch. Denke ich.

Sollte mein Beitrag hilfreich gewesen sein, dann kannst du dich hier bedanken.
--->>>1JVUfbsHoFbjLpoYqQhx8ZL91RdtjvoKH7<<<---
Matono.de (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
June 26, 2011, 08:34:24 PM
 #14

Also das mit den bitcoin-commands verstehe ich nicht. Wenn ich die Eingabeaufforderung öffne und solche commands eingebe, dann bekomme ich immer die Meldung "couldn't connect to server". Irgendwas verstehe ich da nicht.

Es ist ja nun so, dass ich mit dem Programm einzelne Adressen erzeugen kann. Gut, diese Adressen kann ich dann in meiner MySQL Datenbank abspeichern und zur Verfügung stellen. Ich habe mein Script in PHP nun so angepasst, dass die User beim "Kasse-Gang" eine dieser zufälligen Adressen aus der Datenbank zugewiesen bekommen und dann dahin überweisen können. Auf die Dauer wird das aber ziemlich viel und ich muss die Adressen "per Hand" in die Datenbank einpflegen. Parallel dazu, dass jeder "Kunde" eine eigene Adresse zugewiesen bekommt, speichere ich seine Senderadresse, sofern er sie eingibt (hope so). Dadurch müsste ich jede Transaktion zuweisen können. Problem nur, wenn es vieeeel zu viel gibt.

Kann ich einem Kunden eine feste Adresse geben, so dass er diese immer wieder benutzt? Wäre das möglich?
CoinBoerse.com
Sr. Member
****
Offline Offline

Activity: 277
Merit: 250


View Profile
June 26, 2011, 08:43:33 PM
 #15


Parallel dazu, dass jeder "Kunde" eine eigene Adresse zugewiesen bekommt, speichere ich seine Senderadresse, sofern er sie eingibt (hope so). Dadurch müsste ich jede Transaktion zuweisen können.

siehe dazu dies:
Eine vorher eindeutige Absenderkennug gibt es nicht, da ein Zahlungsbetrag aus mehreren Adressen stammen kann.
Der Absender selbst weiss also gar nicht, aus wie vielen und aus welchen seiner Adressen seine Zahlung tatsächlich erfolgen wird.

Kann ich einem Kunden eine feste Adresse geben, so dass er diese immer wieder benutzt? Wäre das möglich?

Ja. Dadurch wird das Speichern der Absenderadressen überflüssig, sofern Du Kunden-ID und Empfängeradresse fest verbindest.
Matono.de (OP)
Newbie
*
Offline Offline

Activity: 14
Merit: 0


View Profile
June 26, 2011, 08:56:54 PM
 #16

@Coinboerse

Vielen Dank! Ich bin nun also soweit, dass ich zumindest "händisch" dieses Problem lösen kann. Ich habe nun folgende Schritte gemacht:

Ich habe eine Reihe von Adressen für den Empfang von Zahlungen generiert und diese in meine DB gefüttert. Sobald ein Kunde mir BTC senden will, prüft das Script, ob er schon eine feste Adresse zugewiesen bekommen hat. Wenn dies der Fall ist, wird diese Adresse genommen, damit er seine Zahlung dahin senden kann. Hat er noch keine Adresse, prüft das Script, ob noch "freie" Adressen in der Datenbank vorhanden sind und wählt - wenn verfügbar - eine davon für den Kunden aus. Diese wird ihm ab dem Zeitpunkt dauerhaft zugewiesen und er kann an diese Adresse seine Zahlungen leisten, die ich entsprechend prüfen kann.

Sollten mal keine Adressen mehr im DB Pool vorhanden sein, werden alle BTC Zahlungen geblockt, mit dem Hinweis, dass BTC "Einzahlungen" im Moment nicht möglich sind. Das ändert sich erst dann wieder, wenn ich neue Adressen händisch in die DB einspeise. Ich hoffe, dass es so klappt.

Ziemlich komplexer Mist. Ich hoffe, dass es sich lohnt und Bitcoins nicht morgen Schnee von gestern sind!!! Smiley
mauline
Member
**
Offline Offline

Activity: 110
Merit: 10


View Profile
June 26, 2011, 08:58:32 PM
 #17

Also das mit den bitcoin-commands verstehe ich nicht. Wenn ich die Eingabeaufforderung öffne und solche commands eingebe, dann bekomme ich immer die Meldung "couldn't connect to server". Irgendwas verstehe ich da nicht.

Der bitcoin Client muss dazu laufen. Entweder der GUI Client (bitcoin) oder der "headless" Client (bitcoind). Das Programm, dass Du auf der Kommandozeile aufrufst, stellt eine Verbindung zum bereits laufenden GUI oder headless Client her.

Warum das so ist: Der laufende GUI oder headless Client verwaltet die Datenbank (Dein Wallet) und stellt eine RPC (Remote Procedure Call) Schnittstelle für weitere Clients zur Verfügung. So ist sichergestellt, dass nicht zwei oder mehr Programme gleichzeitig an der Datenbank rummachen.

Kennt jemand eigentlich dazu ein Tutorial? Das ist ja eine recht zentrale Sache, wenn man bestehende Shop Applikationen "Bitcoin Ready" machen will.

Kann ich einem Kunden eine feste Adresse geben, so dass er diese immer wieder benutzt? Wäre das möglich?

Du kannst die Bitcoin Adresse zusammen mit den Kundendaten abspeichern, und ein- und demselben Kunden immer dieselbe Adresse für die Überweisung anzeigen.

Mauline
CoinBoerse.com
Sr. Member
****
Offline Offline

Activity: 277
Merit: 250


View Profile
June 26, 2011, 09:09:50 PM
 #18

Sollten mal keine Adressen mehr im DB Pool vorhanden sein, werden alle BTC Zahlungen geblockt, mit dem Hinweis, dass BTC "Einzahlungen" im Moment nicht möglich sind.

Das gilt es natürlich tunlichst zu vermeiden, denn wenn ein Kunde schon seine BTCs bei dir lassen will, sollte an dem Punkt nicht eine fehlende Empfängeradresse ihn daran hindern. Also ordentlich auf Vorrat anlegen.


Kennt jemand eigentlich dazu ein Tutorial? Das ist ja eine recht zentrale Sache, wenn man bestehende Shop Applikationen "Bitcoin Ready" machen will.

Ich befürchte fast, das Konzept hat die bitcoind-lose Variante gar nicht berücksichtigt, so dass man nun mit Hilfskonstruktionen zurecht kommen muss.
Symbiont
Full Member
***
Offline Offline

Activity: 210
Merit: 100


View Profile
June 26, 2011, 09:30:47 PM
 #19

Ich habe da eine andere Idee:

Wenn Du etwas für 1 Bitcoin verkaufst, dann lass Dir 1,0000000X (X=Rechnungsnummer) Bitcoins schicken. Da der Wert hinter dem Komma einem Bruchteil vom einem Cent entspricht, sollte das niemand stören. Wir werden das jedenfalls mit unserem Coffeeshop so versuchen und bald hier Gutscheine für 1 Bitcoin anbieten.

Was meint Ihr dazu?
adaman
Member
**
Offline Offline

Activity: 84
Merit: 10


View Profile
June 27, 2011, 09:45:53 PM
 #20

@ Matono

Aus den Posts ist mir jetzt nicht ganz klar wie weit du gekommen bist. Soweit ich gelesen habe hast du es "händisch" erledigt. Im Prinzip geht es automatisch genau so wie wareen es bereits beschrieben hat.

Als Voraussetzung dazu muss der bitcoin client vorher allerdings als Server gestartet werden.

bitcoind -server

Mal bitcoind -? eingeben. Sehr informativ.

Damit du dann , wie im Post von wareen bereits exakt beschrieben, automtatisch per rpc auf den als Server gestarteten headless Bitcoinclient zugreifen kannst must du in deinem Homeverzeichnis vorher noch die Datei bitcoin.conf mit rpcuser und rpcpassword anlegen. (~/.bitcoin/bitcoin.conf )

Mehr dazu zB. hier: http://foreverrising.wordpress.com/2011/04/15/bitcoin-conf-example/

Läuft der bitcoind wie beschrieben als Server und wurden rpcuser und rpcpassword hinterlegt kannst du nun scriptgesteuert automatisch Addressen generieren lassen.
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!