Después de investigar cómo el protocolo descentralizado puede abordar el riesgo de actualizaciones en tiempo de ejecución en vivo, llegué a la conclusión de que la vulnerabilidad más crítica en los contratos inteligentes descentralizados es la posibilidad de que un tercero altere reglas activas mediante claves de gobernanza. Así es como Newton Protocol aborda este problema en particular por diseño, de una manera que no requiere reescribir por completo el sistema backend de uno.
Uno de los desafíos fundamentales asociados con la automatización on-chain sin permisos es la capacidad de actualizar las reglas del juego con el paso del tiempo. Si el contrato de gobernanza o la cuenta multi-firma responsable de tomar estas decisiones actúa de mala fe y modifica las restricciones del entorno de ejecución, crea un “vector de actualización de políticas” para el ataque.
Por ejemplo, un atacante con acceso a esa cuenta podría aumentar el límite de gasto justo antes de que se ejecute una transacción o relajar algunos de los controles de cumplimiento. El protocolo Newton mitiga este vector de ataque al exigir que las transiciones de estado se firmen con una prueba criptográfica que las vincule a un estado raíz histórico específico.


Para entender por qué este enfoque es necesario, debemos analizar el problema que Newton busca resolver. Cualquier sistema que requiera que un operador actualice políticas en tiempo real se enfrenta a un serio desafío de escalabilidad debido a la enorme cantidad de transiciones de estado posibles. Por ejemplo, cada vez que un operador quiere cambiar algo, el sistema debe asegurarse de que la validez del nuevo estado esté dentro de las restricciones de todos los estados anteriores. Esto podría resultar increíblemente exigente para la red si una propuesta contiene una serie de casos límite complicados. Esta sobrecarga puede evitarse con Newton utilizando una raíz de estado, donde cada cambio en la política se compromete como una operación atómica única que la red verifica mediante una comprobación de Lógica Temporal Lineal. La idea es que, en lugar de preguntar a la red si el nuevo código es válido o no, le pides que valide un conjunto particular de cambios como una extensión lógica del estado raíz actual.

Cuando se difunde a la red una propuesta de cambio de regla o actualización de política, los validadores comienzan un proceso de agregación de firmas, lo que les permite determinar si existe suficiente apoyo para adoptar las nuevas reglas. Si la transición es válida, esto significa que la mayoría de los validadores aprueba el cambio y se añadirá a la blockchain como una nueva raíz de estado en la próxima oportunidad disponible.
Por otro lado, si los nodos validadores no pueden realizar con éxito la transición debido a firmas insuficientes o inconsistencias matemáticas con la raíz de estado existente, la actualización se revertirá. En efecto, cualquier cambio al contrato del sistema que no supere una revisión criptográfica rigurosa se rechaza de plano, evitando ataques de flash-gobernanza de mala fe que buscan aflojar temporalmente las restricciones y luego volver a bloquearlas en su lugar.
Al exigir que cada cambio al contrato del sistema incluya una transición firmada desde la raíz de estado actual, Newton evita ataques que buscan socavar la integridad de los sistemas on-chain sin permisos. En este modelo, los desarrolladores no tienen que construir medidas de seguridad avanzadas directamente en el contrato central para garantizar la fiabilidad de las propuestas de gobernanza. En su lugar, pueden enfocarse en construir contratos inteligentes eficientes y deterministas, mientras que las restricciones más volátiles se gestionan por separado en forma de actualizaciones de políticas.

