¿Qué es la Propuesta de Mejora de Bitcoin BIP 0069?

Este artículo está disponible en los siguientes idiomas:

Author logo
Patrick Dike-Ndulue
Post image

Un BIP, o Propuesta de Mejora de Bitcoin, es una sugerencia para modificar y mejorar el código de Bitcoin. Cualquier usuario puede presentar propuestas de este tipo y, tras ser discutidas y aprobadas por la comunidad, pueden ser adoptadas e implementadas. Los BIP suelen abordar actualizaciones importantes (los errores y cambios menores no se someten a debates amplios).

En este caso, analizaremos un BIP específico, el número 0069, y por qué es relevante. Esta actualización busca mejorar la seguridad de las transacciones de Bitcoin haciéndolas más resistentes al análisis.

¿Qué datos pueden ser analizados?

Para entender exactamente qué propone BIP 0069, primero hay que comprender cómo se transfieren los activos en la red de Bitcoin. Cada transacción tiene entradas y salidas, aunque es importante aclarar que no hay un flujo físico de fondos. Básicamente, estas entradas y salidas registran a dónde se envían y de dónde provienen los bitcoins. Las entradas representan enlaces a las salidas de transacciones previas, conocidas como salidas de transacciones no gastadas (UXTOs). Puede sonar algo complejo, así que veamos un ejemplo.

Podemos comparar las transacciones en Bitcoin con pagos en efectivo. Por ejemplo, quieres comprar algo a tu amigo por 15 BTC. Antes de esto, recibiste dos transacciones de 10 BTC cada una, así que tienes dos billetes con valor de "10" en tu billetera. La fuente de donde los recibiste está anotada a lápiz en cada "billete". Estas son las entradas para tu nueva transacción. Como tienes dos billetes, hay dos entradas.

Ahora puedes tomar esos billetes, escribir "para Pedro de parte de Charlie" en ellos y dárselos a tu amigo. Este mensaje se convierte en la primera salida de la transacción. Como tu amigo debe devolverte el cambio, él toma 5 BTC de su billetera, escribe "cambio para Pedro de parte de Charlie" (creando otra salida para el cambio) y te lo entrega.

Hemos simplificado mucho el proceso, y solo hay tres billetes involucrados en la transacción. Podrías recibir tus 20 BTC en "cambio pequeño", lo que generaría muchas transacciones menores en lugar de dos grandes. Esto crearía muchas más entradas y salidas.

El problema de seguridad

El problema está en la forma en que se ordenan las entradas y salidas. No existe un estándar para registrar estos datos; cada billetera puede usar su propio método de ordenamiento. Algunas listan primero las entradas de gasto y luego las salidas de cambio, permitiendo que observadores obtengan información sobre los fondos en las billeteras del remitente y destinatario. Otras ordenan las entradas según la fecha en que fueron añadidas a la billetera, y así sucesivamente. Esto significa que el análisis de datos puede identificar patrones específicos de una billetera o servicio.

Existe otro posible problema en el desarrollo de billeteras de criptomonedas. Kristov Atlas, autor de BIP 0069, propuso un escenario hipotético donde un atacante con acceso al código de la billetera (por ejemplo, un desarrollador) lo modifica para que las entradas y salidas se ordenen según los bits de la clave privada. Esta modificación permitiría al atacante descubrir la clave privada solo con rastrear las transacciones, y este "implante" sería muy difícil de detectar.

¿Cómo se puede resolver el problema?

La vulnerabilidad puede evitarse si las entradas y salidas de las transacciones se ordenan de manera que no sea posible encontrar patrones. BIP 0069 propone un método no determinista de ordenamiento, es decir, uno que no pueda deducirse a partir de los datos de entrada. Además, esto no requiere algoritmos complejos; basta con organizar los datos de forma lexicográfica (en orden alfabético ascendente).

Tangem Wallet ya utiliza este enfoque. Sí, está disponible para dispositivos iOS y Android.
 

Author logo
Autor Patrick Dike-Ndulue

Senior editor covering crypto, onchain equities, and technology.

Author logo
Revisado por Rukkayah Jigam

Writer & editor covering digital assets and product updates.