En NPM planean usar Sigstore para verificar la autenticidad de los paquetes

GitHub ha propuesto la implementación del servicio Sigstore para la verificación de paquetes mediante firmas digitales y el mantenimiento de un registro público para confirmar la autenticidad en la distribución de lanzamientos. La aplicación de Sigstore permitirá añadir un nivel adicional de protección contra ataques dirigidos a la sustitución de componentes de software y dependencias (supply chain). Por ejemplo, el cambio implementado protegerá los códigos fuente de los proyectos en caso de compromiso de la cuenta del desarrollador de una de las dependencias en NPM y la creación de una actualización del paquete con código malicioso por parte de un atacante.

Gracias a este nuevo nivel de protección, los desarrolladores podrán vincular el paquete generado con el código fuente utilizado y el entorno de construcción, ofreciendo al usuario la posibilidad de verificar que el contenido del paquete coincide con el del código fuente en el repositorio principal del proyecto. La implementación de Sigstore simplifica significativamente el proceso de gestión de claves y elimina las complicaciones relacionadas con el registro, la revocación y la gestión de claves criptográficas. Sigstore se presenta como un equivalente a Let’s Encrypt para el código, proporcionando certificados para autenticar el código con firmas digitales y un conjunto de herramientas para automatizar la verificación.

En lugar de claves permanentes, Sigstore utiliza claves efímeras de corta duración que se generan en función de las credenciales. El material utilizado para la firma se refleja en un registro público inmutable que permite verificar que el autor de la firma es realmente quien dice ser, y que la firma fue generada por el mismo participante que se encargó de los lanzamientos anteriores. Para garantizar la integridad y protegerse contra la manipulación de datos retroactivamente, se utiliza una estructura en árbol llamada 'árbol de Merkle', donde cada rama verifica todas las ramas y nodos subyacentes mediante hashing conjunto (en árbol). Con el hash final, el usuario puede asegurarse de la corrección de toda la historia de operaciones, así como de los estados anteriores de la base de datos (el hash raíz de la nueva estado de la base se calcula teniendo en cuenta el estado anterior).

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster