Por qué estamos construyendo Cardano. Traducción al español 🇪🇸 (Parte 2 de 5)

Ver Documento Original aquí

Ver Parte 1 de 5.

Activos de emisión del usuario (UIAs)

Al principio de la historia de Bitcoin, los protocolos se desarrollaron rápidamente para permitir a los usuarios emitir activos que se incorporaban al sistema contable de Bitcoin con el fin de realizar un seguimiento simultáneo de varias divisas. Estos protocolos no estaban soportados de forma nativa por el protocolo Bitcoin, sino que se implementaban a través de hacks inteligentes.

En el caso de las superposiciones de Bitcoin como Colored Coins y Mastercoin (ahora llamadas Omni), los clientes livianos (light clients) se ven obligados a depender en servidores de confianza. También hay que pagar las comisiones de transacción en bitcoins. Estas propiedades, combinadas con el único canal de aprobación de transacciones, hacen que Bitcoin sea menos óptimo para la contabilidad multiactivos.

En el caso de Ethereum que utiliza el estándar ERC20, hay más riqueza de características. Sin embargo, las tarifas de transacción siguen requiriendo éter. Además, la red Ethereum tiene dificultades para adaptarse a las necesidades de todos los tokens ERC20 emitidos.

El problema fundamental puede dividirse en tres partes: recursos, incentivos y preocupación. Con respecto a los recursos, añadir una moneda completamente nueva al mismo libro mayor significa que uno tiene dos conjuntos de UTXO independientes (entradas de transacción no utilizadas) que comparten el ancho de banda, la mempool y el espacio de bloque. Los nodos de consenso responsables de integrar las transacciones de estas monedas necesitan un incentivo para hacerlo. Y no todos los usuarios de una criptomoneda se preocupan o deben preocuparse por la moneda de una entidad en particular.

Dados estos problemas, los beneficios son tremendos, ya que el símbolo (token) principal de un libro mayor de activos múltiples puede servir efectivamente como moneda puente que permite la creación de mercados descentralizados. Los activos para fines especiales pueden ser emitidos para proporcionar una utilidad adicional, tales como activos de valor estable como Tether o MakerDAO, que son útiles para aplicaciones de préstamos y remesas.

Dados los desafíos, Cardano ha adoptado un enfoque pragmático para la contabilidad de activos múltiples. El primer desafío es diseñar la infraestructura necesaria para satisfacer las demandas de miles de UIAs. Es decir, son necesarios los siguientes avances:

1- Estructuras de datos autenticadas con fines especiales para permitir el seguimiento de un estado UTXO muy grande.

2- La capacidad de tener una mempool distribuida para mantener un enorme conjunto de transacciones pendientes.

3- Partición de la cadena de bloques y puntos de control para permitir una enorme cadena de bloques global.

4- Un esquema de incentivos que premia a los nodos de consenso por incluir diferentes conjuntos de transacciones.

5- Un mecanismo de suscripción que permite a los usuarios decidir qué monedas desean rastrear.

6- Una sólida seguridad garantiza que los UIA disfruten de una seguridad similar a la del activo nativo.

7- Apoyo a la creación de mercados descentralizados para mejorar la liquidez entre el UIA y el símbolo (token) principal.

Nuestros esfuerzos preliminares para encontrar la estructura de datos autenticada correcta han dado como resultado un nuevo tipo de AVL+ Tree desarrollado conjuntamente por Leo Reyzin, IOHK y Waves. Se requiere más investigación, pero es un avance fundamental que se incluirá en una versión posterior de Cardano.

Se podría implementar una mempool distribuida utilizando el protocolo RAMCloud de la Universidad de Stanford. Los experimentos comenzarán en el tercer trimestre de 2017 para estudiar su integración en la capa de consenso de Cardano.

