[Linuxtrent] Re: GPL v3

  • From: "Roberto Resoli" <roberto.resoli@xxxxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Tue, 1 Aug 2006 12:07:37 +0200

... cut ...

> Nasce ovviamente il problema di come un sw modificato possa venir
> autenticato dal TPM, e la GPLv3 mi pare suggerisca che le chiavi
> vengano distribuite insieme al sorgente.
Su questo siamo d'accordo... ma da quanto è scritto nella licenza...

testualmente: "The Corresponding Source also includes any encryption or authorization keys necessary to install and/or execute modified versions from source code in the recommended or principal context of use, such that they can implement all the same functionality in the same range of circumstances. (For instance, if the work is a DVD player and can play certain DVDs, it must be possible for modified versions to play those DVDs. If the work communicates with an online service, it must be possible for modified versions to communicate with the same online service in the same way such that the service cannot distinguish.) A key need not be included in cases where use of the work normally implies the user already has the key and can read and copy it, as in privacy applications where users generate their own keys. However, the fact that a key is generated based on the object code of the work or is present in hardware that limits its use does not alter the requirement to include it in the Corresponding Source."

Io lo capisco come Linus. Sembra che se il codice deve essere sotto
GPLv3, le chiavi per firmarlo devono essere distribuite.
SE è così, si faceva prima a dire: "i sistemi DRM sono incompatibili
con la GPLv3".



> Sono d'accordo con Linus che questo è un nonsenso sul piano tecnico,
> ed equivale a vanificare il DRM. Il disaccordo di Linus è sul fatto
> che una licenza non dovrebbe prendere decisioni tecniche, mentre la
> GPLv3 a suo parere lo fa.
Quello che mi piacerebbe capire è: esattamente questo secondo Draft
della GPL cosa implica per quanto riguarda la distribuzione delle
chiavi? Quella porzione di licenza citata da Linus, come si traduce in
pratica?

La segretezza delle chiavi di firma (private, appunto), è appunto il motivo per cui li si mette su un dispositivo (SmartCard o TPM) da cui non possono essere estratte.

Faccio un esempio. La validità di una firma digitale qualificata in
Italia si basa sul fatto che la chiave privata viene CREATA, RISIEDE
ESCLUSIVAMENTE, e NON PUO' ESSERE ESTRATTA dal dispositivo di firma.
In questo modo si può assumere che sia sotto l'esclusivo controllo del
proprietario della carta, e quindi il vincolo legale tra la persona e
il file firmato.

Faccio notare che sistemi DRM esistono già sulle carte italiane di firma.
Sulle nuove CNS (Carte Nazionali dei Servizi) la funzione di firma
richiede una chiave per crittografare il colloquio tra sw di firma e
carta. La chiave è annegata nel sw proprietario (libreria) necessaria
ad usare la carta. Questo rende impossibile utilizzare tali carte con
sw opensource, perchè la chiave è segreta. Aggiungete un TPM come
repository per le chiavi e il gioco è fatto.


tutto ciò non si limita al TPM. Da quanto ho capito la cosa è molto
più generale ed è questo che da fastidio a Linus.

Il fastidio penso sia dato dall'imporre un vincolo tecnico (chiavi, ecc.) nella definizione di codice sorgente. Sta di fatto che il DRM si presta ad enormi abusi, mettervi riparo attraverso una licenza è giusto/efficace? Boh. Io sono del parere di Linux, ma il problema rimane.

Per fare un'esempio: la casa produttrice di Tivo deve
distribuire le chiavi segrete utilizzate?

Secondo me se vuole distribuire il suo codice sotto GPLv3, sì, il che equivale a non mettere alcuna chiave.

Invece per quanto riguarda
la macchina per il voto elettronico?

Un reply a Linus dice che la macchina per il voto è un buon esempio, molto "sfidante": (ottimo esperimento concettuale) http://www.groklaw.net/comment.php?mode=display&sid=20060727140038810&title=Voting+machine+example+%3D+good+thought+experiment&type=article&order=&hideanonymous=0&pid=466105#c466275 l'autore dice che forse non è un problema, perchè in tal caso le chiavi verrebbero distribuite in maniera controllata. Sta di fatto che se il sw per la voting machine venisse distribuito sotto GPLv3 (l'apertura del codice mi sembra un requisito praticamente ovvio), questo implicherebbe anche la distribuzione delle chiavi. Un bel problema, perchè applicando alla lettera la frase della GPLv3 qui sopra, sembra proprio dica che chiunque si deve poter costruire un sw di voto funzionante come l'originale, in maniera indistinguibile. Penso che il nodo sia la distinzione tra le chiavi USATE dal sw, come quelle per l'invio dei dati, da quelle usate dal sistema SUL sw, per certificarne la validità. Questa distinzione non è chiara nella frase "any encryption or authorization keys necessary to install and/or execute modified versions".


A meno che da "any encryption or authorization keys necessary to install and/or execute modified versions" si escudano le chiavi che non lavorano SUL sw, ma vengono utilizzate

Sarebbe interessante sentire il parere di un giurista a riguardo per
chiarire cosa esattamete significa quella frase.

Senza dubbio.

Tra Linus che dice "Come fate a non capirlo, è così" e gli altri che
gli rispondono "Ma guarda che sei tu che non hai capito"... alla fine
quello che non capisce niente sono io :-).

Sei in compagnia, quelli qui sopra sono solo dei poveri tentativi di fare un po'di luce.

Ciao,
Rob
--
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con OGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx


Other related posts: