Tezos Blockchain: análisis en profundidad desde la perspectiva de auditoría PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Tezos Blockchain: análisis en profundidad desde la perspectiva de la auditoría 

Tiempo de lectura: 5 minutos

El proyecto blockchain de Tezos tuvo un comienzo espléndido al recaudar $232 millones con la Oferta Inicial de Monedas, obteniendo el segundo lugar en recibir los fondos más grandes entre las 20 ICO más grandes.

Entre las redes de cadenas de bloques más populares, como Ethereum o Bitcoin, ¿cómo pudo Tezos ganar toda la atención? Para encontrar la respuesta, echemos un vistazo más de cerca a los atributos distintivos de Tezos que han atraído a hordas de seguidores. 

Si bien la cadena de bloques que surgió durante su época funcionó en el consenso de Prueba de trabajo (PoW), la cadena de bloques de Tezos fue innovadora en el uso Prueba de Estaca(PoS) basado en consenso con un mecanismo de autocorrección y gobernanza en cadena. 

Como resultado, Tezos se convirtió en el centro de atención como la alternativa perfecta para crear aplicaciones DeFi ecológicas que requieren mucha menos energía y bajos costos. Entonces, ¿cómo se compara la infraestructura de Tezos con la flexibilidad para implementar actualizaciones mucho más fácilmente?

Eso nos lleva a aprender sobre la configuración arquitectónica, que agrega valor a los Tezos.

Contratos inteligentes en Tezos

Los contratos inteligentes son contratos ejecutables programados para procesar el intercambio de tokens entre dos partes sin que ninguna de las partes confíe en la otra. 

Cuando se trata de Tezos, está escrito únicamente usando el lenguaje de programación de Michelson. Además, Tezos emplea la verificación formal para garantizar la corrección del código, lo que lo hace más seguro y confiable. 

Enumerando los detalles de la cadena de bloques de Tezos

El Lo más destacado de los Tezos se dan aquí para una mejor comprensión de su configuración y singularidad. 

Automodificable

Tezos, que valida los bloques que operan con el algoritmo de consenso, está integrado con un mecanismo automodificable. Cualquier enmienda al protocolo, como cambiar a un consenso diferente, modificar el sistema de recompensas, agregar transacciones, etc., se implementa en función del sistema de votación en cadena. 

Cualquier cambio de menor a mayor en el protocolo económico de Tezos se activa mediante el procedimiento de votación en cadena. Este protocolo autoenmendable tiene la ventaja de evitar las bifurcaciones o divisiones en la comunidad.

Gobernanza en cadena

Tezos se opone a Bitcoin y Ethereum, que siguieron los sistemas de gobierno no formalizados que llevaron a las divisiones de blockchain (Bitcoin Cash y Ethereum classic). 

El gobierno en cadena en Tezos facilita que los "Panaderos", también conocidos como Mineros, propongan y emitan votos sobre actualizaciones de protocolo. La metodología en cadena en Tezos está diseñada para implementar automáticamente las actualizaciones en el código del protocolo subyacente sin pasar por un director centralizado. 

Consenso de prueba de participación: el PoS 

El consenso PoS en Tezos permite que cualquiera participe. Para ser un panadero de Tezos que valide el bloque y permita la creación de consenso, el panadero debe poseer una cantidad mínima de tokens XTZ (nativos). 

También adopta un método en el que si el usuario no tiene suficiente dinero para hornear, puede delegar tokens XTZ a un panadero con una gran cantidad de fondos Tez. A su vez, las recompensas obtenidas por el panadero se redistribuyen entre los delegadores. 

Explotar los motivos encontrados en los contratos inteligentes de Tezos

Uno de los informes de auditoría reveló errores en la arquitectura de paso de mensajes de los contratos inteligentes de Tezos. Vamos a decodificarlos aquí ahora. 

Arquitectura de paso de mensajes

En cambio, un contrato externo que se supone que debe llamarse durante la ejecución de la función se pone en cola en una lista de llamadas que se ejecutarán en el contrato de Tezos. 

