Reproducible

Riproducibile

Difficoltà: avanzato

Argomento: tecnologia


DEFINIZIONE

Il software Reproducible, o Riproducibile, è un software Open Source che la caratteristica non solo di rendere pubblicamente visibile il suo codice sorgente, ma anche la possibilità per un utente di creare dal sorgente il programma in autonomia.

Il concetto di "riproducibilità" in informatica si riferisce alla possibilità di generare una replica esatta di un software a partire da un insieme noto di input, in particolare dal suo codice sorgente. Se è possibile ricostruire esattamente il software scaricato a partire dal codice sorgente pubblico, con tutti i byte verificati, allora si può dire che il software è riproducibile. Tuttavia, questo non significa che il codice sia stato verificato, ma solo che è la premessa per garantire che il codice sorgente pubblico sia corrispondente al software fornito.

Avere un software riproducibile significa che gli utenti possono verificare che il prodotto rilasciato sia basato sul codice noto a tutti gli sviluppatori del team e che i ricercatori in sicurezza possono verificare se il fornitore mette a rischio i loro fondi. Inoltre, un eventuale truffatore dovrebbe fare maggiori sforzi per nascondere eventuali exploit.

È importante notare che "riproducibilità" non significa "verifica". Ci sono buone ragioni per credere che i ricercatori in sicurezza di oggi potrebbero non rilevare backdoors ovvi nel codice sorgente pubblico prima che vengano sfruttati, e ancor meno se l'attaccante fa sforzi moderati per nasconderli. Ciò è particolarmente vero per i progetti meno popolari.

Nel caso dei software Bitcoin quali nodi e wallet questa è una caratteristica molto importante perché oltre le garanzie date dall'open source, è possibile produrre in autonomia il programma dal sorgente garantendo in questo modo che nel processo di compilazione e distribuzione non siano introdotte ad arte o in modo inconsapevole delle alterazioni che possono compromettere la sicurezza e quindi consentire furti e attacchi ai fondi degli utenti.

  • Vedi anche
  • FOSS (Free and Open Source Software)
  • Open Source Sorgente Aperto
  • OSS (Open Source Software)

aggiornato il 2023-01-10