Bitcoin Forum
December 10, 2019, 04:29:54 AM *
News: Latest Bitcoin Core release: 0.19.0.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Получить адрес того, кто прислал биткоины  (Read 3565 times)
celestia
Jr. Member
*
Offline Offline

Activity: 31
Merit: 1


View Profile
March 30, 2013, 05:33:43 PM
Last edit: March 31, 2013, 09:52:28 AM by celestia
 #1

Нужно получить адрес того, от кого пришла транзакция, через JSON-RPC. Что-то в упор не вижу как. В decoderawtransaction(getrawtransaction) нету такого. В gettransaction - тоже.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
AV
Hero Member
*****
Offline Offline

Activity: 910
Merit: 1000



View Profile
March 30, 2013, 05:40:15 PM
 #2

http://blockchain.info/address/добавь_сюда_свой_адрес_и_смотри
celestia
Jr. Member
*
Offline Offline

Activity: 31
Merit: 1


View Profile
March 30, 2013, 05:42:40 PM
 #3

Как через вебню сделать-то понятно, мне нужно через JSON-RPC получить.
AV
Hero Member
*****
Offline Offline

Activity: 910
Merit: 1000



View Profile
March 30, 2013, 06:15:11 PM
 #4

Возможно через gettransaction или getrawtransaction
https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list
celestia
Jr. Member
*
Offline Offline

Activity: 31
Merit: 1


View Profile
March 30, 2013, 06:27:36 PM
 #5

Возможно через gettransaction или getrawtransaction
https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list
Я же написал, что через них не получается - оригинального адреса там не видно.
AV
Hero Member
*****
Offline Offline

Activity: 910
Merit: 1000



View Profile
March 30, 2013, 07:05:27 PM
 #6

getrawtransaction надо декодировать при помощи decoderawtransaction.
Balthazar
Legendary
*
Offline Offline

Activity: 2730
Merit: 1180


Worship the Eru


View Profile WWW
March 30, 2013, 07:10:53 PM
 #7

Вообще, для более полного понимания данных вещей не помешало бы изучить формат транзакций. Там все очень просто.  Wink

Например, транзакция:

Code:
01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff0d03d986000101062f503253482fffffffff0100f2052a010000002321039d249b4db6c871f9f2927ff9e7a73e20cd0248cfe67df677cd1932fe021f12f3ac00000000

1. Version:
01000000

2. Input count:
01

3. Input hash:
0000000000000000000000000000000000000000000000000000000000000000

4. Input index (-1):
ffffffff

5. scriptSig:
0d03d986000101062f503253482f

6. nSequence
ffffffff

7. Output count:
01

8. Value:
00f2052a01000000

9. scriptPubKey:
2321039d249b4db6c871f9f2927ff9e7a73e20cd0248cfe67df677cd1932fe021f12f3ac

10. Lock time:
00000000

Quote
Я же написал, что через них не получается - оригинального адреса там не видно.
А адреса там и нет, там хранятся пабкеи и хэши. Адреса из них генерируются клиентом при декодировании.

Eä developer (work in progress) | ETC.HVPPS.NET (100 GH/s, PoT) | EtherDig.Ru (DGM) | Скажи "НЕТ!" подписной проституции.
ETH/ETC: 0x8d35067233605bef6069191ae0922d134ff80d48 BTC: 33SFo5G24cp7ZKevuqc8xjKmKJyq5eWrvW
celestia
Jr. Member
*
Offline Offline

Activity: 31
Merit: 1


View Profile
March 30, 2013, 07:22:09 PM
 #8

getrawtransaction надо декодировать при помощи decoderawtransaction.
Да, так и делал.

А адреса там и нет, там хранятся пабкеи и хэши. Адреса из них генерируются клиентом при декодировании.
И как мне превратить пабкеи и хеши в адреса? Мне нужно по аккаунту получить сумму каждой транзакции, пришедшей на него, и адрес, с которого она пришла.
[Tycho]
Hero Member
*****
Offline Offline

Activity: 742
Merit: 500



View Profile WWW
March 30, 2013, 07:44:01 PM
 #9

