Tutorial de Ethereum para principiantes: contratos inteligentes, DApps, beneficios y limitaciones

Publicado: 2021-03-11

Imagina que estás en una de estas situaciones:

  • Su cuenta de billetera electrónica fue bloqueada por la plataforma por alguna razón.
  • Tu empresa tiene que trabajar para un cliente pero no sabes si puedes confiar en él o no.
  • Su cuenta de redes sociales fue pirateada.

Todas estas situaciones son bastante dolorosas, ¿verdad? ¿Y si te dijéramos que existe una tecnología que ofrece soluciones para todas estas situaciones (y muchas más)? Esa tecnología es Ethereum y este tutorial de Ethereum para principiantes te familiarizará más con ella.

Aprenda la certificación de desarrollo de software en línea de las mejores universidades del mundo. Obtenga Programas PG Ejecutivos, Programas de Certificado Avanzado o Programas de Maestría para acelerar su carrera.

Tabla de contenido

Ethereum: una breve historia

Aquí hay una línea de tiempo de todo lo que necesita saber sobre el desarrollo de Ethereum:

  • Noviembre de 2013 : Vitalik Buterin, un desarrollador inicialmente involucrado en Bitcoins, publicó un documento técnico sobre Ethereum.
  • Enero de 2014 : una empresa suiza, Ethereum Switzerland GmbH, anunció el desarrollo del proyecto de software Ethereum dirigido por un equipo de desarrolladores que incluye a Vitalik Buterin, Mihai Alisie, Anthony Di Iorio y Charles Hoskinson.
  • Agosto de 2014 : Ethereum finaliza su ICO y recauda con éxito US$18,4 millones.
  • Mayo de 2015 : Ethereum lanza su primera red de prueba, Olympic.
  • Julio de 2015 : se lanzó Frontier, la primera versión de Ethereum.
  • Marzo de 2016 : se lanzó Homestead, la segunda actualización de la versión de la red Ethereum.
  • Mayo de 2016 : Ethereum obtiene una amplia cobertura mediática cuando la DAO (Organización Autónoma Descentralizada) recaudó un récord de $ 150 millones en una venta multitudinaria.
  • Junio ​​de 2016 : se produce el hackeo de DAO, lo que genera una pérdida de 50 millones de dólares en Ether (constituía casi el 15 % del total de Ether en circulación en ese entonces).
  • Julio de 2016 : la red Ethereum se dividió en dos partes: Ethereum (ETH) y Ethereum Classic (ETC).
  • Junio ​​de 2017: Ethereum gana más de $400 con un aumento récord del 5001 % desde el 1 de enero de 2017.

¿Qué es Ethereum?

Ethereum es una solución de software descentralizada, de código abierto y basada en blockchain que utilizamos para crear su propia criptomoneda llamada ether. Le permite crear y ejecutar aplicaciones distribuidas (DApps) y contratos inteligentes en su plataforma sin fraude, tiempo de inactividad o interferencia de terceros.

Además de ser una plataforma robusta, Ethereum también es un lenguaje de programación (Turing Complete) que se ejecuta en blockchain. En términos simples, Ethereum es una plataforma descentralizada que puede usar para programar una moneda digital.

Ethereum es la aplicación de software descentralizada más grande y, con su ayuda, puede crear y publicar fácilmente DApps de próxima generación.

Desde su llegada, Ethereum ha transformado por completo la industria de la cadena de bloques. Antes de su llegada, las soluciones basadas en blockchain no eran capaces de realizar un conjunto diverso de aplicaciones. Por ejemplo, Bitcoin y otras criptomonedas solo podían operar como monedas digitales mientras que Ethereum llegó como una plataforma para que los desarrolladores crearan programas basados ​​en Blockchain.

Ethereum es accesible para todos y permite que todos desarrollen un programa basado en la cadena de bloques de Ethereum. Según Ethereum.org , "Ethereum es la cadena de bloques programable del mundo".

Las personas detrás de Ethereum tomaron los conceptos fundamentales de Bitcoin y criptomonedas similares y les agregaron más funcionalidades y crearon esta solución de cadena de bloques muy popular.

A partir de septiembre de 2019 , Ethereum era la segunda criptomoneda más grande del mundo y solo estaba detrás de la aplicación de cadena de bloques más popular, Bitcoin. Sin embargo, puede adquirir ether (la criptomoneda de Ethereum) mucho más rápido en comparación con Bitcoin, ya que el primero solo toma de 14 a 15 segundos, mientras que el segundo toma casi diez minutos.

