Gap Limit je hranice počtu po sobě jdoucích nepoužitých adres při prohledávání deterministické větve. Omezuje hledání historie, nikoli počet odvoditelných klíčů; překročení samo neznamená kryptografickou ztrátu prostředků.
Použitá adresa přeruší řadu nepoužitých a počítání mezery začne znovu. Příklad s limitem 20: index 0 má historii, indexy 1–20 ji nemají, takže sken skončí před indexem 21. Platbu na indexu 21 proto nemusí objevit. Nejde o maximum dvaceti adres v celé peněžence. [BIP 44 — Account discovery and address gap limit]
BIP 44 stanovuje Address gap limit 20 pro hledání na vnější přijímací větvi. Při vytvoření adresy přes tuto hranici má software varovat. Jde o konkrétní konvenci obnovy, nikoli pravidlo konsenzu nebo povinné nastavení každé peněženky; jiné systémy mohou používat jiné rozsahy. [BIP 44 — Account discovery and address gap limit]
BIP 44 hledá transakční historii, ne kladný zůstatek. Adresa, která přijala a později utratila vše, je stále použitá. Záměna prázdného zůstatku za nepoužitou adresu by mohla sken předčasně ukončit a vynechat další platby. [BIP 44 — Account discovery and address gap limit]
BIP 44 začíná účtem 0 a kontroluje jeho vnější větev; na dalším účtu pokračuje, pokud našel historii. Větev change=0 přijímá platby, change=1 vrací vlastní částku. První účet bez historie zastaví objevování účtů, proto standard omezuje vytváření přeskočených prázdných účtů. Limit jedné větve není společné počítadlo všech účtů. [BIP 44 — Account discovery and address gap limit]
Electrum FAQ výslovně upozorňuje, že adresy vygenerované za Gap Limit se při běžné obnově ze seedu nemusí automaticky najít. Dokumentovanou nápravou je větší limit nebo odvozování dalších adres až k použitému místu. Údaj o výchozích 20 je v FAQ vztažen k Electrum 2.0; není zde vydáván za nastavení všech dnešních peněženek. [Electrum FAQ — Gap limit and generated addresses]
RPC importdescriptors v Bitcoin Core 29.0 rozlišuje range, next_index a timestamp. Rozsah odvozovaných indexů není totéž co pravidlo zastavení po nepoužitých adresách; next_index určuje další generovaný index. timestamp určuje začátek skenu. Hodnota now nenahrazuje úplnou historickou obnovu; dokumentace zahrnuje také bloky až dvě hodiny před nejstarším timestamp a Mempool. Správný rozsah bez odpovídající historie skenu proto nestačí. [Bitcoin Core 29.0 — importdescriptors RPC]
BIP 32 odvozuje klíče deterministicky, ale hledání musí začít ve správné peněžence, účtu, derivační cestě a typu skriptu. Větší Gap Limit neopraví jiný seed ani odlišnou passphrase. Samotný xpub navíc neumožňuje odvozovat hardened potomky; rozšíření skenu chybějící odvozovací oprávnění nenahradí. [BIP 32 — Hierarchical Deterministic Wallets] [BIP 39 — From mnemonic to seed]
Širší hledání znamená více odvozených adres a dotazů; vzdálenému serveru může odhalit další souvislosti peněženky. Obnova se ověřuje proti známým adresám a transakcím, včetně již utracených příjmů. Rozšířený sken nemění blockchain ani nepřesouvá mince; jeho úspěch závisí i na správných vstupních údajích a dostupné historii. [BIP 44 — Account discovery and address gap limit] [Electrum FAQ — Gap limit and generated addresses] [BIP 32 — Hierarchical Deterministic Wallets]
Pro nejúplnější obraz čtěte toto heslo společně s HD Wallet, Derivation Path, Extended Public Key (xpub), Output Descriptor, Výstup na vrácení. Opačným směrem na něj odkazují také HD Wallet, Derivation Path.