Ethereum y los contratos inteligentes (Parte 4)

En este apartado vamos a conocer más en profundidaz lo que es Ethereum y los contratos inteligentes que se implementan sobre la cadena de bloques de Ethereum.

¿Qué es Ethereum?

Ethereum, una red blockchain abierta distribuida, fue conceptualizada por Vitalik Buterin en noviembre de 2013. El desarrollo de un lenguaje Turing completo que permite el desarrollo de contratos inteligentes para blockchain y aplicaciones descentralizadas a diferencia de Bitcoin, que no es Turing. El “Ether” es la criptomoneda de Ethereum.

Contratos inteligentes:
los bloques fundamentales de programas compuestos para la plataforma ethereum se denominan “contratos inteligentes”. Se golpea un evento desencadenante y se ejecuta el contrato (programa).
Transacciones en Ethereum:
una transacción en un Ethereum se considera como el paquete de datos que se firma y contiene la información que se enviará desde una cuenta de bloque externa a otra cuenta de cualquier otro bloque que se encuentre en una red diferente.
Los bloques de Ethereum contienen tanto una lista de transacciones como el “estado” más reciente del libro mayor de estas transacciones. Los mineros deben aprobar y validar la transacción. Los mineros son recompensados en caso de que generen el bloque correcto y actualmente son 5 Ether para una minería exitosa.
Consenso en Ethereum:
El consenso es un mecanismo mediante el cual toda la red está de acuerdo sobre el suministro y la división de tokens. El protocal de prueba de trabajo llamado Ethash se usa en la red Ethereum, con la minería igual que Bitoin para encontrar un nonce que una vez haya codificado el resultado en un nivel de dificultad predeterminado. Ethereum usa SHA-3 para el cifrado.
Ethash hace que Ethereum sea resistente a los chips de minería de alta potencia y de fácil acceso a las implementaciones de clientes “ligeras” que permiten a los usuarios sin descargar la cadena de bloques Ethereum en su dispositivo. Sin embargo, los clientes ligeros descargan los encabezados de los bloques como referencia.

Clientes de Ethereum:
existen múltiples implementaciones de clientes en una variedad de diferentes sistemas operativos y lenguajes de programación. Esta diversidad de clientes es importante para la salud a largo plazo de la red Ethereum. Los clientes de Ethereum son como softwares que permiten a los usuarios:

  • Aprueba transacciones / bloques
  • Crear / administrar cuentas
  • Enviar / recibir transacciones desde / hacia sus cuentas de Ethereum
  • Implemente contratos inteligentes en la cadena de bloques
  • Éter “mío” en la cadena de bloques Ethereum

Pocos clientes de Ethereum son Go-Ethereum, Parity, Cpp-Ethereum, Ruby-ethereum, etc.
Solidez:
El lenguaje de programación nativo de Ethereum es Solidity. Solidity es una sintaxis “orientada a contratos”, tipada estáticamente, similar a la de JavaScript. Diseñado para apuntar a la máquina virtual Ethereum (EVM). Admite herencia, bibliotecas. Compila las instrucciones en código de bytes para que luego puedan ser leídas por la red. Los archivos de origen pueden tener definiciones de contrato que son aleatorios en número y esto también tiene las directivas y directivas pragma.
La versión pragma es “pragma solidity ^ 0.4.0;”
MetaMask:
MetaMask es un tipo de billetera Ethereum digital que ayuda a ejecutar Ethereum dApps directamente en su navegador. Configurar una cuenta en MetaMask permite enviar y recibir Ether y también permite implementar Smart Contracts. Para recibir un Ether, debe tener una cuenta Ethereum o una billetera Ethereum para enviar y recibir Ether.
Transacción de gas:
una vez que se ejecuta un contrato, Ethereum consume ‘gas’, estos son como tokens para ejecutar los cálculos. Una tarifa de transacción impuesta a los mineros se cobra como una cierta cantidad de Ether y se toma del saldo de la cuenta del originador de la transacción. Cuanto mayor sea la tarifa, mayores son las posibilidades de que los mineros recojan las transacciones para su inclusión en el bloque. Proporcionar muy poco gas resultará en una transacción fallida.

Relacionado

Cantante Haizea: Descubriendo Influencers

Cantante y artista independiente Haizea, puedes encontrarla por @haizeaxs en las redes sociales y Haizea en Spotify.

Framework MAVO: Creando aplicaciones exclusivamente con HTML

Crear aplicaciones web sin Javascript ahora ya es posible, con el Framework Mavo ¿Qué es MAVO? Mavo te ayuda a convertir tu HTML estático en aplicaciones web reactivas sin una sola línea de código de programación y sin servidor backend. Mavo amplía la sintaxis de HTML para describir las aplicaciones web que administran, almacenan y transforman datos. Almacena tus datos en la nube, localmente o no, ¡SEGUIR LEYENDO!

Firefox 57, una nueva generación de navegador

Lanzamiento del nuevo navegador de Mozilla Firefox, versión 57; que incluye una nueva versión de ventanas que quiere revolucionar el aspecto de los navegadores web.

Chocolatey, el mejor instalador y actualizador de aplicaciones

Si eres un auténtico ciberninja seguro que eres un amante de probar todo software que encuentras, te parece interesante o te aconsejan. Lo que con toda seguridad más de un día, te habrá hecho echar humo, al terminar harto de pulsar siguiente, siguiente, siguiente en la instalación de ese engorroso programa o de realizar constantes actualizaciones de los software. Muchas veces nos obligan a descargar de ¡SEGUIR LEYENDO!

Aprender a programar es cada vez más difícil

Este artículo transcribe una publicación de Allen Downey, en la que se expone su opinión sobre la dificultad de aprender a programar en la era actual, en la que existen los smarthphones como dispositivo principal y todos los servicios se basan en el mundo de la red. He escrito varios libros que usan Python para explicar temas como Estadística Bayesiana y Procesamiento Digital de Señales. Junto ¡SEGUIR LEYENDO!

Deja un comentario