馃嚜馃嚫 驴C贸mo se compara Casper con Ouroboros?

:es: Traducci贸n al espa帽ol de "How does Casper compare to Ouroboros?

Documento Original publicado por Aggelos Kiayias, Jefe Cient铆fico, el 9 de Agosto de 2018

Diferencias entre los protocolos Ethereum propuestos y el algoritmo de consenso de Cardano

TL;DR
(siglas de "muy largo, no lo le铆)

En respuesta a las recientes discusiones en los medios sociales, hacemos una breve comparaci贸n de los protocolos de Prueba de Participaci贸n (Proof of Stake - PoS) de Ouroboros y Casper.

Ouroboros es un protocolo formalmente especificado y analizado con garant铆as de seguridad matem谩ticamente probadas basadas en supuestos claramente especificados. La descripci贸n del protocolo, los modelos y las pruebas son todos p煤blicos. Por lo tanto, las suposiciones subyacentes, las propiedades del protocolo de destino y las respectivas pruebas de correcci贸n pueden ser examinadas p煤blicamente. Ouroboros ofrece una firmeza basada en la participaci贸n con las mayores garant铆as posibles en cuanto a la cantidad de participaci贸n que respalda una operaci贸n honesta. Tambi茅n proporciona una base s贸lida sobre la cual se pueden ofrecer servicios tales como la firmeza casi instant谩nea de las transacciones en condiciones de red optimistas.

En cuanto a Casper, no conocemos ninguna fuente actualmente publicada que describa suficientemente el modo de funcionamiento del protocolo ni ninguna garant铆a demostrable al respecto. A煤n as铆, desde lo que se ha presentado sobre Casper hasta ahora, en comparaci贸n con Ouroboros, podemos concluir con seguridad que Casper proporciona garant铆as mucho m谩s d茅biles en t茅rminos de cu谩nto debe controlar el adversario para perturbar el protocolo. A continuaci贸n, comparamos los dos protocolos a lo largo de varias dimensiones; por falta de documentaci贸n adecuada, muchas de las propiedades de Casper deben ser asumidas a nuestro leal saber y entender.

En respuesta a una discusi贸n aqu铆 y aqu铆, damos una breve comparaci贸n entre el protocolo de prueba de participaci贸n (PoS) de Ouroboros y el PoS de Casper. Para Ouroboros, nos referimos a la versi贸n original que subyace a la Capa de Contabilidad (Settlement Layer SL) Cardano (publicada en Crypto 2017), sin embargo, la mayor铆a de nuestros comentarios se aplican tambi茅n a las versiones posteriores de Ouroboros Praos y Ouroboros Genesis. Para Casper, nos referimos principalmente al Gadget de Finalidad Amistosa con Casper (FFG) tal y como se describe en el documento, siendo la propuesta m谩s reciente de Casper lo suficientemente descriptiva como para hacer una comparaci贸n completa (otras referencias incluyen Ethereum Mauve, Casper+Sharding v2.1, FFG-RPJ, Casper TBG/CBC).

Cualquier protocolo de PoS de libro contable debe satisfacer dos propiedades fundamentales: persistencia y vitalidad. La primera garantiza que el libro contable (ledger) sea definitivo e inmutable. El segundo garantiza que las transacciones emitidas por partes honestas se incluyan finalmente en el libro mayor (inmutable). Tales propiedades, por lo general, no pueden probarse incondicionalmente: se basar谩n en ciertas condiciones, algunas de ellas criptogr谩ficas, por ejemplo, que las firmas digitales no pueden falsificarse, mientras que otras est谩n relacionadas con el comportamiento de los participantes, por ejemplo, que los actores que siguen el protocolo controlan la mayor parte de la participaci贸n. Existen otras propiedades deseables que un protocolo PoS debe satisfacer (como que la ejecuci贸n del protocolo seg煤n lo prescrito es la 煤nica estrategia racional para los participantes), pero la persistencia y la vitalidad seg煤n lo definido anteriormente constituyen el par m铆nimo de propiedades fundamentales necesarias para el consenso del libro contable.

Analicemos ahora algunas de las diferencias entre los dos protocolos y sus an谩lisis.

Modelo de Ejecuci贸n y Falsificaci贸n de Reclamaciones

El protocolo de Ouroboros se analiza en un modelo que se describe en detalle: define sin ambig眉edades todos los programas de los participantes, su ejecuci贸n e interacciones, su comunicaci贸n -incluidas las propiedades de la red- y la posible corrupci贸n por parte de una entidad adversaria de cualquier conjunto de partes que controlan una minor铆a de la participaci贸n. Este modelo permite la formulaci贸n de garant铆as de seguridad matem谩ticamente precisas y satisfechas por cualquier ejecuci贸n, como las propiedades de persistencia y vitalidad probadas para Ouroboros. En particular, el modelado formal de Ouroboros permite realizar declaraciones precisas y cuantitativas sobre los l铆mites de participaci贸n (stake) y los tiempos de liquidaci贸n; v茅ase m谩s adelante. Esto hace que todas las afirmaciones que hacemos sobre Ouroboros sean totalmente concretas; no hay nada que quede a criterio de la interpretaci贸n o de la perspectiva del lector. Sin un modelo de este tipo (notablemente ausente en el documento de Casper FFG o en cualquier otra fuente disponible relacionada con Casper), es imposible probar la exactitud de cualquier afirmaci贸n sobre el protocolo. Los protocolos de consenso, en general, son objetos complejos; dise帽arlos sin el desarrollo de argumentos matem谩ticos rigurosos que establezcan las propiedades requeridas puede resultar precario, como ha demostrado la pr谩ctica previa en el dise帽o de sistemas seguros. Una buena intuici贸n de dise帽o y el mejor esfuerzo no son suficientes cuando se supone que un protocolo de consenso de libro contable contiene activos por valor de miles de millones.

Una soluci贸n integral para el consenso del libro contable PoS

Teniendo en cuenta lo anterior, es importante apreciar que el protocolo de Ouroboros ha demostrado que proporciona persistencia y vitalidad bajo suposiciones claramente definidas, tales como una mayor铆a de participaci贸n honesta, que es la m铆nima suposici贸n que se necesita en el entorno PoS. Por otra parte, Casper FFG, tal como se describe en el Documento, es una mejora sobre un 鈥渕ecanismo de propuesta de bloques鈥 preexistente, por ejemplo, una blockchain (cadena de bloques) PoW (a saber, Ethereum); en particular, sus garant铆as de seguridad como protocolo de consenso de libro contable dependen de la seguridad de este mecanismo de propuesta. Como observan los autores de Casper FFG, 鈥渦n mecanismo de propuesta de bloques totalmente comprometido impedir谩 que Casper finalice nuevos bloques鈥, por lo que la asunci贸n de poder de la mayor铆a honesta de la posesi贸n sigue siendo necesaria para la vitalidad de Casper FFG. Del mismo modo, otras versiones del protocolo Casper, como Casper FFG-RPJ, est谩n incompletas y/o no van acompa帽adas de ninguna prueba de seguridad.

Supuestos de Participaci贸n (Stake)

Se ha comprobado que Ouroboros logra persistencia y vitalidad bajo el supuesto de una mayor铆a honesta de toda la participaci贸n (stake) en el sistema, incluso en el caso de que algunas porciones significativas de las partes interesadas no participen en el protocolo (v茅ase, por ejemplo, el Teorema 1 en el documento Ouroboros G茅nesis para la declaraci贸n m谩s completa sobre la seguridad de Ouroboros). En cambio, Casper exige que una fracci贸n de la participaci贸n depositada en 鈪 est茅 controlada por partes honestas (v茅ase la secci贸n 2.1 del Documento). Dado que la participaci贸n depositada est谩 bloqueada y no puede utilizarse para otros fines mientras tanto, es razonable suponer que la participaci贸n depositada ser谩 una peque帽a fracci贸n de la participaci贸n total en el sistema. Naturalmente, es m谩s dif铆cil controlar grandes cantidades de participaciones, por lo que basar la seguridad en la participaci贸n total en el sistema, como en Ouroboros, es una opci贸n m谩s prudente. Como ejemplo concreto, en la versi贸n actual de Ethereum (Ethereum Mauve paper o Casper+Sharding chain v2.1), se requiere un m铆nimo de 32 ETH por validador con 100-128 validadores por validador dependiendo de la referencia, sin ninguna otra restricci贸n. De ello se deduce que si la participaci贸n total depositada entre todos los posibles validadores resulta ser m铆nima y no est谩 restringida, entonces s贸lo unos pocos miles de ETH ser铆an suficientes para registrar un conjunto de validadores de sybil que podr铆an alterar las propiedades de seguridad del consenso en el libro Contable.

Finalidad

Aunque la noci贸n no est谩 formalmente definida en el documento de Casper FFG, es f谩cil ver que la propiedad de la 鈥渇irmeza basada en la participaci贸n鈥 est谩 subsumida por la persistencia, la propiedad que asegura que las transacciones se conviertan en parte permanente del libro contable inmutable del p煤blico; el adjetivo basado en la participaci贸n sobre la firmeza utilizado en Casper FFG se refiere al hecho de que la condici贸n bajo la cual se debe alcanzar la firmeza se basa en la participaci贸n en vez de en la suposici贸n de, por ejemplo, de poder de hash. Como se mencion贸 anteriormente, no se puede considerar que ning煤n protocolo resuelva el problema del consenso en el libro contable sin proporcionar persistencia (y por lo tanto firmeza). De hecho, todos los protocolos PoS proporcionan tales propiedades s贸lo con una alta probabilidad - si por ninguna otra raz贸n, la criptograf铆a siempre puede fallar con una probabilidad (muy) peque帽a (por ejemplo, alguien puede adivinar su clave). De hecho, sabemos que Bitcoin y (pre-Casper) Ethereum proporcionan firmeza (demostrada por los trabajos de GKL15, GKL17 y PSS17) asumiendo la mayor铆a honesta de la potencia computacional), al igual que Ouroboros, asumiendo la mayor铆a honesta de la participaci贸n como se muestra en KRDO17, DGKR18, BGKRZ18.

