Как клиент узнает количество ключей и монет при восстановлении из сида?

Когда у меня есть начальное число и я использую его для восстановления своих ключей, как клиент узнает, какие у меня были ключи и их количество?

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

Ответы (1)

Существует так называемый лимит разрыва . В Electrum по умолчанию 20, но его можно изменить. Но если вы изменили его, помните об этом! Желательно написать его рядом с seed вашего кошелька.

Это означает, что HD-кошелек определяет первые 20 адресов и проверяет на сервере, участвовал ли какой-либо из них в транзакции. Допустим, эти адреса пронумерованы. Номер 7 — это номер с наибольшим числом, когда-либо участвовавшим в транзакции. Затем вычисляется 7+20 = 27 и проверяются все адреса до 27 включительно. Выяснилось, что 21, 23 и 25 участвовали в транзакциях. Затем вычисляется 25+20 = 45 и проверяются все адреса до 45 включительно. Выяснилось, что ни на одном из адресов с 28 по 45 никогда не было активности. Поэтому поиск останавливается, потому что есть ограничение не менее 20 адресов. Если бы по адресу 46 была транзакция, это

Поскольку спрашивающий пометил свой вопрос «multibit-hd», возможно, стоит отметить, что Multibit также следует BIP44 и использует тот же предел пробелов, равный 20.
@Murch Мне показалось, что OP хотел знать, как это работает в целом, и просто привел пример HD-кошелька. В любом случае, что касается Multibit HD: в своем объяснении ограничения пропусков они ссылаются на BIP 44, а затем ссылаются на этот абзац , в котором говорится: «Ограничение пропусков адресов в настоящее время установлено на 20. Если программное обеспечение достигает 20 неиспользуемых адресов подряд, оно ожидает там нет используемых адресов после этой точки и останавливает поиск в цепочке адресов. [...]"
Да, это та же страница, на которую я дал ссылку. Однако информацию следует добавить к ответу, потому что, вероятно, спрашивающий был заинтересован в Multibit, иначе они не добавили бы тег после добавления более общего [детерминированного] и [hd-wallet]. ;)