Dopo un anno e mezzo di pubblica consultazione, migliaia di commenti e quattro bozze, la versione 3 della GNU General Public License (GPLv3) è stata finalmente pubblicata il 29 Giugno 2007.
Nonostante si siano sviluppate numerosissime discussioni sin dall’apparizione della prima bozza, solamente poche persone hanno parlato dei benefici che essa fornisce ai programmatori.
La Free Software Foundation ha deciso di pubblicare una guida per sopperire a tale mancanza.
Partendo da un breve ripasso sul software libero, il copyleft e gli scopi della GPL, si giunge ad una revisione delle principali modifiche alla licenza per vedere in che modo supporta gli ideali del software libero e porta benefici ai programmatori.
La nuova versione GPLv3 protegge gli utenti da tre minacce ed in particolare la cosiddetta ‘Tivoizzazione’.
Tivoizzazione: alcune società hanno creato diversi tipi di dispositivi che eseguono software con licenza GPL, ma hanno manipolato l’hardware per fare in modo che solo loro possano modificare il software installato, non voi.
Se un dispositivo può eseguire software arbitrario si tratta di un vero e proprio computer e il suo proprietario deve avere il controllo su ciò che fa o non fa. Quando un dispositivo ve lo impedisce ci riferiamo ad esso con il termine “tivoizzazione”.
La tivoizzazione è un grave attentato alla libertà degli utenti: il diritto di modificare il software diverrà insignificante se nessun computer in vostro possesso vi permetterà di modificare il software che usa.
La GPLv3 blocca la tivoizzazione, obbligando il distributore a fornire tutte le informazioni e i dati necessari per installare software modificato sul dispositivo.
Queste informazioni potrebbero essere basilari, come ad esempio un insieme di istruzioni, oppure potrebbero includere dati speciali, come le chiavi crittografiche o le istruzioni su come aggirare il controllo di integrità implementato nell’hardware, a seconda del modo in cui l’hardware stesso è stato progettato—ma a prescindere dall’informazione di cui si ha bisogno, dobbiamo assicurarci che sia possibile ottenere tale informazione.
La portata di tale requisito è però limitata. Ai distributori è ancora permesso l’utilizzo di chiavi crittografiche per qualsiasi scopo e la divulgazione delle chiavi sarà imposta soltanto nel caso in cui sia necessario modificare il software rilasciato sotto licenza GPL presente nel dispositivo che vi hanno venduto.
Lo stesso progetto GNU utilizza GnuPG per verificare l’integrità del software presente nel suo sito FTP e misure di questo tipo giovano agli utenti, quindi è importante notare che la GPLv3 non vuole vietare l’utilizzo della crittografia.
Essa semplicemente impedisce alle persone di privarvi dei diritti che la licenza vi fornisce—a prescindere dalla modalità con cui tale attacco alla libertà venga mosso, sia esso attraverso un brevetto, una tecnologia o qualsiasi altro mezzo.
Un altro interessante articolo molto esaustivo sull’argomento (in inglese) scritto da