Los temas restantes están interconectados y cubiertos por la investigación en curso. Esperamos - sujeto a los resultados de la investigación - incluir un protocolo en Cardano para los UIAs durante la publicación de Basho of CSL en 2018.

Escalabilidad

Los sistemas distribuidos se componen de un conjunto de computadoras (nodos) que acuerdan ejecutar un protocolo o conjunto de protocolos para lograr un objetivo común. Este objetivo podría ser compartir un archivo tal y como se define en el protocolo BitTorrent o plegar una proteína utilizando Folding@Home.

Los protocolos más efectivos ganan recursos a medida que los nodos se unen a la red. Un archivo hospedado por BitTorrent, por ejemplo, puede descargarse mucho más rápido en promedio si muchos compañeros lo están descargando simultáneamente. La velocidad aumenta porque los compañeros proporcionan recursos a la vez que los consumen. Esta característica es lo que normalmente se entiende cuando se habla de un sistema distribuido que escala.

El reto con el diseño de todas las criptomonedas actuales es que en realidad no están diseñadas para ser escalables. Las cadenas de bloques, por ejemplo, suelen ser una lista de bloques enlazados sólo para aplicaciones. La seguridad y disponibilidad de un protocolo de cadena de bloques depende de que muchos nodos posean una copia completa de los datos de la cadena de bloques. Por lo tanto, un solo byte de datos debe ser replicado entre los nodos. Los nodos adicionales no proporcionan recursos adicionales.

Este resultado es el mismo para el procesamiento de transacciones y el chismorreo (gossiping) de mensajes en todo el sistema. La adición de más nodos al sistema de consenso no proporciona un poder adicional de procesamiento de transacciones. Sólo significa que hay que gastar más recursos para hacer el mismo trabajo. Más retransmisión de la red, lo que significa que más nodos tienen que pasar los mismos mensajes para mantener toda la red sincronizada con el bloque más actual.

Dada esta topología, las criptomonedas no pueden escalar a una red global a la par de los sistemas financieros tradicionales. Por el contrario, la infraestructura heredada es escalable y tiene órdenes de magnitud para un mayor poder de procesamiento y almacenamiento. Añadiendo un punto específico, Bitcoin es una red muy pequeña en relación con sus pares de pago, pero tiene dificultades para gestionar su carga actual.

Nuestros objetivos de escalabilidad para Cardano se ven muy favorecidos por nuestro algoritmo de consenso. Ouroboros permite una forma descentralizada de elegir un quórum de nodos de consenso, que a su vez puede ejecutar protocolos más tradicionales desarrollados en los últimos 20 años para acomodar las necesidades de grandes proveedores de infraestructura como Google y Facebook (10).

Por ejemplo, la elección de un quórum para una época significa que tenemos un conjunto de nodos de confianza para mantener el libro mayor durante un período de tiempo específico. Es trivial elegir varios quórum simultáneamente y dividir las transacciones entre diferentes quórum.

Se podrían aplicar técnicas similares para la propagación de la red y también para fragmentar la propia cadena de bloques en particiones únicas. En nuestra hoja de ruta actual, los métodos de escalado se aplicarán a Ouroboros a partir de 2018 y continuarán siendo un foco de atención en 2019 y 2020.

Capa de Computación (Computation Layer) Cardano

Como se mencionó anteriormente, hay dos componentes de una transacción: el mecanismo para enviar y registrar el flujo de activos (tokens) y las razones y condiciones detrás de mover activos. Estas últimas pueden ser arbitrariamente complejas e implicar terabytes de datos, múltiples firmas y eventos especiales. Este último también puede ser notablemente simple con una sola firma empujando un valor a otra dirección.

El desafío de modelar las razones y condiciones del flujo de valores es que son inmensamente personales para las entidades involucradas de la manera más impredecible. Las lecciones del derecho contractual presentan un panorama aún más problemático, en el que los propios actores podrían ni siquiera ser conscientes de que la transacción no se ajusta a la realidad comercial. Generalmente llamamos a este fenómeno "la brecha semántica ".(11)