En pocas palabras, Ouroboros proporciona firmeza basada en la participaci贸n y lo hace con la mayor garant铆a posible en t茅rminos de participaci贸n: contra una coalici贸n maliciosa que controla cualquier cantidad de la participaci贸n total existente en el sistema, siempre y cuando est茅 por debajo del 50%. En el documento de Casper FFG, donde Casper opera sobre la blockchain Ethereum, la firmeza basada en participaci贸n se proporciona cada 100 bloques bajo el supuesto de que 鈪 de la participaci贸n depositada es honesta. Como ejemplo concreto, en la misma ventana de tiempo, que es un poco m谩s de media hora en nuestro despliegue actual, podemos deducir de nuestro an谩lisis formal que Ouroboros ofrecer谩 firmeza contra, digamos, un adversario de participaci贸n del 10% con una probabilidad de error inferior a 2^(-44). Esto es menos de 1/100000000000000000, uno de m谩s de diez trillones. Para apreciar un n煤mero tan peque帽o, considere que se espera que un asteroide grande golpee la tierra una vez cada 100 millones de a帽os (Scientific American). Por lo tanto, es 10.000 veces m谩s probable que un gran asteroide golpee la tierra el pr贸ximo mes que que Ouroboros reorganice su cadena para dejar caer una transacci贸n en particular despu茅s de que haya sido incluida en el libro contable durante aproximadamente media hora.

