Investigación. Derivación de claves

Escalado de la clave principal BIP32 sin refuerzo

Una propiedad poco conocida del BIP32 implica que una xpub, junto con una única clave privada secundaria no reforzada, puede revelar la clave principal; esto supone un riesgo real y, para el propietario, una vía de recuperación.

Actualizado en julio de 2026 · KeychainX — Recuperación de carteras desde 2017

Las carteras determinísticas jerárquicas BIP32 derivan todo un árbol de claves a partir de una semilla. La mayoría de la gente sabe que el árbol fluye de abajo hacia arriba, de padre a hijo. Son menos los que saben que, en determinadas condiciones, se puede ascender por él. Esta página documenta la propiedad de escalada no reforzada: qué es, por qué es importante para la seguridad y cómo ayuda a recuperar una cartera.

Cómo funciona la derivación de HD

En un monedero BIP32, cada clave deriva claves secundarias mediante una función unidireccional que combina la clave principal con un código de cadena y un índice. Existen dos modalidades: la derivación reforzada (índices superiores a 2³¹), que requiere la clave privada principal, y la derivación no reforzada, que puede realizarse a partir de la clave pública principal. La derivación no reforzada es lo que hace que una xpub resulte útil: un servidor de solo lectura puede generar nuevas direcciones de recepción sin necesidad de poseer nunca una clave privada.

La propiedad de escalada

Aquí está el quid de la cuestión. En el caso de la derivación no reforzada, la relación entre una clave privada secundaria y su clave principal es invertible si también se conoce la clave pública de la clave principal (la xpub). En concreto: dada la xpub y cualquier clave privada secundaria no reforzada, se puede calcular la clave privada principal y, a partir de ahí, todo el subárbol. La filtración de una sola clave secundaria, junto con una xpub pública, supone el compromiso total de esa rama.

Por qué supone un riesgo para la seguridad

Esto convierte dos elementos aparentemente seguros en una combinación peligrosa. Compartir una xpub con fines contables o de solo visualización parece inofensivo, y revelar una única clave privada secundaria parece una pérdida aislada, limitada a una sola dirección. Sin embargo, juntas no lo son: un atacante que posea la xpub y obtenga tan solo una clave secundaria no reforzada puede ascender hasta la clave principal y vaciar todas las direcciones de esa cuenta. Se trata de un classic en el que dos exposiciones, por sí solas insignificantes, se combinan para provocar un compromiso total, y es por eso por lo que existe la derivación reforzada en los límites de las cuentas.

Cómo te ayuda a recuperar tus claves

Esa misma propiedad resulta una ventaja cuando eres el propietario que intenta recuperar sus propios fondos. Si conservas el xpub de la cuenta e incluso una sola clave privada secundaria no reforzada —quizá una única clave exportada, o la clave de una dirección que aún conservas—, se pueden reconstruir la clave principal y toda la rama. Un conjunto parcial y fragmentario de material de claves que parece inútil puede, mediante una escalada, reconstruir una cartera completa. Convierte la situación de «solo tengo una clave privada antigua y un xpub», que parecía un callejón sin salida, en una recuperación completa.

Cuándo se aplica

Las condiciones son específicas: la derivación debe ser no reforzada (las cuentas secundarias reforzadas no revelan nada sobre la cuenta principal), se necesita el xpub correcto de la cuenta principal y una clave privada auténtica de una cuenta secundaria que se encuentre directamente por debajo de ella. Muchas carteras utilizan la derivación reforzada a nivel de cuenta precisamente para impedir esto, por lo que no es aplicable en todos los casos; sin embargo, cuando una cartera utiliza una derivación no reforzada, se trata de una vía muy eficaz que a menudo se pasa por alto.

Evaluación de un caso

Para determinar si se aplica la escalación, hay que identificar el esquema de derivación del monedero —qué software lo creó y si la rama en cuestión se reforzó o no— y, a continuación, confirmar que el xpub se corresponde realmente con la clave madre de la clave hija que posees. Dado que las matemáticas son exactas, una vez que esos datos coinciden, la reconstrucción es determinista: o bien la clave madre se obtiene correctamente o bien las entradas no coinciden, sin lugar para conjeturas.