Para comprender correctamente Ethereum, debe estar familiarizado con algunos componentes fundamentales de esta tecnología. Los siguientes son los aspectos principales de Ethereum que debe conocer:

  • Éter
  • Gas
  • Máquina virtual Ethereum
  • Contratos inteligentes
  • DApps (Aplicaciones Descentralizadas)

En las siguientes secciones de nuestro tutorial de Ethereum para principiantes, cubriremos estos conceptos y comprenderemos el funcionamiento interno de esta plataforma blockchain:

Ethereum: términos importantes que debe conocer

1. Emisión de moneda

En todos los países, la emisión de moneda es administrada y supervisada principalmente por el banco central de una nación o la autoridad monetaria del país. Por ejemplo, en India, el RBI es la autoridad monetaria que regula a todos los demás bancos y autoridades financieras.

2. Organismo Autónomo Descentralizado

La Organización Autónoma Descentralizada es una organización digital administrada y regulada por un conjunto de reglas codificadas como un programa informático que no está influenciado por una autoridad de gobierno central: es totalmente transparente y está controlada por los accionistas. Las prácticas de DAO y los registros de transacciones financieras se mantienen en una red Blockchain.

3. Contratos inteligentes

Un contrato inteligente es un protocolo informático diseñado para facilitar y verificar la negociación o ejecución del contrato entre dos o más partes. Estos contratos digitales se basan en un sistema de consenso y se llevan a cabo sin la intervención de ningún tercero.

4. Propiedad inteligente

La propiedad inteligente podría significar tanto activos físicos como criptoactivos (acciones, derechos de acceso a una red, etc.) que se construyen en Ethereum. La propiedad de la propiedad inteligente se controla a través de Ethereum Wallet que funciona como puerta de entrada a DApps en la cadena de bloques de Ethereum.

5. Solidez

Solidity es un lenguaje orientado a objetos de alto nivel que se utiliza para implementar contratos inteligentes en Ethereum. Se inspiró en los lenguajes de programación C ++, Python y JavaScript y fue diseñado para apuntar a la máquina virtual Ethereum (EVM)

6. Máquina virtual Ethereum

La máquina virtual Ethereum (EVM) es un entorno de tiempo de ejecución diseñado para contratos inteligentes. Esencialmente, EVM es una capa de computadora virtual justo encima del hardware subyacente. Estas capas virtuales crean un nivel de abstracción entre el código de ejecución y la máquina de ejecución. EVM ayuda a mejorar la portabilidad del software y también garantiza que las aplicaciones no solo estén separadas entre sí, sino también de su host.

7. Transacciones

Las transacciones son mensajes que se envían de una cuenta a otra. Incluyen datos binarios que se llaman Ether. Es una transferencia de valor/es que se transmite a la red Ethereum y se recopila en bloques.

La red Ethereum

A estas alturas, ya sabe que la red Ethereum es una red Blockchain pública distribuida y descentralizada. Sin embargo, hay mucho más. Ethereum es la base de todas las organizaciones y aplicaciones P2P descentralizadas que se ejecutan en la red Ethereum. Esta red está compuesta por dos nodos únicos: nodos completos y nodos ligeros.

Los nodos completos son aquellos que contienen el historial completo de transacciones desde el bloque génesis (padre) . Registran cada transacción que ha sido validada y verificada de acuerdo con las reglas establecidas en las especificaciones de Ethereum. Por lo tanto, los nodos completos son prueba de la integridad, seguridad y transparencia de la red Blockchain.

A diferencia de los nodos completos, los nodos ligeros solo contienen un subconjunto de toda la Blockchain. Los nodos ligeros no verifican todas las transacciones y pueden o no tener una copia del estado actual de Blockchain. Dependen principalmente de los nodos completos para proporcionarles detalles faltantes o funcionalidades particulares específicas. Como sugiere el nombre, los nodos livianos son livianos y, por lo tanto, pueden ejecutarse más rápido en dispositivos con limitaciones de memoria. Los nodos livianos se utilizan principalmente en monederos electrónicos que son inherentemente livianos.

¿Qué es el éter?