¿Por qué debería uno construir una criptomoneda persiguiendo una capa interminable de complejidad y abstracción? Parece ser de naturaleza sísifo e ingenuo en la práctica. Además, cada abstracción adoptada tiene consecuencias tanto legales como de seguridad.

Por ejemplo, hay numerosas actividades en línea que se consideran universalmente ilegales o despreciadas, como el tráfico de pornografía infantil o la venta de secretos de Estado. Al desplegar una infraestructura robusta y descentralizada, ahora se está proporcionando un canal para que esta actividad ocurra con la misma resistencia a la censura de la que disfrutan las transacciones comerciales normales. Desde el punto de vista jurídico, no está claro si los nodos de consenso de la red -que tienen el incentivo de federarse con el tiempo para promover la eficiencia- tendrían que rendir cuentas por el contenido que albergan.

El procesamiento de los operadores de Tor, el trato brutal del operador de Silk Road y la falta de claridad legal general detrás de las protecciones legales de los participantes del protocolo dejan un camino incierto. No hay falta de imaginación sobre qué más podría permitir una criptomoneda suficientemente avanzada (ver el Anillo de Gyges). ¿Es razonable obligar a todos los usuarios de una criptomoneda a respaldar o al menos permitir los peores actos y conductas de la web?

Desafortunadamente, no hay respuestas claras que le den una idea a un diseñador de criptomoneda. Se trata más bien de elegir una posición y defender sus méritos. La ventaja que tienen tanto Cardano como Bitcoin es que hemos optado por separar las preocupaciones en capas. Con Bitcoin, está Rootstock. Con Cardano, existe la Capa de Computación de Cardano.

Los tipos de comportamiento complejo que permitirían los actos elaborados anteriormente no pueden ejecutarse en CSL. Requieren la capacidad de ejecutar programas escritos en un lenguaje completo de Turing y alguna forma de economía del gas para medir la computación. También requieren nodos de consenso dispuestos a incluir las transacciones en sus bloques.

Por lo tanto, una restricción de funcionalidad podría proteger razonablemente a los usuarios. Hasta ahora, la mayoría de los gobiernos establecidos no han tomado la posición de que el uso o mantenimiento de una criptomoneda es un acto ilegal. Por lo tanto, la gran mayoría de los usuarios deberían sentirse cómodos manteniendo un libro mayor que sea comparable en capacidad con un sistema de pago digital.

Cuando se quiere ampliar la capacidad, hay dos posibilidades. Es posible gracias a un colectivo privado de individuos con ideas afines y de naturaleza efímera (por ejemplo, una partida de póquer). O bien, es habilitado por un libro mayor de capacidades comparables como Ethereum. En ambos casos, hemos optado por externalizar los eventos a otro protocolo.

En el caso de un evento privado y efímero, es razonable evitar por completo el paradigma de la cadena de bloques, sino más bien restringir los esfuerzos hacia una biblioteca de protocolos MPC de propósito especial que puedan ser invocados cuando lo desee un grupo de participantes con ideas afines. Los cálculos y actividades se coordinan en una red privada y hacen referencia a CSL sólo como un tablón de anuncios de confianza y un canal de paso de mensajes cuando es necesario.

La idea clave en este caso es que existe el consentimiento, la encapsulación de la responsabilidad y la privacidad. CSL está siendo utilizado como un espacio común digital para que los usuarios se reúnan y se comuniquen -como si un parque fuera la sede de un evento privado-, pero no proporciona ningún tipo de alojamiento o facilitación especial. Además, el uso de MPC de propósito especial permitirá una interacción de baja latencia sin la necesidad de hinchazón de la cadena de bloqueo. De esta manera, mejora la escala del sistema.

