No se encontraron resultados
La página solicitada no pudo encontrarse. Trate de perfeccionar su búsqueda o utilice la navegación para localizar la entrada.
P_Hold (23 de mayo, 2022). Por qué Stowaway (Polizón)
¿Qué tiene que ver un polizón con Bitcoin?, bien, al ser un libro de contabilidad público y transparente una de las formas de lograr privacidad transaccional es utilizar tácticas de un polizón, por ejemplo, esconder el monto real que se envía, hacer creer que una transacción de pago con coinjoin (payjoin) es una transacción normal. Eso es lo que hace Stowaway, una transacción implementada por los desarrolladores de Samourai Wallet que también está disponible en Sparrow Wallet.
En este artículo te explicaré el problema que resuelve Stowaway y de que va esta transacción, luego compararé un envío de múltiples entradas normal con un envío de múltiples entradas usando Stowaway para observar qué asumirá el software de análisis de cadena en ambos casos, finalmente describiré las razones por las que todo bitcoiner debe usar esta herramienta de privacidad.
Cuando quieres realizar un pago en Bitcoin cualquier wallet genera la transacción siguiendo pautas de eficiencia, incluye solo la cantidad de entradas (pedacitos de bitcoin) necesarias para satisfacer el monto a pagar. Básicamente existen 2 escenarios:
1- Si una entrada es suficiente para satisfacer el monto a pagar, la wallet tomará esa única entrada para crear la transacción. Seguramente no tendrás una entrada con el monto idéntico al que debes pagar, por lo que terminarás obteniendo un cambio o vuleto. (envío sencillo).
2- Si una sola entrada no es suficiente para satisfacer el monto a pagar, la wallet tomará tantas como sean necesarias para crear la transacción. Igual que en el escenario 1, terminarás recibiendo un cambio o vuelto, porque es muy difícil que tengas en varias entradas el monto exacto para cubrir el pago (Pago con múltiples entradas).
En ambos escenarios un observador externo obtiene información importante para la privacidad, puede conocer el monto que pagaste y el monto que recibiste como cambio. Adicionalmente, en el escenario 2 el observador puede asumir con algún grado de certeza que todas las entradas te pertenecían, lo que puede llegar a ser un problema si una de las entradas está vinculada a tu identidad.
Estos dos escenarios se resuelven con una transacción que permite realizar pagos y a la vez poner en duda las suposiciones utilizadas para la vigilancia (propiedad de entradas multiples y detección del cambio), eso son los payjoins, que serían algo así como pagar haciendo un coinjoin. A dia de hoy existe solo una implementación funcional, conocida con el nombre de Stowaway o polizón.
Es una transacción payjoin (pago con unión de entradas) implementada por los desarrolladores de Samourai Wallet con el fin de confundir el análisis de cadena (creando falsos positivos), hacer invisible el monto que se envía y romper con la suposición que en una transacción de múltiples entradas todas las entradas pertenecen a un único propietario. Todo esto aparentando ser una transacción individual normal.
La imagen anterior muestra una Stowaway. A simple vista parece ser una transacción normal de dos entradas y dos salidas que realiza un único participante. En realidad, es una transacción colaborativa de dos participantes, en la que el pagador es dueño de una entrada y el receptor del pago el dueño de la otra, y cada uno recibe una salida.
Un observador externo asumiría incorrectamente que alguien ha pagado 0.00410248 BTC y ha recibido 0.0012508 BTC como cambio. Cuando el pago pudo ser 0.00015 BTC o 0.00260248 BTC, montos que permanecen completamente invisibles. Al tratar de detectar la huella de la TX el observador asumiría que se trata de una transacción con entradas innecesarias.
¿Cómo es posible que en una transacción de Bitcoin el monto enviado sea invisible?, la respuesta es que Stowaway se basa en la esteganografia, que es una técnica utilizada para ocultar un mensaje, en este caso el mensaje es monto enviado, dentro de un medio visible, que en este caso es la propia transacción.
La ventaja de la esteganografía (payjoin) por sobre el cifrado (coinjoin) es que no atrae la atención, el mensaje se esconde sin levantar sospecha de que existe tal mensaje, por lo que pasa completamente desapercibido.
La existencia de Stowaway siembra duda ante cualquier transacción de múltiples entradas y dos salidas. Bajo ciertos escenarios (no reutilización de direcciones) no se podría asumir con certeza si se trata de una transacción de pago normal (individual) o de un payjoin, al tiempo que invalida las heurísticas utilizadas para detectar la salida de cambio. Por supuesto, el análisis se complica mucho más cuanto mayor sea el número de entradas que conforman la transacción.
Es interesante observar cómo un software de análisis de la cadena tipifica una transacción de múltiples entradas normal versus una transacción Stowaway, y además de cuál información puede extraer de cada una. Para este ejercicio usé el explorador de bloque OXT.me.
Transacción de múltiples entradas, pago normal
En esta transacción el software de análisis de OXT atribuye la propiedad de todas las entradas a un único dueño y le asigna un número Anon, en este caso el ANON-3909230791, además, por la heurística de entradas innecesarias se puede establecer que el monto pagado es 0.00165590 BTC y que el cambio es la salida ubicada en la posición #1 con un monto de 0.00021402 BTC
Análisis de Boltzmann
El análisis de Boltzmann encontró:
Transacción de múltiples entradas pago con Stowaway.
El software de análisis OXT al igual que en la transacción anterior atribuye la propiedad de todas las entradas a un único propietario y le asigna un número Anon, en este caso ANON-3300386717, cuando la realidad es que pertenecen a dos propietarios distintos: Al pagador y al receptor del pago. además, fija que el monto pagado es 0.03144414 BTC cuando en realidad es 0.015 BTC y por ultimo marca la salida ubicada en la posición #0 como el cambio con un monto de 0.00484087 BTC.
Análisis de Boltzmann
El análisis de Boltzmann encontró:
Como podemos observar no existe diferencia entre el análisis de Boltzmann de la transacción de pago normal y la Stowaway. Si bien es cierto que la entropía es 0, esto no quiere decir que Stowaway no tenga ambigüedad (privacidad), lo que quiere decir es que engaña a la herramienta de análisis. En palabras del creador de la herramienta de análisis:
Limitaciones — Esta métrica es susceptible de ser engañada por patrones específicos de transacciones como transacciones esteganográficas. Una transacción esteganográfica tiene como objetivo ocultar el pago real dentro de un pago “falso”. Su huella es similar a un pago clásico pero se diferencia de un pago clásico al involucrar al beneficiario en el proceso de pago. -LaurenMT-
La privacidad transaccional en Bitcoin se consigue por medio del engaño y aumentando los costos del análisis. El que no se pueda diferenciar Stowaway de una transacción normal incrementa la cantidad de interpretaciones posibles que debe hacer el software de análisis de cadena y aumenta la cantidad de cálculos que se necesitan hacer para saber que monto fue el enviado.
Como hemos visto las transacciones Stowaway son un reto para el análisis de cadena y la vigilancia porque inunda de falso positivos los clusters de las empresas de vigilancia de la cadena, además, resuelven dos de los problemas centrales en la privacidad transaccional en Bitcoin: La detección de la salida de cambio y la asignación de un único responsable para todas las entradas de una transacción.
Como curiosidad, decir que Stowaway te permite enviar/recibir desde 1 sat (0.00000001 BTC) en onchain, la fee de minería es la misma de una transacción normal de Bitcoin.
Stowaway está disponible solo para hotwallet, no puedes usarla desde una hardware wallet.
En este 2022 empezamos a dictar talleres de privacidad en Bitcoin junto a Arkad. Dentro del temario dedicamos una parte a explicar todo lo referente a transacciones colaborativas como Stowaway que forman parte de un arsenal de herramientas orientadas a dificultar la vigilancia y confundir a los espías de la cadena. Los participantes reciben diferentes estrategias de cómo y cuándo usar cada una. Además, realizamos ejercicios prácticos para adoptar estas herramientas de privacidad. El temario completo del Módulo 1:
bit.ly
Si estas interesado en participar contactanos por telegram en : P_Hold o Arkad
Recientemente abrimos un canal de Telegram para los participantes de nuestros talleres teórico-prácticos sobre herramientas de privacidad en Bitcoin, allí los interesados podrán coordinar y generar transacciones colaborativas sin custodia para mejorar privacidad en sus transacciones.
Si este artículo/tutorial te ayudó, sientes que has aprendido algo nuevo y quieres apoyar mi trabajo en temas de “Seguridad y Privacidad en el uso de Bitcoin” puedes hacer una libre aportación en cualquiera de los siguientes enlaces: