Werner Koch, sviluppatore principale e creatore del progetto GnuPG (GNU Privacy Guard), ha fondato il progetto LibrePGP, incentrato sullo sviluppo di una specifica aggiornata, alternativa allo standard OpenPGP. Il fork è stato creato in risposta alle modifiche previste dal gruppo di lavoro IETF per il prossimo aggiornamento della specifica OpenPGP (RFC-4880), che sono state percepite da Koch come discutibili in termini di mantenimento della compatibilità e garanzia di sicurezza. Gli sviluppatori a sostegno del fork, provenienti dai progetti GnuPG, RNP (implementazione OpenPGP di Thunderbird) e Gpg4win, temono che le modifiche previste possano rivelarsi dannose per le implementazioni attuali delle applicazioni basate su OpenPGP, i cui utenti si aspettano stabilità nella specifica a lungo termine e non sono disposti ad accettare modifiche che compromettono la compatibilità.
LibrePGP include utili miglioramenti, sviluppati negli ultimi anni per una futura variante della specifica OpenPGP, ma esclude modifiche che influenzano negativamente la compatibilità. Ad esempio, rispetto allo standard attuale RFC-4880, in LibrePGP sono state adottate le seguenti possibilità:
- Supporto per l'algoritmo di cifratura Camellia (RFC-5581),
- Estensioni ECC (Elliptic Curve Cryptography) per OpenPGP (RFC-6637).
- Supporto obbligatorio per gli hash SHA2-256 (SHA-1 e MD5 sono stati classificati come non raccomandati, e la possibilità di decifrare i dati senza verifica dell'integrità è stata considerata completamente obsoleta).
- Aumento a 256 bit della dimensione dell'impronta digitale (fingerprint).
- Supporto per lo schema di firme digitali EdDSA e curve ellittiche BrainpoolP256r1, BrainpoolP384r1, BrainpoolP512r1, Ed25519, Curve25519, Ed488 e X448.
- Supporto per l'algoritmo CRYSTALS-Kyber, resistente agli attacchi da parte di computer quantistici.
- Supporto per le modalità di cifratura autenticata OCB (Offset codebook mode).
- Implementazione della quinta versione del formato delle firme digitali con protezione dei metadati.
- Supporto per i sottopacchetti estesi con firme digitali.
Principali elementi di critica alla nuova specifica OpenPGP:
- Il gruppo di lavoro IETF, invece di un aggiornamento incrementale graduale della specifica, ha cercato di reinventare lo standard apportando modifiche significative che compromettono la compatibilità.
- Imposizione del supporto per la modalità di crittografia simmetrica GCM (Galois/Counter Mode), che è difficile da implementare correttamente, ignorando nel contempo la modalità OCB (Offset Codebook Mode), il cui brevetto è scaduto diversi anni fa.
- Aggiunta di pacchetti opzionali con riempimento casuale aggiuntivo per proteggere dall'analisi del traffico. Secondo i creatori di LibrePGP, tali pacchetti con riempimento casuale iniziale non verificabile creano una minaccia di utilizzo per la creazione di canali nascosti di trasmissione dei dati e per eludere i sistemi di prevenzione della fuga di dati. In precedenza, l'idea di includere riempimento aggiuntivo era stata scartata in quanto ritenuta appartenente al livello dell'applicazione e non a quello della crittografia.
- Applicazione di uno schema di crittografia ECDH modificato (cambiamento del formato OID), invece di utilizzare la variante già descritta in RFC-6637 e implementata in PGP e GnuPG.
- Rimozione di alcune funzionalità pratiche, come il metodo classico di revoca delle chiavi, il flag «m» per contrassegnare i dati MIME e il flag «t» per separare i dati di testo da quelli binari (al posto del flag «t» è stato introdotto il flag «u» per testo in codifica UTF-8).
- Rifiuto di includere nel nuovo formato delle firme la protezione dei metadati del file firmato (ad esempio, è possibile cambiare il nome del file senza violare la firma).
- Dubbia possibilità di aggiungere «sale» alle firme (Salted signature) per rafforzare la protezione dalle attacchi di collisione con prefissi specificati. Il valore salato può essere utilizzato come un canale nascosto non disattivabile per trasmettere 32 byte di dati nella firma.
- Spostamento dello standard verso un uso principale per la comunicazione online, ignorando le esigenze per la conservazione prolungata dei dati.
I sostenitori di OpenPGP hanno già pubblicato una critica alla critica. Di conseguenza, se non si troverà un compromesso, la frattura potrebbe portare a un aumento delle incompatibilità nelle implementazioni di OpenPGP/LibrePGP. Parzialmente per risolvere questo problema, gli sviluppatori di OpenPGP hanno fissato la quinta versione del formato delle firme in modo compatibile con LibrePGP e hanno iniziato a lavorare sulla sesta versione.
Fonte: opennet.ru