Los esfuerzos de investigación de Cardano hacia esta biblioteca se centralizan en nuestro laboratorio de Tokyo Tech con la asistencia de científicos del extranjero. Llamamos a la biblioteca "Tartaglia" por un colega matemático y contemporáneo de Cardano y esperamos que la primera iteración esté disponible en el primer trimestre de 2018.

En el segundo caso, se necesita una cadena de bloques con una máquina virtual, un conjunto de nodos de consenso y un mecanismo que permita la comunicación entre las dos cadenas. Hemos iniciado el proceso de formalización rigurosa de la máquina virtual Ethereum utilizando el marco K (12) en colaboración con un equipo de la Universidad de Illinois.

El resultado de este análisis informará sobre la forma más óptima de diseñar una máquina virtual (13) replicada y eventualmente distribuida con una semántica operacional clara y fuertes garantías de implementación correcta a partir de la especificación. En otras palabras, la VM realmente hace lo que el código le dice que haga con los riesgos de seguridad minimizados.

Todavía quedan preguntas sin resolver sobre la economía del gas propuesta por Ethereum y cómo se relaciona con el trabajo, como el LD consciente de los recursos de Jan Hoffmann et al y el estudio más amplio de la estimación de recursos para la computación. También nos interesa el nivel de independencia lingüística de la máquina virtual. Por ejemplo, el proyecto Ethereum ha expresado su deseo de pasar de su actual VM a la Asamblea Web.

El siguiente esfuerzo está en desarrollar un lenguaje de programación razonable para expresar contratos de estado que serán llamados como servicios por aplicaciones descentralizadas. Para esta tarea, hemos elegido tanto el enfoque de soportar el lenguaje de contratos inteligente heredado Solidity para aplicaciones de baja seguridad como el desarrollo de un nuevo lenguaje llamado Plutus para aplicaciones de mayor seguridad que requieren verificación formal.

Al igual que el proyecto Zeppelin basado en la Solidity, IOHK también desarrollará una biblioteca de referencia de código Plutus para que los desarrolladores de aplicaciones la utilicen en sus proyectos. También desarrollaremos un conjunto de herramientas especializadas para la verificación formal inspiradas en el trabajo del proyecto Liquid Haskell de UCSD.

En términos de consenso, Ouroboros fue diseñado de una manera suficientemente modular para apoyar la evaluación inteligente de los contratos. Por lo tanto, tanto CSL como CCL compartirán el mismo algoritmo de consenso. La diferencia es que Ouroboros puede ser confirmado para permitir tanto los libros mayores con y sin permiso a través de la distribución de tokens.

Con CSL, Ada ha sido distribuida por un evento generador de fichas a compradores de toda Asia que eventualmente revenderán en un mercado secundario. Esto significa que el algoritmo de consenso de CSL está controlado por un conjunto diverso y cada vez más descentralizado de actores o sus delegados. Con la CCL, es posible crear un token de propósito especial en poder de los delegados de ese libro mayor que podrían ser entidades reguladas, creando así un libro mayor autorizado.

La flexibilidad de este enfoque permite que diferentes instancias de CCL se materialicen con diferentes reglas sobre la evaluación de transacciones. Por ejemplo, las actividades de juego podrían ser restringidas a menos que los datos de KYC/AML estén presentes simplemente mediante la inclusión en una lista negra de transacciones no atribuidas.

Nuestro diseño final se centra en añadir módulos de seguridad de hardware (HSM) a nuestra pila de protocolos. Estas son dos enormes ventajas a la hora de introducir estas capacidades en el protocolo. En primer lugar, los HSM proporcionan incrementos masivos en el rendimiento (14) sin introducir preocupaciones de seguridad que vayan más allá de la confianza en el proveedor. En segundo lugar, mediante el uso de pruebas de vidrio sellado (SGP, Sealed Glass Proofs), los HSM pueden ofrecer garantías de que los datos pueden verificarse y luego destruirse sin ser copiados o filtrados a personas ajenas a la empresa.

