Chat comunitario con el fundador de Summa James Prestwich – Nervos Network

El líder de la comunidad, Stitch, se puso en contacto con el fundador de Summa, James Prestwich, para hablar sobre el Programa de Subvenciones de Nervos y el plan de Summa para llevar la interoperabilidad de Bitcoin a CKB

¿Cuándo supiste por primera vez sobre Nervos?
JP: Conocí Nervos a principios de 2019. Lo investigué en profundidad durante el verano y conocí al equipo durante la semana de blockchain de SF en octubre.

¿Qué pensaste de Nervos antes de reunirte con el equipo en SF?
JP: Siempre me ha interesado Nervos debido al innovador modelo estatal. Nadie más que conozco está tratando de generalizar los UTXO. Creo que Nervos es el primer intento creíble de agregar una funcionalidad completa de contrato inteligente a un sistema UTXO.

¿Cómo influyó su reunión con el equipo en su decisión de enviar una solicitud de subvención?
JP: Nos conocimos durante un evento en la semana SF blockchain. Les hice preguntas sobre CKB, me preguntaron sobre qué trabaja Summa. Hay muchos intereses compartidos, así que comenzamos a hablar sobre un proyecto en el que podríamos trabajar.

Desde su perspectiva, ¿en qué se diferencia Nervos de otras cadenas de bloques públicas como Bitcoin, Ethereum o Cosmos?
JP: Bitcoin Script es muy limitado. Le da muy pocas herramientas, por lo que los tipos de programas que puede escribir están restringidos. Pero hay grandes ventajas de rendimiento en esto. Los nodos son baratos de ejecutar y sincronizar rápidamente, y los signos costosos se realizan fuera del proceso de consenso.

Los contratos de Ethereum son poderosos y fáciles de escribir, pero la validación es mucho más costosa y debe hacerse en el proceso de consenso.

Nervos está entre Ethereum y Bitcoin. Le ofrece programas estatales y arbitrarios, pero son más difíciles de escribir que los contratos de Ethereum. La ventaja es que las partes costosas (computación y SSD / lecturas de disco) se realizan fuera del proceso de consenso, por lo que hay muchas ganancias de rendimiento.

Cosmos es más como un marco para construir una cadena personalizada. Es fácil escribir una cadena específica de la aplicación, pero difícil escribir una cadena general.

Acabas de mencionar que son más difíciles de escribir que los contratos de Ethereum. Me lleva mucho tiempo descubrir la lógica de programación en CKB
JP: Tienes que aprender a expresar la lógica del programa como un árbol de transacciones. Aunque creo que vale la pena. Eventualmente, habrá compiladores que harán árboles para usted. Ya hay algunas bases académicas para esto en Bitcoin.

Sí, en realidad no hay un contrato inteligente en CKB, todo se trata de transacciones.
JP: Sí, el "contrato" es una descripción de qué transacciones están permitidas.

¿Podría darme una breve introducción sobre bitcoin-spv en CKB? ¿Y qué aportará al ecosistema CKB?
JP: Bitcoin-spv es una biblioteca de utilidad para analizar transacciones y encabezados de Bitcoin. Brinda herramientas para inspeccionar entradas y salidas, verificar que se realizaron pagos, validar cadenas de encabezado, etc. Brinda a los desarrolladores formas de obtener información sobre eventos en la cadena de bloques de Bitcoin.

Estamos escribiendo un ejemplo de contrato de intercambio entre cadenas con la biblioteca bitcoin-spv. Se basa en un código similar que hemos escrito en Solidity, pero en realidad es más simple en CKB. En pocas palabras, puede poner CKB en un script CKB que contiene su dirección de Bitcoin y un precio de compra. El script CKB permitirá que cualquiera que le pague Bitcoin acceda a su CKB.

Entonces, ¿es más como un intercambio de átomos en lugar de una cadena de corss?
JP: Es como un intercambio atómico, pero usar bitcoin-spv en lugar de un contrato hash timelock (HTLC) ofrece varias ventajas. Los HTLC deben negociarse y tener un problema de opción libre. Los swaps basados ​​en SPV no necesitan negociación y no tienen un problema de opción. Tengo un artículo sobre intercambios basados ​​en SPV aquí

Gracias. Entonces, ¿qué tan difícil es agregar una implementación C dirigida a CKB de bitcoin-spv? ¿Es un desafío para usted? ¿Ha encontrado algún problema hasta ahora?
JP: No he trabajado en C por un tiempo. Al principio, configurar el compilador correctamente fue un poco difícil. Afortunadamente, el equipo de Nervos tiene una buena configuración de acoplador para la cadena de herramientas de compilación. Ya tenemos pruebas exhaustivas para la versión Solidity de la biblioteca. Por lo tanto, ha sido bastante sencillo escribir una biblioteca que pase esas pruebas.

Escribir un script CKB y ejecutarlo a través de la biblioteca Rust CKB no fue intuitivo al principio. Tuve que aprender el modelo de transacción. Escribiremos una publicación de blog para enseñar a otros cómo hacer esto.

¡Excelente! ¿Cuántos de ustedes estarán trabajando en este proyecto (bitcoin-spv para CKB)? ¿Podría presentarnos el equipo de desarrollo?
JP: Contamos con un equipo de 4 ingenieros. Estoy haciendo la mayor parte del trabajo en C, mientras que otros estarán trabajando en la parte de Rust y expandiendo los vectores de prueba. Soy la imagen pública del equipo. Puede encontrar otros miembros del equipo en nuestro sitio.

¿Cuánto tiempo crees que tomará terminar este proyecto, o cuántas fases has establecido?
JP: Ya tenemos partes de esto escritas y un conjunto de pruebas completo. Hay más trabajo por hacer, pero todas las partes más difíciles están hechas.

Increíble. ¿La cantidad provista por el Programa de Becas Nervos es competitiva con otras partes? ¿Podemos atraer más desarrolladores a través de este programa?
JP: Nuestro equipo está financiado principalmente por subvenciones en este momento. Hemos trabajado con Zcash, Cosmos y otros. Ha sido muy fácil trabajar con el equipo de Nervos, y la cantidad es competitiva.

Después de terminar Bitcoin-SPV en CKB, ¿tiene alguna otra idea o proyecto para construir en CKB en el futuro?
JP: Nos gusta construir en CKB hasta ahora. Estamos aprendiendo mucho a través de este proyecto y tenemos algunas ideas para proyectos futuros. No tenemos planes sólidos, pero definitivamente vamos a seguir buscando lo correcto para construir.