¿Qué es un compromiso de estado en cripto?
Un compromiso de estado es un resumen criptográfico que se compromete con el estado actual de una blockchain en un momento específico.En términos sencillos, es una huella compacta de un conjunto mucho mayor de datos blockchain.Esos datos pueden incluir saldos de cuentas, almacenamiento de contratos inteligentes, nonces, registros de validadores, saldos de tokens, propiedad de objetos, UTXO u otros valores de estado, según el diseño de la blockchain.Un compromiso de estado permite a nodos, carteras, bridges, clientes ligeros, rollups y aplicaciones verificar afirmaciones sobre el estado de una blockchain sin descargar toda la base de datos ni confiar ciegamente en ella.En Ethereum, el compromiso de estado más conocido es la raíz de estado almacenada en la cabecera del bloque.La documentación de Ethereum sobre Merkle Patricia Trie explica que Ethereum utiliza un trie de estado global que se actualiza cuando los clientes procesan bloques y que la raíz de estado resultante es verificable criptográficamente.
Si dos nodos procesan el mismo bloque válido y alcanzan el mismo compromiso de estado, tienen una evidencia sólida de que coinciden sobre el estado resultante.Si cambia el saldo de una cuenta o un valor del almacenamiento de un contrato, el compromiso de estado también debería cambiar.Por eso los compromisos de estado son esenciales para el consenso blockchain, las pruebas de estado, las pruebas de fraude, las pruebas de validez, la verificación de clientes ligeros y la mensajería cross-chain.En el contexto de un glosario cripto, State Commitment significa la raíz o compromiso criptográfico que representa el estado actual de la blockchain de forma compacta y verificable.Por qué importan los compromisos de estado
Los compromisos de estado son importantes porque las blockchains son bases de datos compartidas mantenidas por muchos participantes independientes.Ningún usuario debería tener que confiar en un servidor para que informe del saldo, valor de contrato o estado de cuenta correctos.Un compromiso de estado proporciona a la red una forma de acordar un valor compacto único que representa un estado mucho mayor.Esto permite comprobar el estado mediante pruebas en lugar de mediante confianza ciega.Por ejemplo, un cliente ligero puede no almacenar todo el estado de Ethereum, pero puede verificar una prueba de estado frente a una raíz de estado de confianza.Un bridge puede necesitar probar que existe un mensaje o registro de retirada en el estado de otra cadena.Un rollup puede publicar una raíz de estado que resume el resultado de muchas transacciones off-chain o de Layer 2.Una cartera puede depender de un nodo para obtener datos de saldo, mientras que sistemas más sólidos pueden utilizar pruebas para verificar que el nodo no miente.Los compromisos de estado también hacen que la ejecución blockchain sea auditable.Cuando cada bloque incluye un compromiso con el estado resultante, los usuarios pueden verificar que la cadena pasó de un estado válido al siguiente conforme a las reglas del protocolo.Compromiso de estado frente a estado blockchain
El estado blockchain es el conjunto completo de datos activos necesarios para procesar nuevas transacciones.Un compromiso de estado es solo una representación criptográfica compacta de ese estado.Esta distinción es importante porque un compromiso de estado no contiene directamente todos los saldos ni posiciones de almacenamiento.Solo se compromete con esos valores mediante una estructura de datos criptográfica.Por ejemplo, la raíz de estado de Ethereum no enumera el saldo de cada cuenta en la cabecera del bloque.En su lugar, se compromete con el trie de estado global que almacena objetos de cuentas y apunta a tries de almacenamiento de contratos.Si alguien quiere demostrar un valor específico, proporciona una ruta de prueba que conecta el valor con el compromiso.El verificador comprueba la prueba frente al compromiso conocido.Si la prueba es válida, el verificador puede confiar en que el valor pertenece al estado comprometido.Por tanto, un compromiso de estado es como un sello que evidencia manipulaciones sobre la base de datos blockchain activa.Compromiso de estado frente a raíz de estado
Una raíz de estado es un tipo habitual de compromiso de estado.En Ethereum, la raíz de estado es el hash raíz del trie de estado global después de ejecutar un bloque.La documentación de Ethereum sobre bloques describe que los bloques contienen información de carga útil de ejecución, incluidas raíces que se comprometen con datos importantes de la capa de ejecución.
La raíz de estado es un campo específico, mientras que el compromiso de estado es el concepto más amplio.Otros sistemas blockchain pueden utilizar términos diferentes, como app hash, state hash, world state root, global root, ledger commitment, accumulator root o commitment root.El nombre exacto depende del protocolo.La idea central es la misma.Un estado grande se resume mediante un valor pequeño que cambia si cambia el estado subyacente.Para las cadenas de estilo Ethereum, raíz de estado es el término práctico que usuarios y desarrolladores ven con mayor frecuencia.En teoría blockchain, compromiso de estado es el concepto más general.Cómo funciona un compromiso de estado
Un compromiso de estado normalmente comienza con una base de datos estructurada de valores de estado.La blockchain organiza esos valores en una estructura de datos criptográfica, como un árbol de Merkle, Merkle Patricia Trie, árbol de Merkle disperso, árbol de compromisos vectoriales u otra estructura de datos autenticada.Cada valor se somete a hash o se compromete de forma determinista.Esos hashes se combinan hacia arriba hasta producir una única raíz de nivel superior.Esta raíz de nivel superior se convierte en el compromiso de estado.Si cambia un valor hoja, cambian los hashes a lo largo de su ruta.Ese cambio se propaga hacia arriba hasta que cambia la raíz.Esto hace detectables las manipulaciones porque un valor falso no debería coincidir con el compromiso original salvo que el atacante pueda vulnerar la criptografía subyacente.Un compromiso de estado resulta útil porque permite verificar una base de datos enorme mediante una raíz pequeña y una prueba.La prueba no necesita incluir toda la base de datos, solo la ruta y los datos de apoyo necesarios para comprobar una afirmación.Compromisos de estado en Ethereum
Ethereum utiliza un Merkle Patricia Trie modificado para comprometerse con el estado de su capa de ejecución.La documentación oficial de Ethereum sobre Merkle Patricia Trie afirma que Ethereum tiene un trie de estado global y que este trie se actualiza cada vez que se procesa un bloque.Los objetos de cuenta de Ethereum incluyen nonce, balance, storageRoot y codeHash.El trie de estado global asigna direcciones de cuentas a estos objetos de cuenta.Cada cuenta de contrato inteligente también puede tener su propio trie de almacenamiento, y la raíz de ese trie se almacena en el objeto de cuenta.Esto significa que el compromiso de estado de Ethereum tiene una estructura por capas.La raíz de estado global se compromete con las cuentas.El storageRoot de cada cuenta de contrato se compromete con el almacenamiento persistente de ese contrato.Si un contrato de token actualiza un saldo de usuario dentro del almacenamiento del contrato, cambia la raíz de almacenamiento del contrato y también puede cambiar la raíz de estado global.Así es como la ejecución de contratos inteligentes pasa a formar parte del estado blockchain comprometido.Compromisos de estado y Merkle Patricia Tries
Un Merkle Patricia Trie es una estructura de datos autenticada de clave-valor utilizada por la actual capa de ejecución de Ethereum.Combina rutas de claves al estilo trie, compresión de rutas Patricia y hashing de Merkle.La parte trie permite encontrar valores mediante rutas deterministas basadas en claves.La parte Patricia comprime rutas largas para reducir estructura desperdiciada.La parte Merkle hace que la estructura sea verificable criptográficamente.La documentación oficial de Ethereum afirma que un Merkle Patricia Trie es determinista y verificable criptográficamente, lo que significa que se pueden demostrar estados idénticos comparando raíces y rutas de prueba.Esto es exactamente lo que necesita un compromiso de estado.Necesita una construcción determinista para que los nodos honestos calculen la misma raíz.Necesita integridad criptográfica para que los datos modificados cambien el compromiso.Necesita compatibilidad con pruebas para verificar valores específicos sin descargarlo todo.Compromisos de estado y pruebas de Merkle
Una prueba de Merkle es evidencia de que un valor concreto pertenece al estado comprometido por una raíz.La especificación EIP-1186 eth_getProof describe un método JSON-RPC que devuelve valores de cuentas y almacenamiento junto con datos de pruebas de Merkle.
Una prueba suele contener los nodos o compromisos necesarios para reconstruir la ruta desde un valor objetivo hasta la raíz de estado.Si la raíz reconstruida coincide con el compromiso de estado de confianza, el valor queda verificado.Esto permite a un verificador confirmar que una cuenta tenía un determinado saldo o que una posición de almacenamiento de un contrato tenía un determinado valor en un bloque específico.Las pruebas de Merkle son importantes porque reducen la confianza en proveedores de RPC, indexadores y API de terceros.Una respuesta RPC simple indica cuál es el estado que un servidor afirma que existe.Una respuesta respaldada por una prueba puede demostrar por qué dicha afirmación coincide con el compromiso de estado.Esta diferencia importa para carteras, bridges, auditorías, sistemas cross-chain y aplicaciones de alto valor.Los compromisos de estado dan significado a estas pruebas porque la prueba necesita una raíz de confianza frente a la que verificarse.Compromisos de estado y cabeceras de bloque
Las cabeceras de bloque son el lugar donde muchas blockchains almacenan compromisos compactos con datos de bloques más amplios.Las cabeceras de bloque de Ethereum incluyen raíces relacionadas con el estado, las transacciones y los recibos.La raíz de estado se compromete con el estado global resultante.La raíz de transacciones se compromete con la lista de transacciones del bloque.La raíz de recibos se compromete con los recibos y logs de transacciones.Estos compromisos cumplen funciones diferentes.El compromiso de estado responde en qué se convirtió el estado de la blockchain tras la ejecución.El compromiso de transacciones responde qué transacciones se incluyeron.El compromiso de recibos responde qué resultados de ejecución y logs se produjeron.Juntas, estas raíces permiten a los clientes verificar partes importantes de los datos de bloque sin incluir todos los datos completos directamente en la cabecera.Compromiso de estado frente a compromiso de transacciones
Un compromiso de estado no es lo mismo que un compromiso de transacciones.Un compromiso de transacciones se compromete con las transacciones incluidas en un bloque.Un compromiso de estado se compromete con el estado resultante después de ejecutar esas transacciones.Por ejemplo, un bloque puede incluir una transacción que transfiere activos de una cuenta a otra.El compromiso de transacciones demuestra que la transacción se incluyó.El compromiso de estado demuestra los cambios de saldo resultantes si se proporciona la prueba de estado pertinente.Esta distinción es crítica para los desarrolladores que crean bridges o pruebas.Demostrar la inclusión de una transacción no siempre es lo mismo que demostrar el estado final.Una transacción puede incluirse pero fallar en la ejecución.Una prueba de estado puede mostrar cuál fue realmente el estado de la cadena tras la ejecución.Compromiso de estado frente a compromiso de recibos
Un compromiso de recibos también es diferente de un compromiso de estado.Un recibo puede mostrar el estado de ejecución, el gas utilizado, logs y eventos.Un compromiso de estado muestra la base de datos de estado final después de la ejecución.Los eventos pueden ser útiles para la indexación y la lógica de aplicaciones, pero no son lo mismo que el almacenamiento de contratos.Un contrato puede emitir un evento sin modificar el estado.Un contrato puede modificar el estado sin emitir un evento útil.Por eso algunos sistemas de alta seguridad prefieren pruebas de almacenamiento a supuestos basados únicamente en eventos.Los recibos son valiosos, pero responden a una pregunta distinta de la que responden los compromisos de estado.El compromiso de recibos ayuda a demostrar lo que informó la transacción.El compromiso de estado ayuda a demostrar lo que contiene realmente el estado de la blockchain.Compromisos de estado en rollups
Los rollups dependen en gran medida de los compromisos de estado.Un rollup procesa transacciones fuera de la cadena base o en un entorno de ejecución independiente, y después publica compromisos, datos o pruebas de vuelta en una capa de liquidación.La raíz de estado del rollup resume el estado actual de Layer 2.Los usuarios pueden utilizar ese compromiso para seguir saldos, retiradas, mensajes y el estado de aplicaciones dentro del rollup.La documentación de Ethereum sobre zk-rollups explica que los rollups de conocimiento cero publican pruebas de validez para demostrar que las transiciones de estado son correctas.
En los rollups optimistas, los compromisos de estado pueden impugnarse durante un periodo de disputa si alguien considera que una transición no es válida.En los rollups de validez, se utilizan pruebas para demostrar que el nuevo estado comprometido sigue las reglas.En ambos casos, el compromiso de estado es la afirmación compacta sobre cuál es el estado del rollup.Sin compromisos de estado, los rollups no tendrían una forma eficiente de resumir y liquidar grandes cantidades de ejecución de Layer 2.Esto hace que los compromisos de estado sean esenciales para la escalabilidad blockchain moderna.Compromisos de estado y pruebas de fraude
Una prueba de fraude es una impugnación que demuestra que una transición de estado declarada no es válida.Los sistemas de pruebas de fraude se abordan habitualmente en los diseños de rollups optimistas.Un operador de rollup puede publicar un nuevo compromiso de estado después de ejecutar transacciones.Si el compromiso es incorrecto, otro participante puede impugnarlo demostrando que la transición del estado anterior al nuevo estado no era válida.El proceso de disputa necesita compromisos claros con el estado anterior, los datos de transacciones y el nuevo estado declarado.Por tanto, los compromisos de estado forman parte de la estructura de evidencia de las pruebas de fraude.Una prueba de fraude no es solo una afirmación de que algo está mal.Debe conectar la afirmación con datos comprometidos y reglas de ejecución.Por eso la disponibilidad de datos también es importante para las pruebas de fraude.Si los datos necesarios para recalcular la transición no están disponibles, es posible que quienes impugnan no puedan demostrar el fraude.Compromisos de estado y pruebas de validez
Una prueba de validez es evidencia criptográfica de que una transición de estado se ejecutó correctamente.Las pruebas de validez se utilizan habitualmente en rollups de conocimiento cero y otros sistemas basados en pruebas.El probador parte de un compromiso de estado anterior, aplica transacciones conforme a las reglas y demuestra que el nuevo compromiso de estado es correcto.Los verificadores no necesitan volver a ejecutar por completo cada transacción si el sistema de pruebas es sólido y se cumplen los supuestos de datos necesarios.Esto puede hacer que la verificación sea mucho más económica que la ejecución.Los compromisos de estado son centrales porque la prueba necesita un compromiso inicial y final claros.En efecto, la prueba afirma que el sistema pasó válidamente de un estado comprometido a otro estado comprometido.Esto convierte los compromisos de estado en anclajes para una verificación escalable.Las pruebas de validez pueden respaldar rollups, bridges, aplicaciones privadas y sistemas de ejecución comprimida.El compromiso define qué estado se está demostrando.Compromisos de estado y clientes ligeros
Los clientes ligeros utilizan compromisos y pruebas para verificar información blockchain sin almacenar todo el estado.Un cliente ligero puede seguir cabeceras de bloques y verificar pruebas frente a las raíces de dichas cabeceras.Para un valor de estado, el cliente ligero necesita un compromiso de estado de confianza y una prueba de estado válida.Esto permite a carteras móviles, dispositivos integrados y sistemas con pocos recursos verificar hechos específicos con menos almacenamiento y ancho de banda.Por tanto, los compromisos de estado constituyen una parte importante del diseño de carteras que minimizan la necesidad de confianza.Sin ellos, los clientes ligeros tendrían que confiar mucho más en servidores remotos.Un servidor remoto puede informar de un saldo, pero una prueba permite al cliente comprobar ese saldo frente al estado comprometido.La verificación de clientes ligeros no siempre es sencilla porque los clientes también necesitan cabeceras fiables y supuestos de finalidad.Aun así, los compromisos de estado hacen posible en principio una verificación ligera.Este es uno de los beneficios más importantes del estado autenticado de cara al usuario.Compromisos de estado y bridges
Los bridges a menudo necesitan verificar el estado de otra blockchain o red Layer 2.Un bridge puede necesitar demostrar que se produjo un depósito, que una retirada fue finalizada o que existe un mensaje en un estado comprometido.Los compromisos de estado ayudan a los bridges a verificar esas afirmaciones de forma más segura.Por ejemplo, un contrato de bridge puede verificar una prueba frente a una raíz de estado conocida de otro sistema.Si la prueba es válida, el bridge puede liberar fondos o transmitir un mensaje.Sin embargo, los bridges siguen siendo arriesgados incluso cuando utilizan compromisos de estado.Un bridge también debe verificar el consenso de la cadena de origen, la finalidad, la disponibilidad de datos, el formato de la prueba y las reglas de mensajes.Una prueba de estado correcta es solo una parte de la seguridad de un bridge.Un mal diseño de bridge puede seguir fallando debido a validadores débiles, relayers defectuosos, errores de contratos inteligentes, ataques de repetición o supuestos erróneos de finalidad.Los compromisos de estado ayudan a reducir la confianza, pero no hacen que todos los bridges sean seguros automáticamente.Compromisos de estado y disponibilidad de datos
La disponibilidad de datos significa que los datos necesarios para verificar o reconstruir transiciones de estado están disponibles públicamente.Un compromiso de estado por sí solo no garantiza que los usuarios puedan comprobar cómo se produjo el estado.Un actor malicioso podría publicar un nuevo compromiso mientras retiene los datos necesarios para verificar la transición.Por eso la disponibilidad de datos es una cuestión importante para rollups, fragmentación y sistemas blockchain modulares.La documentación de Ethereum sobre disponibilidad de datos explica que la disponibilidad de datos se refiere a si se han publicado los datos de transacciones para que los participantes puedan verificar o reconstruir el estado.
Los compromisos de estado y la disponibilidad de datos trabajan conjuntamente.El compromiso indica cuál es el estado declarado.Los datos disponibles permiten a otros comprobar si la transición a ese estado fue válida.Un compromiso sin datos puede convertirse en una caja negra.Una blockchain escalable necesita tanto compromisos compactos como datos accesibles.Compromisos de estado y clientes sin estado
Los clientes sin estado son una idea de escalabilidad a largo plazo en la que los nodos pueden verificar bloques sin almacenar localmente todo el estado.En lugar de que cada nodo conserve toda la base de datos de estado, los productores de bloques o pares proporcionan testigos que demuestran los valores de estado a los que afecta un bloque.La documentación de Ethereum sobre statelessness explica que el objetivo de la falta de estado es permitir a los nodos verificar bloques utilizando testigos en lugar de grandes bases de datos de estado locales.
Los compromisos de estado son fundamentales para este diseño porque los testigos deben verificarse frente a un compromiso.Si el testigo demuestra que todos los valores a los que se accedió coinciden con el compromiso de estado anterior y que los valores resultantes producen el nuevo compromiso, el verificador puede comprobar el bloque con menos estado local.Esto podría facilitar la operación de nodos con el tiempo.Sin embargo, los testigos actuales de Merkle Patricia Trie pueden ser grandes.Esta es una de las razones por las que la investigación de Ethereum se ha centrado en los árboles Verkle y estructuras de testigos más pequeñas.La falta de estado no es solo un truco de almacenamiento.Depende de compromisos de estado que admitan pruebas eficientes.Compromisos de estado y árboles Verkle
Los árboles Verkle son una posible vía de actualización para hacer que las pruebas de estado de Ethereum sean más pequeñas y eficientes.La documentación de Ethereum sobre árboles Verkle describe los árboles Verkle como una estructura de datos que puede ayudar a los nodos de Ethereum a dejar de almacenar grandes cantidades de datos de estado, manteniendo la capacidad de validar bloques.
Los árboles Verkle combinan estructuras de árbol con compromisos vectoriales.El nombre Verkle procede de vector commitment y Merkle tree.En comparación con las pruebas actuales de Merkle Patricia Trie, las pruebas Verkle pueden ser mucho más pequeñas para muchos patrones de acceso al estado.Los testigos más pequeños son importantes para clientes sin estado y la escalabilidad futura.Los árboles Verkle no eliminan la necesidad de compromisos de estado.Cambian la estructura de compromiso utilizada para representar y demostrar el estado.Esto demuestra que el compromiso de estado es un concepto amplio que puede implementarse con estructuras de datos criptográficas diferentes.El método de compromiso puede evolucionar, mientras que la necesidad de comprometerse con el estado sigue siendo fundamental.Compromisos de estado y compromisos vectoriales
Un compromiso vectorial es un compromiso criptográfico con una lista o vector de valores que admite pruebas eficientes sobre posiciones individuales.Los compromisos vectoriales pueden ser útiles para el estado blockchain porque pueden reducir el tamaño de las pruebas en comparación con algunos enfoques de árboles hash.Los árboles Verkle utilizan compromisos vectoriales dentro de una estructura similar a un árbol.Esto es diferente de un árbol de Merkle tradicional, donde se utilizan hashes de nodos hermanos para verificar rutas.Los compromisos vectoriales pueden hacer más compactas las pruebas, pero pueden introducir supuestos criptográficos y complejidad de implementación diferentes.Para los usuarios, el punto importante no es el detalle matemático.Lo importante es que los sistemas más recientes de compromiso de estado buscan reducir el coste de demostrar el estado.Las pruebas más pequeñas pueden ayudar a clientes ligeros, clientes sin estado, rollups, bridges y sistemas que preservan la privacidad.Sin embargo, los nuevos esquemas de compromiso deben probarse cuidadosamente antes de proteger grandes redes públicas.El diseño de compromisos de estado siempre es un equilibrio entre tamaño de prueba, coste de verificación, coste de actualización, supuestos de seguridad y riesgo de implementación.Compromisos de estado y árboles de Merkle dispersos
Un árbol de Merkle disperso es otra estructura habitual de compromiso de estado en sistemas cripto.Suele utilizarse cuando las claves se encuentran en un espacio de claves fijo muy grande.Cada clave posible tiene una posición en el árbol, pero la mayoría de las posiciones pueden estar vacías.Las ramas vacías pueden comprimirse o representarse eficientemente según la implementación.Los árboles de Merkle dispersos son útiles porque permiten pruebas claras de inclusión y no inclusión.Algunos sistemas Layer 2, bridges, carteras y blockchains específicas de aplicación utilizan árboles de Merkle dispersos o variantes para compromisos de estado.No son idénticos al Merkle Patricia Trie actual de Ethereum.Son otra forma de resolver el mismo problema básico.El problema consiste en cómo comprometerse con un gran estado de clave-valor y demostrar valores individuales de manera eficiente.Esta variedad demuestra que los compromisos de estado son una categoría de diseño, no una única estructura de datos.Compromisos de estado y Bitcoin
Bitcoin no suele describirse con un compromiso de estado global al estilo Ethereum.Los bloques de Bitcoin se comprometen con las transacciones mediante una raíz de Merkle en la cabecera del bloque.El estado activo disponible para gastar de Bitcoin es el conjunto de UTXO, que se deriva del historial de transacciones.La guía para desarrolladores de Bitcoin sobre la cadena de bloques explica que las cabeceras de bloque incluyen una raíz de Merkle para las transacciones del bloque.
Esto significa que Bitcoin cuenta con sólidos compromisos de inclusión de transacciones.Sin embargo, la cabecera de bloque de Bitcoin no incluye un compromiso directo con todo el conjunto actual de UTXO del mismo modo que Ethereum incluye una raíz de estado para el estado de cuentas.Algunas investigaciones y propuestas han explorado compromisos de UTXO porque los compromisos directos con el estado disponible para gastar podrían ayudar a clientes ligeros y modelos de validación.Esta comparación es útil porque demuestra que distintas blockchains se comprometen con datos diferentes.Los sistemas de contratos inteligentes al estilo Ethereum necesitan compromisos de estado explícitos porque las aplicaciones dependen en gran medida del estado actual de cuentas y contratos.El modelo de Bitcoin se centra más directamente en el historial de transacciones y el conjunto de UTXO derivado de él.Compromisos de estado y blockchains basadas en cuentas
Las blockchains basadas en cuentas a menudo necesitan compromisos de estado explícitos porque los saldos de cuentas y el almacenamiento de contratos son centrales para la ejecución.Cuando se ejecuta una transacción, puede actualizar saldos de cuentas, nonces, almacenamiento de contratos inteligentes, registros de staking y datos de aplicaciones.El estado resultante debe quedar comprometido para que otros nodos puedan verificar el resultado exacto.Por eso las raíces de estado son habituales en plataformas de contratos inteligentes.Proporcionan a la red un único compromiso con una amplia base de datos de estado.Sin un compromiso de estado fiable, sería más difícil demostrar que un valor de almacenamiento de contrato es correcto.También sería más difícil crear bridges, rollups y clientes ligeros que dependan de pruebas de cuentas o almacenamiento.Las cadenas basadas en cuentas suelen tener un estado más complejo que los sistemas de pagos sencillos.Esa complejidad hace que el diseño de compromisos de estado sea especialmente importante.Cuanto más programable sea la cadena, más valioso será el estado autenticado.Compromisos de estado y blockchains basadas en objetos
Algunas blockchains utilizan modelos de estado basados en objetos, en lugar de un estado simple basado en cuentas.En sistemas basados en objetos, los activos, contratos y datos pueden representarse como objetos con propietarios, campos y permisos.Estos sistemas también necesitan compromisos de estado.El compromiso puede resumir la propiedad de objetos, su contenido, números de versión, datos de paquetes o resultados de ejecución.La estructura exacta difiere del trie global de cuentas de Ethereum.Sin embargo, el objetivo sigue siendo hacer verificable el estado actual.Si un objeto cambia de propietario, el compromiso de estado debería reflejar ese cambio.Si cambia el contenido de un objeto, el compromiso debería reflejar esa actualización.Esto demuestra que los compromisos de estado no se limitan a modelos de cuentas al estilo Ethereum.Cualquier blockchain que mantenga estado activo necesita alguna forma de comprometerse con ese estado de manera segura.Compromisos de estado y almacenamiento de contratos inteligentes
El almacenamiento de contratos inteligentes es una de las principales razones por las que los compromisos de estado son complejos.Un contrato inteligente puede almacenar saldos, aprobaciones, posiciones, órdenes, votos, valores de configuración y muchos otros registros.Estos valores pueden cambiar después de cada transacción.Un compromiso de estado debe reflejar esos cambios con precisión.En Ethereum, el trie de almacenamiento de cada contrato tiene su propia raíz, y la cuenta del contrato almacena esa raíz dentro del trie de estado global.Esto permite generar pruebas para slots de almacenamiento específicos de un contrato.Por ejemplo, una prueba puede demostrar que una asignación de saldos de tokens tenía un valor determinado en un bloque concreto.Esto resulta útil para auditorías, bridges, gobernanza, rollups y verificación cross-chain.El almacenamiento de contratos inteligentes hace que los compromisos de estado sean potentes, pero también más pesados, ya que el estado puede crecer mucho.Por este motivo, los costes de almacenamiento, la saturación del estado y el tamaño de las pruebas son cuestiones importantes para la escalabilidad.Compromisos de estado y saldos de tokens
Los saldos de tokens suelen encontrarse en el almacenamiento de contratos inteligentes, en lugar de directamente en el estado de la cuenta base.Esto significa que demostrar un saldo de tokens puede requerir una prueba de almacenamiento del contrato del token.El saldo de una moneda nativa puede demostrarse a partir de un objeto de cuenta.Un saldo de tokens puede requerir demostrar la cuenta del contrato del token y el slot de almacenamiento pertinente dentro de la raíz de almacenamiento de ese contrato.Esta distinción es importante para los bridges y los airdrops.Un sistema que necesite verificar la titularidad de tokens debe comprender dónde se almacena dicha titularidad.No debe asumir que todos los saldos forman parte del mismo campo de estado.El compromiso de estado puede admitir tanto pruebas de monedas nativas como de tokens, pero las rutas de prueba pueden ser distintas.Los desarrolladores deben comprender el estándar del token y la estructura de almacenamiento antes de crear sistemas de pruebas.Un compromiso de estado solo es útil cuando el verificador sabe exactamente qué valor se está demostrando.Compromisos de estado y NFT
La titularidad de un NFT también puede representarse mediante compromisos de estado.Un contrato de NFT suele almacenar datos de titularidad para cada ID de token.Una prueba de titularidad de NFT puede necesitar verificar el valor de almacenamiento pertinente del contrato en un bloque específico.Esto puede ser útil para bridges cross-chain de NFT, votaciones basadas en snapshots, acceso restringido, recompensas y comprobaciones históricas de titularidad.Sin embargo, los metadatos de NFT no siempre quedan comprometidos por completo en el estado de la blockchain.Algunos metadatos de NFT se almacenan off-chain o se referencian mediante enlaces externos.Un compromiso de estado puede demostrar la titularidad on-chain, pero podría no demostrar que una imagen o un archivo de metadatos off-chain permanecerá disponible para siempre.Esta distinción es importante para los usuarios que creen que una prueba de estado demuestra todo sobre un NFT.Por lo general, solo demuestra el valor de estado on-chain que se está comprobando.Los compromisos de estado son potentes, pero no verifican automáticamente la permanencia de datos off-chain.Compromisos de estado y estado histórico
Un compromiso de estado está vinculado a un bloque o momento específico del historial de la cadena.El compromiso de estado actual demuestra el estado actual.Un compromiso de estado antiguo puede demostrar el estado histórico si el verificador dispone de la cabecera del bloque antiguo y de la prueba adecuada.Esto resulta útil para auditorías, snapshots, registros legales, gobernanza y reclamaciones históricas.Sin embargo, almacenar datos de estado histórico puede resultar caro.Muchos nodos completos conservan el estado actual y reciente, pero podan el estado intermedio más antiguo.Los nodos de archivo conservan más estado histórico para poder responder más rápido a consultas antiguas.La documentación oficial sobre nodos de archivo de Ethereum explica que los nodos de archivo almacenan todos los estados históricos y son útiles para consultas históricas rápidas.
Esto significa que los compromisos de estado históricos pueden existir en cabeceras de bloques antiguas, pero generar pruebas para estados antiguos puede requerir acceso a bases de datos de estado histórico.Los compromisos de estado preservan la verificabilidad, pero alguien sigue necesitando los datos necesarios para construir la prueba.Compromisos de estado y nodos de archivo
Los nodos de archivo son importantes porque los compromisos de estado por sí solos no almacenan todos los datos del estado.La cabecera de un bloque puede contener una raíz de estado de hace años.Para generar una prueba frente a esa raíz antigua, un nodo necesita acceder a los nodos históricos pertinentes del trie o a los datos de estado.Un nodo completo estándar puede no tener ese estado antiguo disponible de inmediato.Un nodo de archivo está diseñado para conservar estados históricos y ofrecer un acceso rápido a ellos.Por ello, los exploradores, empresas de análisis, auditores y proveedores de infraestructura suelen depender de nodos de archivo.Para los usuarios, la cuestión práctica es que el estado antiguo puede ser más difícil de verificar que el actual si los datos de prueba no están fácilmente disponibles.Para los desarrolladores, esto significa que los sistemas de pruebas históricas necesitan una planificación cuidadosa del almacenamiento de datos.Un compromiso de estado es un ancla compacta, pero la prueba sigue necesitando datos de respaldo.La infraestructura de archivo cubre esa brecha para la verificación histórica.Compromisos de estado y saturación del estado
La saturación del estado se produce cuando el estado activo de la blockchain crece demasiado.Cada cuenta, contrato, slot de almacenamiento, saldo de tokens, orden y posición nuevos puede aumentar la cantidad de estado que debe comprometerse y mantenerse.Un estado mayor puede aumentar el almacenamiento de los nodos, el tiempo de sincronización, la carga de trabajo de la base de datos y la complejidad de las pruebas.Los compromisos de estado no eliminan el coste del estado.Solo lo resumen y autentican.Si el estado subyacente crece demasiado, los nodos siguen necesitando almacenar, actualizar o demostrar partes de ese estado.Por ello, la investigación sobre compromisos de estado está vinculada a la expiración del estado, el alquiler de almacenamiento, la poda, los clientes sin estado y los árboles Verkle.Las blockchains necesitan compromisos seguros, pero también una gestión del estado que siga siendo sostenible.La saturación del estado es uno de los problemas a largo plazo más difíciles para las plataformas de contratos inteligentes.Mejores compromisos de estado pueden ayudar, pero no son la única solución.Compromisos de estado y alquiler de almacenamiento
El alquiler de almacenamiento es una herramienta económica que cobra o reserva valor por conservar datos en el estado de una blockchain.Está relacionado con los compromisos de estado porque cada entrada de datos persistente debe incluirse finalmente en el estado comprometido.Si almacenar datos es demasiado barato, los usuarios y las aplicaciones pueden crear estado de poco valor que sobrecargue la red durante años.Si el almacenamiento es demasiado caro, puede resultar más difícil crear aplicaciones útiles.Un compromiso de estado hace que el estado sea verificable, pero no decide quién debe pagar por almacenarlo.El alquiler de almacenamiento, los depósitos, los costes de gas y las devoluciones ayudan a resolver el aspecto económico del crecimiento del estado.El compromiso de estado resuelve el aspecto criptográfico.Ambos son necesarios para un diseño sostenible de blockchain.Una blockchain puede tener una raíz de estado sólida y aun así sufrir si el estado crece sin límites.Por este motivo, el compromiso de estado y la economía del estado deben estudiarse conjuntamente.Compromisos de estado y finalidad
Un compromiso de estado se vuelve más útil cuando está vinculado a un bloque finalizado o fuertemente confirmado.Si un bloque puede reorganizarse, su compromiso de estado podría ser sustituido por otro compromiso de estado procedente de una rama distinta de la cadena.Esto es importante para los bridges, las retiradas, las auditorías y los mensajes cross-chain.Un bridge no debe basarse en el compromiso de estado de un bloque que pueda revertirse con facilidad.Un cliente ligero debe comprender el modelo de finalidad de la cadena cuyo estado verifica.Algunas cadenas tienen finalidad probabilística, en la que la confianza aumenta con el tiempo.Otras cadenas tienen finalidad económica explícita o de estilo BFT.El compromiso demuestra el estado con respecto a un bloque.La finalidad indica a los usuarios el grado de confianza que deberían tener en que el bloque seguirá siendo canónico.Una prueba de estado es más sólida cuando el compromiso de bloque subyacente también es final según las reglas de consenso pertinentes.Compromisos de estado y consenso
El consenso y los compromisos de estado funcionan juntos, pero no son lo mismo.El consenso decide qué bloques se aceptan y en qué orden.La función de transición de estado ejecuta esos bloques y produce un estado nuevo.El compromiso de estado resume ese nuevo estado.Si el consenso acepta un bloque con una raíz de estado incorrecta, los nodos honestos deberían rechazarlo durante la validación de la ejecución.Si los nodos discrepan sobre las reglas de ejecución, podrían calcular compromisos de estado distintos y dividirse.Por ello, las implementaciones de clientes deben calcular los compromisos de estado exactamente conforme a las reglas del protocolo.Los compromisos de estado son críticos para el consenso porque representan el resultado acordado de la ejecución.No son meros índices de base de datos ni metadatos opcionales.Un compromiso de estado incorrecto puede invalidar un bloque.Compromisos de estado y proveedores RPC
Los proveedores RPC son servicios que las carteras y las dApps utilizan para leer y enviar datos de blockchain.Cuando una cartera solicita un saldo, un proveedor RPC lee el estado de un nodo.Cuando una dApp comprueba un valor de contrato, el proveedor puede leer el almacenamiento del contrato o simular la ejecución frente al estado actual.Sin embargo, una respuesta RPC normal no siempre es una prueba criptográfica.Puede ser simplemente un valor comunicado por el proveedor.Los compromisos de estado permiten una verificación más sólida cuando el proveedor también facilita datos de prueba.Para Ethereum, EIP-1186 define eth_getProof para pruebas de cuentas y almacenamiento.Esto significa que las aplicaciones que necesitan mayor garantía pueden solicitar datos de prueba en lugar de confiar en una respuesta simple.La mayoría de los usuarios habituales no verifican estas pruebas manualmente.Aun así, los compromisos de estado constituyen la base de herramientas que pueden reducir la confianza necesaria en los proveedores de infraestructura.Compromisos de estado e indexadores
Los indexadores organizan los datos de blockchain para que las aplicaciones puedan buscarlos rápidamente.Pueden rastrear transferencias de tokens, titularidad de NFT, posiciones DeFi, votos de gobernanza o actividad de cuentas.Los indexadores son útiles porque puede resultar difícil consultar directamente el estado y los logs sin procesar.Sin embargo, los datos indexados no son lo mismo que un compromiso de estado.Un indexador puede cometer errores, ir por detrás de la cadena o utilizar sus propias reglas de interpretación.Un compromiso de estado forma parte del sistema de verificación criptográfica del protocolo.Para aplicaciones de alto valor o sensibles a la seguridad, puede ser necesario comprobar los datos indexados frente al estado comprometido o los recibos.Esto es especialmente importante cuando la salida de un indexador desencadena acciones financieras.Los indexadores mejoran la usabilidad, mientras que los compromisos de estado mejoran la verificabilidad.Una aplicación cripto fiable debe comprender la diferencia.Compromisos de estado y privacidad
Los compromisos de estado pueden respaldar sistemas que preservan la privacidad, pero no son privados automáticamente.En blockchains públicas, los compromisos de estado suelen resumir estados públicos o que pueden derivarse públicamente.Cualquier persona puede ser capaz de inspeccionar saldos, almacenamiento de contratos e historial de transacciones, según la cadena y las herramientas.Los sistemas que preservan la privacidad pueden utilizar los compromisos de forma diferente.Por ejemplo, un protocolo puede comprometer valores ocultos y usar pruebas de conocimiento cero para demostrar que las transiciones son válidas sin revelar todos los detalles.En esos sistemas, los compromisos pueden ocultar datos y seguir respaldando la verificación.Por tanto, la palabra compromiso es más amplia que las raíces de estado públicas.Un compromiso de estado puede ser transparente, privado o parcialmente privado según el diseño.Los usuarios no deben asumir que un compromiso de estado oculta datos, salvo que el protocolo proporcione específicamente funciones de privacidad.La mayoría de los compromisos de estado de cadenas públicas se centran más en la integridad que en la confidencialidad.Compromisos de estado y pruebas de conocimiento cero
Las pruebas de conocimiento cero suelen utilizar compromisos para representar el estado antes y después de la ejecución.Un demostrador puede probar que una transición de un compromiso de estado a otro fue válida sin que un verificador tenga que volver a ejecutar todo.Esto es habitual en los rollups de validez, los sistemas de privacidad y los modelos de ejecución comprimida.La prueba puede indicar que el nuevo compromiso de estado se deriva del antiguo compromiso de estado y de un conjunto de operaciones válidas.Según el sistema, algunos datos pueden ser públicos y otros pueden permanecer ocultos.Esto convierte los compromisos en un puente entre la verificación compacta y la computación compleja.Los compromisos de estado definen qué se está demostrando.Las pruebas de conocimiento cero definen por qué debe aceptarse la transición.Juntas, permiten que los sistemas escalen o preserven la privacidad manteniendo una corrección verificable.Este es uno de los usos avanzados más importantes de los compromisos de estado en la infraestructura cripto moderna.Compromisos de estado y pruebas de no inclusión
Una prueba de no inclusión demuestra que una clave o valor no está presente en un estado comprometido.Las pruebas de inclusión demuestran que algo existe.Las pruebas de no inclusión demuestran que algo no existe.Esto puede ser importante para la creación de cuentas, las comprobaciones de nullifiers, los árboles de Merkle dispersos, los sistemas de identidad y las reclamaciones de airdrops.Por ejemplo, un sistema de privacidad puede necesitar demostrar que un nullifier aún no se ha utilizado.Un bridge puede necesitar demostrar que un mensaje no se ha consumido antes.Un registro puede necesitar demostrar que un nombre o una clave sigue sin asignarse.Algunas estructuras de compromiso facilitan más las pruebas de no inclusión que otras.Esta es una de las razones por las que el diseño de compromisos de estado importa más allá de las simples pruebas de saldo.Un buen sistema de compromisos de estado debe admitir los tipos de pruebas que el protocolo necesita realmente.Compromisos de estado y supuestos de seguridad
Los compromisos de estado dependen de supuestos criptográficos.Los compromisos basados en hash dependen de la resistencia a colisiones y a preimágenes de la función hash.Los compromisos vectoriales pueden depender de supuestos matemáticos diferentes según el esquema.Si la criptografía subyacente deja de ser segura, el compromiso podría dejar de ser fiable.La seguridad de la implementación también importa.Un esquema de compromiso correcto puede seguir siendo peligroso si el software cliente codifica valores incorrectamente o verifica las pruebas de forma inadecuada.El código crítico para el consenso debe tratar exactamente los casos límite.Los distintos clientes deben calcular el mismo compromiso a partir del mismo estado.Por ello, los cambios en los compromisos de estado se tratan con cautela en las grandes actualizaciones de blockchain.Cambiar la estructura de compromiso modifica una parte profunda del modelo de seguridad de la cadena.Compromisos de estado y herramientas para desarrolladores
Los desarrolladores encuentran compromisos de estado mediante métodos RPC, sistemas de pruebas, cabeceras de bloques, raíces de estado de rollups, pruebas de almacenamiento y bases de datos de clientes.Un desarrollador de contratos inteligentes puede necesitar saber cómo se almacena un saldo de tokens para poder generar una prueba.Un desarrollador de bridges puede necesitar verificar una prueba de almacenamiento frente a una raíz finalizada.Un desarrollador de rollups puede necesitar calcular y publicar raíces de estado después de los lotes.Un desarrollador de carteras puede necesitar decidir si confía en un valor RPC o verifica una prueba.Un desarrollador de indexadores puede necesitar conciliar los eventos indexados con el estado comprometido.Un investigador de protocolos puede comparar Merkle Patricia Tries, árboles de Merkle dispersos, árboles Verkle y otros acumuladores.Todos estos son problemas de compromisos de estado en distintas formas.Comprender el concepto ayuda a los desarrolladores a evitar confundir la inclusión de transacciones, los logs de eventos, los recibos y el estado real.Los sistemas más seguros dejan claro qué compromiso se verifica y qué valor de estado se demuestra.Malentendidos habituales sobre los compromisos de estado
Un malentendido habitual es creer que un compromiso de estado contiene el estado completo.No contiene el estado completo porque solo es un resumen criptográfico compacto de ese estado.Otro malentendido es que una prueba de transacción es lo mismo que una prueba de estado.Una prueba de transacción puede demostrar la inclusión, mientras que una prueba de estado puede demostrar un valor de estado resultante.Un tercer malentendido es que un compromiso de estado hace que los datos estén disponibles.Un compromiso demuestra integridad, pero la disponibilidad de datos es un requisito independiente.Un cuarto malentendido es que todas las blockchains se comprometen al estado del mismo modo.Las distintas cadenas utilizan modelos de estado y estructuras de compromiso diferentes.Un quinto malentendido es que un compromiso de estado implica privacidad automáticamente.La mayoría de los compromisos de estado públicos proporcionan integridad y verificabilidad, no confidencialidad.Ventajas de los compromisos de estado
La primera ventaja de los compromisos de estado es la verificación compacta.Una raíz pequeña puede representar una base de datos de estado muy grande.La segunda ventaja es la evidencia de manipulación.Cambiar el estado subyacente cambia el compromiso.La tercera ventaja es el soporte de pruebas.Los usuarios pueden verificar valores específicos mediante pruebas de inclusión o no inclusión.La cuarta ventaja es el soporte para clientes ligeros.Los clientes ligeros pueden comprobar valores de estado seleccionados sin almacenar todo el estado.La quinta ventaja es el apoyo a la escalabilidad.Los rollups y los sistemas de pruebas utilizan compromisos de estado para resumir grandes lotes de ejecución.La sexta ventaja es la verificación cross-chain.Los bridges y sistemas de mensajería pueden verificar afirmaciones frente a compromisos de otras cadenas o capas.La séptima ventaja es la auditabilidad.Los compromisos de estado ayudan a demostrar que cada bloque produce un estado acordado específico.Limitaciones de los compromisos de estado
La primera limitación es que un compromiso por sí solo no proporciona los datos subyacentes.Los usuarios siguen necesitando disponibilidad de datos y datos de prueba para verificar afirmaciones.La segunda limitación es el tamaño de la prueba.Algunas estructuras de compromiso generan pruebas demasiado grandes para una verificación eficiente de clientes ligeros o sin estado.La tercera limitación es el coste de actualización.Actualizar un compromiso tras muchos cambios de estado puede resultar costoso desde el punto de vista computacional.La cuarta limitación es la complejidad de implementación.La codificación, el hashing, la generación de pruebas y la verificación de pruebas deben ser exactos.La quinta limitación es el acceso histórico.Los compromisos antiguos pueden existir en cabeceras de bloques, pero generar pruebas puede requerir datos de estado antiguos de nodos de archivo.La sexta limitación son los supuestos de seguridad.Los distintos esquemas de compromiso se basan en garantías criptográficas distintas.La séptima limitación es la falta de visibilidad para el usuario.La mayoría de los usuarios no ven directamente los compromisos de estado, por lo que las carteras y aplicaciones deben explicar con claridad la seguridad basada en pruebas.Cómo evaluar un sistema de compromisos de estado
Empieza por identificar qué estado se está comprometiendo.A continuación, comprueba qué estructura de datos crea el compromiso.Revisa si el compromiso admite pruebas de inclusión.Revisa si admite pruebas de no inclusión cuando la aplicación las necesita.Comprueba el tamaño de la prueba y el coste de verificación.Comprueba el coste de actualización cuando cambian muchos valores de estado.Revisa los supuestos criptográficos en los que se basa el esquema de compromiso.Comprueba si los datos de prueba están fácilmente disponibles para el estado actual e histórico.Revisa si el compromiso se incluye en un bloque finalizado, un lote de rollup u otra ancla de confianza.Pregunta si la disponibilidad de datos se resuelve de forma independiente del propio compromiso.Buenas prácticas para desarrolladores
Utiliza la documentación oficial del protocolo antes de implementar la verificación de pruebas.Separa en tu diseño las pruebas de inclusión de transacciones de las pruebas de estado.Siempre que sea posible, verifica las pruebas frente a compromisos fiables y finalizados.No asumas que los eventos y logs son lo mismo que los valores de almacenamiento comprometidos.Comprende la estructura de almacenamiento de los contratos antes de demostrar saldos de tokens, titularidad de NFT o poder de gobernanza.Planifica la generación de pruebas históricas si tu aplicación necesita snapshots de estados antiguos.Considera la disponibilidad de datos además de la verificación de compromisos de estado.Audita cuidadosamente el código de verificación de pruebas, ya que pequeños errores de codificación pueden convertirse en vulnerabilidades críticas.Sigue los cambios de la hoja de ruta, como la investigación sobre árboles Verkle, si tu sistema depende en gran medida de las pruebas de estado de Ethereum.Documenta qué demuestra tu aplicación, qué compromiso utiliza y qué supuestos permanecen.Buenas prácticas para usuarios
Comprende que un saldo mostrado puede proceder de un proveedor RPC o indexador, en lugar de una prueba que hayas verificado personalmente.Utiliza carteras y exploradores fiables, pero recuerda que los sistemas de alto valor pueden necesitar una verificación basada en pruebas más sólida.Ten cuidado con los bridges que afirman verificar el estado de otra cadena.Comprueba si un bridge depende de pruebas nativas, validadores, relayers, multisigs o comités externos.Comprende que un compromiso de estado no garantiza que todos los datos sean de fácil acceso.Recuerda que el estado antiguo puede requerir infraestructura de archivo para demostrarse de forma eficiente.No asumas que la inclusión de una transacción significa que se produjo correctamente un cambio de estado final.Espera una finalidad suficiente antes de basarte en un compromiso de estado para acciones de alto valor.Utiliza pequeñas transacciones de prueba al interactuar con sistemas que dependen de pruebas de estado cross-chain.Considera que las afirmaciones basadas en pruebas son más sólidas que las simples solo cuando la prueba se verifica realmente frente al compromiso correcto.Preguntas frecuentes
¿Qué significa compromiso de estado en cripto?
Un compromiso de estado es una raíz o compromiso criptográfico que representa el estado actual de una blockchain de forma compacta y verificable.¿Es un compromiso de estado lo mismo que una raíz de estado?
Una raíz de estado es un tipo habitual de compromiso de estado, especialmente en blockchains de estilo Ethereum.¿Qué demuestra un compromiso de estado?
Un compromiso de estado no demuestra un valor por sí mismo, pero permite a los usuarios verificar un valor cuando se combina con una prueba de estado válida.¿Por qué Ethereum utiliza una raíz de estado?
Ethereum utiliza una raíz de estado para comprometerse al estado global tras ejecutar cada bloque.¿Cuál es la diferencia entre un compromiso de estado y una raíz de transacciones?
Un compromiso de estado representa el estado resultante de la blockchain, mientras que una raíz de transacciones se compromete a las transacciones incluidas en un bloque.¿Qué es una prueba de Merkle?
Una prueba de Merkle es información de respaldo que permite a un verificador comprobar si un valor pertenece al estado comprometido por una raíz.¿Cómo utilizan los rollups los compromisos de estado?
Los rollups utilizan compromisos de estado para resumir su estado de Layer 2 después de ejecutar lotes de transacciones.¿Los compromisos de estado resuelven la disponibilidad de datos?
No. Los compromisos de estado demuestran integridad, mientras que la disponibilidad de datos garantiza que los datos necesarios para verificar o reconstruir transiciones de estado sean accesibles.¿Qué son los árboles Verkle?
Los árboles Verkle son una estructura propuesta de compromisos de estado que utiliza compromisos vectoriales para admitir testigos más pequeños y una validación sin estado más eficiente.¿Los compromisos de estado son privados?
No siempre, porque la mayoría de los compromisos de estado de cadenas públicas proporcionan verificabilidad en lugar de confidencialidad, salvo que se combinen con criptografía que preserve la privacidad.Conclusión
Un compromiso de estado es un compromiso criptográfico compacto con el estado activo de una blockchain en un momento específico.Permite que grandes conjuntos de saldos, cuentas, almacenamiento de contratos y datos de aplicaciones se representen mediante una raíz pequeña o valor de compromiso.En Ethereum, la raíz de estado es el principal compromiso de estado para el estado global de la capa de ejecución.Esta raíz se genera a partir del Merkle Patricia Trie y cambia cada vez que cambia el estado subyacente.Los compromisos de estado son esenciales para el consenso, los clientes ligeros, las pruebas de Merkle, los rollups, los bridges, las auditorías y la investigación sobre clientes sin estado.Ayudan a los usuarios a verificar afirmaciones sobre el estado sin confiar ciegamente en un proveedor de bases de datos.También respaldan sistemas avanzados como pruebas de fraude, pruebas de validez y mensajería cross-chain.Sin embargo, un compromiso de estado no equivale a disponibilidad total de datos, inclusión de transacciones, logs de recibos ni privacidad.Debe combinarse con la prueba adecuada, los datos adecuados y los supuestos de finalidad adecuados.El diseño de compromisos de estado sigue evolucionando a medida que las blockchains buscan pruebas más pequeñas, actualizaciones más rápidas y menores requisitos para los nodos.Los árboles Verkle y la investigación sobre sistemas sin estado muestran que el futuro de los compromisos de estado sigue siendo un tema activo de ingeniería y criptografía.En el contexto del glosario cripto, State Commitment significa el ancla criptográfica que permite a una blockchain demostrar cuál es su estado sin incluir el estado completo en cada cabecera de bloque.La idea clave es que los compromisos de estado convierten el enorme estado de una blockchain en una raíz verificable, haciendo posible una verificación con mínima confianza entre nodos, carteras, rollups, bridges y aplicaciones.También te puede interesar
ZK-Rollup
ZK-Rollup-as-a-Service
zk-SNARK
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

