Contratos inteligentes de RSK: una guía sencilla para empezar

Una de las oportunidades únicas que brinda la red RSK es la capacidad de codificar contratos inteligentes en la cadena de bloques de Bitcoin. Como tal, los desarrolladores podrán aprovechar la flexibilidad de los contratos inteligentes y adaptarlos a la seguridad proporcionada por la cadena de bloques de Bitcoin. En esta guía, veremos cómo funciona la codificación de contratos inteligentes y cómo podemos implementarlos en RSK.

Contratos inteligentes en Blockchain

Los contratos inteligentes son uno de los casos de uso más interesantes de la tecnología blockchain. Cuando salió Bitcoin por primera vez, todos pensaron que la cadena de bloques no era más que un vehículo para el cumplimiento financiero descentralizado. Sin embargo, las cosas cambian drásticamente con la llegada de los contratos inteligentes, que hicieron posible que los desarrolladores personalizaran la cadena de bloques según sus necesidades. Los contratos inteligentes son contratos automatizados. Son autoejecutables con instrucciones específicas escritas en su código, que se ejecutan cuando se cumplen ciertas condiciones..

Introducción a la solidez

Para cualquiera que quiera aprender a hacer dAPP (aplicaciones descentralizadas), aprender Solidity es una necesidad absoluta. Solidity fue desarrollado por Gavin Wood, Christian Reitwiessner, Alex Beregszaszi, Yoichi Hirai y varios ex colaboradores principales de Ethereum para permitir la escritura de contratos inteligentes en plataformas blockchain como Ethereum..

La solidez está destinada a ser un lenguaje deliberadamente reducido y escrito libremente con una sintaxis muy similar a JavaScript. Puede consultar los documentos de solidez aquí mismo.

Al usar la solidez, codificará contratos inteligentes que se ejecutarán en la máquina virtual ethereum, también conocida como EVM. Los desarrolladores de Ethereum mencionan una cantidad determinada de gas que se asigna a sus contratos. Cada línea del contrato requiere cierta cantidad de gas para ejecutarse. El límite de gas debería ser suficiente para que el contrato se ejecute por completo.

Tipos de datos en solidez

En primer lugar, cubramos los tipos de datos que utilizará con solidez. En ciencias de la computación y programación de computadoras, un tipo de datos o simplemente tipo es una clasificación de datos que le dice al compilador o intérprete cómo el programador pretende usarlos..

¿Los datos son un número entero, una cadena o una matriz??

La forma en que el compilador toma estas decisiones es mirando el tipo de datos.

Entonces, en primer lugar, verifiquemos los tipos de datos enteros que tendrá en solidez:

  • Declaración de entero normal llamada “int” que va de -128 a 127
  • Entero sin signo “uint” que va de 0 a 255 y no almacena ningún valor negativo

A continuación, tenemos tipos de datos booleanos que solo almacenan “verdadero” o “falso”. Para declarar valores booleanos, haga lo siguiente: bool a;

Después de eso tienes Strings y Bytes.

Puede usar una cadena en solidez como esta: nombre de la cadena. Las cadenas se almacenan como una matriz de valores en solidez.

Bytes es una matriz de bytes que va de 1 a 32 caracteres. Entonces, ¿cuál es la diferencia entre cadenas y bytes??

La documentación de solidez dice:

“Como regla general, utilice bytes para datos de bytes sin procesar de longitud arbitraria y cadenas para datos de cadenas de longitud arbitraria (UTF-8). Si puede limitar la longitud a un cierto número de bytes, utilice siempre uno de bytes1 a bytes32 porque son mucho más baratos “.

A continuación, tenemos un tipo de datos interesante llamado “enum”, que permite a los usuarios definir su propio tipo de datos.

enum Acción {ELIMINAR, ACTUALIZAR}

Entonces, ¿cómo los usa en el programa??

Acción myAction = Action.UPDATE;

En el fragmento anterior, creó una variable del tipo Acción, que tiene funcionalidades “eliminar” y “actualizar”.

Usted puede leer los documentos de solidez para obtener un conocimiento más profundo sobre varios tipos de datos.

Implementación de contratos inteligentes en RSK

Si bien existen varios métodos que puede utilizar para implementar sus contratos en RSK, la plataforma de contrato inteligente sobre Bitcoin, Examinaremos los métodos estandarizados descritos por el blog oficial de RSK.

# 1 Configurando su entorno

Puede utilizar varias herramientas para configurar su entorno, y depende principalmente de su sistema operativo o de la plataforma con la que se sienta más cómodo. Algunos ejemplos de estos son:

