¿Qué es Ganache?
Ganache es un simulador local de blockchain que permite a los desarrolladores crear, desplegar, probar y depurar contratos inteligentes compatibles con Ethereum sin utilizar criptomonedas reales.Crea un entorno de blockchain privado en el ordenador del desarrollador e imita muchos comportamientos importantes de la Ethereum Virtual Machine, conocida habitualmente como EVM.Los desarrolladores pueden utilizar Ganache para crear cuentas de prueba, desplegar contratos de Solidity, enviar transacciones, consultar bloques, medir el uso de gas y observar los cambios en el estado de la blockchain.La documentación oficial archivada de Ganache describe Ganache como una blockchain personal para desarrollar aplicaciones descentralizadas con rapidez en un entorno seguro y determinista.
Ganache fue popular porque permitía a los desarrolladores empezar a probar de inmediato, sin ejecutar un nodo completo de una blockchain pública ni obtener criptomonedas de prueba.Las transacciones podían confirmarse al instante, las cuentas podían disponer de grandes saldos simulados de ETH desde el principio y toda la blockchain podía restablecerse cuando fuera necesario.Ganache estaba disponible como aplicación de escritorio con interfaz gráfica, interfaz de línea de comandos y paquete de JavaScript integrable en flujos de trabajo de desarrollo.Ganache no es una criptomoneda, una blockchain pública, una wallet, un token ni una plataforma de trading descentralizada.Es un software de desarrollo diseñado para simular el comportamiento de una blockchain en una red local controlada.¿Se sigue manteniendo Ganache?
Ganache ya no recibe mantenimiento activo.Consensys anunció el fin del soporte de Ganache y del conjunto de herramientas de desarrollo Truffle el 21 de septiembre de 2023.El anuncio oficial del fin de Ganache indicó que el código seguiría disponible públicamente tras el periodo de transición.
El repositorio del código fuente de Ganache se archivó el 26 de febrero de 2024 y ahora es de solo lectura.
El software archivado puede seguir funcionando en un entorno compatible con sus dependencias y con las reglas de Ethereum previstas.Sin embargo, normalmente no recibe nuevas funciones, parches de seguridad, actualizaciones de dependencias, correcciones de errores ni compatibilidad con posteriores actualizaciones de la red.Esta limitación es importante porque Ethereum sigue incorporando nuevos opcodes, formatos de transacción, reglas de gas, funciones de cuenta y cambios en la ejecución.Un contrato moderno de Solidity puede utilizar instrucciones que una versión antigua de Ganache no reconoce.Además, un contrato que supera todas las pruebas en Ganache puede comportarse de forma diferente en una blockchain pública actual si Ganache simula reglas antiguas del protocolo.Por tanto, Ganache debe considerarse software heredado de desarrollo de Ethereum, no un estándar actual para realizar pruebas en producción.¿Cómo funciona Ganache?
Ganache inicia un proceso de blockchain aislado y controlado por el desarrollador.El proceso mantiene cuentas locales, saldos, bloques, transacciones, código de contratos inteligentes, almacenamiento, registros y otros datos del estado de la blockchain.Expone un endpoint JSON-RPC compatible con Ethereum al que pueden conectarse scripts de desarrollo, wallets, aplicaciones web y herramientas de prueba.La documentación de Ethereum JSON-RPC explica la interfaz estándar que utilizan las aplicaciones para comunicarse con los clientes de ejecución de Ethereum.
Cuando se envía una transacción a Ganache, el simulador valida la solicitud, ejecuta las instrucciones EVM pertinentes, modifica su estado local y devuelve un recibo de transacción.Ganache puede crear un bloque inmediatamente después de recibir una transacción o minar bloques conforme a un intervalo configurado.Como el desarrollador controla la blockchain, no tiene que competir con otros usuarios por el espacio de bloque público.También puede reiniciar la cadena, cambiar su configuración, sustituir sus cuentas o borrar su historial.Estos controles hacen que Ganache sea rápido y predecible, pero también lo diferencian fundamentalmente de una blockchain pública descentralizada.¿Qué es una blockchain personal?
Una blockchain personal es un entorno privado de blockchain utilizado para desarrollo, formación o pruebas.A diferencia de Ethereum mainnet, no está protegida por un conjunto distribuido de validadores económicamente independientes.La persona que ejecuta la blockchain controla su estado inicial, las cuentas, la minería, las marcas de tiempo y la configuración de la red.Normalmente, el operador puede restablecer o reescribir el entorno local sin obtener la aprobación de otros participantes de la red.Esta flexibilidad permite a los desarrolladores repetir las mismas pruebas en condiciones idénticas.También significa que una blockchain personal no reproduce la seguridad económica, la descentralización, la congestión, el orden de las transacciones ni la actividad adversaria de una red cripto pública.Ganache se describe mejor como un simulador de blockchain personal que como una blockchain de producción.Cuentas de Ganache y ETH simulado
Una sesión normal de Ganache crea varias cuentas de prueba cuando se inicia la blockchain local.Cada cuenta suele recibir un saldo elevado de ETH simulado.Este ETH puede utilizarse para pagar comisiones de gas simuladas, desplegar contratos, transferir valor e interactuar con aplicaciones descentralizadas dentro de Ganache.El ETH de Ganache no tiene valor de mercado, ya que solo existe en la base de datos de la blockchain local.No puede transferirse directamente a Ethereum mainnet ni intercambiarse por criptomonedas reales a través del protocolo de la blockchain.Ganache puede derivar sus cuentas de una frase mnemotécnica determinista.Utilizar la misma frase mnemotécnica, ruta de derivación y configuración puede reproducir las mismas direcciones y claves privadas en otra sesión de Ganache.Las cuentas deterministas son útiles porque las pruebas automatizadas pueden conocer de antemano qué direcciones y saldos estarán disponibles.Las claves privadas son accesibles de forma intencionada, ya que estas cuentas están diseñadas para el desarrollo.Nunca deben introducirse frases semilla de wallets reales ni claves privadas de producción en Ganache.Tampoco debe reutilizarse una clave de desarrollo para una dirección que vaya a contener criptomonedas de valor en una red pública.Interfaz gráfica de Ganache
La interfaz gráfica de Ganache ofrecía una forma visual de crear y consultar una blockchain personal.La pantalla de cuentas mostraba las direcciones locales, los saldos, el número de transacciones y las claves privadas.Las pantallas de bloques y transacciones permitían a los desarrolladores revisar la actividad minada localmente.Las páginas relacionadas con los contratos podían mostrar contratos desplegados, eventos, información de almacenamiento y detalles de ejecución si se disponía de la información del proyecto.La interfaz facilitaba el uso de Ganache a los desarrolladores que aún estaban aprendiendo a utilizar herramientas de blockchain desde la línea de comandos.Los usuarios podían crear espacios de trabajo con diferentes configuraciones de cuentas, minería, red y bifurcación.La guía de inicio rápido archivada de Ganache explica el proceso histórico para crear una blockchain personal desde la aplicación de escritorio.
La interfaz gráfica es ahora software heredado y no debe esperarse que admita las funciones actuales de Ethereum.Interfaz de línea de comandos de Ganache
La interfaz de línea de comandos de Ganache permitía a los desarrolladores iniciar y configurar una blockchain local desde un terminal.Una instalación heredada podía iniciarse normalmente con un comando como
La referencia archivada de las opciones de Ganache CLI documenta las categorías de configuración históricas disponibles para los desarrolladores de Ethereum.
El programa de línea de comandos también podía iniciarse en modo desacoplado para que la blockchain local siguiera ejecutándose de forma independiente al comando original del terminal.Como el paquete está archivado, instalarlo en un entorno de software moderno puede causar problemas de compatibilidad con dependencias, sistemas operativos o entornos de ejecución.Espacios de trabajo de Ganache
Un espacio de trabajo de Ganache guardaba la configuración de un proyecto de blockchain local concreto.Podía definir las cuentas, la frase mnemotécnica, la configuración de la cadena, el comportamiento de minería, la ruta de la base de datos y el proyecto de contratos inteligentes vinculado.Los espacios de trabajo persistentes permitían conservar el historial de la blockchain y el estado de los contratos desplegados después de cerrar la aplicación.Un espacio de trabajo efímero podía iniciarse desde cero cada vez que se reiniciaba Ganache.El estado local persistente resultaba práctico durante el desarrollo, pero también podía provocar diferencias confusas en nonces, despliegues o saldos entre ejecuciones de pruebas.Las pruebas automatizadas suelen beneficiarse de un entorno determinista limpio, en vez de una base de datos local antigua que contenga transacciones anteriores.Minería instantánea en Ganache
Ganache podía confirmar transacciones al instante al minar un bloque en cuanto recibía una transacción.La minería instantánea permitía ejecutar conjuntos de pruebas de contratos inteligentes mucho más rápido que en una blockchain pública.Los desarrolladores podían desplegar un contrato e interactuar con él sin esperar al intervalo de bloque público.También se podía configurar Ganache para minar bloques a intervalos regulares.Los controles de minería manual permitían crear transacciones pendientes en las pruebas y decidir después cuándo debía producirse un bloque.Estas funciones eran útiles para probar aplicaciones blockchain, pero la minería instantánea podía ocultar problemas de producción relacionados con retrasos, competencia por las comisiones, transacciones de reemplazo y cambios de estado.Una aplicación descentralizada nunca debe dar por hecho que una transacción real se confirmará de inmediato solo porque se haya confirmado al instante en Ganache.Snapshots y reversiones en Ganache
Ganache admitía snapshots que registraban el estado actual de la blockchain local.Un desarrollador podía crear un snapshot, ejecutar varias transacciones y, más adelante, revertir la blockchain al estado guardado.Esta función permitía que las pruebas se iniciaran repetidamente con los mismos saldos de cuenta, almacenamiento de contratos, marcas de tiempo e historial de bloques.Los snapshots reducían la necesidad de volver a desplegar cada contrato antes de cada prueba individual.También ayudaban a los desarrolladores a reproducir errores a partir de un estado conocido de la blockchain.Un snapshot de Ganache era únicamente una función de prueba local y no afectaba a ninguna blockchain pública.Los usuarios no pueden revertir transacciones finalizadas de Ethereum mainnet mediante un comando de snapshot de Ganache.Manipulación del tiempo en Ganache
Ganache permitía a los desarrolladores adelantar el tiempo de la blockchain y controlar las marcas de tiempo de los bloques producidos localmente.Esta función resultaba útil para probar vesting de tokens, calendarios de staking, periodos de gobernanza, subastas, plazos de préstamos, sistemas de suscripción y contratos con bloqueo temporal.Un desarrollador podía simular el paso de varios meses sin esperar a que transcurriera el tiempo real.Las pruebas también podían analizar el comportamiento justo antes y después de una fecha de vencimiento.Las marcas de tiempo de Ethereum pública se producen conforme a las reglas de la red y no están bajo el control del desarrollador de la aplicación.Por tanto, los contratos deben probarse con variaciones realistas de las marcas de tiempo, no solo con valores locales perfectamente predecibles.Bifurcación de redes en Ganache
Ganache podía crear una bifurcación local de una red pública compatible con Ethereum.La bifurcación parte de las cuentas, los saldos, el código de los contratos y el almacenamiento disponibles en un bloque remoto seleccionado.A partir de ese punto inicial, las nuevas transacciones se ejecutan localmente y no modifican la blockchain pública original.La bifurcación permitía a los desarrolladores probar interacciones con tokens existentes, protocolos descentralizados o sistemas de contratos desplegados.También podía ayudar a reproducir un error histórico en condiciones de blockchain similares a las existentes cuando se produjo el problema.Normalmente, se necesitaba un endpoint JSON-RPC remoto para recuperar el estado copiado de la blockchain.Ganache podía solicitar información adicional a ese nodo remoto si una transacción ejecutada localmente accedía a un estado que aún no se había descargado.Las pruebas con bifurcaciones no conceden permiso para controlar activos reales, ya que los saldos y el estado de los contratos copiados solo existen dentro del simulador.Una versión archivada de Ganache puede no bifurcar correctamente una red actual si encuentra bloques, transacciones, opcodes o cambios de protocolo no compatibles.Suplantación de cuentas en una bifurcación de Ganache
Ganache podía desbloquear o suplantar localmente determinadas direcciones de blockchain en un entorno bifurcado.Esto permitía que una prueba enviara una transacción como si procediera de un titular de tokens, administrador, participante en la gobernanza o cuenta de contrato concreta.La suplantación no revelaba la clave privada real de la dirección.Tampoco otorgaba control sobre la dirección en la red pública original.La función solo era posible porque el desarrollador controlaba el simulador local y podía modificar sus reglas de autorización.La suplantación de cuentas era útil para probar situaciones difíciles, pero las transacciones de producción siguen requiriendo una autorización válida conforme a las reglas de la red real.Ganache y el despliegue de contratos inteligentes
Los desarrolladores podían desplegar contratos de Solidity compilados en Ganache mediante el envío de transacciones de creación de contrato a su endpoint JSON-RPC local.La transacción incluía el bytecode de creación y los parámetros del constructor codificados.Ganache ejecutaba el constructor y almacenaba el bytecode de ejecución resultante en una dirección de contrato local.Después, scripts, wallets, aplicaciones web u otros contratos locales podían llamar al contrato.Un despliegue correcto en Ganache no desplegaba el contrato en Ethereum mainnet ni en una testnet pública.Cada blockchain tiene su propio estado de contratos e historial de transacciones independientes.Para pasar de las pruebas locales a una red pública, se requiere una transacción de despliegue independiente y pagar una comisión de red.Pruebas de tokens de criptomonedas con Ganache
Ganache permitía a los desarrolladores crear y probar tokens fungibles locales, NFT, tokens de gobernanza, sistemas de valor estable, contratos de staking y otras aplicaciones cripto.Un desarrollador podía probar transferencias, saldos, allowances, aprobaciones, acuñación, quema, titularidad, controles de acceso y registros de eventos.Las cuentas locales podían recibir tokens simulados sin ningún coste financiero.Una wallet conectada a Ganache podía mostrar un token local después de añadir la dirección correcta del contrato local.El token solo existía en esa blockchain específica de Ganache.Al restablecer la blockchain podían eliminarse el token, sus saldos y todo su historial de transacciones.Un token local que utilizara el nombre o símbolo de una criptomoneda real seguía siendo solo una simulación.La blockchain y la dirección del contrato son identificadores de token más fiables que el nombre o ticker mostrado.Comisiones de gas de Ganache
Ganache simulaba el gas de la EVM para que los desarrolladores pudieran observar el coste de ejecución de los despliegues de contratos y las llamadas a funciones.Las escrituras de almacenamiento, los datos de llamada, los registros de eventos, la creación de contratos, las llamadas externas y las operaciones computacionales podían contribuir al uso de gas mostrado.La comisión simulada se pagaba con el saldo local de ETH de la cuenta de prueba.La ejecución de una transacción local normal en Ganache no consumía ETH real.Los desarrolladores podían configurar los precios del gas, los límites de gas por bloque, los límites de transacción y otros parámetros relacionados con las comisiones.Esta flexibilidad resultaba útil para probar errores por falta de gas y funciones de contrato costosas.Sin embargo, las mediciones de gas de Ganache pueden no representar con precisión el Ethereum actual si el simulador utiliza una EVM antigua o un programa de gas desactualizado.Las mediciones de gas deben repetirse en un entorno mantenido que admita exactamente la actualización de red y el objetivo del compilador previstos para el despliegue.Ganache y las pruebas deterministas
Las pruebas deterministas implican que las mismas condiciones iniciales y entradas de transacción deben producir los mismos resultados previstos.Ganache admitía cuentas, saldos, producción de bloques, identificadores de cadena y secuencias de despliegue deterministas.Un conjunto de pruebas podía iniciar Ganache con una frase mnemotécnica conocida, desplegar contratos en un orden fijo y predecir las direcciones locales resultantes.Después, se podía restablecer la blockchain antes de la siguiente ejecución de pruebas.Esta previsibilidad ayudaba a los desarrolladores a identificar si un cambio en el código alteraba el comportamiento del contrato.Las blockchains públicas reales son menos predecibles porque otros usuarios pueden modificar el estado compartido de los contratos, el orden de las transacciones, la demanda de gas, la liquidez y las marcas de tiempo.Por tanto, las pruebas locales deterministas deben combinarse con pruebas de integración y pruebas adversarias más amplias.Ganache frente a Ethereum mainnet
Ethereum mainnet es una blockchain pública y descentralizada en la que ETH, los tokens y los contratos inteligentes pueden tener valor financiero real.Ganache es una simulación controlada localmente cuyo operador puede modificar los saldos, el tiempo de los bloques, las cuentas y el historial.Las transacciones de mainnet compiten por un espacio de bloque limitado y pagan comisiones determinadas por las condiciones actuales de la red.Ganache puede utilizar minería instantánea y parámetros de comisiones configurables.Mainnet contiene actividad impredecible de usuarios y aplicaciones de todo el mundo.Una nueva cadena de Ganache solo contiene las cuentas, contratos y transacciones que introduce el desarrollador.La seguridad de mainnet depende del protocolo general de Ethereum y de la red de validadores.La seguridad de Ganache depende del ordenador local y de la configuración controlada por un único operador.Superar las pruebas de Ganache no demuestra que un contrato sea seguro ni compatible con el comportamiento actual de mainnet.Ganache frente a una testnet pública
Una testnet pública es una blockchain de desarrollo compartida y gestionada por muchos participantes.La guía de redes de desarrollo de Ethereum explica las diferencias entre los entornos locales y las redes públicas de prueba compartidas.
Una testnet pública ofrece condiciones más realistas de red, producción de bloques, competencia por las transacciones e interacción con contratos desplegados de forma independiente.Ganache ofrece ejecución más rápida, saldos locales gratuitos, control completo y restablecimiento inmediato del estado.Las pruebas locales suelen ser más adecuadas para pruebas unitarias rápidas, mientras que una testnet pública mantenida puede ofrecer pruebas de integración más completas.Las criptomonedas de testnet tampoco están destinadas a tener valor financiero, aunque existen en una red compartida y no en el ordenador de un único desarrollador.Ni las pruebas locales ni las pruebas en una testnet pública sustituyen una revisión de seguridad profesional para un contrato que controlará criptoactivos de valor.Ganache frente a una red privada de Ethereum
Una red privada de Ethereum puede constar de varios nodos de ejecución y consenso conectados entre sí, sin unirse a Ethereum mainnet.Ganache solía simular la ejecución de blockchain mediante un proceso más sencillo, orientado al desarrollo.Una red privada con varios nodos puede probar la conexión entre pares, la propagación de bloques, la sincronización, el comportamiento del consenso y los fallos de nodos.Ganache se centraba más en el desarrollo rápido de aplicaciones, las cuentas predecibles, el acceso RPC local y los controles de prueba prácticos.La documentación de redes privadas de Geth explica que las redes privadas de Ethereum pueden admitir pruebas con varios nodos y usuarios.
Por tanto, las pruebas de protocolo avanzadas pueden requerir una red con varios clientes en vez de un único proceso de Ganache.Limitaciones de Ganache
Ganache no reproducía todo el entorno económico, de red, consenso y actividad adversaria de Ethereum mainnet.La confirmación instantánea podía ocultar problemas relacionados con transacciones pendientes, cambios en las comisiones base, conflictos de nonce o reglas de reemplazo.Un orden de transacciones predecible podía ocultar riesgos de front-running, back-running, competencia por liquidaciones y otros problemas de ordenación.Los fondos de prueba ilimitados podían ocultar problemas de financiación de cuentas e incorporación de usuarios.Una red local no incluía automáticamente oráculos reales, bridges, pools de liquidez, tokens, sistemas de gobernanza ni otros contratos externos.La bifurcación podía incorporar estados públicos copiados, pero aun así no podía reproducir todos los eventos que podrían producirse entre la simulación y la ejecución en producción.El estado archivado de Ganache añade el riesgo de que no admita la salida de compiladores actuales ni el comportamiento de Ethereum.Un proceso de pruebas completo debe incluir herramientas locales mantenidas, pruebas en redes compartidas, análisis de seguridad, fuzzing y revisión de la configuración de despliegue.Riesgos de seguridad de Ganache
Las cuentas de Ganache no están diseñadas para proteger criptomonedas de valor.Sus claves privadas pueden aparecer en la salida del terminal o en la interfaz gráfica, guardarse en archivos del proyecto o generarse a partir de frases predeterminadas muy conocidas.Un servidor RPC de Ganache puede exponer funciones de desarrollo potentes que nunca deberían estar disponibles para usuarios de Internet no confiables.Vincular un servidor de desarrollo local a una interfaz de red pública puede crear una exposición de seguridad innecesaria.Los datos de una blockchain bifurcada pueden mostrar saldos reales de cuentas, pero esos saldos locales no demuestran que el operador controle los activos originales.Los scripts escritos para Ganache pueden incluir atajos que serían peligrosos si se reutilizaran con claves de producción.Las credenciales de desarrollo y producción deben mantenerse completamente separadas.Ningún sitio web, entorno de prueba ni representante de soporte necesita una frase semilla real para crear una blockchain local de Ganache.Errores habituales de Ganache
Puede producirse un error de conexión si una aplicación utiliza un host RPC, puerto o protocolo incorrecto.Puede producirse un error de identificador de cadena si una wallet está configurada para otra red local.Puede aparecer un error de nonce cuando una wallet recuerda transacciones de una sesión anterior de Ganache que ya se ha restablecido.Puede producirse un error de fondos insuficientes si la dirección seleccionada no es una de las cuentas locales financiadas.Un error por falta de gas puede deberse a un límite de gas de transacción bajo o a una ruta de ejecución del contrato que requiere más recursos de lo previsto.Un error por opcode no compatible puede indicar que el contrato se compiló para una versión de EVM más reciente que la admitida por Ganache.Un error de bifurcación puede deberse a un endpoint RPC remoto no disponible, datos de bloque incompatibles, restricciones de frecuencia o comportamiento del protocolo no compatible.Una dirección de contrato inesperada puede deberse a un desplegador, nonce, frase mnemotécnica u orden de despliegue diferentes.¿Se puede seguir utilizando Ganache?
Se puede seguir utilizando Ganache si una versión archivada se instala y funciona correctamente en el entorno del desarrollador.Puede seguir siendo útil para reproducir los resultados de pruebas de un proyecto antiguo o comprender los flujos de trabajo históricos de desarrollo de Ethereum.Un proyecto heredado puede fijar la versión del paquete Ganache, el entorno de ejecución, el compilador y las dependencias para conservar la reproducibilidad.Sin embargo, que siga funcionando no significa que el software esté actualizado, sea seguro o sea compatible con Ethereum moderno.Los equipos que mantengan aplicaciones de valor deberían comparar cada conjunto de pruebas heredado con los resultados de una implementación de EVM con mantenimiento activo.Los nuevos desarrollos no deberían crear dependencias adicionales a largo plazo de un simulador sin soporte.Migrar desde Ganache
La migración debería empezar por registrar la configuración exacta de Ganache utilizada por el proyecto.Entre los parámetros importantes se incluyen la frase mnemotécnica, el número de cuentas, los saldos de las cuentas, el ID de cadena, el ID de red, el puerto RPC, el modo de minería, los límites de gas, las marcas de tiempo, la ruta de la base de datos y la configuración de bifurcación.El equipo debería identificar las pruebas que utilizan métodos RPC específicos de Ganache para snapshots, cambios de hora, minería, cambios de saldo o suplantación de cuentas.Las funciones equivalentes deben configurarse en el nuevo entorno local.Los scripts de despliegue deben probarse, ya que la estimación de gas, los recibos de transacción, los mensajes de error y el comportamiento de minería pueden variar.Las mediciones de gas deben volver a generarse, no copiarse de los resultados de Ganache.Las pruebas de bifurcación deben repetirse con un nodo actual y una versión de EVM compatible con la red de despliegue prevista.La migración final debe conservar el comportamiento funcional y mejorar al mismo tiempo la compatibilidad con las reglas actuales del protocolo Ethereum.Desarrollo moderno local de Ethereum
Las recomendaciones actuales para el desarrollo de Ethereum aconsejan utilizar redes y frameworks de desarrollo locales mantenidos para escribir, probar y depurar contratos inteligentes.La documentación oficial de redes de desarrollo de Ethereum enumera las opciones actuales de pruebas locales.
Los desarrolladores que necesiten un comportamiento más parecido al de un cliente de ejecución real también pueden crear una cadena de desarrollo con Geth.La guía del modo de desarrollo de Geth explica cómo iniciar una red Ethereum local y desplegar un contrato en ella.
Los equipos avanzados pueden utilizar redes de prueba configurables con varios clientes para probar la red, el consenso y la compatibilidad entre clientes.El entorno más adecuado depende del lenguaje de programación, el compilador, el objetivo de EVM, el framework de pruebas, los requisitos de bifurcación y la red de despliegue.¿Tiene Ganache un token?
Ganache no tiene una criptomoneda oficial ni un token negociado en el mercado.El ETH simulado utilizado dentro de Ganache solo son datos locales de desarrollo.No debe suponerse que un token llamado Ganache está relacionado con el software de desarrollo archivado.Cualquiera puede crear un token y asignarle el nombre de una empresa o un software conocido.Los usuarios deben identificar las criptomonedas por su blockchain y la dirección exacta del contrato, no solo por su nombre o logotipo.Una afirmación de que el ETH de prueba de Ganache se puede comprar, retirar o convertir en ETH real es una señal de alerta de una posible estafa.Preguntas frecuentes
¿Qué es Ganache, explicado de forma sencilla?
Ganache es un simulador local de blockchain de Ethereum utilizado para probar contratos inteligentes y aplicaciones descentralizadas sin gastar criptomonedas reales.¿Se sigue manteniendo Ganache?
No. Ganache dejó de recibir soporte en 2023 y su repositorio público de código fuente se archivó en 2024.¿Se puede seguir instalando Ganache?
Los paquetes archivados aún pueden instalarse en entornos compatibles, pero son software heredado sin soporte.¿Es Ganache una blockchain de criptomonedas real?
Ganache mantiene bloques, transacciones, cuentas y contratos locales, pero no es una red pública descentralizada de criptomonedas.¿Ganache utiliza ETH real?
No. Las cuentas de Ganache utilizan ETH simulado que solo tiene valor dentro de la blockchain local de desarrollo.¿Se puede enviar ETH de Ganache a Ethereum mainnet?
No. Los saldos locales de Ganache no existen en Ethereum mainnet ni se pueden retirar a esa red.¿Tiene Ganache un token oficial?
No. Ganache es software de desarrollo y no tiene una criptomoneda oficial negociada en el mercado.¿Se puede conectar una wallet a Ganache?
Sí. Una wallet compatible con Ethereum puede conectarse a través del endpoint RPC de Ganache y con la configuración correcta de la cadena local.¿Puede Ganache desplegar contratos inteligentes de Solidity?
Sí. Los contratos de Solidity compilados pueden desplegarse y ejecutarse en la EVM local de Ganache.¿Puede Ganache probar tokens y NFT?
Sí. Los desarrolladores pueden desplegar y probar transferencias de tokens locales, aprobaciones, acuñación, quema, titularidad y lógica de permisos.¿Qué es Ganache CLI?
Ganache CLI es la versión de línea de comandos del simulador de blockchain local.¿Qué es la interfaz gráfica de Ganache?
Es la aplicación de escritorio que mostraba visualmente las cuentas, los bloques, las transacciones, los contratos, los eventos y los parámetros de configuración.¿Qué es un espacio de trabajo de Ganache?
Un espacio de trabajo es una configuración de Ganache guardada que contiene los parámetros de la blockchain local, las cuentas, la minería y el proyecto.¿Qué es un snapshot de Ganache?
Un snapshot registra el estado local de la blockchain para que las pruebas puedan volver más adelante al mismo punto inicial.¿Puede Ganache cambiar la hora de la blockchain?
Sí. Los métodos de desarrollo de Ganache pueden adelantar el tiempo y modificar las marcas de tiempo de los bloques locales para realizar pruebas.¿Qué es la bifurcación de Ganache?
La bifurcación de Ganache crea una blockchain local basada en el estado de cuentas y contratos copiado de un bloque seleccionado de una red pública.¿Las transacciones de una bifurcación de Ganache afectan a la red pública?
No. Las transacciones realizadas después de la bifurcación permanecen dentro del simulador local.¿Puede Ganache suplantar una dirección pública?
Puede simular localmente transacciones de direcciones seleccionadas, pero no revela claves privadas ni concede control sobre activos reales.¿Calcula Ganache el gas?
Sí. Ganache simula el uso y las comisiones de gas conforme a las reglas EVM implementadas por su versión archivada.¿Son precisas las estimaciones de gas de Ganache para Ethereum actual?
No necesariamente, porque puede que no admita las nuevas actualizaciones de Ethereum ni la salida de los compiladores modernos.¿Por qué muestra Ganache un opcode no compatible?
Es posible que el contrato esté dirigido a una versión de EVM que incluye una instrucción no implementada por la versión instalada de Ganache.¿Es Ganache igual que Ethereum mainnet?
No. Mainnet es una red pública descentralizada con activos reales, mientras que Ganache está controlado por un desarrollador local.¿Es Ganache igual que una testnet pública?
No. Una testnet pública se comparte entre muchos participantes, mientras que una cadena normal de Ganache se ejecuta de forma privada en un único sistema de desarrollo.¿Se puede utilizar Ganache sin conexión a Internet?
Una blockchain local básica de Ganache puede funcionar sin conexión, mientras que la bifurcación de redes requiere acceso a un nodo remoto.¿Es Ganache seguro para producción?
No. Sus claves de prueba expuestas, su historial modificable, sus métodos RPC de desarrollo y la falta de soporte lo hacen inadecuado para custodiar activos en producción.¿Se debe importar una frase semilla real a Ganache?
No. Las frases semilla reales y las claves privadas de producción nunca deben utilizarse en un simulador local de desarrollo.¿Pueden los proyectos heredados seguir utilizando Ganache?
Pueden conservar una versión fijada para pruebas históricas, pero se recomienda migrar a un entorno mantenido.¿Por qué deberían los desarrolladores migrar desde Ganache?
La migración ofrece compatibilidad con el protocolo actual, mantenimiento de dependencias, correcciones de seguridad y compatibilidad con la salida moderna de Solidity.¿Superar las pruebas de Ganache demuestra que un contrato es seguro?
No. Las pruebas locales no sustituyen las pruebas adversarias, la integración con la red actual, la revisión del código ni una auditoría independiente del contrato inteligente.Conclusión
Ganache es un simulador local de blockchain de gran importancia histórica que ayudó a los desarrolladores de Ethereum a crear y probar contratos inteligentes con rapidez.Ofrecía cuentas financiadas, claves deterministas, minería instantánea, snapshots, controles de tiempo, cálculo local de gas, bifurcación de redes y suplantación de cuentas.El ETH y los tokens simulados solo existen dentro de la blockchain local y no tienen valor de mercado real.Ganache se diferencia de Ethereum mainnet porque un solo desarrollador controla las cuentas, la producción de bloques, el historial y las condiciones de la red.También se diferencia de una testnet pública porque su estado suele ser privado, predecible y fácil de restablecer.Ganache dejó oficialmente de recibir soporte en 2023 y su repositorio de código fuente pasó a ser de solo lectura en 2024.Las versiones archivadas pueden seguir siendo útiles para mantener proyectos heredados, pero no debe esperarse que admitan las actualizaciones actuales de Ethereum ni el comportamiento de los compiladores modernos.Los desarrolladores nunca deben utilizar claves privadas reales, exponer públicamente un servidor RPC de Ganache ni considerar que las pruebas locales satisfactorias demuestran la seguridad en producción.Los proyectos que migren desde Ganache deberían conservar la configuración de cuentas, cadena, minería, snapshots, marcas de tiempo, RPC, gas y bifurcación en un entorno de reemplazo mantenido.Ganache se entiende mejor como una infraestructura heredada de desarrollo de Ethereum cuyos conceptos de prueba siguen influyendo en las herramientas modernas de blockchain local.También te puede interesar
WhatsMiner M30S++
Dominios Web3
Proyectos Web3
POPULAR
Criptomonedas de moda que están acaparando la atención del mercado
Volumen TOP
Las criptomonedas con mayor volumen de trading
Recién Añadidos
Criptomonedas recientemente listadas y disponibles para operar