Ether es la criptomoneda que usa en la red Ethereum para realizar pagos por transacciones. Puede usar Ether de las siguientes dos maneras:

  1. Las aplicaciones requieren el pago de Ether para realizar cualquier operación en la plataforma para evitar que se ejecuten programas maliciosos y rotos en la red.
  2. La red usa Ether para recompensar a los mineros que contribuyen a la red Ethereum como lo hace Bitcoin.

Además de estas aplicaciones, puede usar Ether para comprar Gas, que hemos cubierto en la siguiente sección de nuestro tutorial de Ethereum para principiantes. En Ethereum, Ether es una unidad métrica que le permite pagar el gas y las transacciones con precisión. La denominación más pequeña para Ether es Wei. Un éter tiene 1e18 Wei.

¿Qué es el gas?

Ether no es la única moneda digital disponible en Ethereum. Cuando ejecuta una transacción en Ethereum, debe realizar un pago de Ether al minero a través de Gas. El gas es un token intermediario y le permite medir el trabajo computacional necesario para completar una transacción o ejecutar un contrato inteligente.

El precio del Gas está expresado en Ether. Además, los mineros determinan el precio del gas y pueden negarse a ejecutar un contrato inteligente o procesar una transacción que no ofrezca el precio del gas requerido.

Calculamos la tarifa de transacción en Ethereum a través de la siguiente ecuación:

Éter = límite de gas x precio del gas

Aquí, Gas Price es la cantidad de Ether que debe pagar y Gas Limit es la cantidad de Gas utilizada para el proceso de cálculo. El límite de gas y el precio del gas aseguran que un contrato finaliza en un punto determinado.

¿A dónde va el gas en el éter? Va en la máquina virtual Ethereum (EVM), que hemos cubierto en la siguiente sección:

¿Qué es la Máquina Virtual Ethereum?

La Máquina Virtual Ethereum es el lugar donde se realizan todas las transacciones en Ethereum. Te permite desarrollar todas las aplicaciones en una única plataforma. Podemos decir que el EVM es el motor que ejecuta toda la red Ethereum.

Si bien Ethereum ha establecido protocolos definidos para desarrollar aplicaciones descentralizadas, ha podido hacerlo gracias a EVM. La máquina virtual de Ethereum está aislada y protegida. Significa que el código que ejecuta el EVM no tiene acceso al sistema de archivos ni a la red y tiene muy poco acceso a otros contratos.

Cuando ingresa su código de Solidity en Ethereum, primero va al compilador de Ethereum. Después de eso, envía el código de bytes EVM a la máquina virtual Ethereum que se encarga del resto del proceso.

El EVM gestiona el cálculo y el estado interno de Ethereum. Ejecuta código, mantiene una base de datos interna y tiene numerosos objetos llamados "cuentas" que pueden comunicarse entre sí.

¿Qué son los contratos inteligentes?

Un contrato inteligente es un programa informático que se ejecuta automáticamente. Como protocolo de transacción, le permite intercambiar bienes, dinero y servicios a través de blockchain. Los contratos inteligentes tienen condiciones específicas establecidas por ambas partes entre sí y cuando ambas partes cumplen con sus respectivas condiciones, el contrato inteligente se ejecuta en consecuencia.

Con los contratos inteligentes, puede realizar varias tareas, como la votación descentralizada y mucho más. En términos simples, un contrato inteligente es un contrato que ejecuta, hace cumplir, administra y maneja el pago automáticamente.

Para ejecutar un contrato inteligente en Ethereum, necesitará tokens (Ether). Sin la criptomoneda requerida, no puede usar contratos inteligentes en Ethereum.

Para crear un contrato inteligente, deberá usar Solidity, el lenguaje de programación de propósito general de Ethereum. Está desarrollado para ejecutarse en la máquina virtual de Ethereum y le permite realizar cálculos arbitrarios, almacenar estados y realizar transacciones de tokens digitales.

Los contratos inteligentes ofrecen múltiples ventajas por lo que son cada vez más populares. La mayor ventaja de usar contratos inteligentes es que eliminan la necesidad de tener un intermediario.

Como los contratos inteligentes son automáticos, no hay margen de error humano. Son presentes virtuales y son bastante asequibles en comparación con los contratos tradicionales. Los contratos inteligentes tienen casos de uso potenciales en múltiples industrias, que incluyen:

  • Cuidado de la salud
  • Finanzas y Banca
  • Servicios B2B (servicios de TI, servicios de marketing, etc.)

