En este tutorial, le mostraré paso a paso cómo usar Remix y Metamask, que son herramientas que se crearon originalmente para Ethereum, para crear e implementar un contrato inteligente simple en Testnet de RSK.
RSK es una plataforma de código abierto para contratos inteligentes compatibles con Ethereum basada en la red Bitcoin. La implementación de la máquina virtual de RSK es compatible con Ethereum EVM, por lo que también podemos usar muchas de las herramientas de desarrollo de Ethereum.
Haremos estos pasos:
Metamask es una especie de billetera web que facilita las transacciones usando sus cuentas. También se puede utilizar con redes RSK. Tiene versiones para varios navegadores, como Chrome, Firefox, Opera y Brave.
Ve a metamask.io e instálalo.
Crea una cuenta.
Escriba su frase inicial, mnemotécnica o frase de respaldo (todos estos términos significan lo mismo), con 12 palabras. Esto se utiliza para recuperar su cuenta, en caso de que pierda su contraseña.
¡La frase semilla es lo más importante en una billetera / cuenta!
Remix es una herramienta web en línea. Es un IDE (Entorno de desarrollo integrado) que se utiliza para escribir, compilar, implementar y depurar el código de Solidity. Puede conectarse con Metamask y usarse para implementar contratos inteligentes tanto en RSK Testnet como en Mainnet.
Se puede acceder en remix.ethereum.org
Red de prueba RSK
31
tR-BTC
Echa un vistazo en todos los campos:
Después de configurarlo, seleccione RSK Tesnet.
Puede obtener algo de Testnet R-BTC en el grifo
Copie su dirección de Metamask.
Ingrese la dirección de su billetera y pase el CAPTCHA.
Espera unos segundos...
Puede ver el hash de la transacción, por ejemplo:
0xf63c45dabd52e0b44f4cf15825985e9ddfe790b4323a88a3531f762a417f9011
¡Ahora tengo 0.05 RBTC!
¡Puedes usar el grifo solo una vez al día!
Ir a Remezcla
En la página de inicio/bienvenida, elija entorno Solidez.
Con la red RSK seleccionada en Metamask...
En Remix, en el lado izquierdo, busque el botón Implementar y ejecutar transacciones.
Por ahora, es el cuarto botón.
En Entorno, elija Inyectado Web3
Web3 inyectado conecta Remix con la cuenta activa en Metamask.
ChainID 31 se definió en la red personalizada RSK Testnet en Metamask.
Haga clic en el segundo botón en el lado izquierdo - exploradores de archivos
Haga clic en + crear un nuevo archivo
Nombre del archivo: SimpleStorage.sol
Copia este ejemplo :
pragma solidity >= 0.4 .0 < 0.7 .0 ; contract SimpleStorage { uint storedData; function set ( uint x ) public { storedData = x; } function get ( ) public view returns ( uint ) { return storedData; } }
Y pégalo aquí:
Este contrato inteligente tiene:
storedData
para almacenar un número get()
para devolver el número almacenado en la variable storedData
set()
para cambiar el número almacenado en la variable storedData
En el tercer botón del lado izquierdo, haga clic en el compilador Solidity
Es útil habilitar la compilación automática:
Por ahora, haga clic en el botón Compilar SimpleStorage.sol
Verifique el letrero verde en el tercer botón con la compilación de mensajes exitosa
En el panel lateral izquierdo, vaya al botón Implementar y ejecutar transacciones. En realidad, es el cuarto botón.
Por ahora solo tenemos un contrato inteligente, por lo que se selecciona automáticamente en el menú desplegable.
Haga clic en el botón Implementar
Se abrirá una ventana emergente de Metamask, para confirmar la transacción para crear el contrato inteligente SimpleStorage.sol
Haga clic en confirmar
En la parte inferior derecha, podemos comprobar el mensaje:
creación de SimpleStorage pendiente...
Una vez confirmado, podemos comprobarlo:
Haga clic en la línea de transacción o en el botón de depuración (en el lado derecho) para ver más detalles de la transacción:
Copie el hash de la transacción para verificar en blockchain explorer:
En este ejemplo, el hash de la transacción es:
0x419c4b17ec0bf59568d9b5f5c7f0e4678039f52b9c644c2914ccd0bd2bb331da
El explorador RSK es el explorador de blockchain para transacciones RSK.
Usaremos el testnet explorer :
Más allá del hash de la transacción en el campo de búsqueda, en la parte superior de la pantalla:
Puedes verificar mi ejemplo en:
0x419c4b17ec0bf59568d9b5f5c7f0e4678039f52b9c644c2914ccd0bd2bb331da
Cuando se implementa un contrato inteligente con Remix, podemos verlo en el panel izquierdo debajo de implementar y ejecutar transacciones:
Haga clic en > para expandir SimpleStorage:
¡Estas son las mismas funciones que creamos en nuestro contrato inteligente!
Los botones naranjas son funciones que cambiarán alguna información almacenada en la cadena de bloques, los llamamos cambios de estado. Este tipo de función gasta gas cuando se usa.
Los botones azules son funciones que son de solo lectura y no cambian nada almacenado en la cadena de bloques. No necesitamos gastar gasolina al usarlos.
En primer lugar, comprobaremos el valor almacenado en la implementación.
Haga clic en el botón obtener:
No tenemos ningún valor almacenado, porque no definimos nada en el momento en que implementamos.
En la parte inferior derecha, podemos comprobar que se trata de una llamada a la función `SimpleStorage.get()`:
Ponga un valor en el campo a la derecha del botón de configuración y haga clic en el botón:
Se abrirá una ventana emergente de Metamask para confirmar la transacción para almacenar un valor.
Haga clic en confirmar
En la parte inferior derecha, podemos verificar que la transacción está pendiente, esperando confirmación en blockchain:
¡Después de unos segundos, Metamask mostrará cuando se haya confirmado la transacción!
En la parte inferior derecha, tenemos los detalles de la transacción:
También puede copiar el hash de la transacción y verificarlo en RSK explorer:
0xb9f4d73e7555d2b3cdf516f2d3044daa58669f7324cb957f2b83da21a6c89b4b
Ahora tenemos guardado el valor 2020, y podemos comprobarlo.
Haga clic en el botón obtener
¡Y el valor es correcto!
Es posible verificar todas las transacciones en Metamask:
Espera al próximo artículo donde te enseñaremos a crear un frontend para nuestro contrato inteligente.
Consulte el portal de desarrolladores de RSK .
Hemos realizado un seminario web en el que repasamos este tutorial, en diferentes idiomas:
| |
Pregunte en el chat de RSK .
¿Pensaste que sería tan fácil usar Remix y Metamask para crear un contrato inteligente que se pueda usar tanto en redes Ethereum como RSK?
Le mostré cómo podemos usar algunas herramientas de desarrollo de Ethereum, y es genial darse cuenta de que también se pueden usar en la red RSK.
Nuestro objetivo es unir fuerzas y dar opciones a las personas que creen en los contratos inteligentes basados en Ethereum, y también creen en el poder de Bitcoin, a través de RSK.
Espero que este tutorial haya sido útil y agradecería sus comentarios. Compártelo si te gusta :)
Autor : Solange Gueiros | Crítico : Brendan Graetz