Centrándose en el segundo punto, los PEC podrían tener un impacto revolucionario en el cumplimiento. Normalmente, cuando un consumidor proporciona información de identificación personal (IIP) para autenticar su identidad o probar su derecho a participar, esta información se entrega a un tercero de confianza con la esperanza de que no actúe de forma maliciosa. Esta actividad está intrínsecamente centralizada, el proveedor de datos pierde el control sobre su IIP y también está sujeto a varias regulaciones basadas en la jurisdicción.

La capacidad de seleccionar un conjunto de certificadores de confianza y luego almacenar IIP en un enclave de hardware significa que cualquier actor con un mecanismo de salvaguardia suficientemente capaz podrá verificar los hechos sobre un actor de una manera infalsificable sin que el verificador conozca la identidad del actor. Por ejemplo, Bob no es ciudadano estadounidense. Alice es una inversionista acreditada. James es un contribuyente de los EE.UU. y uno debe enviar las ganancias imponibles a la cuenta X.

La estrategia de HSM de Cardano será intentar implementar protocolos especializados durante los próximos dos años utilizando Intel SGX y ARM Trustzone. Ambos módulos están integrados en miles de millones de dispositivos de consumo, desde ordenadores portátiles hasta teléfonos móviles, y no requieren ningún esfuerzo adicional por parte del consumidor para su uso. Ambos también están fuertemente investigados, bien diseñados y basados en años de iteración por parte de algunos de los equipos de seguridad de hardware más grandes y mejor financiados.

Regulación

La dura realidad de todos los sistemas financieros modernos es que a medida que escalan, acumulan una necesidad, o al menos un deseo, de regulación. Este resultado es generalmente el resultado de colapsos recurrentes debido a la negligencia de algún actor o conspirador de actores en un mercado.

Por ejemplo, la crisis de Knickerbocker de 1907 dio lugar a la creación del Sistema de la Reserva Federal en 1913 como prestamista de último recurso. Otro ejemplo son los excesos de la década de 1920 en Estados Unidos que provocaron un terrible colapso financiero, la Gran Depresión. Este colapso dio lugar a la creación de la Comisión del Mercado de Valores en 1934, con el fin de evitar que se produjera un suceso similar o, al menos, hacer que los malos actores rindieran cuentas de sus actos.

Se puede debatir razonablemente la necesidad, el alcance y la eficacia de la regulación, pero no se puede negar su existencia y el celo con el que los principales gobiernos la han aplicado. Sin embargo, el reto al que se enfrentan todos los reguladores a medida que el mundo se globaliza y el dinero en efectivo se vuelve digital es doble.

En primer lugar, ¿qué conjunto de normas debería ser supremo cuando se trata de un conjunto de jurisdicciones? La anticuada noción de soberanía de Westphalian se derrite cuando una sola transacción puede afectar a tres docenas de países en menos de un minuto. ¿Debería ser simplemente quien ejerce la mayor influencia geopolítica?

En segundo lugar, las mejoras en la tecnología de privacidad han creado una carrera armamentista digital en la que será cada vez más difícil incluso entender quién ha participado en una transacción, y mucho menos quién posee una acumulación de valor en particular. En un mundo donde millones de dólares de activos pueden ser controlados con nada más que una mnemotécnica secreta de 12 palabras (15), ¿cómo se hace cumplir una regulación eficaz?

Como todos los sistemas financieros, el protocolo de Cardano debe tener una opinión en su diseño sobre lo que es justo y razonable. Hemos optado por dividir entre los derechos individuales y los derechos de un mercado.

Las personas deben tener siempre acceso exclusivo a sus fondos sin coerción ni confiscación de activos civiles. Este derecho tiene que ser aplicado porque no se puede confiar en que todos los gobiernos no abusen de su poder soberano para el beneficio personal de políticos corruptos, como se ha visto en Venezuela y Zimbabwe. Las criptomonedas deben ser diseñadas con el mínimo común denominador.