Lea también: Ideas y temas del proyecto Ethereum

¿Qué son las DApps?

Una DApp o aplicación descentralizada es una aplicación de software que se ejecuta en una red distribuida. Está alojado en una red descentralizada de igual a igual en lugar de un servidor central. Una DApp podría ser cualquier aplicación de software, como una aplicación móvil o un sitio web. La distinción entre una DApp y una aplicación convencional es que está construida sobre una red descentralizada.

La interfaz de usuario de una aplicación descentralizada es como la interfaz de cualquier aplicación convencional. Sin embargo, todos los procesos de back-end de una aplicación descentralizada se basan en una red descentralizada.

Ethereum es una red de cadena de bloques descentralizada, por lo que cuando crea una aplicación basada en Ethereum, esencialmente está creando una aplicación descentralizada. Las DApps son un concepto relativamente nuevo, pero se están volviendo muy populares.

A medida que las personas se preocupen más por su privacidad y seguridad, la demanda de DApps aumentará en consecuencia. Aprender sobre ellos temprano puede darle fácilmente una ventaja profesional.

Al igual que las aplicaciones descentralizadas, Ethereum también tiene organizaciones autónomas descentralizadas (DAO). Estas organizaciones existen solo en blockchain y están controladas por los protocolos de blockchain. Estas organizaciones se crean para retener activos y utilizan un sistema de votación para administrar la distribución de los mismos. Aprenda todo lo que necesita saber sobre DApps.

Monedas Etéreas

Como se mencionó anteriormente, la red Ethereum funciona con dos tipos de criptomonedas: Ether y Gas.

1. Éter

Ether es el nombre de la criptomoneda que se utiliza para pagar todas las transacciones realizadas en la red Ethereum. Sin embargo, además de pagar transacciones y servicios generales, Ether también se usa para comprar Gas, que se usa para pagar servicios de cómputo dentro de la EVM.

Ether es una unidad métrica que tiene múltiples denominaciones para ayudar a los usuarios a pagar el monto exacto de las transacciones y Gas. La denominación más pequeña, la unidad base, de Ether se conoce como Wei. Aquí hay una tabla completa de todas las denominaciones de Ether:

2. gasolina

EVM ejecuta el código que se implementa en la red Ethereum. Ahora, puede pensar que uno puede ejecutar eficientemente un ciclo infinito en el EVM y sobrecargar su memoria. Gracias a Gas, esto no es posible.

El gas representa una métrica para los recursos computacionales en la red. A cada contrato en la red Ethereum se le asigna una cantidad máxima de gas que puede usar para los cálculos. Este límite establecido se denomina "Límite de gas". Hay otros dos términos de gas que debe conocer:

Precio del gas : es el precio del gas en términos de tokens como Ether y sus denominaciones. El Precio del Gas es un valor flotante que ayuda a estabilizar el valor del Gas. Entonces, si el costo de los tokens o la moneda fluctúa, el Precio del Gas también se ajusta para mantener el mismo valor real.

Tarifa de gas : representa la cantidad de gas que se requiere pagar para ejecutar una transacción o programa en particular (contrato).

Por lo tanto, si alguna vez intenta ejecutar un código infinito (uno que se ejecuta para siempre), eventualmente el contrato excederá su límite de gas asignado y toda la transacción que invocó el contrato volverá a su estado original.

¿Cuáles son los beneficios y limitaciones de Ethereum?

En esta sección de nuestro tutorial de Ethereum para principiantes, veremos las diversas ventajas de esta plataforma blockchain:

  • Con Ethereum, puede cargar y solicitar programas para ejecutar.
  • Ofrece almacenamiento de datos permanente y persistente.
  • Puede crear un token negociable que puede usar como acción virtual o como moneda digital.
  • Ofrece 100% de tiempo de actividad y resistencia DDoS (Distributed Denial of Service).
  • Puede crear organizaciones virtuales (DAO) en Ethereum.
  • Le permite crear DApps altamente seguras y tolerantes a fallas.

