Articulo de referencia

Identificador de hash de software

El identificador hash de software ( SWHID ) es un identificador persistente que se utiliza para identificar de forma única una pieza particular de código fuente de software y su...

El identificador hash de software ( SWHID ) es un identificador persistente que se utiliza para identificar de forma única una pieza particular de código fuente de software y su versión. SWHID es un estándar similar al DOI , pero está diseñado específicamente para el código fuente de software, [ 1 ] compatible con software de control de versiones como git .

Un SWHID puede utilizarse para señalar diferentes componentes o versiones del código fuente de un paquete de software. [ 1 ] El SWHID es un identificador intrínseco en el sentido de que describe el software basándose únicamente en sus propiedades intrínsecas, sin depender de un registro externo. [ 2 ]

Formato

La especificación SWHID permite identificar diferentes componentes del código fuente del software. Los tipos de objetos relacionados con la versión del software se etiquetan como "instantánea", "versión" o "revisión"; se puede identificar un "directorio" de archivos y posiblemente subdirectorios; y una parte específica de una versión específica del código fuente se puede etiquetar como "contenido". [ 1 ] Estos se relacionan entre sí en un grafo acíclico dirigido de Merkle . [ 3 ]

El identificador tiene la siguiente sintaxis: [ 4 ]

swh : <versión_esquema> : <tipo_objeto> : <id_objeto>[;calificadores]

Ejemplos

Según el Centro Nacional Francés de Investigación Científica (CNRS), el código fuente del software archivado con los SWHID incluye los códigos fuente de la navegación del Apolo 11 y del navegador web Mosaic del NCSA . [ 5 ]

La versión 3.0 del kernel de Linux, publicada en julio de 2011, tiene el siguiente SWHID: [ 6 ]

swh:1:dir:df32c75242bf8d797ccd43af8ce8e294f35cd8fd 

El siguiente ejemplo, extraído de la documentación de especificación, [ 7 ] ilustra el uso de múltiples calificadores en un SWHID:

swh:1:cnt:4d99d2d18326621ccdd70f5ea66c2e2ac236ad8b;origin=https://gitorious.org/ocamlp3l/ocamlp3l_cvs.git;visit=swh:1:snp:d7f1b9eb7ccb596c2622c4780febaa02549830f9;anchor=swh:1:rev:2db189928c94d62a3b4757b3eec68f0a4d4113f0;path=/Examples/SimpleFarm/simplefarm.ml;lines=9-15 

Estándares

SWHID es un estándar abierto con licencia bajo la Licencia de Especificación Comunitaria. [ 8 ]

SWHID se formalizó como la norma ISO 18670 en abril de 2025. [ 9 ]

Creación e historia

El SoftWare Hash IDentifier fue desarrollado por Software Heritage . Los archivos de Software Heritage, identificados por sus SWHID, se publicaron a partir de 2018. [ 5 ]

A partir de 2020Los SWHID se utilizaban para aproximadamente nueve mil millones de versiones de piezas de software, [ 5 ] denominadas "artefactos". [ 4 ] Los SWHID están integrados con repositorios de investigación como HAL , Zenodo y el catálogo francés de software libre de investigación académica. [ 10 ] El identificador puede ser utilizado por gestores de paquetes . Guix utiliza SWHID para recuperar el código fuente en un archivo de software cuando no está disponible en su URL original. [ 11 ]

El acrónimo SWHID se refería originalmente a "Software Heritage Identifiers" (Identificadores de Patrimonio de Software), utilizados para catalogar artefactos de software en los inicios del archivo Software Heritage . [ 12 ] Posteriormente, evolucionó hasta convertirse en un estándar abierto a través de un grupo de trabajo dedicado [ 13 ] y fue estandarizado como ISO en abril de 2025 bajo el nombre más general de "Software Hash Identifier" (Identificador Hash de Software). [ 14 ]

Télécom Paris acogió con satisfacción la normalización ISO argumentando que es un paso significativo en la infraestructura digital global, que proporciona trazabilidad del software afectado por vulnerabilidades. [ 15 ] La UNESCO afirmó que SWHID es útil para la reproducibilidad y la accesibilidad a largo plazo del software. [ 16 ]

Referencias

  1. ^ Sabrina Granger ; Baptiste Mélés; Frédéric Santos (15 de noviembre de 2024), Préserver et rendre identifiables les logiciels de recherche avec Software Heritage [ Preservar e identificar software de investigación con Software Heritage ] (en francés), doi : 10.46430/PHFR0034 , Wikidata Q134581061 {{citation}}: CS1 maint: servicio de archivado obsoleto ( enlace )
  2. "Identificadores intrínsecos y extrínsecos" . Software Heritage . Consultado el 24 de mayo de 2025 .
  3. Roberto Di Cosmo ; Morane Gruenpeter; Stefano Zacchiroli (1 de septiembre de 2018), Identificadores para objetos digitales: el caso de la preservación del código fuente del software (PDF) , doi : 10.17605/OSF.IO/KDE56 , Wikidata Q105094730 , archivado (PDF) del original el 26 de mayo de 2025 
  4. 1 2 Axel Thévenet (26 de septiembre de 2023), SWHID: Seguimiento del software del pasado para los humanos del futuro , Wikidata Q134580517 , archivado del original el 26 de mayo de 2025 
  5. 1 2 3 Le CNRS apporte son soutien à Software Heritage [ El CNRS apoya el software Heritage ] (en francés), Centro Nacional Francés de Investigaciones Científicas , 25 de noviembre de 2020, Wikidata Q134581205 {{citation}}: CS1 maint: servicio de archivado obsoleto ( enlace )
  6. "Versión v3.0 del repositorio torvalds/linux" . Software Heritage . Consultado el 24 de mayo de 2025 .
  7. "Identificadores calificados" . swhid.org . Consultado el 27 de mayo de 2025 .
  8. "Sección de derechos de autor de la especificación SWHID v1.2" . Consultado el 24 de mayo de 2025 .
  9. "ISO/IEC 18670:2025" . ISO . Consultado el 24 de mayo de 2025 .
  10. "Acerca del sitio" . Catálogo francés de software libre para la investigación académica . Consultado el 24 de mayo de 2025 .
  11. "Identificación de software" . Blog de GNU Guix . Consultado el 27 de mayo de 2025 .
  12. "Identificador de hash de software (SWHID)" . Patrimonio del software . Consultado el 24 de mayo de 2025 .
  13. "Grupo de trabajo SWHID" . Consultado el 24 de mayo de 2025 .
  14. "ISO/IEC 18670:2025" . ISO . Consultado el 24 de mayo de 2025 .
  15. Une avancée significativa pour l ' infrastructure numérique mondiale : La norme ISO/IEC 18670 est désormais officielle [ Un avance significativo para la infraestructura digital global: el estándar ISO/IEC 18670 ya es oficial ] (en francés), Télécom Paris , 20 de mayo de 2025, Wikidata Q134580605  {{citation}}: CS1 maint: servicio de archivado obsoleto ( enlace )
  16. Archivar el software libre como patrimonio de la humanidad , UNESCO , 2023, Wikidata Q134581397 {{citation}}: CS1 maint: servicio de archivado obsoleto ( enlace )
  • Sitio web oficialEdita esto en Wikidata
  • Especificación ISO/IEC 18670:2025 v1.2