Ubuntu 26.10 porta OpenPGP in Rust: Sequoia sfida GnuPG

Ubuntu 26.10 porta Sequoia PGP nei repository. L'implementazione OpenPGP scritta in Rust potrebbe in futuro sostituire GnuPG come toolchain predefinita, puntando su sicurezza della memoria e compatibilità.

Ubuntu continua a spostare componenti delicati del sistema verso software scritto in Rust e, dopo il lavoro sui comandi fondamentali della shell, Canonical guarda ora alla crittografia OpenPGP. Con Ubuntu 26.10 Stonking Stingray entra infatti nei repository Sequoia PGP, implementazione moderna di OpenPGP che potrebbe, in una futura versione della distribuzione, diventare la soluzione predefinita al posto degli strumenti oggi associati soprattutto a GnuPG.

Come abbiamo già raccontato nelle scorse settimane, Ubuntu 26.10 completa la migrazione dei Coreutils verso l’implementazione uutils scritta in Rust: cp, mv e rm si aggiungono agli altri comandi già convertiti, dopo che problemi di compatibilità avevano impedito a Canonical di completare il lavoro nelle precedenti release.

La scelta di Sequoia PGP segue una logica simile: ridurre l’esposizione alle classiche vulnerabilità legate alla gestione della memoria senza rinunciare all’interoperabilità con standard e strumenti esistenti.

Ubuntu non sta sostituendo OpenPGP: cambia l’implementazione

OpenPGP porta sulle spalle una storia lunga: il formato deriva da PGP e negli anni ha attraversato diverse revisioni. È uno standard, non un singolo programma, e Sequoia PGP si basa su di esso con Canonical che intende mantenere la piena compatibilità.

L’eventuale cambiamento riguarderebbe quindi la toolchain usata per lavorare con certificati, firme e messaggi OpenPGP, oggi dominata nell’ambiente Linux dagli strumenti GnuPG.

In Ubuntu 26.10, Sequoia PGP arriva come alternativa disponibile nei repository; Canonical non dichiara ancora GnuPG superato né impone una migrazione immediata. Parla invece della possibilità che Sequoia diventi in futuro la toolchain OpenPGP predefinita.

La distribuzione include sq, l’interfaccia da riga di comando principale del progetto, e sqv, uno strumento specializzato nella verifica delle firme.

Il primo copre operazioni come cifratura, decifratura, creazione e verifica delle firme, gestione di chiavi e certificati e interazione con key server e Web Key Directory; sqv punta invece a un compito molto più ristretto e particolarmente interessante per le distribuzioni Linux: verifica che un file scaricato corrisponda alla firma OpenPGP fornita separatamente, così da controllarne autenticità e integrità.

Perché Sequoia PGP interessa a Canonical: standard aggiornato e maggiore sicurezza

Uno degli aspetti più interessanti di Sequoia PGP è il supporto a RFC 9580, la revisione più recente dello standard OpenPGP pubblicata nel 2024.

La specifica aggiorna le precedenti specifiche risalenti al 2007 e introduce formati e meccanismi crittografici più moderni, mantenendo l’obiettivo dell’interoperabilità tra implementazioni diverse. Sequoia supporta RFC 9580 nella libreria sequoia-openpgp dalla versione 2.0.0, mentre sq lo utilizza dalla versione 1.3.0.

La scelta di Rust aggiunge un altro elemento importante. Il linguaggio impedisce nel codice sicuro molte classi di errori tipiche di C e C++, come accessi fuori dai limiti di un buffer, uso di memoria già liberata e altri problemi legati alla gestione manuale della memoria. Per un software che deve analizzare certificati, firme e messaggi provenienti anche da fonti esterne, ridurre questo tipo di vulnerabilità è particolarmente rilevante.

Rust, tuttavia, non rende automaticamente sicuro un programma: restano possibili errori logici, problemi nell’implementazione degli algoritmi crittografici, dipendenze vulnerabili o comportamenti errati dell’applicazione. Il vantaggio concreto è soprattutto quello di eliminare alla radice una parte consistente dei problemi di sicurezza legati alla memoria.

Una futura sostituzione di GnuPG richiederebbe inoltre molta attenzione sul fronte della compatibilità. sq non è semplicemente gpg riscritto in Rust: usa una propria interfaccia a riga di comando e propone modalità operative differenti. Script, procedure automatiche e strumenti che oggi invocano direttamente gpg potrebbero quindi richiedere modifiche. È anche per questo che Canonical, almeno con Ubuntu 26.10, introduce Sequoia PGP come alternativa senza rimuovere gli strumenti preesistenti.

Ti consigliamo anche

Link copiato negli appunti