网络安全服务Network Security Services,简称NSS)是一组支持跨平台开发安全客户端与服务器应用程序的程序库,它提供服务器侧硬件TLS/SSL加速和客户端侧智能卡的可选支持。NSS提供了支持TLS/SSLS/MIME的完全开源实现。早前以多许可方式授权在Mozilla公共许可证 1.1、GNU通用公共许可证GNU宽通用公共许可证,但从3.14版本开始升级到GPL兼容的MPL 2.0许可证[2]

网络安全服务
開發者Mozilla美国在线紅帽公司昇陽電腦甲骨文公司Google
当前版本
  • 3.125(2026年6月11日;穩定版本)[1]
編輯維基數據鏈接
源代码库 編輯維基數據鏈接
编程语言C语言汇编语言
操作系统跨平台
平台跨平台
类型函式庫
许可协议Mozilla公共许可证2.0
网站developer.mozilla.org/en-US/docs/NSS

历史

编辑

NSS的开发源自Netscape开发时SSL安全协议的发明。

FIPS 140验证和NISCC测试

编辑

NSS软件加密模块已5次通过验证(1997年、1999年、2002年、2007年和2010年),符合FIPS 140的安全层级1和2[3]。NSS是首个通过FIPS 140验证的开源的加密程序库[3]。NSS程序库也已通过NISCC TLS/SSL和S/MIME测试套件(160万无效数据输入的测试)[3]

使用NSS的应用程序

编辑

AOLRed Hat、Sun微系统/Oracle公司Google及其他公司和个人贡献者协作参与了NSS的开发。Mozilla提供了开源代码库、缺陷跟踪系统和邮件列表及讨论组这些基础设施。有许多款产品中使用了NSS,以下是部分产品:

架构

编辑

NSS包含一个框架,开发者和OEM厂商可以贡献补丁,例如优化在其特定平台性能的汇编代码。Mozilla已认证NSS 3.x可用于18种平台[6][7]。NSS制作了一个Netscape便携式运行时(NSPR), 一个无关平台的开源API,便于跨平台开发和完成系统功能设计。NSS、NSPR等已被多种产品大量使用。

软件开发工具包

编辑

除了程序库和API,NSS还提供了调试、诊断及证书和密钥管理、加密模块管理及其他开发任务所需的安全工具。NSS配有广泛且持续增长的文档,包括介绍材料、API参考、命令行工具的man页面、示例代码。

程序员可以使用NSS作为源代码和作为共享(动态)程序库。每个NSS发布版本都对此前的版本有向后兼容性,允许NSS用户直接升级到新的NSS共享程序库,无须重新编译或重新链接他们的应用程序。

互操作性和开放标准

编辑

NSS支持一系列安全标准,包括如下所示[8][9]

  • TLS 1.0(RFC 2246)、1.1(RFC 4346)和1.2(RFC 5246)。传输层安全(TLS)协议来自IETF取代的SSL v3.0,并保持了对SSL v3实现的向后兼容性。
  • SSL 2.0和3.0。安全套阶层(SSL)协议允许客户端与服务器互相认证身份并建立一个经身份验证且加密的连接。
  • DTLS 1.0(RFC 4347)和1.2(RFC 6347)。
  • DTLS-SRTPRFC 5764)。
  • 下列PKCS标准:
    • PKCS #1。RSA标准,约定基于RSA算法的公钥加密算法实现。
    • PKCS #3。RSA标准,约定Diffie–Hellman密钥协议的实现。
    • PKCS #5。RSA标准,约定基于密码的加密法,例如加密存储设备上的私钥。
    • PKCS #7。RSA标准,约定加密数据的应用程序,例如数字签名和数字信封。
    • PKCS #8。RSA标准,约定私钥的存储和加密。
    • PKCS #9。RSA标准,约定选择的属性类型,包括PKCS #7。PKCS #8和PKCS #10的使用。
    • PKCS #10。RSA标准,约定证书请求的语法。
    • PKCS #11。RSA标准,约定加密令牌的通信(例如硬件加速器和智能卡)并允许应用程序独立于特定算法和实现。
    • PKCS #12。RSA标准,约定存储或传输私钥、证书和其他秘密材料的格式。
  • Cryptographic Message Syntax,使用在S/MIME(RFC 2311和RFC 2633)中。IETF消息标准(基于流行的互联网MIME标准)提供了一个一致的方法来发送和接收签名并已加密的MIME数据。
  • X.509 v3。ITU标准,公钥加密中用于身份验证的证书的格式。
  • OCSP(RFC 2560)。在线证书状态协议(OCSP)提供实时的证书有效性确认服务。
  • PKIX证书和CRL配置(RFC 3280)。按IETF的公钥基础设施(X.509)工作组(也称PKIX)为互联网的公钥基础设施开发的四个标准的部分内容组成。
  • RSA、DSA、ECDSA、Diffie–HellmanEC Diffie–HellmanAESTriple DESCamelliaIDEA、SEED、DES、RC2、RC4、SHA-1、SHA-256SHA-384SHA-512、MD2、MD5HMAC:公钥和对称密钥加密中的常用算法。
  • FIPS 186-2伪随机数生成器。

硬件支持

编辑

NSS支持PKCS #11接口访问加密设备,例如SSL加速器、HSM-s和智能卡。自从大多数设备供应商(例如SafeNet和Thales)也支持此接口,使用NSS的应用程序可以使用加密硬件高速运作,以及使用驻留在智能卡上的私钥,只要设备供应商提供了必要的中间件。NSS 3.13及更高版本中支持高级加密标准新指令(AES-NI)[10]

Java支持

编辑

Network Security Services for Java(JSS)包含一个指向NSS的Java接口。它由NSS提供,支持大多数安全标准和加密技术。JSS也提供一个纯Java接口用于ASN.1类型和BER/DER编码。Mozilla CVS树提供了指向NSS的Java接口的源代码。

另见

编辑

参考资料

编辑
  1. ^ NSS 3.125 release notes — Firefox Source Docs documentation. [2026年6月12日]. 
  2. ^ NSS 3.14 release notes. MDN. Mozilla Developer Network. [2015-09-01]. (原始内容存档于2021-12-07). The NSS license has changed to MPL 2.0. Previous releases were released under a MPL 1.1/GPL 2.0/LGPL 2.1 tri-license. 
  3. ^ 3.0 3.1 3.2 FIPS. Mozilla. 2012-02-01 [2013-05-17]. (原始内容存档于2013-05-02). 
  4. ^ Does Fennec use NSS?. mozilla.dev.security.policy newsgroup. April 2010 [2013-05-17]. 
  5. ^ The Chromium Project: BoringSSL. [2016-11-08]. (原始内容存档于2015-09-23). 
  6. ^ Network Security Services. Mozilla. 2013-05-16 [2013-05-17]. (原始内容存档于2014-03-28). 
  7. ^ NSS FAQ. Mozilla. 2013-05-16 [2013-05-17]. [失效連結]
  8. ^ Encryption Technologies Available in NSS 3.11. Mozilla. 2012-02-01 [2013-05-17]. (原始内容存档于2013-04-02). 
  9. ^ "NSS 3.23 release notes"页面存档备份,存于互联网档案馆).
  10. ^ AES-NI enhancements to NSS on Sandy Bridge systems. 2012-05-02 [2013-05-17]. (原始内容存档于2014-04-13). 

外部链接

编辑

📚 Artikel Terkait di Wikipedia

.htaccess

、重定向url、禁止访客进入某个页面、和防止热链接等。 維基教科書中的相關電子教程:.htaccess SUN Java系统Web服务器(英语:Sun Java System Web Server) Apache HTTP服务器 配置文件 Class 04 - htaccess and other odditie[1]

Jakarta EE

(2009年12月10日) Java EE 7 (2013年5月28日) Java EE 8 (2017年8月31日) Java主题 Web容器 部署描述符 Java BluePrints Sun Java System Portal Server Java EE version history Sun Community

Java版本歷史

自JDK 1.0版本以来,Java語言历经了多次迭代更新,并在基础程式庫中持续增添大量類別与包。自J2SE 1.4版本起,Java语言的演变过程交由 Java Community Process(JCP)统一管理,其采用Java规范请求(Java Specification

Java

Java是一種廣泛使用的電腦程式設計語言,擁有跨平台、物件導向、泛型程式設計的特性,广泛应用于企业级Web应用开发和移动应用开发。 任職於昇陽電腦的詹姆斯·高斯林等人于1990年代初开发Java語言的雛形,最初被命名为Oak,目標設定在家用电器等小型系統的程式语言,應用在电视机、电话、闹钟、烤面包

网络文件系统

3530,2003年4月),借鉴了AFS(Andrew File System)和SMB/CIFS(Server Message Block)的特性,主要做了如下改进:性能提升,强制安全策略,引入有状态的协议。从NFSv4开始,协议的实现/开发工作不再是由SUN公司主导开发,而是改为由網際網路工程任務組(IETF)开发。

自由及开放源代码软件列表

X、Solaris、Linux——Java SWT Eclipse Sage (Mozilla Firefox extension) Drupal eXo Platform Liferay Oxwall——社区网站软件 Sun Java System Portal Server uPortal FreeNX

JavaScript

DMDScript ECMAScript JavaScript引擎 JScript AJAX JavaScript函式庫 Press release announcing JavaScript, "Netscape and Sun announce JavaScript", PR Newswire,

部署描述符

(页面存档备份,存于互联网档案馆), retrieved 2010-07-13 "Sun Java System Application Server Descriptors"[失效連結], retrieved 2010-07-13 http://java.sun.com/javaee/reference/glossary/