Documentos Técnicos

La arquitectura de Flow se encuentra especificada en una serie de Documentos Técnicos que explican los muchos matices del sistema. Los Documentos Técnicos 1 y 3 han sido publicados primero porque son los más importantes para comprender y evaluar la solidez del sistema, al mismo tiempo que incluyen los resultados más aplicables a otros proyectos.

Documento técnico 1: Separando el Consenso y Cómputo

Cadence es el primer lenguaje de programación de contratos inteligentes ergonómico y orientado a los recursos.

Si bien los entornos de programación existentes pueden utilizarse para hacer un seguimiento de la propiedad de los activos, normalmente se utilizan en escenarios en los que estos están reflejando propiedad en lugar de definirla directamente. Las cadenas de bloques públicas son únicas en el sentido de que están explícitamente diseñadas para gestionar la propiedad de los activos digitales con escasez y control de acceso total. Los activos digitales en cadenas de bloques públicos se comportan como activos físicos: no pueden ser copiados o falsificados, sólo movidos.

El año pasado, el equipo de Flow estaba investigando el uso de Los tipos lineales en el contexto de blockchain, siguiendo una investigación académica en mejores lenguajes de contratos inteligentes. Casi al mismo tiempo, el equipo de Libra definió un nuevo modelo de programación para Move basado en un nuevo modelo de propiedad inspirado en los Tipos Lineales: recursos. Los recursos son una nueva forma de representar la propiedad de los activos y las propiedades de los activos digitales criptográficos directamente en el lenguaje de programación. De la introducción del documento de Move:
La característica clave de Move es la capacidad de definir tipos de recursos personalizados. Los tipos de recursos se usan para codificar activos digitales seguros con una programabilidad enriquecida.

Nos llamó tanto la atención el poder de la Programación Orientada a Recursos que es uno de los rasgos definitorios de Cadence, un lenguaje de programación diseñado específicamente para el nuevo paradigma de aplicaciones habilitadas para el cifrado.

Programación orientada a los recursos es un nuevo paradigma, diseñado para ser seguro y fácil de usar. Por primera vez, los desarrolladores pueden crear artefactos digitales excepcionalmente duraderos en los que la propiedad es rastreada por el propio lenguaje, lo que permite una nueva y poderosa categoría de aplicaciones.

Como el primer lenguaje de programación de alto nivel orientado a los recursos, Cadence tiene una sintaxis cómoda y ergonómica que lo hace muy fácil de leer. Utiliza un sistema fuerte de tipo estático para minimizar los errores en tiempo de ejecución, y permite que todos los métodos, interfaces y transacciones incluyan condiciones previas y posteriores para reforzar el comportamiento esperado. Esto ha dado como resultado un lenguaje que es más fácil de aprender, significativamente más fácil de auditar y, en última instancia, mucho más productivo que cualquier alternativa actual. Puedes empezar a aprender sobre Cadence en Flow Playground: play.onflow.org

Documento técnico 2: Formación de bloques

El segundo de la serie de documentos técnicos formaliza el proceso de formación de bloques y el proceso de consenso basado en la Prueba de Participación en Flow. Flow adapta una variante del algoritmo de consenso HotStuff para que los Nodos de Consenso lleguen a un acuerdo sobre los bloques que privilegiarán en cada altura de bloque. Este documento también aborda la responsabilidad del papel del Consenso en la mitigación de los desafíos presentados en la red.

Documento Técnico 3: Verificación de Ejecución

El tercer documento técnico responde a las preguntas planteadas en el primer documento técnico sobre la verificación de los resultados del cómputo. El documento proporciona una formalización de nuestro esquema de computación verificable con pruebas de seguridad y vida bajo tolerancia a faltas bizantinas razonables. Aunque el documento no explora la posibilidad, creemos que este resultado podría adaptarse a otros escenarios en los que sean aplicables los sistemas de cálculo Bulletproofs, TrueBit, ETE y otros sistemas de cómputo verificables.

Community vibes
Join Discord

¡Gracias! ¡Su envío ha sido recibido!
¡Ups! Algo salió mal al enviar el formulario.