Segundo, la historia nunca debe ser alterada. Las cadenas de bloques ofrecen una promesa de inmutabilidad. Introducir el poder de hacer retroceder la historia o alterar el registro oficial introduce demasiada tentación de cambiar el pasado para beneficiar a un actor o actores en particular.

En tercer lugar, el flujo de valor debe ser ilimitado. Los controles de capital y otros muros artificiales disminuyen los derechos humanos. Fuera de la inutilidad de intentar hacerlos cumplir (16), en una economía global con muchos ciudadanos de los países menos desarrollados que viajan fuera de su jurisdicción para encontrar un salario digno, la restricción de los flujos de capital suele acabar perjudicando a los más pobres del mundo.

Según estos principios, los mercados son claramente diferentes de los individuos. Mientras que los diseñadores de Cardano creen en los derechos individuales, nosotros también creemos que los mercados tienen el derecho de establecer abiertamente sus términos y condiciones, y si un individuo está de acuerdo en hacer negocios dentro de este mercado, entonces deben cumplir con esos estándares por el bien de la integridad de todo el sistema.

El desafío siempre ha sido el costo y la viabilidad de la aplicación. Las transacciones pequeñas y multijurisdiccionales son simplemente demasiado costosas en los sistemas heredados como para ofrecer una alta garantía de recurso en caso de fraude o de litigio comercial. Cuando se envía una transferencia bancaria al Príncipe de Nigeria (17), suele ser demasiado caro intentar recuperar los fondos.

Para Cardano, sentimos que podemos innovar en tres niveles. En primer lugar, mediante el uso de contratos inteligentes se pueden controlar mejor los términos y condiciones de las relaciones comerciales. Si todos los activos son digitales y pueden expresarse únicamente en CSL, se pueden obtener fuertes garantías de comercio libre de fraude.

En segundo lugar, el uso de los HSM para proporcionar un espacio de identidad en el que no se filtra la información de identificación personal, sino que se utiliza para autenticar y acreditar a los actores debería proporcionar un sistema de reputación global y permitir que se lleven a cabo actividades reguladas a un coste mucho menor, como los juegos en línea con cumplimiento fiscal automatizado o los intercambios descentralizados.

Finalmente, en la hoja de ruta de Cardano está la creación de un DAO (Organización Autónoma Descentralizada, Decentralized autonomous organization) de regulación modular que puede ser personalizado para interactuar con los contratos inteligentes escritos por el usuario con el fin de añadir mutabilidad, protección al consumidor y arbitraje. El alcance de este proyecto se describirá en un documento posterior.

¿Cuál es el sentido de todo esto?

Cardano ha sido un proyecto maratoniano que involucra la retroalimentación de cientos de las mentes más brillantes dentro y fuera de la industria de la criptomoneda. Implica una incansable iteración, el uso activo de la revisión por pares y el robo descarado de grandes ideas cuando son descubiertas.

Continuar leyendo Parte 3 de 5

Notas a pie de página

10: Existen también otros protocolos de investigación independiente que intentan conseguir el mismo fin, como Elastico y Bitcoin-NG.

11: Loi Luu et al. discuten la brecha en su reciente documento Making Smart Contracts Smarter.

12: Inventado por el profesor Grigore Rosu et. al., K es un marco universal para la semántica ejecutable de máquinas independientes del lenguaje. Antes de nuestro trabajo, se ha utilizado para modelar C, Java y JavaScript.

13: Significa que diferentes nodos de consenso ejecutan diferentes contratos inteligentes. También conocido como sharding de estado.

14: Véase Escalado de Bitcoin con hardware seguro de la Universidad de Cornell.

15: Ver BIP39.

16: Como ejemplo de contramedida al flujo de capital, véase el Hawala Banking System.

17: Ver estafa de pago por adelantado.

2 Likes