
Una delle principali novità degli ultimi nove mesi è stata l'apparizione della nuova versione della più diffusa licenza del mondo open source: la
GPL Rel. 3.0. La nuova versione della GPL è una novità importante per molte ragioni ma lo è anche perché cambia radicalmente lo scenario per quanto riguarda i sistemi DRM ed il Trusted Computing. Anzi: si può dire che la lotta ai sistemi DRM e TC sia stato uno degli scopi principali che si sono prefissi Richard Stallman ed i suoi consulenti durante lo sviluppo della GPL3.0.
La
GPL 3.0 recita:
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures.
When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures.
Che,
tradotto in italiano, suona più o meno così:
Protezione dei diritti legali degli utenti dalle leggi anti-elusione.
Nessun programma protetto da questa Licenza può essere considerato parte di una misura tecnologica di restrizione che sottosta ad alcuna delle leggi che soddisfano l'articolo 11 del "WIPO copyright treaty" adottato il 20 Dicembre 1996, o a simili leggi che proibiscono o limitano l'elusione di tali misure tecnologiche di restrizione.
Quando distribuisci un programma coperto da questa Licenza, rifiuti tutti i poteri legali atti a proibire l'elusione di misure tecnologiche di restrizione, ammesso che tale elusione sia effettuata nell'esercizio dei diritti garantiti da questa Licenza riguardo al programma coperto da questa Licenza, e rinunci all'intenzione di limitare l'operatività o la modifica del programma per far valere, contro i diritti degli utenti del programma, diritti legali tuoi o di terze parti che impediscano l'elusione di misure tecnologiche di restrizione.
In pratica, questo vuol dire due cose:
1)Il software Open Source coperto dalla GPL (qualunque release) non può essere protetto con sistemi DRM di nessun tipo. Questo, in realtà, era già implicito nel fatto che il software open source debba essere distribuito anche in formato sorgente.
2)Di fatto, il software Open Source coperto dalla GPL3.0 (e solo da questa) non può essere utilizzato per costruire sistemi Trusted Computing o simili (o, più esattamente, lo si può usare ma poi bisogna fornire le chiavi di accesso "master" agli utenti che usano il software GPL, insieme al codice sorgente, e questo li rende inutili).
Questa è la famosa clausola "anti-
tivoization" voluta da Richard Stallman. Per capirne appieno la portata, è necessario leggere almeno alcuni punti delle
relative FAQ:
Does GPLv3 prohibit DRM?
It does not; you can use code released under GPLv3 to develop any kind of DRM technology you like. However, if you do this, section 3 says that the system will not count as an effective technological "protection" measure, which means that if someone breaks the DRM, he will be free to distribute his software too, unhindered by the DMCA and similar laws.
As usual, the GNU GPL does not restrict what people do in software, it just stops them from restricting others.
I use public key cryptography to sign my code to assure its authenticity. Is it true that GPLv3 forces me to release my private signing keys?
No. The only time you would be required to release signing keys is if you conveyed GPLed software inside a User Product, and its hardware checked the software for a valid cryptographic signature before it would function. In that specific case, you would be required to provide anyone who owned the device, on demand, with the key to sign and install modified software on his device so that it will run. If each instance of the device uses a different key, then you need only give each purchaser the key for his instance.
In buona sostanza, è sempre possibile usare software GPL3.0 per costruire sistemi DRM. Non è però più possibile usare software GPL3.0 per costruire sistemi "tampering-proof", come quello usato da
TiVo, e per costruire sistemi Trusted Computing. Si tratta di una vera dichiarazione di guerra che FSF e Richard Stallman hanno emanato contro la dilagante filosofia delle restrizioni implementate in hardware ed in software. Dal momento del rilascio della GPL3.0 (29 Giugno 2007) non è più possibile vivere di compromessi: o si adotta la GPL3.0 o si accetta il Trusted Computing.
Ovviamente, al momento si tratta della dichiarazione di guerra di una esigua minoranza di idealisti nei confronti di quasi tutto il resto del mondo. Come tale, è poco più che una dichiarazione di intenti. Tra l'altro, come ha fatto notare molto lucidamente Linus Torvalds, la GPL3.0 è applicabile sostanzialmente al software e, in parte, all'hardware (alle maschere usate per la produzione dei chip). Di conseguenza, la GPL3.0 si trova nella difficile posizione di dover difendere il libero accesso ai contenuti dalla posizione di tiro sbagliata. Ecco come lo
spiega Torvalds:
I would suggest that anybody who wants to fight DRM practices seriously look at the equivalent angle. If you create interesting content, you can forbid that _content_ to ever be encrypted or limited.
In other words, I personally think that the anti-DRM clause is much more sensible in the context of the Creative Commons licenses, than in software licenses. If you create valuable and useful content that other people want to be able to use (catchy tunes, funny animation, good icons), I would suggest you protect that _content_ by saying that it cannot be used in any content-protection schemes....................
Sure, DRM may mean that you can not _install_ or _run_ your changes on somebody elsès hardware. But it in no way changes the fact that you got all the source code, and you can make changes (and use their changes) to it. That requirement has always been there, even with plain GPLv2. You have the source.
The difference? The hardware may only run signed kernels. The fact that the hardware is closed is a _hardware_ license issue. Not a software license issue. Ėd suggest you take it up with your hardware vendor, and quite possibly just decide to not buy the hardware. Vote with your feet. Join the OpenCores groups. Make your own FPGĀs.
...........
That's my standpoint, at least. Always has been. It's the reason I chose the GPL in the first place (and it's the exact same reason that I wrote the original Linux copyright license). I do _software_, and I license _software_.
In pratica, la GPL3.0 si trova a dover fare il lavoro che dovrebbero fare gli autori (di software e di contenuti) usando le licenze "libere" (Creative Commons, CopyZero o GFDL): impedire per via legale che il distributore usi delle misure tecniche di protezione per impedire l'accesso ai contenuti da loro creati. Non solo: la GPL3.0 si trova anche nella difficile posizione di dover impedire una violazione dei diritti degli utenti che avviene a
monte (nell'hardware) intervenendo a
valle (nel software). Come spiega benissimo Torvalds nei suoi messaggi, si tratta quasi di una "mission impossible".
Nonostante questo, la GPL3.0 rappresenta ugualmente una pietra miliare nella lotta ai sistemi Trusted Computing ed ai sistemi DRM che si basano su di essi. Il fatto che un certo numero di team che sviluppano software Open Source rilasci il proprio materiale sotto le protezione della GPL3.0 impedisce a chi sviluppa sistemi come il TiVo e le Trusted Platform di riutilizzare il frutto del loro lavoro contro loro stessi ed il resto della società. Si tratta di una dichiarazione di intenti molto chiara e molto dura contro lo sviluppo e la diffusione di questi sistemi e non potrà essere ignorata a lungo, specialmente se la diffusione della GPL3.0 sarà ampia. Chi vuole sapere quanti e quali gruppi di sviluppo open hanno già adottato la GPL3.0 può fare riferimento a
questo sito web.