И как мне превратить пабкеи и хеши в адреса? Мне нужно по аккаунту получить сумму каждой транзакции, пришедшей на него, и адрес, с которого она пришла.
Не мог бы ты на всякий случай уточнить, что пытаешься сделать ?
А то тут есть вероятность что это делается не так :)

Welcome to my bitcoin mining pool: https://deepbit.net - Both payment schemes (including PPS), instant payout, no invalid blocks !
ICBIT Trading platform : USD/BTC futures trading, Bitcoin difficulty futures (NEW!). Third year in bitcoin business.
celestia
Jr. Member
*
Offline Offline

Activity: 31
Merit: 1


View Profile
March 30, 2013, 07:55:51 PM
Last edit: March 30, 2013, 08:05:52 PM by celestia
 #10

И как мне превратить пабкеи и хеши в адреса? Мне нужно по аккаунту получить сумму каждой транзакции, пришедшей на него, и адрес, с которого она пришла.
Не мог бы ты на всякий случай уточнить, что пытаешься сделать ?
А то тут есть вероятность что это делается не так Smiley
Есть аккаунт, нужно по нему получить список входящих транзакций с больше чем 5 подтверждениями с суммой и адресами отправителей каждой транзакции. Я смог получить список транзакций (listtransactions), откуда вытащил txid транзакций с больше чем 5 подтверждениями, а что делать дальше я не знаю.
viv
Newbie
*
Offline Offline

Activity: 17
Merit: 0


View Profile
March 31, 2013, 03:50:26 AM
 #11

getrawtransaction надо декодировать при помощи decoderawtransaction.
После decoderawtransaction смотри на "vin". Там перечислены ИД исходящих транзакций, которые тоже на декодировать. "vout" во входящей транзакции указывает на номер выхода в исходящей. Выходы в исходящей лежат в секции "vout". Там же и объем перевода.
Начиная с версии 0.8 индекс кошелька по умолчанию не содержит чужих транзакций. Поэтому команда getrawtransaction не сработает. Для исправления этой ситуации необходимо запускать кошель с опцией txindex=1 и один раз -rescan.
celestia
Jr. Member
*
Offline Offline

Activity: 31
Merit: 1


View Profile
March 31, 2013, 09:51:37 AM
Merited by gyzer (1)
 #12

После decoderawtransaction смотри на "vin". Там перечислены ИД исходящих транзакций, которые тоже на декодировать. "vout" во входящей транзакции указывает на номер выхода в исходящей. Выходы в исходящей лежат в секции "vout". Там же и объем перевода.
Начиная с версии 0.8 индекс кошелька по умолчанию не содержит чужих транзакций. Поэтому команда getrawtransaction не сработает. Для исправления этой ситуации необходимо запускать кошель с опцией txindex=1 и один раз -rescan.
Спасибо, кажется разобрался. Значит я делаю listtransaction(аккаунт), вытаскиваю оттуда amount и txid всех транзакций, у которых category == recieve и confirmations > 5. Потом делаю decoderawtransaction(getrawtransaction(txid)), оттуда беру vin['vout'] и vin['txid'], после чего делаю  decoderawtransaction(getrawtransaction(vin['txid'])) и беру отттуда details[vout]['address'].
[Tycho]
Hero Member
*****
Offline Offline

Activity: 742
Merit: 500



View Profile WWW
March 31, 2013, 04:33:08 PM
 #13

Есть аккаунт, нужно по нему получить список входящих транзакций с больше чем 5 подтверждениями с суммой и адресами отправителей каждой транзакции. Я смог получить список транзакций (listtransactions), откуда вытащил txid транзакций с больше чем 5 подтверждениями, а что делать дальше я не знаю.
Это я вообще к тому, что по правилам хорошего тона, отправителя надо определять по адресу, НА который посылают деньги, а не наоборот :)

Понимаю что вопрос не в этом, но лучше предупредить.

Welcome to my bitcoin mining pool: https://deepbit.net - Both payment schemes (including PPS), instant payout, no invalid blocks !
ICBIT Trading platform : USD/BTC futures trading, Bitcoin difficulty futures (NEW!). Third year in bitcoin business.
celestia
Jr. Member
*
Offline Offline

Activity: 31
Merit: 1


View Profile
March 31, 2013, 06:47:35 PM
 #14

