Linux Adictos Darkcrizt  

Sigstore, el sistema de verificación criptográfica ya es estable

Sigstore

Sigstore se puede considerar como un Let’s Encrypt para código, que proporciona certificados para firmar código digitalmente y herramientas para automatizar la verificación.

Google dio a conocer mediante una publicación de blog, el anunció de la formación de las primeras versiones estables de los componentes que forman el proyecto Sigstore, que se declara adecuado para crear implementaciones de trabajo.

Para quienes desconocen de Sigstore, deben saber que este es un proyecto que tiene la finalidad de desarrollar y proporcionar herramientas y servicios para la verificación de software utilizando firmas digitales y manteniendo un registro público que confirma la autenticidad de los cambios (registro de transparencia).

Con Sigstore, los desarrolladores pueden firmar digitalmente artefactos relacionados con aplicaciones, como archivos de lanzamiento, imágenes de contenedores, manifiestos y ejecutables. El material utilizado para la firma se refleja en un registro público a prueba de manipulaciones que se puede utilizar para la verificación y auditoría.

En lugar de claves permanentes, Sigstore utiliza claves efímeras de corta duración que se generan en base a las credenciales verificadas por los proveedores de OpenID Connect (en el momento de generar las claves necesarias para crear una firma digital, el desarrollador se identifica a través del proveedor de OpenID con enlace de correo electrónico).

La autenticidad de las claves se verifica mediante un registro público centralizado, que le permite asegurarse de que el autor de la firma es exactamente quien dice ser, y que la firma fue formada por el mismo participante que fue responsable de versiones anteriores.

La preparación de Sigstore para la implementación se debe a la formación de versiones de dos componentes clave: Rekor 1.0 y Fulcio 1.0, cuyas interfaces de programación se declaran estables y, en adelante, conservan la compatibilidad con versiones anteriores. Los componentes del servicio están escritos en Go y se distribuyen bajo la licencia Apache 2.0.

El componente Rekor contiene una implementación de registro para almacenar metadatos firmados digitalmente que reflejan información sobre proyectos. Para garantizar la integridad y la protección contra la corrupción de datos, se utiliza una estructura de árbol Merkle Tree en la que cada rama verifica todas las ramas y nodos subyacentes a través de hash conjunto (árbol). Al tener un hash final, el usuario puede verificar la exactitud de todo el historial de operaciones, así como la exactitud de los estados pasados ​​de la base de datos (el hash de verificación raíz del nuevo estado de la base de datos se calcula teniendo en cuenta el estado pasado). Se proporciona una API RESTful para verificar y agregar nuevos registros, así como una interfaz de línea de comandos.

El componente Fulcio (SigStore WebPKI) incluye un sistema para crear autoridades de certificación (CA root) que emiten certificados de corta duración basados ​​en correo electrónico autenticado a través de OpenID Connect. La vida útil del certificado es de 20 minutos, durante los cuales el desarrollador debe tener tiempo para generar una firma digital (si en el futuro el certificado cae en manos de un atacante, ya estará caducado). Además, el proyecto desarrolla el kit de herramientas Cosign (Container Signing), diseñado para generar firmas para contenedores, verificar firmas y colocar contenedores firmados en repositorios compatibles con OCI (Open Container Initiative).

La introducción de Sigstore permite aumentar la seguridad de los canales de distribución de software y proteger contra ataques dirigidos a la sustitución de bibliotecas y dependencias (cadena de suministro). Uno de los problemas de seguridad clave en el software de código abierto es la dificultad de verificar la fuente del programa y verificar el proceso de compilación.

El uso de firmas digitales para la verificación de versiones aún no se ha generalizado debido a las dificultades en la gestión de claves, la distribución de claves públicas y la revocación de claves comprometidas. Para que la verificación tenga sentido, también se requiere organizar un proceso confiable y seguro de distribución de claves públicas y sumas de verificación. Incluso con una firma digital, muchos usuarios ignoran la verificación porque lleva tiempo aprender el proceso de verificación y comprender qué clave es confiable.

El proyecto se está desarrollando bajo el auspicio de la organización sin fines de lucro Linux Foundation de Google, Red Hat, Cisco, vmWare, GitHub y HP Enterprise con la participación de OpenSSF (Open Source Security Foundation) y la Universidad de Purdue.

Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.