Consenso Eventual vs. Finalidad (casi) instant谩nea

Los protocolos blockchain como Bitcoin y Ouroboros se denominan eventual-consensus ya que aseguran que la irreversibilidad de un bloque aumenta gradualmente con el n煤mero de bloques que se a帽aden sobre 茅l. Esto significa que la firmeza es m谩s matizada que un valor verdadero o falso, y se cuantifica por la probabilidad de revertir una transacci贸n en funci贸n de la fuerza del adversario y del tiempo transcurrido desde que se agreg贸 el bloque que contiene esa transacci贸n. Este dise帽o permite que estos protocolos funcionen en los entornos adversarios m谩s fuertes posibles y sigan siendo muy eficientes en cuanto al n煤mero de mensajes que deben intercambiarse; adem谩s, tienen la caracter铆stica de que el receptor de una transacci贸n puede decidir por s铆 mismo la importancia de la misma y ajustar sus propias nociones de estabilidad por transacci贸n. Su desventaja es que no proporcionan una firmeza casi instant谩nea, o en otras palabras, una garant铆a r谩pida de que la transacci贸n se concluir谩. Esto puede ser una ventaja potencial de los protocolos cl谩sicos de BFT que han inspirado el dise帽o de Casper FFG, as铆 como de otros protocolos en el espacio, incluyendo Algorand.

Sin embargo, la firmeza casi instant谩nea tambi茅n suele conllevar importantes inconvenientes en t茅rminos del modelo de seguridad, como un requisito mucho mayor de participaci贸n honesta o, lo que es m谩s importante, un alto grado de presencia en l铆nea garantizada que deben ofrecer los participantes que siguen el protocolo. Esto perjudica la disponibilidad din谩mica de los participantes (ver abajo), que es uno de los sellos distintivos de la era bitcoin de los protocolos de consenso. Por otra parte, la firmeza casi instant谩nea puede construirse como un servicio sobre Ouroboros y esto es algo que publicaremos a su debido tiempo. Adem谩s, podemos argumentar que 茅sta es la mejor manera de avanzar: utilizar el protocolo de consenso final de Ouroboros, que es seguro bajo las mayores garant铆as posibles basadas en participaci贸n, como la base s贸lida sobre la que se pueden construir de forma segura servicios tales como la liquidaci贸n casi instant谩nea en condiciones de red optimistas.

Incentivos y disponibilidad din谩mica

