А разве у bitcoin-qt есть plugin API ?
Я имею в виду, каков процесс создания адресов, как адреса связаны с ключами кошелька.
Один возможный способ - это взять публичный ключ кошелька, что-нибудь к нему подмешать, а с того, что получится, взять хеш
Второй способ - сделать новый ключ, подписать его ключем кошелька, с того, что получится сделать fingerprint
ну и мало ли что еще можно придумать.
Где в исходниках все это происходит ?
Вот пишут,
https://bitcointalksearch.org/topic/original-bitcoin-client-wallet-format-6167
что биткоин-кошелек, это база данных (BDB является нереляционной базой данных — она хранит пары ключ/значение как массивы байтов).
structure of wallet.dat to a flat 'textual' file.
if so, you can just use db_dump: http://doc.gnu-darwin.org/dumpload/utility.html
https://github.com/gavinandresen/bitcointools/blob/master/wallet.py
Где-нибудь задокументированы (описано назначение и использование) ключи из пар ключ-значения этой БД?
добавление адреса происходит так, генерируется большое случайное число 256bit из него вычисляется открытый ключ 2x256bit, из открытого ключа путем хеширования и переводом хеша в base58 получаем адрес
т.е. адреса никак не связанны друг с другом независимы и спокойно могут мигрировать из кошелька в кошелек