Sin embargo, como cualquier otra tecnología, Ethereum tiene sus limitaciones. Aquí hay algunas desventajas de Ethereum:

  • Las aplicaciones que requieren verificación de ID de usuario serán problemáticas para construir en Ethereum ya que no habría una autoridad central para realizar la verificación.
  • Actualizar una aplicación o corregir errores puede ser un gran desafío porque cada compañero tendría que actualizar su software de nodo.

Minería en Ethereum

Como cualquier otra tecnología Blockchain, Ethereum promueve la seguridad a través de un modelo basado en incentivos, conocido popularmente como mecanismo de prueba de trabajo. El algoritmo de prueba de trabajo utilizado en Ethereum se llama Ethash, un algoritmo hash inspirado en el algoritmo Dagger-Hashimoto.

Los pasos en la minería de Ethereum son los siguientes:

  • Un usuario inicia una transacción enviando valores de Ether a otro usuario.
  • Esta nueva transacción luego se agrega en un nuevo bloque junto con las otras transacciones contenidas en el bloque anterior.
  • Los mineros de la red compiten para validar el nuevo bloque con un conjunto específico de instrucciones.
  • El minero que puede validar con éxito el nuevo bloque y agregarlo a la red recibe una recompensa, es decir, un Ether.
  • Una vez que se valida la transacción, el usuario que inició la transacción también gana un Ether.

Tutorial de Ethereum para principiantes: ¿Qué sigue?

Ethereum es una gran tecnología con múltiples aspectos. Aprender sobre sus diversas secciones, como los contratos inteligentes y la minería, puede ser bastante engorroso sin suficientes recursos y orientación. Como habrás visto en nuestro tutorial de Ethereum para principiantes, si entiendes Blockchain y su implementación en Ethereum, trabajar con esta tecnología se vuelve pan comido.

Es por eso que recomendamos tomar un curso de blockchain que cubra Ethereum y todos sus aspectos técnicos. Un curso de blockchain le proporcionará un plan de estudios estructurado para que pueda estudiar de manera eficiente y efectiva.

En upGrad, ofrecemos múltiples cursos de blockchain que lo ayudan a comprender los conceptos básicos y avanzados de blockchain con Ethereum. Aprenderá qué es blockchain, qué es Ethereum, cómo funcionan juntos y cómo puede usarlos como un profesional de blockchain.

En upGrad, obtienes los siguientes cursos de blockchain:

Maestría en Ciencias en Ciencias de la Computación (Se ofrece Especialización en Desarrollo de Blockchain)

upGrad ofrece este programa con la Universidad John Moores de Liverpool. Tiene una duración de 19 meses y ofrece más de 500 horas de material de estudio. Durante este programa, obtendrá una tutoría grupal quincenal con mentores de la industria y más de 30 proyectos y asignaciones. Es un excelente curso de blockchain para personas que no tienen antecedentes tecnológicos.

Solicite el Programa de Certificado Avanzado en Blockchain

Este curso tiene una duración de 7,5 meses y te ofrece más de 250 horas de aprendizaje. Obtendrá el estado de ex alumno de IIIT Bangalore y una tutoría personalizada 1: 1 de expertos de la industria de blockchain. Además de Ethereum, también aprenderá sobre Hyperledger Fabric, contratos inteligentes y mucho más.

Programa PG Ejecutivo en Desarrollo de Software - Especialización en Blockchain

Este curso de 13 meses le otorgará una certificación ejecutiva de 4 meses en ciencia de datos y aprendizaje automático de forma gratuita. Estudiarás a través de conferencias en vivo y sesiones en línea durante este programa y aprenderás más de 10 herramientas y lenguajes de programación. Además de eso, puede probar su conocimiento de blockchain y Ethereum

Todos los cursos anteriores requieren que tenga una licenciatura con 50% o calificaciones de aprobación equivalentes. Tenga en cuenta que puede inscribirse en cualquiera de estos cursos sin ninguna experiencia de codificación. Aprenderás todas las habilidades necesarias para convertirte en un profesional calificado.

Conclusión

Ethereum es sin duda una tecnología fenomenal. Al completar este tutorial de Ethereum para principiantes, ciertamente ha dado el primer paso para aprender sobre esta tecnología.

Ethereum Blockchain tiene muchas más aplicaciones que vale la pena destacar. Las carreras en el campo de Blockchain están aumentando a medida que ha cambiado el panorama de la tecnología.

Domina la Tecnología del Futuro - Blockchain

Solicite el Programa de Certificado Avanzado en Blockchain