
Fuente: Wuyue, Geek Web3
Un esquema de expansión de la cadena pública se concibe con las siguientes características:
-
Tiene una velocidad comparable a las aplicaciones o intercambios Web2 tradicionales, que excede cualquier cadena pública, L2, rollup, cadena lateral, etc.
-
No hay tarifa de gas, y el costo de uso es 0.
-
Los fondos son altamente seguros, superando con mucho las instalaciones centralizadas, como los intercambios, e inferiores al rollup, pero igual a las cadenas laterales.
-
La misma experiencia del usuario que Web2 no requiere ninguna comprensión de las claves públicas y privadas de la blockchain, las billeteras, la infraestructura, etc.
Esta solución es realmente emocionante: por un lado, básicamente ha logrado lo último en escala;
Sin embargo, en la actualidad no parecemos pensar en ninguna solución que pueda ser tan completa, porque de hecho hay muy poca discusión y práctica convencionales.Este artículo presentará este excelente y avanzado y avanzado paradigma de diseño de la plataforma de computación Web3 de próxima generación: paradigma de consenso basado en el almacenamiento (SCP).
Utilizamos el tema de la expansión como un tema muy familiar anterior, pero de hecho, SCP yNo limitado aExpandir el uso de la capacidad, su inspiración de diseño proviene de los planes de expansión y las discusiones comunitarias sobre cadenas públicas como Bitcoin y Ethereum.Y su visión y su aplicación práctica sonConstruya una nueva generación de plataformas informáticas con estructuras públicas o no blockchain.
SCP Conceptos básicosComponentesy principio de trabajo
-
Capa de disponibilidad de datos:Una cadena pública ampliamente reconocida y probada de almacenamiento permanente sirve como capa de disponibilidad de datos, como Ethereum, Arweave, etc.
-
Capa de ejecución:Se utiliza un servidor para recibir transacciones de usuario y ejecutarlas, y al mismo tiempo, los datos de transacciones originales firmados por el usuario se envían en lotes a la capa DA, que tiene una alta similitud con el clasificador de Rollup.Sin embargo, esta capa de ejecución no necesariamente necesita tener conceptos relacionados con blockchain, como la estructura de datos de blockchain o la compatibilidad con EVM.También puede ser una base de datos Web2 + sistema informático, pero todo el sistema informático debe ser de código abierto.
-
Capa de confirmación de consenso:Consiste en un grupo de nodos que extraen los datos originales enviados por la capa de ejecución a la capa DA, y calcule los datos utilizando el mismo algoritmo que la capa de ejecución para confirmar si la salida del resultado de la capa de ejecución es correcta y puede ser utilizado como prevención de desastres para la capa de ejecución.Los usuarios también pueden devolver datos de cada nodo de la capa de confirmación de consenso para garantizar que la capa de ejecución esté libre de fraude.
-
Capa de asentamiento:Consiste en un grupo de nodos y contratos o direcciones en otras cadenas, que los usuarios utilizan para recargar en SCP y retirar efectivo para dejar SCP.El nodo también debe ejecutar el mismo algoritmo que la capa de ejecución y extraer los datos para su verificación.El nodo controla la función de retiro de la dirección de recarga a través de múltiples contratos o direcciones basadas en TSS.Durante la recarga, el usuario recarga la dirección especificada del enlace y envía una solicitud a la capa de ejecución cuando se retira.El nivel de seguridad de la capa de asentamiento es el mismo que el mecanismo de cadena transversal de las cadenas laterales o los puentes de cadena cruzada, y también usan el mismo sistema de liquidación de abstinencia o equivalente.
Everpay
Everpay es un pionero de SCP y ha tomado la iniciativa de construir sus propios productos basados en SCP.Recarga, transferencia, retiro, intercambio, Sobre esta base, casi cualquier función de Web3 y Web2 se puede extender en el futuro.
Ahora entendemos completamente el paradigma de consenso de almacenamiento a través del flujo de trabajo de Everpay.
La capa DA de Everpay utiliza la instalación de almacenamiento permanente Arweave, que es el gran círculo de la figura.
Coordinador, es decir, la capa de ejecución.El usuario envía la transacción al coordinador, quien realiza la operación y presenta los resultados de la operación, y luego se combina los datos de entrada originales del usuario a la capa DA.
Detector, extraiga los datos de transacción originales enviados por el coordinador de Arweave y use un algoritmo consistente con el coordinador para verificar los datos y los resultados.El cliente del detector también es de código abierto y puede ser ejecutado por cualquier persona.
Vigilantes, un grupo de detectores que están a cargo de múltiples fichajes en el sistema de retiro.La solicitud de retiro se verificará y se publicará en función de los datos de la transacción.Además, el observador también es responsable de firmar la propuesta.
Podemos ver que el consenso alcanzado por todo el sistema está ubicado fuera de la cadena, que es la esencia del paradigma de consenso de almacenamiento: abandona el sistema de consenso entre los nodos a base de blockchain, lo que permite que la capa de ejecución elimine el pesado La comunicación de consenso y el proceso de confirmación solo requieren el trabajo de un servidor, para lograr TPS y económicos casi sin restricciones.Esto es muy similar al acurrucado, pero se puede decir que SCP hizo que el concepto de rollup sea más abstracto y elevado, cambiándolo de un caso de uso exclusivo para la expansión al paradigma de diseño de la nueva generación de la plataforma de computación Web3.
El coordinador de Everpay es un servidor, pero eso no significa que el coordinador pueda hacer lo que quiera.Similar al clasificador de Rollup, después de que los datos originales enviados por el usuario se envíen en lotes en Arweave, cualquiera puede ejecutar el programa de detector para verificarlo y compararlos con el estado devuelto por el coordinador.Esto es en sí mismo porque la función de transición de estado (STF) es una función determinista, entrada – & gt;Mientras el STF de todos sea el mismo y la entrada sea la misma (todos enviados a DA, no se pueden manipular y puede ser visible públicamente), la salida obtenida debe ser la misma.
Bajo esta arquitectura, un servidor centralizado y una base de datos no plantea un desafío fundamental.Esta es también otra esencia del paradigma SCP, que une y desacopla los conceptos de «centralización» y «entidad única»: en un sistema descentralizado, puede haber componentes completamente centralizados, o incluso un componente central, pero esto no afecta en general descentralización.
De esto podemos gritar un eslogan sensacional pero lógico: «La próxima generación de blockchain no tiene que ser una cadena de bloques».Debido a que la intención original de las personas de inventar y usar blockchain es descentralizar libros de cuentas consistentes, no forgery, trazabilidad y otros clichés, sin importar si es el plan de expansión de la antigua cadena pública o una nueva cadena pública, todos han formado una Una determinada mentalidad: lo que hacemos debe ser una cadena de bloques (compuesta de consenso comunicado por nodos), o una solución de rollo que parece ser una cadena (solo tiene una estructura de datos de blockchain, pero no hay nodos intercambios).Pero ahora, incluso si la solución basada en SCP no es una cadena de bloques, puede satisfacer una serie de necesidades, como centralización, libros de contabilidad consistentes, no forgery, trazabilidad, etc.
Capa de ejecución
La capa de ejecución es crucial en todo el sistema.
Posibles entornos de ejecución ilimitados
Teóricamente, el entorno de ejecución en la capa de ejecución se puede convertir en cualquier forma, y las posibilidades son infinitas, dependiendo de cómo la parte del proyecto localice su propio proyecto:
-
Intercambio.Según SCP, se puede construir un intercambio de TPS abierto, transparente y ilimitado.La diferencia entre CEX y Dex se vuelve borrosa aquí.
-
Red de pago.Similar a Alipay, PayPal, etc.
-
Admite máquinas virtuales/blockchain para cargadores/contratos.Cualquier desarrollador puede implementar cualquier aplicación en ella, compartir todos los datos del usuario con otros programas y operar de acuerdo con las instrucciones del usuario.
Debido a que los usuarios se han deshecho por completo de la billetera en forma de blockchain e solo interactúan con el servidor, su experiencia de usuario es consistente con las aplicaciones tradicionales de Internet, pero al mismo tiempo está descentralizada.
Se puede ver que el proceso anterior ya incluye conceptos similares, como el intercambio de cadenas cruzadas y la abstracción de cuentas, y por supuesto es similar.Especialmente conceptos como la abstracción de la cuenta son naturalmente innecesarios para SCP, lo que debe decirse que es una carga dejada por Ethereum.Después de muchas rondas de esfuerzos, la comunidad Ethereum finalmente lanzó el estándar EIP-4337 para resolver uno de los problemas de adopción a gran escala de Web3: el problema de la cuenta.Además, EIP-4337 es solo un estándar, y su práctica de aplicación aún no se ha probado.Según la arquitectura SCP, no existe un concepto de abstracción de la cuenta: puede usar cuentas estándar de Web2 y cuentas blockchain a voluntad.Desde esta perspectiva, muchos casos de uso de Web2 maduros se pueden usar directamente en SCP sin repensar y construir.
Transparencia y asimetría
Como se mencionó anteriormente, los lectores confidenciales deberían haber descubierto que, aunque SCP puede utilizar el sistema de cuenta Web2, parece que hay problemas para usarlo intacto.
¡Porque todo el sistema es completamente transparente!El uso directo del modelo de interacción del usuario al servidor causará serios problemas, lo que no dará lugar a seguridad en todo el sistema.Primero revisemos cómo funciona el modelo tradicional de usuario-usuario:
1. Registro de cuenta:Los usuarios ingresan su nombre de usuario y contraseña en la página de registro de la aplicación.Para proteger la contraseña del usuario, el servidor procesará la contraseña a través de una función hash después de recibirla.Para aumentar la complejidad del hash y resistir los ataques de la mesa del arco iris, una cadena generada al azar (llamada «sal») generalmente se conecta a la contraseña de cada usuario y la atasca.Los nombres de usuario, las sales y los hashes se almacenan en la base de datos del proveedor de servicios en texto plano y no se revelan al público.Pero aun así, se necesitan el tratamiento de sales y seguridad, primero para prevenir fantasmas internos y el segundo para prevenir los ataques.
2. Inicio de sesión del usuario:Los usuarios ingresan su nombre de usuario y contraseña en el formulario de inicio de sesión.El sistema compara el valor de hash de contraseña procesada con el valor hash almacenado en la base de datos.Si los dos hashes coinciden, significa que el usuario ha proporcionado la contraseña correcta y el proceso de inicio de sesión continúa.
3. Certificación de operación:Después de aprobar la verificación de inicio de sesión, el sistema creará una sesión para el usuario.Por lo general, la información de la sesión se almacena en el servidor y el servidor envía una identidad (como una cookie o token) al navegador o aplicación del usuario.Los usuarios ya no necesitan ingresar repetidamente su nombre de usuario y contraseña en la siguiente operación: el navegador o la aplicación guarda la identidad y viene con la identidad en cada solicitud.
Revisemos el sistema típico de interacción Web3 blockchain-user:
1. Registro de cuenta:De hecho, no hay un proceso de registro de cuenta, ni hay un sistema de nombre de usuario de nombre de usuario.La cuenta (dirección) no requiere registro, existe naturalmente, quien controla la cuenta con su clave privada.La clave privada se genera aleatoriamente localmente por la billetera y no implica redes.
2. Inicio de sesión del usuario:El uso de blockchain no requiere inicio de sesión.Algunos DAPPS requerirán que los usuarios firmen y verifiquen la identidad de la billetera conectada después de conectarse a la billetera para garantizar que el usuario realmente mantenga la llave privada de la billetera, en lugar de simplemente pasar una dirección de la billetera al extremo frontal.
3. Certificación de operación:El usuario envía directamente los datos firmados al nodo.
La diferencia entre los dos modos es causada por simetría y asimetría.En la arquitectura del usuario del servidor, ambas partes tienen los mismos secretos.En la arquitectura de usuario blockchain, solo los usuarios tienen los secretos.Aunque la capa de ejecución de SCP puede no ser una cadena de bloques, todos los datos deben sincronizarse con la capa DA visible públicamente, por lo que los métodos de verificación de inicio de sesión y operación utilizados por SCP deben ser asimétricos.Pero debido a que no quiero tener acciones engorrosas y malas experiencias que afecten la adopción a gran escala, como permitir que los usuarios mantengan claves privadas, usen billeteras, etc., la aplicación construida en SCP tiene una gran necesidad de usar contraseñas de ID tradicionales o inicio de sesión de autenticación de tres partes.
Dado que la criptografía asimétrica y los pares de prueba de conocimiento cero son asimétricos, imagino dos posibles soluciones:
-
Si quieres usar ID-Criptografía, este módulo de almacenamiento de contraseña no se puede convertir en SCP, para que otras personas no lo vean.La capa de ejecución de SCP todavía utiliza la cuenta de clave pública y la lógica de operación de la clave privada de blockchain, sin registro, sin inicio de sesión, etc.La ID del usuario realmente corresponderá a una clave privada.Por supuesto, esta clave privada no se puede almacenar en el proyecto.
-
Al confiar en OAuth, iniciar sesión, JWT (JSON Web Token) se puede usar como una forma de autenticarse.Este método aparecerá un poco más central que el anterior, ya que esencialmente necesita confiar en los servicios de inicio de sesión de terceros proporcionados por los principales fabricantes de Web2 como autenticación de identidad.Al iniciar sesión con un tercero por primera vez, los campos en el JWT que representan la identidad del usuario y la identidad del proveedor de servicios se registran en el sistema.En las operaciones posteriores del usuario, las instrucciones de operación se utilizan como entrada pública, y el JWT como testigo secreto se usa para verificar la transacción de cada usuario.Cada JWT tiene un límite de tiempo de vencimiento, y el usuario también solicitará un nuevo JWT la próxima vez que inicie sesión, por lo que no es necesario mantenerlo.Además, este sistema también debe confiar en JWK, que puede entenderse aquí como la clave pública proporcionada por un gran fabricante para verificar JWK.Entonces, entonces vale la pena discutir cómo JWK está descentralizado para ingresar al sistema, y cómo lidiar con la rotación clave privada en el futuro, etc.
No importa qué método se utilice, esto es más costoso que los métodos tradicionales de desarrollo y la informática, pero también es un precio necesario para la descentralización.Por supuesto, si la fiesta del proyecto no cree que el logro de la descentralización final sea necesaria, o hay diferentes hitos en diferentes etapas de desarrollo, también es posible tener estos diseños, porque la descentralización no es negro o blanco, pero existe un área gris en el centro.
Privacidad
El problema de transparencia mencionado anteriormente no solo afecta el paradigma de interacción del usuario, sino que también afecta los datos del usuario.Los datos del usuario están directamente expuestos.Aunque no es un problema en Blockchain, esto no es muy aceptable en algunas aplicaciones, por lo que los desarrolladores también pueden construir un sistema de transacciones de privacidad.
PEAJE
Cómo cobra la capa de ejecución es otro punto al que vale la pena prestar atención.Porque enviar datos a la capa DA también requiere costo, incluida la operación de su propio servidor.El primer propósito central de los usuarios tradicionales de carga de blockchain una tarifa de gas es evitar que los usuarios deslicen una gran cantidad de transacciones duplicadas para destruir la red de transacciones, y la segunda es clasificar las transacciones basadas en el gas.Web2 no tiene preocupaciones similares, por lo que solo hay conceptos básicos como inundaciones y DDO.
La capa de ejecución puede personalizar varias estrategias de carga, como cargos completamente gratuitos o parciales, o beneficiarse de otros comportamientos como MEV (que ya está muy maduro en el clasificador), actividades de marketing, etc.
Resistencia a la censura
La capa de ejecución no es resistente al censor y puede rechazar teóricamente las transacciones de los usuarios sin restricciones.En el encierro, la resistencia a la censura puede estar garantizada por la función de recolección obligatoria del contrato L1, mientras que las cadenas laterales o las cadenas públicas son redes de blockchain distribuidas completas, que son difíciles de revisar.
Actualmente no hay un plan claro para corregir este problema, que es un problema en el paradigma SCP.
Capa de confirmación de consenso
Esta capa se compone de nodos sueltos que no forman activamente ninguna red, por lo que no es una capa de consenso, pero solo se usa para confirmar el estado de la capa de ejecución actual al mundo exterior (como el usuario).Por ejemplo, si tiene dudas sobre el estado de ejecución de Everpay, puede descargar su cliente detector, que ejecutará el mismo STF que el coordinador.
Sin embargo, esto es similar al acurrucado.Esto implica un problema de finalidad de suave y dureza.La capa de ejecución le da al usuario una finalidad suave porque aún no se ha enviado a la capa DA;Los usuarios pueden no estar particularmente preocupados por esto, pero para aplicaciones como puentes de cadena cruzada, se debe seguir una final dura.Por ejemplo, el sistema de recarga y retirada del intercambio no dependerá de la finalidad instantánea del secuenciador de la rollada.
Además de ser utilizado para confirmar los resultados, la capa de confirmación de consenso tiene otro papel muy importante, que es la redundancia de prevención de desastres de la capa de ejecución.Si la capa de ejecución ataca permanentemente y comete un mal serio, en este momento, cualquier capa de confirmación de consenso en teoría puede hacerse cargo del trabajo de la capa de ejecución y recibir solicitudes de usuarios.Si se produce una situación tan grave, la comunidad debe elegir nodos estables y confiables como servidores para la capa de ejecución.
Capa de asentamiento
Dado que SCP no es un acurrucado, es imposible lograr retiros sin confianza que no requieran una intervención manual y se basen completamente en códigos de contrato matemáticos e inteligentes como la capa de liquidación de retiro de retiro.Su grado de seguridad es el mismo que el mecanismo de cadena cruzada de las cadenas laterales o los puentes de la cadena cruzada, y requiere que el observador autorizado libere activos.
La descentralización del puente de testigos tanto como sea posible es un tema de muchas investigaciones de puentes transversales.Debido a las limitaciones de espacio, no entraré en detalles aquí.Una plataforma SCP bien diseñada también debe tener socios de firma múltiple con puentes descentralizados de buena reputación en la práctica, por ejemplo, Everpay ha realizado una cooperación en profundidad con el proveedor de servicios MPC Safeheron.
¿Alguien podría preguntar por qué SCP no usa una cadena con un contrato inteligente como la capa DA?Esto permite que se realice una capa de asentamiento que esté completamente libre de confianza.
A la larga, siempre y cuando se superen algunas dificultades técnicas, si la capa DA se coloca en la capa DA con contratos como Ethereum y los contratos correspondientes para la verificación se pueden construir, SCP también puede obtener la misma seguridad de liquidación que Rollup, y no hay necesidad de usar múltiples señales.
Pero en la práctica, esta puede no ser la mejor opción:
1. Ethereum no se usa específicamente para el almacenamiento de datos, el precio es demasiado alto en comparación con las cadenas públicas de almacenamiento de datos puros.Para el paradigma SCP, un costo de almacenamiento suficientemente bajo o fijo es crucial.
2. Demuestre que el sistema es muy difícil de desarrollar, porque SCP no solo puede simular EVM, sino también implementar cualquier lógica.Si observamos el hecho de que equipos como el optimismo aún no se han lanzado, y la dificultad de desarrollo de Zkevm, podemos imaginar que es extremadamente difícil implementar varios sistemas en Ethereum.
Otro punto más importante es que la llamada seguridad de la liquidación como el encierro es solo para la cadena de capas DA con contratos inteligentes, como Ethereum, porque todos los datos originales se pasan a Ethereum. Datos de entrada originales para demostrar la corrección del estado final (tenga en cuenta que no es una referencia directa, sino que indirectamente dejan la marca de estado de los datos de llamadas originales a través del hash o el acumulador, porque el contrato no puede hacer referencia al contrato).Pero para otras cadenas, no se puede disfrutar la misma seguridad porque no tienen datos al respecto.Si desea cruzar otras cadenas, solo puede usar el puente de cadena cruzada del modo de testigo.
Por lo tanto, la solución enrollable solo tiene una mejor seguridad de liquidación desde una perspectiva específica, es decir, si considera una cadena como su cadena principal.SCP no es una determinada solución de expansión de la cadena pública, sino una arquitectura de plataforma informática Web3 más grande, por lo que no tiene que implementarse desde una cierta perspectiva centrada en la cadena.Construyendo la capa de liquidación en un contrato inteligente, excepto la cadena principal, no puede garantizar la seguridad de la liquidación de otras cadenas.
Resumir
Una imagen compara SCP con otros paradigmas.
SCP es un nuevo paradigma de la plataforma de computación Web3, comparable a la velocidad de aplicación de las transacciones Web2 tradicionales puede ser insignificante.En la actualidad, una serie de aplicaciones como Everpay, Permaswap, Mind Network, etc., han surgido bajo el paradigma SCP en base a sus excelentes conceptos de diseño, se espera que esta ronda y el próximo mercado alcista introducen el crecimiento explosivo.