Casper FFG se inspira en los protocolos de consenso est谩ndar de BFT anteriores a la era de Bitcoin y, como tal, no puede manejar la incertidumbre en cuanto al n煤mero de entidades participantes una vez que se fija el conjunto de validadores. Esto significa que el protocolo no puede funcionar en los entornos de 鈥sleepy setting鈥 y 鈥dynamic availability鈥, en los que un n煤mero significativo de partes que se supone deben actuar en el protocolo no est谩n disponibles debido a las condiciones de la red, fallos de hardware o simplemente falta de inter茅s. Esta es una preocupaci贸n significativa en un entorno descentralizado donde la ejecuci贸n del protocolo no est谩 destinada a ser dejada en manos de unos pocos actores de poder centralizado, sino que se distribuye proporcionalmente entre un gran n煤mero de actores m谩s peque帽os. El documento de Casper-FFG reconoce esto como el escenario de 鈥淐hoque Catastr贸fico鈥 y observa que en este caso 鈥渘o se pueden finalizar puntos de control futuros鈥. Los autores proponen una mitigaci贸n en la forma de la llamada 鈥渇uga de inactividad鈥. Esta idea s贸lo se describe informalmente como drenante 鈥渆l dep贸sito de cualquier validador que no vote por los puntos de control, hasta que eventualmente el tama帽o de sus dep贸sitos disminuya lo suficiente como para que los validadores que est谩n votando sean una supermayor铆a鈥. Desafortunadamente, esta modificaci贸n a su vez negar铆a cualquier ventaja potencial que Casper pueda reclamar frente a las divisiones de red, como tambi茅n reconocen los autores: 鈥淟a fuga de inactividad introduce la posibilidad de que se finalicen dos puntos de control conflictivos sin que ning煤n validador sea recortado鈥. Esto tambi茅n afecta a los incentivos para el funcionamiento del protocolo. Ouroboros permite una agregaci贸n natural e impulsada por incentivos de las participaciones en pools de participaci贸n que se llevar谩 a cabo a lo largo de un per铆odo de tiempo utilizando nuestro mecanismo de recompensa de pools de participaci贸n, sin forzar el comportamiento de las partes interesadas en una estructura predeterminada, mientras que Casper tiene que imponer un n煤mero preestablecido de validadores de bloques.

Aleatoriedad

Mientras que el protocolo original de Ouroboros no utiliza VRFs para generar aleatoriedad en el protocolo (en su lugar utiliza un protocolo de lanzamiento de monedas de salida-salida garantizado basado en el intercambio de secretos verificable), las versiones de seguimiento Praos y Genesis lo hacen para mejorar el rendimiento. Los VRFs propuestos para su uso en Ouroboros Praos y G茅nesis han demostrado ser seguros bajo supuestos criptogr谩ficos est谩ndar (como el supuesto Computacional Diffie Hellman), mientras que el an谩lisis de seguridad que hemos realizado asegura la resiliencia de Ouroboros a la manipulaci贸n de la aleatoriedad (ver Ouroboros Praos y Ouroboros Genesis).

Supuestos de la red

Ouroboros se analiza en el entorno 鈥減arcialmente s铆ncrono鈥, donde los mensajes se entregan a la mayor铆a de las partes que ejecutan el protocolo dentro de un intervalo de tiempo limitado por un retardo de red 螖 que las partes desconocen. El orden de los mensajes es contradictorio y no se garantiza que dos partes honestas reciban los mensajes en el mismo orden. El adversario puede inyectar mensajes arbitrarios selectivamente a cualquiera de las partes. Casper no hace ninguna afirmaci贸n expl铆cita sobre el entorno de red en el que opera, sin embargo, al describir las defensas contra las revisiones de largo alcance alude a un tipo de modelo similar.

Trituraci贸n (Sharding)

Esta propiedad se refiere a la capacidad de un protocolo de consenso de una base de datos o libro contable para escalar su potencia de procesamiento a medida que m谩s nodos (o capacidad de procesamiento) entran en el sistema, idealmente con una aceleraci贸n lineal en el n煤mero de nodos a帽adidos. Ouroboros Hydra, la versi贸n escalable de Ouroboros est谩 en desarrollo y ser谩 publicada en su momento siguiendo nuestro modo habitual de discurso, es decir, la publicaci贸n de un art铆culo completo que contiene formulaciones matem谩ticas completas del problema que resolvemos, una descripci贸n completa de nuestra soluci贸n de protocolo, as铆 como declaraciones concretas sobre las propiedades del protocolo que van acompa帽adas de todas las pruebas necesarias. Actualmente, la versi贸n de Casper que permite el sharding, (Casper+Sharding v2.1), est谩 incompleta incluso en t茅rminos de descripci贸n del protocolo, y como tal, no puede permitir ninguna prueba de seguridad.

Conozca m谩s sobre Ouroboros.

El esfuerzo en equipo es un sello de la investigaci贸n de IOHK y este art铆culo en el blog no es una excepci贸n. Agradezco a Christian Badertscher, Matthias Fitzi, Peter Ga啪i, Alexander Russell, Jeremy Wood y Vassilis Zikas por sus diversas sugerencias, comentarios y correcciones al texto anterior.

Material gr谩fico, Mike Beeple

1 Like