LearnBitcoin

Glosario

Reserva de claves (keypool)

Un conjunto de claves (y direcciones) generadas de antemano en las billeteras de Bitcoin Core, para que siempre haya direcciones nuevas disponibles al instante y un respaldo siga valiendo para el siguiente lote de ellas.

Traducción hecha con ayuda de IA, pendiente de revisión humana. Lee el original (en inglés).

La reserva de claves (keypool) es un detalle de implementación de la billetera de Bitcoin Core: un conjunto de claves (y direcciones) generadas de antemano y guardadas en espera, para que haya direcciones nuevas disponibles al instante sin generar la clave en el momento, y para que los respaldos sigan siendo válidos durante cierta ventana de creación de direcciones.

En las billeteras legacy originales (las anteriores a HD), la reserva de claves era una pieza estructural. Cada clave generada era aleatoria e independiente de las demás; si el usuario pedía direcciones más rápido de lo que se respaldaba la billetera, el respaldo podía quedar desactualizado y las direcciones creadas después de él no se podían recuperar. La reserva (100 claves por defecto) era un colchón: mientras hicieras el respaldo después de generada la reserva, estabas cubierto para las siguientes 100 direcciones.

Cuando el soporte de billeteras HD llegó a Bitcoin Core 0.13.0 (2016), la reserva de claves dejó de cargar con tanto peso. La derivación HD le permite a la billetera regenerar cualquier clave futura a partir de la semilla, así que un respaldo hecho en cualquier momento cubre claves que todavía no existían. Pero la reserva se quedó, por dos razones. Las direcciones se siguen generando de antemano. Y la reserva funciona también como ventana de anticipación (lookahead): un respaldo restaurado solo detecta los pagos a las claves que ya derivó, así que Bitcoin Core subió el valor por defecto de 100 a 1,000 claves en la 0.15.0 (2017) para hacer más robusta la recuperación. Otras billeteras HD usan una ventana mucho más pequeña, el gap limit del BIP 44: una billetera en recuperación deja de escanear tras 20 direcciones sin usar seguidas.

Las billeteras de descriptores de Bitcoin Core, las únicas que existen desde que la 30.0 (2025) eliminó las billeteras legacy, conservan la misma idea con otra forma: cada descriptor de salida cubre un rango de claves, de 0 a 1,000 por defecto, y la billetera deriva por adelantado dentro de él. Para los usuarios es invisible. Las billeteras simplemente producen direcciones nuevas cuando se les piden, y el respaldo es una sola frase semilla. La plomería de la reserva de claves es una de esas cosas que hacen que "usa la billetera y ya" funcione.

Ideas clave

  • Garantiza direcciones únicas sin generarlas en el momento
  • Mantiene válido un respaldo para las direcciones entregadas después de hacerlo
  • Parte de la lógica interna o más antigua de las billeteras, hoy casi siempre oculta por los esquemas HD

Fuentes (6)

Términos relacionados (3)

Publicado el . No hay correcciones registradas para esta página.

Editar esta página en GitHub