Cómo protegerse

La lección en materia de seguridad es sencilla: trata tu xpub como información confidencial, no pública, y nunca reveles una clave privada secundaria individual mientras la xpub correspondiente sea conocida por alguien. Si tienes que compartir una xpub con fines de solo visualización, ten en cuenta que la filtración de una sola clave secundaria no protegida que se encuentre por debajo de ella compromete la cuenta. Siempre que sea posible, utiliza carteras que apliquen medidas de seguridad en los límites de la cuenta, de modo que ni siquiera una xpub ni una clave secundaria filtradas puedan combinarse para provocar una escalada de privilegios.

Un ejemplo concreto

Imagina una cartera que proporcionó a un contable un xpub de solo lectura para realizar un seguimiento de los pagos entrantes y que, por separado, exportó hace años la clave privada de una dirección para retirar un pequeño saldo. Por separado, ninguna de estas acciones parecía tener importancia: un xpub no revela claves, y la clave de una dirección supone un riesgo solo para esa dirección. Pero si esa dirección fuera una subdirección no reforzada derivada del xpub compartido, ambas juntas permitirían reconstruir la clave principal y todas las direcciones subordinadas a ella. La misma lógica que permitiría a un atacante aprovechar ese emparejamiento es la que permite al legítimo propietario, que conserva ambas piezas tras perder la cartera principal, recuperarse y recuperar todo lo que hay en la rama. Es la demostración más clara de por qué esta propiedad es, al mismo tiempo, un peligro y un salvavidas.

Nuestra documentación

KeychainX ha utilizado la escalada de privilegios sin medidas de seguridad reforzadas para reconstruir carteras a partir de material de clave fragmentario en recuperaciones reales, y lo documentamos aquí porque se subestima tanto como herramienta de recuperación como en lo que respecta al riesgo que supone. Se enmarca dentro de nuestro trabajo más amplio sobre la derivación de claves, que incluye el análisis forense de la derivación de Trezor. Si tienes un xpub y una clave privada aislada, no des por hecho que sean inútiles.

Preguntas frecuentes

¿Qué material clave necesitas?

Lo ideal sería que la cuenta contuviera la xpub y, además, al menos una clave privada secundaria no reforzada subordinada a ella. A partir de esas dos, en las que la derivación no está reforzada, se pueden reconstruir la clave principal y toda la rama.

¿Qué es la escalada no reforzada de BIP32?

Una propiedad por la que, dada una clave pública ampliada principal (xpub) y cualquier clave privada secundaria no reforzada, se puede calcular la clave privada principal y, por lo tanto, toda la rama.

¿Es seguro compartir mi xpub?

No del todo. Por sí sola, una xpub solo permite ver información, pero si se combina con una única clave privada secundaria filtrada que no haya sido reforzada, deja al descubierto la clave principal y todas las direcciones de esa cuenta. Trata la xpub como información confidencial.

¿Cómo me ayuda esto a recuperar mi cartera?

Si posees la clave xpub y tan solo una clave privada secundaria no reforzada, es posible reconstruir la clave principal y toda la rama, lo que permite recuperar por completo el material de clave a partir de fragmentos.

¿Se aplica siempre?

No. Requiere una derivación no endurecida y el xpub correspondiente. Las carteras que se endurecen a nivel de cuenta lo bloquean, por lo que solo se aplica a configuraciones específicas.

¿Cuánto cuesta la recuperación?

Basado en los resultados: un porcentaje del valor recuperado solo si recuperamos el monedero, y nada por adelantado.

¿Tienes un xpub y una clave privada suelta?

Esos fragmentos podrían permitir reconstruir una cartera completa mediante un proceso de escalación. Indícanos qué material de clave tienes: te daremos una valoración honesta en un plazo de 24 horas.

Contactar con KeychainX →