¿Odias los anuncios? Ir Sin publicidad Hoy

Generador y Visualizador de Árbol de Merkle

DatosDesarrolladorSeguridad
ANUNCIO · ¿ELIMINAR?
Cómo se interpreta cada línea antes de hashear.
Qué hacer cuando un nivel tiene un número impar de nodos.
Cómo se combinan los hashes de los hijos izquierdo y derecho antes de re-hashear.

Raíz de Merkle

Diagrama de árbol

Exportación JSON

Haga clic en cualquier nodo del árbol para copiar su hash. La raíz de Merkle es el único sello del conjunto completo de hojas — cambiar cualquier hoja cambia la raíz.
ANUNCIO · ¿ELIMINAR?

Guía

Generador y visualizador de árbol de Merkle

Generador y Visualizador de Árbol de Merkle

Pega una lista de valores, elige una función de hash y ve inmediatamente un árbol de Merkle visualizado con todos los hashes intermedios y la raíz final del Merkle. Elige SHA-256, SHA-1 o Keccak-256 (el hash que utiliza Ethereum), ajusta la regla de hojas impares estilo Bitcoin o la convención de pares ordenados de OpenZeppelin, y exporta el árbol completo en formato JSON. Haz clic en cualquier nodo del diagrama para copiar su hash al portapapeles.

Cómo Usar

  1. Introduce tus hojas en el área de texto, un valor por línea. Prueba el botón de ejemplo para un conjunto rápido.
  2. Elige una función de hash: SHA-256 para uso general, SHA-1 para sistemas legados o Keccak-256 para raíces compatibles con Ethereum.
  3. Elige cómo debe interpretarse cada línea: como texto UTF-8 (por defecto) o como una cadena hexa ya hashada.
  4. Selecciona una regla de hojas impares y un modo de concatenación de pares que coincida con el protocolo que estás utilizando.
  5. Lee la raíz de Merkle, desplázate por el diagrama SVG y descarga la exportación en JSON para herramientas posteriores.

Características

  • Tres funciones de hash – SHA-256, SHA-1 y Keccak-256 cubren los casos comunes de Bitcoin, sistemas legados y Ethereum.
  • Diagrama SVG interactiva – Cada nodo es clickeable para copiar su hash; los hermanos fantasma duplicados se dibujan con borde discontinuo para que la estructura sea honesta.
  • Estrategias de hojas impares – Alternar entre duplicar la última (convención de Bitcoin) y promover la última (llevar el nodo sin pareja hacia arriba sin modificarlo) para adaptarte al protocolo objetivo.
  • Modo de pares ordenados – Activa la concatenación ordenada estilo OpenZeppelin cuando necesitas raíces compatibles con la popular biblioteca MerkleProof de Solidity.
  • Entrada hexa pre-hashada – Omite completamente el hashing de hojas al pegar digests hexadecimales directamente, útil cuando las hojas subyacentes son grandes o ya están canónicas.
  • Exportación en JSON – Descarga una copia completa de cada nivel, cada hash de nodo y los parámetros elegidos para reproducibilidad.

Preguntas frecuentes

  1. ¿Qué es un árbol de Merkle?

    Un árbol de Merkle es un árbol binario de hashes criptográficos. Las hojas son hashes de los datos de entrada, y cada nodo padre es el hash de la concatenación de sus dos hijos. El único hash en la cima — la raíz de Merkle — selle el conjunto completo de datos: cambiar cualquier hoja cambia la raíz. Los árboles de Merkle permiten probar que un valor específico pertenece a un conjunto compartiendo solo un número logarítmico de hashes de hermanos (la prueba de Merkle), por eso alimentan las cabeceras de Bitcoin, el estado de Ethereum, los commits de Git y los registros de Transparencia de Certificados.

  2. ¿Por qué Bitcoin duplica el último hash cuando un nivel tiene un número impar de nodos?

    Para mantener la construcción estrictamente binaria, Bitcoin completa los niveles con número impar duplicando el hash de la derecha para que pueda ser emparejado consigo mismo. Esto es fácil de implementar pero introduce un problema conocido de segunda preimagen (CVE-2012-2459) en el que un atacante puede crear a veces una lista diferente de hojas que produzca la misma raíz. Diseños más recientes prefieren una regla de "promover" — llevar el hash no emparejado hacia arriba sin cambios — o etiquetas de separación de dominio en hashes internos versus hojas para cerrar la brecha.

  3. ¿Cómo es Keccak-256 diferente de SHA-256 y SHA3-256?

    Keccak-256 es la construcción original de foso que ganó la competencia NIST SHA-3. Antes de la estandarización, NIST cambió la regla de relleno, produciendo SHA3-256, que es incompatible byte por byte con el Keccak-256 previo a la estandarización. Ethereum fijó el original Keccak-256 antes del cambio, por lo que 'keccak256' en Solidity no es la misma función que SHA3-256. SHA-256 forma parte de la familia SHA-2 independiente y utiliza una construcción Merkle–Damgård; comparte solo el patrón de nombre.

  4. ¿Por qué algunas bibliotecas de Merkle ordenan los pares antes de hashear?

    Ordenar los hashes de izquierda y derecha antes de concatenar hace que el hash del padre sea independiente de cuál hijo es 'izquierdo' y cuál es 'derecho'. Esto significa que una prueba de Merkle solo necesita incluir hashes de hermanos, no bits direccionales, lo que hace que las pruebas sean aproximadamente 30% más pequeñas en cadena y que el contrato verificador sea mucho más simple. La biblioteca MerkleProof.sol de OpenZeppelin utiliza esta convención; las cabeceras clásicas de Bitcoin y Ethereum no lo hacen. La variante ordenada se ve principalmente en listas de airdrop, instantáneas de gobernanza y otros compromisos fuera de cadena.

¿Quieres eliminar publicidad? Adiós publicidad hoy

Instalar extensiones

Agregue herramientas IO a su navegador favorito para obtener acceso instantáneo y búsquedas más rápidas

añadir Extensión de Chrome añadir Extensión de borde añadir Extensión de Firefox añadir Extensión de Opera

¡El marcador ha llegado!

Marcador es una forma divertida de llevar un registro de tus juegos, todos los datos se almacenan en tu navegador. ¡Próximamente habrá más funciones!

ANUNCIO · ¿ELIMINAR?
ANUNCIO · ¿ELIMINAR?
ANUNCIO · ¿ELIMINAR?

Noticias Aspectos técnicos clave

Involucrarse

Ayúdanos a seguir brindando valiosas herramientas gratuitas

Invítame a un café
ANUNCIO · ¿ELIMINAR?