Hoy nos complace anunciar que el conjunto de aplicaciones del servidor BTCPay implementó la compatibilidad con Pay to Endpoint (P2EP), por lo que brinda a miles de comerciantes de todo el mundo una mayor privacidad para las transacciones de Bitcoin. El servidor BTCPay es un procesador de pagos con Bitcoin autohospedado, de código abierto, privado, resistente a la censura y gratuito.
Magos unidos
P2EP es el resultado de un taller organizado por Blockstream en 2018, en el que desarrolladores e investigadores de Bitcoin de todo el mundo hicieron una lluvia de ideas sobre formas de mejorar la privacidad y la fungibilidad de Bitcoin. Entre los asistentes se encontraban los miembros de Blockstream Matthew Haywood, el Dr. Adam Back, Tim Ruffing, y los investigadores independientes Adam Gibson, Adam Fiscor y Danger Shony, entre otros que desean permanecer en anonimato.
A lo largo de una semana, los asistentes evaluaron las tecnologías de privacidad actuales de Bitcoin y formularon nuevas posibilidades. Finalmente, al grupo se le ocurrió el nuevo P2EP, también conocido como “PayJoin”.
Recuperando la privacidad de los Bitcoiners
A causa de la naturaleza pública de la blockchain de Bitcoin, un tercero puede analizar el historial de transacciones de Bitcoin para determinar los posibles vínculos entre transacciones. Esto daña la fungibilidad, una propiedad esencial del dinero, y erosiona la privacidad de los usuarios.
Por ejemplo, como el historial de un bitcoin puede rastrearse hacia atrás un número arbitrario de transacciones, dicho bitcoin puede recibir la clasificación de “sospechoso” por parte de una empresa de análisis de blockchain. Llevado esto al extremo, el bitcoin puede incluso quedar etiquetado como “inaceptable” para comerciantes e intercambios, lo que lo haría más difícil de gastar para el propietario.
Aspectos generales de P2EP
Las transacciones P2EP son una forma especial de CoinJoin. El método Coinjoin, que fuera descrito por primera vez por Greg Maxwell, utiliza las funcionalidades existentes de Bitcoin para implementar transacciones de una mayor privacidad sin cambios en el protocolo. CoinJoin combina los pagos de varios usuarios que efectuaron gastos en una única transacción Bitcoin más grande, lo cual hace que a los analistas de blockchain les resulte más difícil determinar quién está enviando una transacción a quién.
Las transacciones P2EP son especiales dado que tanto el emisor como el receptor del pago se ponen de acuerdo para crear la transacción de Bitcoin (similar al método usado originalmente por Satoshi Nakamoto para los pagos con Bitcoin). A diferencia de las transacciones con Bitcoin normales, en las cuales solo el emisor hace el pago con su cartera, la transacción P2EP combina las entradas del emisor y el receptor, y el receptor se envía bitcoins extra a sí mismo.
Comparación entre una transacción P2EP y una transacción Bitcoin normal
Con carteras habilitadas para P2EP, los usuarios podrán iniciar transacciones P2EP de manera similar a las transacciones de Bitcoin normales. Como de costumbre, el emisor escanea un código QR provisto por el receptor para iniciar el proceso de pago. La magia sucede cuando la cartera habilitada para P2EP del emisor detecta el parámetro del extremo P2EP del código QR; en ese momento, establece una conexión con la cartera del receptor para coordinar automáticamente el pago P2EP. Una vez que la cartera del receptor añade una entrada a la transacción (casi instantánea), el remitente debe firmar la transacción una segunda vez antes de transmitirla a la red de Bitcoin.
Las siguientes son algunas de las ventajas de P2EP:
- **Privacidad bidireccional: **Tanto el emisor como el receptor tienen más privacidad.
- **Sin huella: **A diferencia de las transacciones tradicionales CoinJoin de denominación fija, no hay “huella” obvia para las transacciones P2EP. Las transacciones comunes y P2EP son idénticas en apariencia en la blockchain, lo que significa que incluso la adopción mínima de P2EP brinda una mayor privacidad a las transacciones normales que no son P2EP.
- **Desmantelamiento de la heurística de análisis de blockchain: **P2EP rompe con el supuesto de “propiedad de cartera común’” y con el análisis por suma de subconjuntos.
- **Reducción de la hinchazón de blockchain: **El receptor puede usar P2EP para consolidar su conjunto UTXO, lo que ayuda a reducir la “hinchazón” en el conjunto UTXO de la blockchain de Bitcoin.
- **Ligeras y versátiles: **Las carteras que hacen el envío pueden ser carteras ligeras, como Blockstream Green.
Sin embargo, hay que tener en cuenta algunos puntos importantes al usar transacciones P2EP:
- **Requieren conexión a internet: **Tanto la cartera del emisor como la del receptor deben estar en línea para que se pueda coordinar la transacción P2EP. Si no se puede establecer la conexión, se hará un pago Bitcoin sin P2EP.
- **El receptor debe tener una “cartera caliente” (o en línea): **Para asegurarse de que la transacción P2EP del emisor se complete sin problema, la cartera del receptor debe firmar automáticamente las transacciones una vez que se haya establecido una conexión.
BTCPay: un punto de partida clave para P2EP
Para asegurarse de que se implementen las transacciones P2EP lo antes posible, Blockstream financió el desarrollo de la característica P2EP de BTCPay y trabajó con el desarrollador y colaborador experimentado de BTCPay, el venerable “Sr. Kukks”.
Ahora, miles y miles de comerciantes que usan el servidor BTCPay tienen la posibilidad de recibir transacciones P2EP. Permitir que el lado del comerciante del pago acepte bitcoins fácilmente a través de transacciones P2EP es un gran paso en el armado del rompecabezas de la privacidad y la fungibilidad de Bitcoin.
La implementación P2EP en los servidores BTCPay se basa en una versión con muchas modificaciones de bustapay, creada originalmente por el desarrollador independiente de Bitcoin Ryan Havar. La versión de BTCPay se describe aquí.
Los comerciantes también necesitan privacidad
La privacidad de las transacciones es de especial importancia para los comerciantes, porque ellos están en contacto con muchas transacciones de distintos clientes. Después de identificar una única dirección de Bitcoin perteneciente a un comerciante, cualquier cliente puede utilizar el análisis de blockchain para determinar cuánto dinero está ganando y cuántos clientes podría tener un negocio, información que podría resultar muy valiosa para competidores o ladrones.
Además, los comerciantes tienen un incentivo adicional para adoptar transacciones P2EP ya que proporcionan una solución de bajo costo para consolidar la “hinchazón” en el conjunto UTXO habitual, un efecto secundario de aceptar pequeñas transacciones de muchos clientes individuales.
Próximas novedades de P2EP
Los usuarios que estén interesados en probar P2EP pueden hacer transacciones con las tiendas que lo tienen disponible usando la cartera Bitcoin incorporada de BTCPay.
En Blockstream estamos trabajando para que P2EP sea compatible con Blockstream Green, lo que debería estar disponible en los próximos meses. También sabemos que hay proyectos como la cartera Wasabi y BlueWallet que buscan ser compatibles con P2EP. La adopción de P2EP como estándar común está creciendo y esperamos que la implementación de P2EP en el servidor BTCPay ayude a acelerar ese crecimiento.
Esperamos ver que las tecnologías de privacidad como P2EP inclinen la balanza hacia el individuo en términos de autonomía y soberanía y que, algún día, tal vez incluso logren que la vigilancia de blockchain sea completamente imposible.