El orden que se encuentra en el contrato de Tezos es, 

  • Ejecutar a() # Llamadas siguientes: [b, d]
  • Ejecutar b() # Siguientes llamadas: [d, c]
  • Ejecutar d() # Siguientes llamadas: [c]
  • Ejecutar c() # Próximas llamadas: []

Donde puede ver que el código d() se ejecuta antes que el código c().

Este tipo de ejecución tiene la posibilidad de dos tipos de vulnerabilidades,

Omisión de autorización de devolución de llamada 

La arquitectura de Tezos está diseñada para evitar que el contrato lea el valor de retorno de una llamada externa mediante la función de devolución de llamada. Pero aquí, dado que no hay restricciones, el uso de la devolución de llamada puede generar problemas de control de acceso. 

Inyección de llamada

Ofrece posibilidades para que el atacante comprometa el contrato al inyectar llamadas entre una función y una llamada externa generada. 

Al ejecutar las funciones, las llamadas generadas se ponen en cola en la lista de llamadas a ejecutar. Un atacante puede obtener una ventaja colocando su llamada en la cola y ejecutando el código entre el final de la función ejecutada y las llamadas generadas. 

Cuando se ejecuta la llamada del atacante, el saldo del contrato o la memoria del contrato pasa a un estado no válido y el atacante logra con éxito la inyección de la llamada. 

Precauciones que se deben observar al codificar el contrato inteligente de Tezos usando Michelson

El lenguaje de programación de Michelson es una opción de acceso para escribir contratos seguros resistentes a fugas de datos y robos de fondos. Aunque el lenguaje de programación es tan fuerte, hay una lista de errores que pueden aparecer en el contrato. 

Comprendamos los errores comunes y las formas de descartar los errores.

Reembolso a una lista de contratos

Esta es una condición en la que los fondos de un grupo de personas se reembolsan a la vez. Ocurre al aceptar contratos arbitrarios donde un usuario malicioso inicia tal problema. 

Los posibles problemas de este error son que un contrato se traga todo el gas a través de una serie de devoluciones de llamada, se llama a la instrucción 'FAIL' que detiene todos los cálculos, errores de reingreso, etc. 

¿Cual es la solución?

Las cuentas predeterminadas no ejecutan el código; por lo tanto, el problema anterior se puede solucionar creando una cuenta predeterminada a partir de las claves de las personas. Además, se puede programar para que los usuarios retiren sus fondos individualmente. 

No establecer el estado antes de la transferencia

La reentrada es un obstáculo común en la cadena de bloques. Cuando el contrato llama a otro contrato externo para realizar transferencias, el arbitrario gana ventaja al realizar más transferencias si el estado no se actualiza después de cada transferencia.

Provoca múltiples retiros de fondos del contrato. 

¿Cual es la solución?

Tenga cuidado al realizar llamadas a contratos externos y asegúrese de que su comportamiento no se pueda modificar. Para prohibir el reingreso, marque en el almacenamiento para que los usuarios no puedan volver a ingresar a menos que tengan una buena razón. 

Almacenamiento o transferencia de datos privados

Los datos que se publican se pueden consultar de forma explícita. Eso significa que la información privada se vuelve visible para todos cuando se transmite la transacción. Esto le da la oportunidad al nodo malicioso en el sistema de manipular la transacción no firmada retrasándola o modificándola. 

¿Cual es la solución?

Firmar las transacciones que contengan información sensible. El uso de contadores para hacer cumplir las órdenes de transacción puede resolver el problema. 

Garantice la protección profesional de los proyectos a través de las auditorías de contratos inteligentes de Tezos 

Los Tezos construidos con una estructura automodificable ofrecen una mejor escalabilidad y confiabilidad, pero aunque la seguridad siempre es un tema de duda para las aplicaciones basadas en blockchain. El más pequeño de los problemas puede causar la mayor pérdida de fondos. 

Y ahí es donde QuillAuditorias da un paso adelante para proteger los activos de las garras de los malos actores. No les damos ninguna posibilidad de explotar el contrato, ya que reconocemos y solucionamos esos problemas mediante la realización de Auditorías de contratos inteligentes de Tezos

Tenga una consulta gratuita con nuestros expertos para conocer nuestros servicios de auditoría. 

2 Vistas

Sello de tiempo:

Mas de hachís