Stonewall, protege tu privacidad al usar Bitcoin

José Maldonado
12 OCT 2021
Stonewall, protege tu privacidad al usar Bitcoin
1.

¿Qué es STONEWALL?

Hace poco hablamos de Samourai Wallet, un monedero centrado en Bitcoin que busca ofrecerte de forma integrada una serie de herramientas pensadas en proteger tu privacidad, siendo una de estas herramientas STONEWALL.

STONEWALL es una característica de Samourai Wallet que permite a este monedero construir transacciones de tal forma que el vínculo entre tu dirección y la dirección destino es negado convirtiendo se en un enlace probabilístico, en lugar de determinista.

Dicho de una manera más sencilla STONEWALL hace que sea extremadamente difícil establecer una relación entre tu dirección BTC y la dirección destino, añadiendo elementos señuelos que pueden engañar a las plataformas de análisis blockchain. De esta manera, STONEWALL protege tu privacidad y la de tus operaciones.

Esta es una característica integrada en Samourai Wallet y está disponible de forma gratuita, por lo que cualquier usuario de la misma puede hacer uso de la misma.

Relacionado con: Samourai Wallet: la administración de CoinJoin de Wasabi carece de privacidad

2.

¿Cómo funciona STONEWALL?

El funcionamiento de una STONEWALL es bastante sencillo. En primer lugar, estas operaciones están pensadas para simular una transacción CoinJoin entre 2 personas, a la vez que ofrecen una alta entropía en la operación logrando así una mejor privacidad.

Para lograr esto, STONEWALL agrupa los UTXOs de tu monedero dependiendo del tipo de direcciones (P2PKH, P2SH-P2WPKH o P2WPKH). Para que un grupo sea considerado, el valor total del grupo debe ser mayor o igual al doble del importe que se envía. Si existe un grupo con el mismo tipo de dirección que la que se está gastando, este grupo se selecciona. Si no se cumple la condición anterior, se selecciona un grupo con un tipo de dirección diferente. Finalmente, en caso de que un solo grupo no sea suficiente para cubrir la necesidad de valor total, se seleccionará un segundo grupo.

Composición de una STONEWALL

Lo anterior nos dice la condición génesis para la activación de STONEWALL. Su objetivo es bastante claro: crear una composición de transacciones para realizar la transacción. Dicha composición se realiza siguiendo estos pasos:

  1. Todas las UTXOs del monedero se procesan en orden aleatorio de acuerdo a su conjunto.
  2. La selección de UTXOs termina cuando se alcanza el importe total seleccionado sea mayor o igual que el importe del gasto.
  3. Para evitar enlaces que puedan ser analizados on-chain, el monedero se asegura de que los UTXOs resultantes de una misma transacción nunca se usen juntos en un mismo conjunto.
  4. Los UTXOs de mayor valor sustituyen a los UTXOs de menor valor pertenecientes a la misma transacción.
  5. Todos los UTXOs de una misma dirección (scriptpubkey) deben consumirse dentro de un mismo conjunto.
  6. Las direcciones de salida (scriptpubkeys) deben utilizarse exclusivamente como salidas y sólo una vez.
  7. El conjunto A contiene la salida de gastos reales y una salida de modificación. El conjunto B contiene una salida "mixta" en la misma cantidad y el mismo tipo de dirección que la salida de gastos y una salida de modificación.
  8. Finalmente, la dirección de cambio de cada conjunto debe ser del mismo tipo de dirección que las UTXOs de ese conjunto.

Al final de todos estos pasos, Samourai Wallet ya ha preparado tu nueva transacción y te permite enviarla para que puedas pagar con BTC y al mismo tiempo disfrutar de una privacidad mejorada, y todo ello sin tener que pagar de más por realizar esta operación. ¿Lo mejor de todo? Samourai Wallet realiza estas operaciones de forma completamente automatizada, en todas las transacciones en las que pueda activarse esta característica.

Relacionado con: El récord alcanzado en el mes por el mixer de monedas demuestra que los usuarios de Bitcoin quieren anonimato

3.

¿Cómo usar STONEWALL en Samourai Wallet?

Lo primero es abrir tu monedero Samourai Wallet y comenzar la operación. En nuestro caso, hemos preparado el monedero para realizar nuestras operaciones protegidas con STONEWALL, y en este punto solo seleccionamos la opción "Enviar" para empezar nuestra operación:

https://lh5.googleusercontent.com/RIk5HtVMJuhcZ1qUmte3DUhiD-hvYvVj3k1XlqOdLet3zkI1L4E6t7aCTsUb1ScM23DQPJ-Uwo6cX410YJjcX9AblWCK0lthOk51Y3gaDcvmebRba_NT_Fdam29skR4ittQzG_Y=s0

Hecho esto, tomamos la dirección BTC que vamos a usar para el destino, y preparamos la cantidad a enviar, en este caso, enviaremos 40 mil satoshis:

https://lh6.googleusercontent.com/93LolWPVQEpeJKvWjTxclaxFmUtcFKjgQkSzbtss644KtYdnYC3YgnWD_zWlc38HDIeQKbmTlDOn2tf4qJUGUMP9n5EcH38gE0wgjOAIPTBTrnDf5Ct_YnGsDniX4nQBhpyBDN4=s0

Ya elegido nuestro destino y la cantidad a enviar comenzamos a "Revisar la transacción" En este punto, elegimos la comisión de minería que usaremos para la transacción y adicional podemos ver la opción "STONEWALL Protection", la cual nos dice que efectivamente se está usando la protección, nos dice que tiene un buen grado de protección y que la transacción que haremos irá con esta opción activada.

https://lh3.googleusercontent.com/lAuE-s2ny8r0TdyNsqVsc_QQkQQgeVT5pBeUB-jSx6938-DksyWViqPGCKCd1Nc53Vac-TMPud-O_4Y1Fe66ZcnfSDnEGdWmnqTIY3R41tagUIoZBLLTur2et08KrS4skNQxFpI=s0

¿Cuál es el resultado de todo esto? Pues en Blockchair podemos revisar el nivel de privacidad de la transacción y obtenemos una puntuación de 96 de 100, lo que ya nos dice que la función ha hecho su trabajo.

https://lh6.googleusercontent.com/m4WiRbOgRx64Olg6zSBAHli2qZiglVh8qaszts9d1mbKoVA_Lea_wDd6J5g4Vt1d5pYQNOGODZCfXwmhGzrqPaaUG9UXFtVdiH0WBhf2xxbxjRi2sb0rjYG6ctyftzRZuMRhbT4=s0

Algo muy útil cuando la mayor parte de las operaciones en BTC están por debajo de los 70 puntos como el caso de esta otra transacción

https://lh3.googleusercontent.com/U6KFLEQt_Du-wAE8WZ16rSbJm2wWmEzc0b_LOULZpeWnOn5uvnv3lrGmDmiMPeUBrdo7sI42-fLec-rVpLgqFwXwEjY1NQVB1uqQ_4Lm6mZ4IhWzzDWXa32LNRKMUyYBmIqsZxw=s0

4.

STONEWALLx2, otra opción más poderosa

Sin embargo, STONEWALL tiene margen de mejora y eso lo vemos en STONEWALLx2. STONEWALLx2 tiene las mismas condiciones de activación de STONEWALL pero a diferencia de esta, STONEWALLx2 si realiza una CoinJoin conjunta real que puede coordinarse con otra persona en persona (usando escaneo QR) o por medio de PayNym (usando el medio online).

Las ventajas de STONEWALLx2 es que al ser una CoinJoin real, está a nivel de on-chain realmente mezcla UTXOs con quien has formado el conjunto, mejorando el nivel de entropía y fungibilidad. La desventaja es que el tamaño de la transacción es un poco mayor y por tanto las comisiones en la red son un poco más caras, pero dichas comisiones se pagan de forma conjunta (50/50).

Para usar STONEWALLx2 lo único que debes hacer es ir al monedero Samourai y seleccionar la opción "Cahoots".

https://lh3.googleusercontent.com/SuR_2pycX76sqJPWOAySnUMIv5YuoGpuLXCkosz9TnMBDh6UarVGX_AbHoU4-iaKTagLy2iXa1zwBqxeQQEYRSHQ5m4yoQTd8P8xhY5h1MVu8zsrIPo44_K54w1ywM05mEa40ls=s0

Allí debes seleccionar la opción STONEWALLx2:

https://lh3.googleusercontent.com/Nv6vNArDXZhd2YCj4BIXW8RA2JgFRFTTqoRJR7ik24kmXrR4fv7LKnJBk9GiwT_oXAlXD0gAXVS9stTKpq90MA3uJ6BjcjAiJvBFCMrQepItVSeBwCXJ-f_h7KwXu6JJgP69D9k=s0

Luego seleccionar la forma en como desees hacer la transacción (Personal u Online):

https://lh3.googleusercontent.com/G9ev5bVhV7IYNxnf-0pi11wDhKZZtu9Yt3CzxnSwQbET5jnL0OtNW2NPjuoFIgZdY4t_JQVl4LDTBLdFx_glVDzkvcuRlvhUSrAjGu9Jjy9bApgButxeu5JGry1MaPhJ895aafY=s0

Con eso ya podrás usar STONEWALLx2 para realizar tu próxima transacción usando Samourai Wallet.

https://lh6.googleusercontent.com/m0Wku7YNpowXOiNPCmmveWtnsUzVo9W5-sQ6gJbGPHwWYbXm3_49ZTqBXAbcqyW9tbSeMS_wwm7uiCgloPN64Ij9CqSnZZUCJn-lCXpRodF3HMOwRAi1ZqIKDm8VW342MgOEGec=s0