Есть аккаунт, нужно по нему получить список входящих транзакций с больше чем 5 подтверждениями с суммой и адресами отправителей каждой транзакции. Я смог получить список транзакций (listtransactions), откуда вытащил txid транзакций с больше чем 5 подтверждениями, а что делать дальше я не знаю.
Это я вообще к тому, что по правилам хорошего тона, отправителя надо определять по адресу, НА который посылают деньги, а не наоборот Smiley

Понимаю что вопрос не в этом, но лучше предупредить.
Как раз в этом вопрос же, это мне и нужно.
[Tycho]
Hero Member
*****
Offline Offline

Activity: 742
Merit: 500



View Profile WWW
April 04, 2013, 03:18:33 AM
 #15

Как раз в этом вопрос же, это мне и нужно.
Тогда достаточно просто смотреть баланс этого вашего адреса - и будет понятно, пришли деньги или нет.

Welcome to my bitcoin mining pool: https://deepbit.net - Both payment schemes (including PPS), instant payout, no invalid blocks !
ICBIT Trading platform : USD/BTC futures trading, Bitcoin difficulty futures (NEW!). Third year in bitcoin business.
celestia
Jr. Member
*
Offline Offline

Activity: 31
Merit: 1


View Profile
April 06, 2013, 11:28:58 AM
 #16

Как раз в этом вопрос же, это мне и нужно.
Тогда достаточно просто смотреть баланс этого вашего адреса - и будет понятно, пришли деньги или нет.
Нужно узнать от кого пришли еще. В принципе я уже разобрался.
btcxorg
Full Member
***
Offline Offline

Activity: 168
Merit: 100



View Profile
April 06, 2013, 04:22:23 PM
 #17

Как раз в этом вопрос же, это мне и нужно.
Тогда достаточно просто смотреть баланс этого вашего адреса - и будет понятно, пришли деньги или нет.
Нужно узнать от кого пришли еще. В принципе я уже разобрался.

на каждого получателя заводить в системе свой адрес

celestia
Jr. Member
*
Offline Offline

Activity: 31
Merit: 1


View Profile
April 07, 2013, 01:16:06 AM
 #18

на каждого получателя заводить в системе свой адрес
Это был бы возможный вариант, но аккаунтов нету и не думаю, что есть смысл их делать.
[Tycho]
Hero Member
*****
Offline Offline

Activity: 742
Merit: 500



View Profile WWW
April 07, 2013, 08:25:31 AM
 #19

на каждого получателя заводить в системе свой адрес
Это был бы возможный вариант, но аккаунтов нету и не думаю, что есть смысл их делать.
Это именно тот вариант, который ДОЛЖЕН быть. Прочие варианты ведут к потенциальным проблемам.

Аккаунт создавать не обязательно, достаточно адреса.

Welcome to my bitcoin mining pool: https://deepbit.net - Both payment schemes (including PPS), instant payout, no invalid blocks !
ICBIT Trading platform : USD/BTC futures trading, Bitcoin difficulty futures (NEW!). Third year in bitcoin business.
maxnazarov
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
May 27, 2013, 01:41:21 PM
 #20

После decoderawtransaction смотри на "vin". Там перечислены ИД исходящих транзакций, которые тоже на декодировать. "vout" во входящей транзакции указывает на номер выхода в исходящей. Выходы в исходящей лежат в секции "vout". Там же и объем перевода.
Начиная с версии 0.8 индекс кошелька по умолчанию не содержит чужих транзакций. Поэтому команда getrawtransaction не сработает. Для исправления этой ситуации необходимо запускать кошель с опцией txindex=1 и один раз -rescan.
Спасибо, кажется разобрался. Значит я делаю listtransaction(аккаунт), вытаскиваю оттуда amount и txid всех транзакций, у которых category == recieve и confirmations > 5. Потом делаю decoderawtransaction(getrawtransaction(txid)), оттуда беру vin['vout'] и vin['txid'], после чего делаю  decoderawtransaction(getrawtransaction(vin['txid'])) и беру отттуда details[vout]['address'].

celestia, тоже интересуюсь этой темой. Скажи пожалуста, этот вариант сработал для тебя?
и много заняло времени рескан кошелька?
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!