Un estudio publicado en arXiv el 2 de julio de 2026 demuestra que la suposición central de la firma de commits en Git —que un hash identifica de forma única e inmutable un contenido firmado— no se cumple. Los autores muestran que, sin acceso a la clave privada y sin romper SHA-2, un atacante puede producir un segundo commit distinto con árbol, metadatos y firma válidos, que obtiene la insignia "Verified" en plataformas como GitHub y solo difiere en su hash. El fenómeno, bautizado como "hash chain malleability", se propaga en cascada a todos los hashes de commits posteriores derivados del modificado.
El trabajo describe tres rutas técnicas de maleación: inversión algebraica (s → n−s) en firmas ECDSA, inserción estructural de un subpaquete OpenPGP no cifrado conforme a RFC 4880 5.2.3 para RSA y EdDSA, y recodificación de longitud DER no canónica (X.690 10.1) dentro del sobre CMS usado en S/MIME. Las pruebas indican que la inversión algebraica en ECDSA y la inserción de subpaquetes superan la verificación local con "git verify-commit", y que las tres vías generan un registro "Verified" persistente e independiente en GitHub.
Los investigadores advierten del impacto sobre el bloqueo de commits basado en hash, el anclaje de dependencias en sistemas como Nixpkgs, Go modules y GitHub Actions, y los flujos de compilación reproducible que tratan el hash del commit como clave primaria direccionable por contenido. El artículo incluye herramientas de prueba de concepto que automatizan las tres rutas.
