-
Es una propuesta que se diferencia de CoinJoin porque no es detectable.
-
La herramienta estará disponible para implementar en monederos.
Este martes 26 de mayo, Chris Belcher difundió en la lista de correo de los desarrolladores de Bitcoin, un diseño de una implementación basada en una técnica antigua, llamada CoinSwap. La propuesta, presentada originalmente por Greg Maxwell en 2013 permite camuflar las transacciones sin custodia, con el objetivo de mejorar la privacidad, basándose en la idea de intercambios atómicos (un truco aún más antiguo).
Belcher, no solo presentó el primer diseño de implementación viable para CoinSwap, sino que además aseguró que continuará trabajando en el desarrollo del software independendiente que convertirá la herramienta en una aplicación para monederos bitcoin.
Pero, ¿acaso lo mencionado hasta ahora, no es algo que ya ofrece CoinJoin? El propio Belcher, en su publicación, describe las ventajas que ofrece CoinSwap señalando que debido a que las transacciones se combinan, una aplicación basada en CoinSwap proporcionaría mucha más privacidad que las aplicaciones CoinJoin, porque estas tienen salidas iguales, mientras que la primera es una solución más barata.
Lo señalado por el desarrollador quiere decir que, en lugar de crear y coordinar una transacción con salidas iguales de múltiples usuarios para lograr que nadie esté seguro de dónde salieron los fondos, CoinSwap crea una multifirma 2 de 2 o 2 de 3 para permitir un intercambio casi atómico en la cadena (puedes revisar el término atomic swap en el glosario de CriptoNoticias). En resumen, las dos partes involucradas en un CoinSwap enviarían monedas a una dirección controlada por la otra. De esta manera, se rompe la heurística del gráfico de transacciones que parte de la suposición de que, si se ve una transacción de A a B, entonces la propiedad de los fondos, en realidad pasó de A a B.
Así funciona
La idea original de CoinSwap usa direcciones multifirma 2 de 2. Sin embargo, Belcher plantea mayor anonimato introduciendo el uso de direcciones multifirma 2 de 3 con una tercera clave pública falsa. También, propone el uso de ECDSA (Algoritmo de firma digital de curva elíptica) de 2 partes para crear direcciones multifirmas 2 de 2 que son más parecidas a las direcciones regulares de firma única.
La propuesta de CoinSwap parte del hecho de que si Alice desea, y está en su derecho, enviar sus pagos bitcoin con máxima privacidad, de modo que sus transacciones no sean rastreables, entonces utiliza una transacción especial que, a la vista de todos aparecerá como una transacción normal, con monedas viajando desde la dirección de Alice, hasta la dirección de Bob. Pero, lo que nadie sabe, es que en realidad las monedas de Alice terminaron en la dirección Z, que nunca estuvo vinculada con A, ni con B.
La solución permite que Alice le pague a Bob, bajo un ambiente privado y de confianza, donde Alice usará su dirección 1 y en lugar de enviar el pago directamente a Bob, lo hará primero a una dirección CoinSwap y luego a la dirección 1 de Bob. En segundo lugar, Bob usará su dirección número 2 para enviar un pago a la dirección CoinSwap 2, de donde, a su vez, los fondos serán transferidos a la dirección 2 de Alice.
La privacidad se mejora porque un observador de la cadena de bloques no puede vincular la dirección 1 de Alice con su dirección 2 de Alice, ya que no hay transacción entre ellos. La dirección 2 de Alice podría ser una dirección en el monedero de Alice o la dirección de otra persona a la que desea transferir dinero.
¿Por qué CoinSwap?
CoinSwap es similar a CoinJoin, de hecho, ambas fueron propuestas planteadas inicialmente por Greg Maxwell en 2013, quien en ese momento consideraba que hay un lugar para ambos tipos de transacciones. “CoinJoin se puede usar de manera oportuna para lograr un anonimato más fuerte en grupos más pequeños, mientras que potencialmente CoinSwap podría lograr conjuntos de anonimato mucho más grandes a costa de tarifas de transacción adicionales”.
En su documento, Chris Belcher compara a CoinSwap con otros protocolos similares y termina coincidiendo con Maxwell cuando apunta que cada uno ofrece un modelo diferente que responde a diferentes tipos de amenazas. En ese sentido, señala que PayJoin funciona haciendo que el cliente y el comerciante cooperen juntos para aumentar su privacidad. Lo que quiere decir, que solo funciona si el adversario de ambos es un observador pasivo de la cadena de bloques.
“PayJoin no ayuda a un cliente en absoluto si el adversario del usuario es el comerciante. Esta situación ocurre todo el tiempo hoy, por ejemplo, intercambios que espían a sus clientes. CoinSwap puede ayudar en esta situación, ya que no asume ni requiere que la segunda parte sea tu amiga. El mismo argumento se aplica a PaySwap. Obviamente, PayJoin y PaySwap siguen siendo muy útiles, pero operan bajo diferentes modelos de amenazas”.
Correo de desarrolladores de Chris Belcher.
Belcher, además ve similitudes entre CoinSwap y Lightning Network (LN), pero destaca que hoy existen casas de cambio que bloquean transacciones de CoinJoin que logran detectar, lo cual demuestra que estas transacciones siguen siendo visibles y agrega que, de hecho, puede que estas bolsas de criptomonedas nunca adoptarán a LN, debido a sus características de privacidad. “Tal rechazo simplemente no sería posible con CoinSwap, porque es fundamentalmente una tecnología en cadena. Los usuarios de CoinSwap pagan a direcciones de bitcoin, no a las facturas Lightning. Cualquiera que acepte Bitcoin hoy aceptará CoinSwap”, agrega.
Para crear un sistema verdaderamente privado de transacciones para mejorar la fungibilidad de bitcoin, Belcher señala que CoinSwap debe combinarse con un par de otros bloques de construcción, entre los que menciona multi transacción CoinSwaps, bonos de fidelidad y PayJoin con CoinSwap.
Un artículo de CriptoNoticias publicado en enero pasado, informó que la comunidad de Bitcoin está explorando una propuesta similar con un nuevo nivel de anonimato entre el remitente y el receptor de un pago. El desarrollador y empresario, Max Hillebrand, propuso un nuevo método de CoinJoin que podría aumentar aún más la privacidad de las transacciones.