Почему «bitcoin-cli getreceivedbyaddress…» всегда возвращает 0?

Я уже синхронизировал около 400 000 блоков, но каждый раз пытаюсь получить баланс для определенного адреса, например, для первого адреса coinbase - ссылка :

$ bitcoin-cli getreceivedbyaddress 12c6DSiU4Rq3P4ZxziKxzrL5LmMBrzjrJX
0.00000000

Оно всегда возвращается 0.00000000. Что я делаю не так?

PS Моя информация о биткойн-кли:

$ bitcoin-cli getinfo
{
  "version": 140200,
  "protocolversion": 70015,
  "walletversion": 130000,
  "balance": 0.00000000,
  "blocks": 396531,
  "timeoffset": -2,
  "connections": 8,
  "proxy": "",
  "difficulty": 120033340651.237,
  "testnet": false,
  "keypoololdest": 1500906189,
  "keypoolsize": 100,
  "paytxfee": 0.00000000,
  "relayfee": 0.00001000,
  "errors": ""
}

Ответы (1)

getreceivedbyaddressэто кошелек RPC. Он запрашивает ваш собственный кошелек, сколько денег он получил на этот адрес. Возможно, RPC должен возвращать ошибку, если адрес не считается кошельком своим.

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

Не существует эквивалентного RPC, который работает на всем узле, поскольку Bitcoin Core не поддерживает полный адресный индекс блокчейна.

Я подал заявку здесь: https://github.com/bitcoin/bitcoin/issues/10921