Las Transacciones Confidenciales o Confidentials Transactions (CT) es un protocolo criptográfico del tipo Protocolo de Conocimiento Cero (ZKP) diseñado para hacer que las transacciones de criptomonedas en una blockchain sean privadas y anónimas.
- Privacidad de montos: Es un protocolo criptográfico (basado en ZKP) que oculta las cantidades enviadas en una transacción blockchain, permitiendo que la red valide que la operación es legítima sin revelar las cifras al público.
- Anonimato de partes: Además de ocultar los montos, este sistema ayuda a cifrar las direcciones de emisores y receptores, dificultando el rastreo y la asociación de identidades en el libro mayor.
- Origen y propósito: Fue propuesto originalmente por Adam Back y Gregory Maxwell para Bitcoin con el fin de resolver problemas de «fungibilidad» (evitar que ciertas monedas sean marcadas o censuradas por su historial).
- Implementación real: Aunque nació para Bitcoin, donde su adopción es compleja, es una tecnología clave en criptomonedas centradas en la privacidad como Monero, donde garantiza que el historial de cada moneda permanezca oculto.
Uno de los protocolos criptográficos implementados para mejorar los niveles de privacidad en las redes de algunas criptomonedas es el Confidential Transactions (CT) o protocolo de transacciones confidenciales.
La aplicación de este protocolo de privacidad permite que las transacciones que ocurren dentro de una red puedan ser cifradas o codificadas. Con la finalidad de que, aunque puedan verificarse y validarse dentro de la red, no puedan verse los montos exactos de cada una de las transacciones realizadas. Al mismo tiempo que también se oculta a los emisores o destinatarios de dichas transacciones.
Origen de Confidential Transactions
En 2013, el CEO de Blockstream, Adam Back, propuso una idea que permitiría abordar los problemas de privacidad y fungibilidad que sufría la red Bitcoin. Puesto que, a pesar de que las cualidades de descentralización y transparencia son de sus mejores virtudes, en términos de privacidad pueden convertirse en un aspecto negativo para los usuarios. Ya que cualquier persona tiene la capacidad de revisar la blockchain de Bitcoin en totalidad, y por ende, realizar búsquedas y asociar transacciones y direcciones registradas con otras. Lo que puede generar un escenario en el que varias monedas puedan llegar a perder su fungibilidad, e inclusive su valor. Si son asociadas a una lista negra por estar involucradas en actividades ilícitas.
Así mismo, Gregory Maxwell, reforzando la idea de Back, sugirió una solución que permitiría abarcar los problemas de privacidad y fungibilidad de la red Bitcoin. Implementando un protocolo para cifrar y ocultar los detalles de las transacciones realizadas, donde solo las partes involucradas conocerían los detalles de dicha operación.
¿Cómo funcionan las Transacciones Confidenciales o Confidential Transactions?
En la blockchain de Bitcoin cuando se realiza una transacción, los nodos pueden verificar de forma clara que la transacción a realizar no sobrepase la cantidad de bitcoins recibidos en una dirección. Pero en el caso de las transacciones que ocurren dentro de la red Monero, que implementa el protocolo CT, este proceso es mucho más complejo.
Al realizar una transacción en Monero, los datos vinculados a dicha transacción son mezclados y ocultados junto a otros aplicando criptografía avanzada. Pero aun así, la red debe poder comprobar que dichos datos son correctos, sin revelar la información a otros usuarios. Para que esto sea posible, se implementa un esquema conocido como Pedersen Commitment, un tipo de cifrado homomórfico que en primer lugar, permite la realización de una transacción sin la necesidad de utilizar direcciones. Y además, permite también la verificación de una información a través de un resultado sin tener que revelarla hasta un tiempo futuro.
Los compromisos de Pedersen (PC) implementan las firmas ciegas en lugar de utilizar direcciones para las transferencias. Por lo que, los usuarios involucrados en una transferencia utilizarán multifirmas para aprobar una transacción determinada. Además, los PC permiten el cifrado de las entradas y las salidas de una transacción de forma tal que las firmas involucradas puedan ser compartidas de forma exclusiva solo entre el emisor y el receptor de una transacción. Así, ningún tercero podrá conocer la transacción producida ni los datos o la información vinculada a ella. Brindando un nivel de privacidad óptimo sin precedentes en las redes blockchains de las criptomonedas.
Ejemplo de una Transacción Confidencial (CT)
Si un usuario, llamémosle Juan, desea realizar una transacción a María en la red Monero, este debe gastar la totalidad de sus salidas no gastadas y enviarse el cambio a sí mismo. Si, por ejemplo, posee 5 monero y desea enviar 2 monero, entonces se creará una transacción que gaste los 5 monero: enviando 2 monero a María y 3 monero de vuelta a sí mismo (menos la tarifa de la comisión a los mineros, por supuesto).
Cuando se realiza este proceso en la red Monero, solo Juan y María, que son las partes involucradas en la transacción, pueden ver los montos de la operación. Por lo que la transferencia realizada no mostrará de forma pública ni la cantidad ni las direcciones involucradas.
Aun así, la red debe ser capaz de poder verificar que la transferencia realizada es válida y que cumple con las condiciones del sistema. Por lo que para realizar la verificación, la red utiliza suficiente información sobre la transacción para comprobar que la suma de entrada es igual a la suma de salida. Al mismo tiempo, además de implementar los compromisos de Pedersen, Monero también emplea las Pruebas de Rango. Las cuales le permiten comprobar criptográficamente que los usuarios no realicen transacciones con saldos negativos o que sean mayores a una cantidad arbitraria determinada.
Explorando a fondo las transacciones confidenciales
Las Transacciones Confidenciales (CT) se crearon con el fin de mejorar el sistema criptográfico de las blockchains. Para ello, las Transacciones Confidenciales permite que se pueda escribir una determinada información en la que las partes pueden leer sin mayores dificultades. Sin embargo, cualquier actor externo a los participantes del intercambio de datos, solo vería información codificada imposible de entender.
Lo único que puede hacer un actor externo es verificar, de forma lateral, que la información codificada es cierta. Y esto por medio de un mecanismo que no le permite extraer ninguna información útil de la transacción en sí.
Para lograr esto, la función criptográfica usa un hash para realizar un commit (envío de datos) que podrá revelar posteriormente. De esta manera, cualquier persona puede generar un hash cuya entrada no es identificable por ninguna persona, salvo quien haya originado el hash. En este punto se agrega un factor de cegamiento, que no es más que datos aleatorios que garantizan que el hash no sea fácilmente identificable.
Seguidamente, el hash generado puede ser firmado digitalmente para que quede una prueba irrefutable de que el secreto existe y es conocido por una persona en específico. De esta manera, no podrás cambiar nada de la información que has revelado por medio del hash. Así, cuando usamos la formulación de Pedersen commitment nos queda lo siguiente:
Formulación de las Transacciones Confidenciales
C(BF1 + D1) + C(BF2 + D2) = C(BF1 + BF2, D1 + D2)
Donde las parte de la ecuación son:
BF es data aleatoria o factor de cegamiento
D son los datos de la transacción
C(BF1 + D1) es la dirección de cambio
C(BF2 + D2) es la dirección de destino
C(BF1 + BF2, D1 + D2) es la dirección de origen de los fondos.
Es esta sencilla formulación la que garantiza la seguridad de los datos dentro de una transacción confidencial.
Transacciones confidenciales en Monero
Monero es una criptomoneda implementada en 2014 como un sistema de código abierto centrado en la privacidad y la descentralización. Su principal objetivo está basado en asegurar un nivel de privacidad óptimo a los usuarios dentro de la red y, en garantizar la fungibilidad de sus criptomonedas. Para que puedan ser utilizadas en cualquier caso. Sin el riesgo de que puedan clasificarse como indeseables, si, por ejemplo, se han visto envueltas en alguna actividad ilícita.
Para que estas cualidades puedan ser posibles dentro de la red, Monero implementa el protocolo Ring CT, que permite que los montos de las transacciones puedan ser ofuscados en lugar de ser divididos como ocurría anteriormente dentro de la red.
¿Qué es RingCT?
El protocolo conocido como Ring Confidential Transactions es el que le permite a la red Monero ocultar todos los datos relacionados a una transacción, como los montos enviados, el remitente y el destinatario de la transferencia. Para esto, RingCT combina los moneros (XMR) reales que el remitente desea enviar con muchos otros que son seleccionados de forma aleatoria dentro de la red. Creando así una mezcla o combinación desordenada que confunde a los demás usuarios (terceros) de la red, por lo que no pueden ver ni determinar los montos transferidos, ni de dónde provienen o a donde son enviadas dichas transferencias.
Ese protocolo fue implementado en 2017, y a partir de ese mismo año su uso en la red Monero se volvió de carácter obligatorio.
¿Cuánto sabes, criptonauta?
¿Las Transacciones Confidenciales son resistentes a la computación cuántica?¡FALSO!
Una preocupación de la comunidad con las transacciones confidenciales es hacerlas resistentes a la amenaza de la computación cuántica, y el trabajo de Greg Maxwell apunta a lograr esta capacidad, sin embargo, de momento las CT planteadas para Bitcoin no son resistentes a la computación cuántica, pero podrán serlo en un futuro.
Implementación de las transacciones confidenciales en la red Monero
Monero implementa varios elementos en su red que le permiten garantizar un alto nivel de seguridad a sus usuarios. En primer lugar, la red implementa las firmas de anillos, donde varios participantes o usuarios forman un grupo al momento de realizar una transacción. Aunque cada uno de los usuarios posee su propia clave pública y privada, que son conocidas como llaves, solamente uno de los usuarios firmará la transacción en el momento de realizar una transferencia. Pero sin revelar qué usuario de la red ha sido. Por lo que se crea una mezcla donde los demás usuarios no pueden ver quién ha realizado la operación.
Así mismo, la red Monero oculta la identidad del receptor o destinatario de la transferencia. Ya que no emplea direcciones para enviar los fondos, sino que las transferencias se realizan directamente en la blockchain. Para que el receptor de la transacción pueda reclamar sus fondos, debe poseer dos llaves: una de gasto y otra de visualización. Con estas dos claves o llaves, el usuario receptor, y sólo él, podrá escanear la red blockchain. Esto con el fin de buscar la transacción que le ha sido enviada y añadirla a su monedero posteriormente.
Por último, para maximizar los niveles de seguridad y privacidad dentro de la red, Monero implementa los protocolos Confidential Transactions (CT) para ocultar las cantidades transferidas en las operaciones. Este protocolo le permite a la red de mineros poder verificar que las monedas transferidas no se crearon de la nada. Además de verífica que tampoco han sido utilizadas en otra transacción anterior. Es decir, que no ocurra doble gasto. Aun así, tanto la red como los observadores pueden comprobar que las transacciones son válidas y se han realizado cumpliendo todas las normas de la red. Pero sin revelar datos importantes como el monto, el receptor o el destinatario de la transacción, haciendo casi imposible que se le pueda hacer un seguimiento a dichas transferencias.
Otras implementaciones en las redes blockchains
Además de Monero, existen otras redes que implementan los protocolos CT para garantizar una mayor privacidad en sus sistemas. Por ejemplo, MimbleWimble emplea los CT para comprobar a la red que los usuarios no están creando monedas de la nada. Y al mismo tiempo, garantizan un alto nivel de privacidad en las operaciones realizadas. Pues, los nodos no revelan información sobre los montos transferidos ni las partes involucradas; sino que de hecho utilizan las firmas ciegas para realizar el proceso de verificación de las transacciones manteniendo una completa privacidad en todo el proceso.
Así mismo, la sidechain Liquid Network utiliza los protocolos CT para maximizar la privacidad de la red. Al tiempo que garantiza transacciones muchos más rápidas y veloces en su blockchain, que opera de forma paralela con la red Bitcoin.
Por otra parte, no hay dudas de que la implementación del protocolo CT en la red Bitcoin traería grandes aportes y beneficios a ésta. Pues, en primer lugar, las transacciones confidenciales harían mucho más privada y segura a la blockchain de la criptomoneda más utilizada de todas. Así mismo, la aplicación de este protocolo permitiría el uso de las monedas de Bitcoin sin ningún tipo de restricción o clasificación; es decir, le aportaría un gran nivel de fungibilidad a todas las monedas bitcoins.
No obstante, aunque esto sería una gran ventaja para la red, también hay que tener en cuenta que añadir este protocolo al sistema incrementaría en gran medida el tamaño de las transacciones. Un lujo que, por los momentos, no se puede dar en Bitcoin debido al tamaño limitado de sus bloques. Además, que implementar este protocolo implica realizar un cambio en la red con un hard fork. Algo que requiere que muchos miembros de la comunidad estén de acuerdo a realizar.
El valor estratégico de la confidencialidad para las empresas
Aunque la transparencia de la blockchain es una de sus mayores virtudes para la auditoría pública, para el sector empresarial representa uno de los mayores obstáculos para su adopción masiva. En un entorno corporativo, la exposición total de los flujos financieros no es solo una cuestión de privacidad, sino de supervivencia competitiva. Es aquí donde las transacciones confidenciales transforman la blockchain de un libro abierto en una herramienta de grado institucional.
Protección de la estrategia comercial y logística
Para una empresa, operar en una red pública significa que cualquier competidor, mediante el análisis de la cadena de bloques (on-chain analytics), podría rastrear los pagos realizados a proveedores. Si un competidor conoce cuánto paga una empresa por su materia prima y con qué frecuencia, puede deducir sus márgenes de beneficio, su volumen de producción y su capacidad de inventario. En este caso, las transacciones confidenciales permiten que las compañías utilicen la infraestructura blockchain para liquidar pagos de forma inmutable, pero manteniendo ocultos los montos, protegiendo así sus secretos comerciales y su ventaja competitiva.
Gestión de nóminas y privacidad de los empleados
El pago de salarios mediante criptoactivos es una tendencia al alza, pero realizarlo en una red totalmente pública vulnera la privacidad de los trabajadores. Sin el uso de transacciones confidenciales, cualquier empleado podría ver el salario de sus compañeros o superiores simplemente rastreando la dirección de la billetera de la empresa. Al implementar protocolos que ocultan los montos de las transferencias, las organizaciones pueden garantizar el cumplimiento de las normativas de protección de datos y mantener la confidencialidad salarial, un pilar básico en la gestión de recursos humanos.
Cumplimiento y seguridad frente a actores maliciosos
Finalmente, el uso de montos visibles convierte a las empresas en objetivos de ataques dirigidos. Una billetera corporativa que muestra saldos multimillonarios y movimientos constantes es un imán para intentos de phishing e ingeniería social. La adopción de transacciones confidenciales permite que las empresas operen con un «perfil bajo», reduciendo su exposición ante actores maliciosos. Además, esta tecnología no impide la fiscalización; muchas implementaciones permiten el uso de «llaves de visualización» (view keys) que la empresa puede entregar a auditores o reguladores de forma voluntaria, logrando el equilibrio perfecto entre privacidad comercial y cumplimiento normativo.
Autor


