Gli sviluppatori del progetto OpenBSD hanno recentemente annunciato il rilascio dell'edizione portatile del pacchetto. "FreeSSL 3.8.0", versione in cui sono state apportate numerose modifiche e miglioramenti incentrati sulla stabilità e compatibilità.
Per coloro che non sono a conoscenza di LibreSSL, dovresti sapere che questo è un'implementazione open source del protocollo TLS sviluppa un fork di OpenSSL destinato a fornire un livello di sicurezza più elevato. LibreSSL è stato inizialmente sviluppato come sostituto previsto per OpenSSL su OpenBSD ed è stato portato su altre piattaforme una volta stabilizzata una versione ridotta della libreria.
Il progetto LibreSSL si concentra sul supporto di alta qualità per i protocolli SSL/TLS rimuovendo funzionalità non necessarie, aggiungendo ulteriori funzionalità di sicurezza e una significativa pulizia e rielaborazione della base di codice.
Principali novità di LibreSSL 3.8.0
LibreSSL versione 3.8.0 è considerata una versione sperimentale che sviluppa funzioni che saranno incluse con OpenBSD 7.4. Allo stesso tempo, sono state formate versioni stabili di LibreSSL 3.6.3 e 3.7.3, in cui sono stati corretti vari bug.
In questa nuova versione di LibreSSL 3.8.0, viene evidenziato che compatibilità endian.h migliorata con le macro hto* e *toh, Oltre ad aggiungere il supporto per SHA-2 e SHA-3 troncato e il processo di pulizia e rielaborazione del codice SHA interno è iniziato.
Un altro cambiamento degno di nota sono le funzioni interne riscritte BN_exp() e BN_copy(), oltre alla sostituzione dell'implementazione della funzione BN_mod_sqrt().
Oltre a questo, si evidenzia anche che istruzioni aggiunte assemblatore per l'architettura AMD64 usa le istruzioni endbr64 (Termina filiale indiretta).
Si segnala inoltre che è stato aggiunto una correzione per un cambiamento mal concepito in OpenSSL 3 che interrompeva il supporto per la separazione dei privilegi in libtls, Inoltre, il codice BoringSSL è stato portato per verificare le regole definite in RFC 5280 e la traduzione libcrypto continua a utilizzare le interfacce CBB (bytebuilder) e CBS (bytestring).
Si evidenzia invece che è stato importato ed utilizzato il codice di verifica della policy BoringSSL RFC 5280
per sostituire il vecchio timecode esponenziale, oltre a rimuovere il supporto per GF2m:BIGNUM poiché non supporta l'estensione binaria, rimuovendo la maggior parte dei simboli pubblici che erano deprecati in OpenSSL 0.9.8.
Delle altre modifiche che si distinguono da questa nuova versione:
- API pubblica X9.31 rimossa (RSA_X931_PADDING è ancora disponibile).
- Rimossa la modalità di furto del testo cifrato.
- Rimosso il supporto per SXNET e NETSCAPE_CERT_SEQUENCE, incluso il
openssl(1) comando nseq. - Supporto del certificato proxy eliminato (RFC 3820).
- POLICY_TREE e le relative strutture e API sono state rimosse.
- Corretto controllo bug per i2d_ECDSA_SIG() in ossl_ecdsa_sign().
- Risolto il problema del rilevamento delle operazioni estese (XOP) su hardware AMD.
- Corretta la gestione degli errori in tls_check_common_name().
- Aggiunta l'invalidazione del puntatore mancante in SSL_free().
- Corretti X509err() e X509V3err() e le loro versioni interne.
- Copertura dei test notevolmente migliorata di BN_mod_sqrt() e GCD.
- Come sempre, viene aggiunta una nuova copertura di test man mano che bug e sottosistemi vengono corretti
vengono puliti.
Infine, se sei interessato a saperne di più, puoi consultare i dettagli nel seguente link
Come installare la nuova versione di LibreSSL?
Per coloro che sono interessati a poter installare questa nuova versione, dovrebbero sapere che al momento non ha raggiunto la maggior parte delle distribuzioni Linux, quindi l'installazione attualmente disponibile è compilato il pacchetto da solo.
Ma non preoccuparti, la build di LibreSSL È molto semplice e per questo devi solo aprire un terminale ed esegui i seguenti comandi (devi avere le seguenti dipendenze automake, autoconf, git, libtool, perl e git).
La prima cosa è ottenere il codice sorgente, cosa che puoi fare con questo comando:
clone di git https://github.com/libressl/portable.git
Fatto ciò, ora prepareremo il modo per eseguire la compilazione, per questo entriamo nella cartella che contiene il codice sorgente di LibreSSL e digiteremo:
cd portatile ./autogen.sh ./dist.sh
Fatto ciò, procediamo alla compilazione con:
./configure make check make install
O se preferisci farlo con CMake:
mkdir build cd build cmake .. make make test