Auditoría de Smart Contracts y Oráculos


Los contratos inteligentes (Smart Contracts) pueden integrarse en un proyecto con blockchain y tecnologías conexas para automatizar  procesos de negocios.

Smart-contracts.gif

Las partes contratantes que prevén el uso de un smart contract pueden contratar a un auditor especializado que se cerciore de que los contratos inteligentes se implementan con la lógica comercial correcta.

Además, el auditor puede cerciorarse de que la interfaz entre los contratos inteligentes y las fuentes de datos externas que desencadenan eventos comerciales (los oráculos) están apropiadamente diseñadas e implementadas.

Sin una evaluación independiente, los usuarios de tecnologías blockchain y conexas (carteras, sistemas de firma electrónica, …)  se arriesgan a que diferentes tipos de errores o vulnerabilidades se pasen por alto.

Soluciones tradicionales como mecanismos de pruebas previas de integración, pases a producción controlados y check lists exhaustivos (listas de comprobación tan completas como puedan desarrollarse para cada proyecto) minimizan los fallos que pueden llegar a arruinar importantes proyectos empresariales.

Un auditor de blockchain y tecnologías conexas requiere habilidades específicas entre las que se incluye el conocimiento de la criptografía y de las técnicas de firma electrónica, cierta competencia relativa a lenguajes de programación (especialmente los utilizados en los smartcontracts), conocimientos sobre el código fuente  de las funciones de la tecnología blockchain adoptada, incluyendo el manejo de repositorios de Github y una adecuada recopilación de incidentes de seguridad ya identificados junto con sus causas y mecanismos de resolución.

Aunque una auditoría de proyectos blockchain no garantiza que no pueda aparecer algún problema nuevo, al menos es una forma de minimizar el riesgo de repetir problemas ya conocidos.

Por otro lado, los smart contracts a veces se reutilizan por entidades diferentes a las que los desarrollaron inicialmente. Incluso es posible que la implementación inicial del smart contract esté auditada. Así y todo, para reutilizar un smart contract hay asegurarse de que se entiende bien y que se programa adecuadamente la parte de personalización, ya que no es posible (en general) exigir ninguna responsabilidad a quien ofreció la muestra de referencia de smart contract.

En todo caso, los proyectos serios de Blockchain deberían considerar la realización de auditorías por equipos de auditores que no hayan participado en el proyecto, para evitar sesgos derivados de la involucración de los desarrolladores o de su  esquema mental de presunciones , para no dar por sobreentendido ningún riesgo ni la gestión de su tratamiento.

 

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.