Contratos inteligentes RSK

# 2 herramientas

RSK tiene una red de prueba y una red principal. Puede crear nuestro propio nodo y conectarlo a testnet o mainnet. Dependiendo de su sistema operativo, puede instalar su nodo de la siguiente manera:

  • Linux: https://github.com/rsksmart/rskj/wiki/install-rskj-using-ubuntu-package
  • MacOS: https://github.com/rsksmart/rskj/wiki/install-rskj-using-fat-jar
  • Windows: https://github.com/rsksmart/rskj/wiki/install-rskj-using-fat-jar
  • Microsoft Azure Marketplace: https://github.com/rsksmart/rskj/wiki/install-rskj-using-azure
  • Mercado de servicios web de Amazon: https://github.com/rsksmart/rskj/wiki/install-rskj-using-aws

Para interactuar y ver el estado de la red, aquí puede encontrar los enlaces:

Contratos inteligentes RSK

RSK testnet proporciona a los desarrolladores las siguientes herramientas:

  • Un grifo que proporciona a los desarrolladores monedas “R-BTC” para ejecutar sus contratos inteligentes..
  • Una red de prueba en la que los desarrolladores pueden crear y probar libremente sus contratos inteligentes..

Muy bien, ahora que tiene una idea clara de lo que necesitará para configurar su entorno y las diversas herramientas que necesitará para codificar contratos inteligentes. Si desea un desglose detallado de cómo funciona todo el proceso, haga clic aquí.

Por qué Bitcoin necesita contratos inteligentes y RSK

Si el futuro va a ser descentralizado, los contratos inteligentes estarán en el corazón y el alma de esta revolución. Como hemos mencionado antes, los contratos inteligentes pueden hacer que la cadena de bloques subyacente sea programable. Es por eso que organizaciones a gran escala como Deloitte han comenzado a investigar los entresijos de los contratos inteligentes..

Ya hemos visto numerosos casos de uso de contratos inteligentes. Sin embargo, el impacto que puede tener en Bitcoin es realmente inmenso. Antes de RSK, Bitcoin se conocía solo como un protocolo de pago simple. Sin embargo, RSK y los contratos inteligentes pueden brindar una utilidad sin precedentes a la cadena de bloques de Bitcoin. Al construir un ecosistema saludable y próspero sobre la cadena de bloques, Bitcoin pasará de una moneda puramente especulativa a una solución financiera viable..

Habiendo dicho eso, se sabe que Bitcoin es notoriamente lento, gestionando solo 7-10 transacciones por segundo. Como ya hemos visto con Ethereum y cryptokitties, las plataformas de contratos inteligentes no serán eficientes si no son escalables. Sin embargo, este es otro lugar donde RSK puede ayudar inmensamente a Bitcoin.

  • En primer lugar, tenemos Lumino. Lumino Network permite a las partes realizar transacciones fuera de la cadena mediante canales de pago. Si bien funciona de manera similar a Lightning Network (LN), ambos han sido diseñados para trabajar uno al lado del otro. Lightning Network funciona en la cadena principal, mientras que Lumino trabaja en la cadena lateral RSK.
  • Finalmente, el propio protocolo RSK se ejecuta en una cadena lateral. Esto significa que puede desviar todos los cálculos complejos de contratos inteligentes lejos de la cadena de bloques principal, reduciendo la hinchazón..

¿Dónde se encuentra RSK en el panorama de los contratos inteligentes??

  • Digamos primero lo obvio. Ethereum es el líder del espacio de contratos inteligentes. También tenemos otros proyectos como EOS, Tron y Cardano que han demostrado ser muy prometedores. Sin embargo, la ventaja que tiene RSK sobre todos los demás proyectos es la seguridad y credibilidad de la cadena de bloques de Bitcoin..

  • Además de eso, RSK también tiene puentes simbólicos que se conectan directamente a la cadena de bloques Ethereum. Esto no solo permite al creador del contrato aprovechar las ventajas de ambas cadenas de bloques, sino que también permite la creación de un ecosistema próspero e interoperable entre las dos..

Conclusión: contratos inteligentes de RSK

La belleza de crear contratos RSK como desarrollador es que puede aprovechar lo mejor de ambos mundos: la capacidad de programación de Ethereum y la seguridad de la cadena de bloques de Bitcoin. Para obtener más información, lo invitamos a consultar RSK guías de desarrollo de contratos inteligentes.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me