| Network Security Services software | |
|---|---|
| Genere | Crittografia |
| Sviluppatore | Mozilla |
| Ultima versione | 3.132 (21 ottobre 2026) |
| Sistema operativo | Multipiattaforma |
| Linguaggio | C linguaggio assembly |
| Licenza | MPL 2.0 (licenza libera) |
| Sito web | developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS |
Network Security Services (NSS) è una raccolta di librerie crittografiche concepite per supportare lo sviluppo multipiattaforma di applicazioni client e server abilitate alla sicurezza, con supporto opzionale per l'accelerazione hardware TLS/SSL sul lato server e smart card hardware sul lato client. NSS fornisce un'implementazione open source completa delle librerie crittografiche che supportano Transport Layer Security (TLS) / Secure Sockets Layer (SSL) e S/MIME. Le versioni di NSS antecedenti alla versione 3.14 sono rilasciate sotto la Mozilla Public License 1.1, GNU General Public License e GNU Lesser General Public License. Dalla versione 3.14, le versioni di NSS sono rilasciate con licenza Mozilla Public License 2.0, compatibile con la GPL.
NSS nasce dalle librerie sviluppate quando Netscape ha sviluppato il protocollo di sicurezza SSL.
Il modulo crittografico del software NSS è stato convalidato cinque volte (nel 1997, 1999, 2002, 2007 e 2010) per la conformità a FIPS 140 per i livelli di sicurezza 1 e 2. NSS è stata la prima libreria crittografica open source a ricevere la convalida FIPS 140. Le librerie NSS hanno superato gli audit NISCC TLS/SSL e S/MIME (1,6 milioni di casi di test di dati di input non validi).
AOL, Red Hat, Sun Microsystems / Oracle Corporation, Google e altre aziende e privati hanno collaborato allo sviluppo di NSS. Mozilla fornisce il repository del codice sorgente, il sistema di tracciamento dei bug e l'infrastruttura per le mailing list e i gruppi di discussione. L'azienda e le altre imprese citate utilizzano NSS in una serie di prodotti, tra cui:
NSS comprende un framework al quale gli sviluppatori e gli OEM possono contribuire con patch, come codice assembly, per ottimizzare le prestazioni sulle loro piattaforme. Mozilla ha certificato NSS 3.x su 18 piattaforme. NSS si avvale di Netscape Portable Runtime (NSPR), un'API open-source compatibile con qualsiasi piattaforma per le funzioni di sistema, progettata per facilitare lo sviluppo multipiattaforma. Come NSS, NSPR è stato utilizzato massicciamente in diversi prodotti.
In aggiunta alle librerie e API, NSS fornisce strumenti di sicurezza utili per il debug, la diagnostica, la gestione dei certificati e delle chiavi, la gestione dei moduli crittografici e altre attività di sviluppo. NSS è dotato di una documentazione estesa e in continua espansione, comprendente materiale introduttivo, riferimenti alle API, pagine man per strumenti a riga di comando e codice di esempio.
I programmatori possono utilizzare NSS come sorgente e come librerie condivise (dinamiche). Ogni versione di NSS è compatibile con le versioni precedenti, consentendo agli utenti di NSS di passare a nuove librerie condivise senza dover ricompilare o ricollegare le proprie applicazioni.
NSS supporta una gamma di standard di sicurezza, tra cui i seguenti:
NSS supporta l'interfaccia PKCS #11 per l'accesso all'hardware crittografico come acceleratori TLS/SSL, moduli di sicurezza hardware e smart card. Poiché la maggior parte dei fornitori di hardware come SafeNet, AEP e Thales supporta questa interfaccia, le applicazioni abilitate all'NSS possono lavorare con hardware crittografico ad alta velocità e utilizzare chiavi private residenti su varie smart card, se i fornitori forniscono il middleware necessario. La versione NSS 3.13 e successive supportano i nuovi set d'istruzioni Streaming SIMD Extensions di Intel (AES-NI).
Network Security Services for Java (JSS) è costituito da un'interfaccia Java per NSS. Supporta la maggior parte degli standard di sicurezza e delle tecnologie di crittografia supportate da NSS. JSS fornisce anche un'interfaccia Java pura per i tipi ASN.1 e la codifica BER / DER.