Nervos CKB respondió la pregunta y creó un nuevo nivel de abstracción 4. Por ejemplo, una transacción CKB es abstracta donde los usuarios y desarrolladores no están limitados a la autenticación predeterminada blake2b-secp256k1, cualquiera puede reemplazarla 1 con blake2b-secp256r1, keccak256-ed25519 o blake2b-sha3-schnorr. CKB-VM es abstracto y no tiene precompilaciones, incluso las primitivas criptográficas predeterminadas como la función hash blake2b y la verificación de firma secp256k1 son solo contratos inteligentes que se ejecutan en la máquina virtual. Se ejecutan en el mismo entorno que los contratos inteligentes creados por desarrolladores de aplicaciones, sin privilegios especiales. El modelo de celda es abstracto donde una celda es simplemente almacenamiento sin ninguna estructura interna y su diseño se deja completamente a los desarrolladores, como vimos en sUDT y xUDT. Dado que CKB es abstracto en muchos aspectos, los desarrolladores tienen mayores libertades y nuevas habilidades. CKB es una abstracción de Ethereum, al igual que Ethereum es una abstracción de Bitcoin. La abstracción convierte a CKB en una cadena de bloques más simple pero más poderosa y desplaza gran parte del trabajo fuera de la cadena, parte del cual se realizará en la capa 2. La abstracción de Bitcoin divide a los desarrolladores en desarrolladores de cadenas de bloques que trabajan en la cadena de bloques subyacente y en desarrolladores de contratos inteligentes que construyen aplicaciones. La abstracción de Ethereum dividirá a los desarrolladores de contratos inteligentes en desarrolladores de contratos de sistemas y desarrolladores de contratos de aplicaciones, mientras que los primeros se centrarán en contratos inteligentes a nivel de sistema, como primitivas criptográficas, scripts de bloqueo e incluso módulos de gestión de memoria.
La importancia de la abstracción ha sido reconocida recientemente por la comunidad de Ethereum 4. Si se logra, creo que podría hacer que Ethereum sea más abstracto de lo que es ahora, le da una ventaja sobre aquellos que no pueden mantenerse al día. Sin embargo, también dudo que propuestas como la abstracción de cuentas puedan alcanzar el mismo nivel de abstracción que CKB, ya que sería extremadamente difícil introducir cambios radicales en un ecosistema en ejecución, al igual que es imposible ajustar la constante de Planck sin derribar el universo. Por ejemplo, la abstracción de cuentas introducirá una nueva complejidad de seguridad en módulos críticos como el grupo de transacciones, ya que un validador necesitaría manejar cálculos arbitrarios en lugar de verificación de firma fija cada vez que se firma una nueva transacción.
La otra dirección de abstracción es la escalabilidad. Tanto las soluciones de fragmentación como las de capa 2 comparten un problema común: cambian el desarrollo de aplicaciones de determinadas formas. Por ejemplo, puede ser completamente diferente manejar llamadas entre fragmentos o transacciones entre capas2 de las llamadas de contrato en la capa 1. Los desarrolladores de aplicaciones de capa 2 también pueden enfrentar diferentes modelos de contratos inteligentes en diferentes capas (por ejemplo, una cadena de capa 2 de modelo UTXO sobre una capa de modelo de cuenta 1, o viceversa). Cómo ocultar estos detalles y ofrecer una experiencia fluida para los desarrolladores de aplicaciones como si estuvieran construyendo en la capa 1 sigue siendo una pregunta abierta. Es uno de los problemas desafiantes en los que estamos trabajando activamente. La construcción del primer canal en CKB, el canal de pago genérico 3, es un ejemplo de esta línea de pensamiento. GPC tiene como objetivo proporcionar una capa de escalabilidad "transparente" a los UDT en la capa 1 para que cualquier UDT se pueda canalizar desde el día 1 sin ningún esfuerzo adicional por parte de los desarrolladores. En GPC, extraemos los detalles del protocolo del canal de pago de los desarrolladores de UDT. Se puede encontrar un intento alternativo en nuestros trabajos sobre Godwoken y Polyjuice, que se pueden considerar como abstracción de escalabilidad y computación además de CKB.
Cada abstracción de nos traerá algo nuevo, algo que nunca habíamos visto en los niveles de abstracción anteriores. La primera abstracción de nos presentó la capacidad de programación general y aplicaciones descentralizadas interconectadas, ¿qué nos traerá la próxima abstracción de ?
La interoperabilidad 2.0 (un concepto mencionado por primera vez aquí 2) es definitivamente una manzana que crecerá en nuevas abstracciones. Prevemos un futuro de economía digital con múltiples blockchains sin permiso, blockchains con permiso y sistemas centralizados. La interoperabilidad permite que los activos digitales se muevan y que se convoquen contratos inteligentes a través de estos sistemas independientes. En los últimos años, se han realizado numerosos 1 estudios / investigaciones 1 sobre interoperabilidad 1 y se cree que el problema se puede resolver con una serie de primitivas básicas, como notario multi-sig, relé y bloqueo de hash.
Aunque la interoperabilidad de es técnicamente posible hoy en día, faltan otras piezas entre la viabilidad técnica y la realización de una economía digital interoperable sin problemas. Primero, nuestras iniciativas de interoperabilidad solo crearán más redes divididas. Proyectos como Polkadot y Cosmos han definido cada uno sus propios estándares y han intentado construir una red de cadenas múltiples alrededor de su propio “hub”. También hay esfuerzos paralelos para construir puentes entre Bitcoin y Ethereum directamente. Es inconcebible que en algún momento en el futuro los equipos centrales y las comunidades de estas redes separadas puedan venir a la mesa y acordar un estándar de interoperabilidad común para que todos lo sigan. En segundo lugar, pero de manera más crítica, incluso si estas redes fueran perfectamente interoperables, las malas experiencias de los usuarios de interoperación aún evitarían que los usuarios las usen. Desde la perspectiva de un usuario, si yo fuera un usuario de Bitcoin que quisiera transferir mis BTC a Ethereum para participar en aplicaciones DeFi, primero tengo que ejecutar mi billetera Bitcoin y luego cruzar la cadena, luego usar una billetera Ethereum separada. Para completar una operación de cadena cruzada de este tipo, tuve que instalar dos aplicaciones de billetera, mantuve dos conjuntos de mnemónicos y usé dos direcciones. Este proceso en sí es muy complicado y solo se aplica a dos cadenas. A medida que los usuarios desean interactuar con más cadenas de bloques, más mnemónicos / direcciones / pares de claves deben administrar. Este problema de la experiencia del usuario no solo dificulta la adopción de DApps, sino que también sabotea la descentralización, el valor central de , porque los usuarios se verían obligados a confiar en servicios de custodia centralizados para evitar todas las molestias.
Resolver estos dos problemas requiere un nuevo tipo de interoperabilidad, algo que llamamos Interoperabilidad 2.0. Una cadena de bloques con esta nueva interoperabilidad sería como un "centro universal" que podría interactuar con cualquier otra cadena de bloques sin ser notado por otras cadenas de bloques. Un “centro universal” debe ser capaz de comprender y ejecutar los protocolos de otras cadenas de bloques, en lugar de inventar el suyo propio y exigir que todos los demás aprendan. Un centro universal sería similar a una persona multilingüe que puede hablar los idiomas de otras personas para que el centro pueda hablar con todos y todos estén dispuestos a dialogar con el centro. En el mundo de la criptografía, todos los protocolos (el lenguaje utilizado por las cadenas de bloques) están compuestos de criptografía, lo que significa que un concentrador universal debe admitir una amplia gama de primitivas criptográficas utilizadas en las cadenas de bloques que veríamos hoy y mañana. El concentrador universal debe poder comprender las transacciones firmadas por todo tipo de billeteras , lo que permite a los usuarios quedarse con una sola billetera además de poder utilizar cualquier aplicación que se ejecute en el concentrador universal.
Estos requisitos de Interoperabilidad 2.0 son exactamente los que proporcionan las nuevas abstracciones, primitivas criptográficas y autenticación del remitente. Es por eso que un usuario de Ethereum puede usar su billetera Metamask para operar activos o dapps en Nervos CKB 2 hoy, sin ninguna configuración manual, sin siquiera darse cuenta de que está usando aplicaciones de Nervos. No solo los usuarios de Ethereum, los usuarios de EOS / Tron /… también pueden operar activos o dapps en Nervos CKB. No se preocupe si descubre que su cadena favorita aún no está en la lista, simplemente puede crear e implementar contratos inteligentes para ella (o esperar / pagar a un desarrollador de contratos inteligentes para que lo haga por usted). No se necesitan súplicas al equipo central y / o hard fork, todo se puede hacer con contratos inteligentes.
Para las aplicaciones que se ejecutan en Nervos, obtienen interoperabilidad 2.0 de forma gratuita. Por lo tanto, los usuarios de todas las comunidades de pueden acceder ampliamente a una aplicación Nervos; nosotros nos referimos a dicha aplicación como Aplicación universal. Como desarrollador, puede llegar a una base de usuarios más grande que en cualquier otro lugar aprendiendo a crear aplicaciones en Nervos. Como usuario, todo lo que necesita hacer es usar su billetera y cuenta actuales para acceder a aplicaciones universales en Nervos, sin necesidad de instalar ni aprender nada nuevo. Puede pensar que está utilizando una DApp Ethereum o EOS, mientras que Nervos ha reemplazado la infraestructura y la canalización subyacentes. Y creo que así deberían ser las cosas. Como el hecho de que a un usuario que visita un sitio web no le importa si el sitio web está escrito en PHP o JAVA, usando MySQL o PostgreSQL. A los usuarios simplemente no les importa, con razón. Nosotros, como desarrolladores, tenemos la responsabilidad de crear abstracciones y ocultar los detalles de implementación a los usuarios, de modo que podamos reemplazar las implementaciones en uso por otras mejores, para una experiencia de usuario superior y mejor. La interoperabilidad 2.0 hará que el mundo de las criptomonedas se parezca al Internet de hoy, y está habilitado por nuevas abstracciones de .
Aún mejor, las aplicaciones universales pueden tener acceso a una audiencia mucho mayor que los usuarios de . El mundo de las criptomonedas es un círculo relativamente pequeño y podemos ir mucho más allá. La billetera y la cuenta de no son más que otro sistema de cuenta / identidad. Sin embargo, en el mundo de Internet, existen numerosos estándares establecidos para identidad / cuenta y autenticación, como OpenID, reconocimiento facial, reconocimiento de huellas dactilares, etc. Con la abstracción de autenticación de remitente y primitiva criptográfica, Nervos CKB también puede comprender los protocolos de Internet ampliamente utilizados. Los usuarios pueden acceder a aplicaciones universales mediante el uso de navegadores y teléfonos móviles, sin necesidad de instalar carteras de cadena de bloques, generar pares de claves y ni siquiera recordar ningún mnemotécnico. De esta manera, nos adaptamos al ecosistema de Internet existente, en lugar de crear uno completamente nuevo. No requeriríamos que nuestra abuela aprendiera algo de magia de la que no tenga ni idea. Las barreras que impiden a los usuarios de Internet ingresar al mundo de las criptomonedas ya no existen aquí.
Muchas metrópolis modernas surgieron de ser centros de rutas comerciales o puertos. Venecia, Nueva York, Hong Kong, Shanghai y Singapur emergieron como ciudades altamente comercializadas en virtud de sus puertos. GPS, cargueros y contenedores son la tecnología interoperable que utilizamos para cambiar activos entre ciudades en la era industrial, pero ahora tenemos criptoactivos, blockchains e interoperabilidad 2.0. Una mejor interoperabilidad trae más inmigrantes, más negocios y más vitalidad a las ciudades. Aparecerán rascacielos, se enviarán cargas, se conservarán los activos, la gente se quedará y nacerá una nueva metrópoli.
Este artículo se publicó originalmente en Nervos Talk.