¿Qué es la Bitcoin Improvement Proposal BIP 0069?

Author logo
Patrick Dike-Ndulue
•
Post image

Un BIP, o Bitcoin Improvement Proposal, es una propuesta para mejorar el código de Bitcoin. Cualquier usuario puede presentar este tipo de propuestas y, tras ser debatidas y aprobadas por la comunidad, pueden adoptarse e implementarse. Los BIP suelen contener sugerencias para actualizaciones importantes (los errores y cambios menores no se someten a debates extensos).

Ahora veremos 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 analizarse?

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 en realidad no fluye nada a través de ellas. Básicamente, registran de dónde y hacia dónde se envían los bitcoins. Las entradas representan enlaces a las salidas de transacciones previas, llamadas salidas de transacción no gastadas (UXTOs). Puede parecer complejo, así que veamos un ejemplo.

Podemos comparar las transacciones en Bitcoin con pagos en efectivo. Supón que quieres comprar algo a un amigo por 15 BTC. Antes de esto, recibiste dos transacciones de 10 BTC cada una, es decir, tienes dos billetes de “10” en tu billetera. En cada “billete” está anotada la fuente de donde lo recibiste. Estas son las entradas para tu nueva transacción. Como hay dos billetes, también hay dos entradas.

Ahora puedes tomar esos billetes, escribir “para Pedro de parte de Carlos” 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, toma 5 BTC de su billetera, escribe “cambio para Pedro de parte de Carlos” —creando otra salida para el cambio— y te la entrega.

Hemos simplificado mucho el proceso y solo hay tres billetes involucrados en la transacción. También podrías recibir tus 20 BTC en “cambio pequeño”, lo que generaría muchas transacciones menores en vez 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, lo que permite a los observadores obtener información sobre los fondos de las billeteras del remitente y el destinatario. Otras ordenan las entradas según la fecha en que se agregaron a la billetera, y así sucesivamente. Esto significa que el análisis de datos puede identificar patrones específicos de una billetera o servicio en particular.

Existe otro posible problema en el desarrollo de billeteras cripto. Kristov Atlas, autor de BIP 0069, propuso un escenario hipotético en el que un atacante con acceso al código de una billetera (por ejemplo, un desarrollador) lo modifica para que las entradas y salidas se ordenen según los bits de la clave privada. Esta alteración permitiría al atacante descubrir la clave privada simplemente siguiendo 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 modo que no se puedan identificar patrones. BIP 0069 propone un método de ordenamiento no determinista, es decir, que no pueda deducirse a partir de la información de entrada. Además, no requiere algoritmos complejos; basta con organizar los datos de forma lexicográfica (orden alfabético ascendente).

Tangem Wallet ya utiliza este enfoque. Sí, está disponible tanto para iOS como para 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.