⚠️ ¡Advertencia! este glosario está en constante actualización, por lo que algunos términos pueden no estar presentes o estar incompletos. Si tienes alguna sugerencia o corrección, no dudes en contactarme.
ICAP
Protocolo de Dirección de Cliente entre Intercambios. Una codificación de dirección de Ethereum parcialmente compatible con el Código Internacional de Cuenta Bancaria (IBAN), ofreciendo una codificación versátil, con comprobación de suma y interoperable para direcciones de Ethereum. Las direcciones ICAP utilizan un nuevo código pseudo-país IBAN: XE, que significa “eXtended Ethereum”, como se utiliza en monedas no jurisdiccionales (por ejemplo, XBT, XRP, XCP).
Immutable Deployed Code Problem
Una vez que el código de un contrato (o biblioteca) se implementa, se vuelve inmutable. Esto representa un desafío para el desarrollo de contratos inteligentes, ya que las prácticas estándar de desarrollo de software confían en la capacidad de corregir posibles errores y agregar nuevas funciones.
Internal Transaction (también “message”)
Una transacción enviada desde una cuenta de contrato a otra cuenta de contrato o a una cuenta propiedad externa (EOA).
IPFS
Sistema de Archivos Interplanetario. Un protocolo, red y proyecto de código abierto diseñado para crear un método de almacenamiento y compartición de hipermedios direccionable por contenido, punto a punto y distribuido.
KDF
Función de Derivación de Clave. También conocida como “algoritmo de estiramiento de contraseña”, se utiliza en formatos de almacenamiento de claves para proteger contra ataques de fuerza bruta, diccionario y tablas arco iris en el cifrado de contraseñas, repitiendo el hash de la contraseña.
Keccak-256
Función criptográfica de hash utilizada en Ethereum. Keccak-256 fue estandarizado como SHA-3.
Keystore File
Un archivo codificado en JSON que contiene una única clave privada (generada aleatoriamente), cifrada por una frase de contraseña para mayor seguridad.
LevelDB
Un almacén de clave y valor en disco de código abierto, implementado como una biblioteca ligera y de un solo propósito, con enlaces a muchas plataformas.
Library
Un tipo especial de contrato que no tiene funciones pagables, ninguna función por defecto y no tiene almacenamiento de datos. Por lo tanto, no puede recibir ni retener ether ni almacenar datos. Una biblioteca sirve como código ya implementado que otros contratos pueden llamar para realizar cálculos de solo lectura.
Lightweight Client
Un cliente Ethereum que no almacena una copia local de la cadena de bloques ni valida bloques y transacciones. Ofrece funciones de una billetera y puede crear y transmitir transacciones.
Merkle Patricia Tree
Una estructura de datos utilizada en Ethereum para almacenar eficientemente pares de clave-valor.
Message
Una transacción interna que nunca se serializa y solo se envía dentro de la EVM.
Message Call
La acción de pasar un mensaje de una cuenta a otra. Si la cuenta de destino está asociada con código EVM, se iniciará la VM con el estado de ese objeto y se actuará sobre el mensaje.
METoken
Token de Mastering Ethereum. Un token ERC20 utilizado con fines demostrativos en este libro.
Miner
Un nodo de red que encuentra una prueba de trabajo válida para nuevos bloques, mediante el hash repetido.
Mist
El primer navegador habilitado para Ethereum, construido por la Fundación Ethereum. Contiene una billetera basada en navegador que fue la primera implementación del estándar de tokens ERC20. Mist también fue la primera billetera en introducir la comprobación de suma camelCase (EIP-55).
Network
Refiriéndose a la red Ethereum, una red de pares a pares que propaga transacciones y bloques a cada nodo Ethereum (participante de la red).
NFT
Token no fungible (también conocido como “deed”). Este es un estándar de token introducido por la propuesta ERC721. Los NFT pueden rastrearse y comercializarse, pero cada token es único y distintivo; no son intercambiables como los tokens ERC20. Los NFT pueden representar la propiedad de activos digitales o físicos.
Node
Un cliente de software que participa en la red Ethereum.
Nonce
En criptografía, un valor que solo se puede usar una vez. Hay dos tipos de nonce utilizados en Ethereum: un nonce de cuenta es un contador de transacciones en cada cuenta, que se utiliza para evitar ataques de reproducción; un nonce de prueba de trabajo es el valor aleatorio en un bloque que se utilizó para satisfacer la prueba de trabajo.
Ommer
Un bloque secundario de un ancestro que no es en sí mismo un ancestro. Cuando un minero encuentra un bloque válido, otro minero puede haber publicado un bloque competidor que se agrega a la punta de la cadena de bloques. A diferencia de Bitcoin, los bloques huérfanos en Ethereum pueden ser incluidos por bloques más nuevos como ommer y recibir una recompensa parcial de bloque.
Private Key
Ver “secret key.”
Proof of Stake (PoS)
Un método mediante el cual un protocolo de cadena de bloques de criptomonedas busca lograr consenso distribuido. PoS solicita a los usuarios que demuestren la propiedad de una cierta cantidad de criptomonedas (su “participación” en la red) para poder participar en la validación de transacciones.
Proof of Work (PoW)
Un fragmento de datos (la prueba) que requiere una cantidad significativa de cómputo para encontrar. En Ethereum, los mineros deben encontrar una solución numérica para el algoritmo Ethash que cumpla con un objetivo de dificultad en toda la red.
Public Key
Un número, derivado mediante una función unidireccional de una clave privada, que se puede compartir públicamente y utilizar por cualquiera para verificar una firma digital realizada con la clave privada correspondiente.
Receipt
Datos devueltos por un cliente Ethereum para representar el resultado de una transacción particular, incluyendo un hash de la transacción, su número de bloque, la cantidad de gas utilizada y, en caso de despliegue de un contrato inteligente, la dirección del contrato.
Re-Entrancy Attack
Un ataque que consiste en que un contrato atacante llama a una función de un contrato víctima de tal manera que durante la ejecución, la víctima llama nuevamente al contrato atacante, de manera recursiva. Esto puede resultar, por ejemplo, en el robo de fondos al omitir partes del contrato víctima que actualizan saldos o cuentan cantidades de retiro.
Reward
Una cantidad de ether incluida en cada nuevo bloque como recompensa por el minero que encontró la solución de prueba de trabajo.
RLP
Prefijo de Longitud Recursiva. Un estándar de codificación diseñado por los desarrolladores de Ethereum para codificar y serializar objetos (estructuras de datos) de complejidad y longitud arbitrarias.
Satoshi Nakamoto
El nombre utilizado por la persona o personas que diseñaron Bitcoin, crearon su implementación de referencia original y fueron los primeros en resolver el problema de doble gasto para la moneda digital. Su verdadera identidad sigue siendo desconocida.
Secret Key (también clave privada)
El número secreto que permite a los usuarios de Ethereum demostrar la propiedad de una cuenta o contratos, al producir una firma digital (ver “clave pública”, “dirección”, “ECDSA”).
Serpent
Un lenguaje de programación procedural (imperativo) para contratos inteligentes con una sintaxis similar a Python.
SHA
Algoritmo Seguro de Hash. Una familia de funciones criptográficas de hash publicadas por el Instituto Nacional de Estándares y Tecnología (NIST).
Singleton
Un término de programación que describe un objeto del cual solo puede existir una instancia.
Smart Contract
Un programa que se ejecuta en la infraestructura informática de Ethereum.
Solidity
Un lenguaje de programación procedural (imperativo) con una sintaxis similar a JavaScript, C++ o Java. El lenguaje más popular y utilizado con mayor frecuencia para contratos inteligentes en Ethereum. Creado por el Dr. Gavin Wood (coautor de este libro).
Solidity Inline Assembly
Lenguaje ensamblador de EVM en un programa Solidity. El soporte de Solidity para el ensamblador en línea facilita la escritura de ciertas operaciones.
Swarm
Una red de almacenamiento descentralizado (P2P), utilizada junto con Web3 y Whisper para construir DApps.
Szabo
Una denominación de ether. 10^12 szabo = 1 ether.
Testnet
Abreviatura de “red de prueba”, una red utilizada para simular el comportamiento de la red principal de Ethereum.
Transaction
Datos comprometidos en la cadena de bloques de Ethereum, firmados por una cuenta de origen y dirigidos a una dirección específica. La transacción contiene metadatos como el límite de gas para esa transacción.
Truffle
Uno de los marcos de desarrollo Ethereum más utilizados.
Turing Complete
Un concepto nombrado en honor al matemático y científico de la computación inglés Alan Turing: un sistema de reglas de manipulación de datos (como el conjunto de instrucciones de una computadora, un lenguaje de programación o un autómata celular) se dice que es “Turing completo” o “universalmente computacional” si puede usarse para simular cualquier máquina de Turing.
Vyper
Un lenguaje de programación de alto nivel, similar a Serpent, con una sintaxis parecida a Python. Diseñado para acercarse a un lenguaje de programación funcional puro. Creado por Vitalik Buterin.
Wallet
Software que almacena claves secretas. Se utiliza para acceder y controlar cuentas de Ethereum e interactuar con contratos inteligentes. Las claves no necesitan almacenarse en una billetera y, en su lugar, pueden recuperarse de almacenamiento externo (por ejemplo, una tarjeta de memoria o papel) para una mayor seguridad. A pesar del nombre, las billeteras nunca almacenan las monedas o tokens reales.
Web3
La tercera versión de la web. Propuesta por el Dr. Gavin Wood, Web3 representa una nueva visión y enfoque para las aplicaciones web: desde aplicaciones centralmente propiedad y gestionadas, hasta aplicaciones construidas sobre protocolos descentralizados.
Wei
La denominación más pequeña de ether. 10^18 wei = 1 ether.
Whisper
Un servicio de mensajería descentralizado (P2P). Se utiliza junto con Web3 y Swarm para construir DApps.
Zero Address
Una dirección especial de Ethereum, compuesta íntegramente por ceros, que se especifica como la dirección de destino de una transacción de creación de contrato.