Centro de

Documentación

Biblioteca

Catálogo en línea

Creación de contratos en la Red Blockchain de Ethereum con Solidity

Creación de contratos en la Red Blockchain de Ethereum con Solidity Wilmar Alonso Ramírez Gil, Carlos Mario Ramírez Gil. - 1ra Ed. - Colombia Ediciones de la U 2023 - 435 Pág. 24 x 17 cm.

INDICE
-PREFACIO
-AUTORES
-CAPÍTULO 1. INTRODUCCIÓN A BLOCKCHAIN, ETHEREUM Y
-CONTRATOS INTELIGENTES
1.1 ETHEREUM
1.1.1 Criptografía asincrónica
1.1.2 Función hash criptográfica.
1.1.3 Red Peer-to-Peer..
1.1.4 Blockchain.
1.1.5 Máquina virtual de Ethereum (EVM)
1.1.6 Nodo
1.1.7 Minero
1.1.8 Prueba de trabajo (PoW, proof of work)
1.1.9 App descentralizada (DApp)
1.1.10 Solidity
1.2 CONTRATO INTELIGENTE
1.3 GAS.
1.3.1 ¿Por qué GAS?.
1.3.2 Componentes del GAS
1.4 ETHER
1.5 CUENTAS
1.6 TRANSACCIÓN
-CAPÍTULO 2. PREPARANDO EL ENTORNO. HERRAMIENTAS Y FRAMEWORKS DE DESARROLLO......
2.1 LENGUAJES DE DESARROLLO
2.2 COMPILADORES
2.3 HERRAMIENTAS Y LIBRERIAS
2.3.1 Node.js.
2.3.2 Ganache.
2.4 FRAMEWORKS
2.4.1 Truffle
2.4.2 Embark
2.4.3 Brownie
2.4.4 Hardhat
2.4.5 OpenZeppelin.
2.5 ENTORNO DE DESARROLLO INTEGRADO-IDE.
2.5.1 Visual Studio Code
2.5.2 Remix
2.6 WEB3.JS
2.6.1 Paquetes Web3.js.
2.6.2 Interactuar con contratos a través de interfaces.
2.7 METAMASK
2.7.1 Instalación de la extensión MetaMask para Chrome..
2.8 REDES ETHEREUM.
2.8.1 Redes públicas.
2.8.2 Red principal
2.8.3 Redes de prueba
2.8.4 Faucets de redes de prueba.
2.9 ETHERSCAN
-CAPÍTULO 3. LOS CONTRATOS INTELIGENTES
3.1 HISTORIA
3.2 DEFINICIÓN.
3.3 CONTRATOS RICARDIANOS
3.4 PLANTILLAS DE CONTRATOS INTELIGENTES
3.5 ORACULOS.
3.5.1 Pruebas asistidas por software y red
3.5.2 TLSNotary
3.5.3 Mecanismo basado en TLS-N
3.5.4 Pruebas asistidas por dispositivos de hardware.
3.5.5 Tipos de oráculos de blockchain
3.5.6 Implementación de contratos inteligentes.
-CAPÍTULO 4. CONCEPTOS BÁSICOS DE SOLIDITY
4.1 ESTRUCTURA DEL ARCHIVO SOL
4.1.1 Importar
4.1.2 Pragma..
4.1.3 Comentarios
4.1.4 Contrato
4.1.5 Librerias
4.1.6 Interface.
4.2 ESTRUCTURA DEL CONTRATO
4.3 VARIABLE.
4.3.1 Tipo de valor.
4.3.2 Tipo de referencia..
43.3 Mapping
4.3.4 Caso especial
4.4 OPERADORES
4.5 DECLARACIONES
4.5.1 Declaración condicional
4.5.2 Bucle (Loop)
4.5.3 Misceláneos.
4.6 UBICACIÓN DE DATOS
4.7 MODIFICADOR
4.7.1 Modificador eståndar.
4.7.2 Modificador autodefinido
4.8 EVENTO.
4.8.1 Valor de retorno a la interfaz de usuario,
4.8.2 Disparador asincrono con datos
4.8.3 Almacenamiento barato...
4.8.4 Parametro indexado en evento
4.9 HERENCIA
4.9.1 Herencia Unica
4.9.2 Herencia múltiple
4.10 VARIOS
4.10.1 Variable incorporada
4.10.2 Unidad Especial..
4.10.3 Tipo Cast e inferencia.
4.10.4 Excepción.
-CAPÍTULO 5. CREE SU PRIMER CONTRATO INTELIGENTE CON REMIX...
5.1 REMIX.
5.2 ESCRIBIENDO UN CONTRATO INTELIGENTE BÁSICO
5.3 COMPILANDO NUESTRO CONTRATO INTELIGENTE
5.4 AGREGAR ALGUNAS PRUEBAS A NUESTRO CONTRATO INTELIGENTE
5.5 IMPLEMENTAR NUESTRO CONTRATO INTELIGENTE EN LA RED DE PRUEBA DE RINKEBY
5.6 INTERACTUAR CON NUESTRO CONTRATO INTELIGENTE IMPLEMENTADO DE REMIX
-CAPÍTULO 6. TEMAS AVANZADOS DE SOLIDITY
6.1 PALABRA CLAVE "THIS"
6.2 ERC20 INTERFACE
6.2.1 Métodos
6.2.2 Eventos
6.23 OpenZeppline
6.3 ERC721 INTERFACE.
6.3.1 Protocolo ERC721
6.3.2 Metadata
6.3.3 Extensión enumerable
6.3.4 Protocolo ERC165
6.4 LLAMADA ENTRE CONTRATOS
6.4.1 Función Call.
6.4.2 Inyección de dependencia
6.4.3 Mensaje de llamadas
6.4.4 Valor de retorno de la llamada de contrato.
6.5 ALGORITMOS BÁSICOS
-CAPÍTULO 7. INTERFAZ BINARIA DE APLICACIÓN (ABI).
7.1 ESTRUCTURA DE LA MEMORIA
7.2 SELECTOR DE FUNCIONES.
7.3 DEFINICIÓN DE TIPO
7.4 PRESENTACIÓN DE DATOS EN EVM
7.4.1 Presentación del tipo de datos de longitud fija.
7.4.2 Presentación del tipo de datos dinámicos.
7.5 CODIFICAR
7.5.1 Un ejemplo sencillo
7.5.2 Un ejemplo de llamada externa.
7.5.3 Codificación ABI para llamada de método externo.
7.6 PROGRAMACIÓN ABI
-CAPÍTULO 8. PRINCIPIOS DE FUNCIONAMIENTO DE LOS CONTRATOS
-INTELIGENTES
8.1 PATRÓN DE DISEÑO
8.1.1 Contrato Self-Desctruction.
8.1.2 Contrato de fabrica
8.1.3 Registro de nombres.
8.1.4 Iterador de Mapping.
8.1.5 Patrón de retiro
8.2 AHORRE COSTOS DE GAS
8.2.1 Cuidado con los tipos de datos.
8.2.2 Almacenar valores en formato codificado en bytes.
8.2.3 Comprimir variables con el compilador SOLC..
8.2.4 Comprimir variables usando código ensamblador.
8.2.5 Parámetros de funciones de concatenación
8.2.6 Uso de pruebas de Merkle para reducir la carga de almacenamiento
8.2.7 Contratos sin estado
8.2.8 Almacenamiento de datos en IPFS.
8.2.9 Compactación de bits
8.2.10 Procesamiento por lotes
8.2.11 Separación de lectura y escritura en el struct de almacenamiento......
8.2.12 uint256 y almacenamiento directo en memoria
8.2.13 Optimización de ensamblaje
8.3 EL ENSAMBLADO.
8.3.1 Pila (stack).
8.3.2 Calldata.
8.3.3 Memoria
8.3.4 Almacenamiento.
8.4 DECONSTRUIR CONTRATO INTELIGENTE
8.4.1 Creación de contratos
8.4.2 Parte General del Cuerpo del Contrato.
8.4.3 Cuerpos de contrato..
-CAPÍTULO 9. CASO DE APLICACIÓN. CONSTRUCCIÓN CONTRATO INTELIGENTE: RELACIÓN COMERCIAL ENTRE UN EMPLEADOR Y UN PROFESIONAL INDEPENDIENTE(FREELANCER)
9.1 DESCRIPCIÓN BÁSICA DEL PROBLEMA
9.1.1 Solucionando el problema con un contrato inteligente
9.1.2 Comprensión del contrato inteligente ESCRITURA DEL CÓDIGO DEL CONTRATO INTELIGENTE
9.2.1 Definir la versión.
9.2.2 Estructura del contrato
9.2.3 Variable de almacenamiento (global)
9.2.4 El constructor
9.2.5 Modificadores.
9.2.6 Los eventos.
9.2.7 El método createRequest
9.2.8 El método unlockRequest
9.2.9 El método payRequest.
9.2.10 El método complete Project.
9.2.11 El método cancel Project
9.2.12 El método increase Deadline
-CAPÍTULO 10. CASO DE APLICACIÓN. IMPLEMENTACIÓN DE UN CONTRATO INTELIGENTE DE VOTACIÓN.
10.1 CONCEPTUALIZACIÓN DEL CONTRATO INTELIGENTE PARA VOTACIONES
10.2 CÓDIGO FUENTE DEL CONTRATO INTELIGENTE PARA VOTACIONES
10.3 EXPLICACIÓN DEL CONTRATO INTELIGENTE. ANALISIS POR GRUPOS DE LÍNEAS DE CÓDIGO.
-CAPÍTULO 11. CASO DE APLICACIÓN. CONSTRUCCIÓN CONTRATO INTELIGENTE: COMPRA Y VENTA DE UN BIEN O SERVICIO....
11.1 COMPRENSIÓN DEL CONTRATO INTELIGENTE
11.2 CÓDIGO FUENTE DEL CONTRATO INTELIGENTE:
-COMPRA Y VENTA DE UN BIEN O SERVICIO
11.3 EXPLICACIÓN DEL CONTRATO INTELIGENTE.
-ANÁLISIS POR GRUPOS DE LÍNEAS DE CÓDIGO
-CAPÍTULO 12. ACTUALIZACIÓN DE UN CONTRATO INTELIGENTE.
12.1 SOLUCIÓN
12.1.1 Contratos Proxi.
12.1.2 Separar In lógica y los datos del contrato...
12.1.3 Lógica y datos separados mediante valor-clave.
12.1.4 Estrategias parcialmente actualizables
12.1.5 Comparación
12.1.6 Simple contrato proxi
12.2 LLAMADA DE PROXY GENÉRICO A ETHEREUM.
12.3 ALMACENAMIENTO
12.3.1 Almacenamiento heredado
12.3.2 Almacenamiento eterno.
12.3.3 Almacenamiento no estructurado.
12.4 AUGUR
12.4.1 Implementación de contrato
12.4.2 Implementación de almacenamiento
12.5 COLONY...
12.5.1 Implementación de contrato
12.5.2 Almacenamiento
-CAPÍTULO 13. SEGURIDAD DE LOS CONTRATOS INTELIGENTES..
13.1 ¿POR QUÉ DEBEMOS PREOCUPARNOS POR LA SEGURIDAD?..........
13.1.1 Tipos de vulnerabilidades de contratos inteligentes.
-CAPÍTULO 14. DISEÑO E IMPLEMENTACIÓN DE UNA APLICACIÓN DESCENTRALIZADA-DAPP...
14.1 ¿QUÉ SON LAS APLICACIONES DESCENTRALIZADAS - DAPP?
14.1.1 ¿Cómo funciona una DAPP?
14.2 CASO DE APLICACIÓN. DISEÑO Y CONSTRUCCIÓN DE UNA DAPP PARA GESTIONAR LA COMPRA Y VENTA DE UN PRODUCTO
-ENTRE UN COMPRADOR Y UN VENDEDOR
14.2.1 Diseño e implementación del contrato inteligente. 14.2.2 Diseño de la interfaz de usuario de la DApp (página web) en el lenguaje de programación HTMLS 14.2.3 Diseño del archivo JavaScript para enlazar la interfaz de usuario, el contrato inteligente y la cadena de bloques.
14.2.4 Diseño del proyecto Truffle para ejecutar la aplicación (Dapp) a través de la interfaz de usuario
14.2.5 Ejecución de la DApp (proyecto Truffle) en la cadena de bloques local Ganache.
-MATERIAL ADICIONAL.

978-958-792-459-6

DESARROLLO DE APLPICACIONES MOVILES
Dirección: Km 1 ½ vía (Tena - Archidona)
soporte@itstena.edu.ec - secretaria.general@itstena.edu.ec
Tena - Ecuador