Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Службы сетевой безопасности ( NSS ) - это набор криптографических компьютерных библиотек, предназначенных для поддержки кроссплатформенной разработки клиентских и серверных приложений с поддержкой безопасности с дополнительной поддержкой аппаратного ускорения TLS / SSL на стороне сервера и аппаратных смарт-карт на стороне клиента. NSS предоставляет полную реализацию криптографических библиотек с открытым исходным кодом, поддерживающую Transport Layer Security (TLS) / Secure Sockets Layer (SSL) и S / MIME . Выпуски NSS до версии 3.14 имеют три лицензии в соответствии с Mozilla Public License 1.1,Стандартная общественная лицензия GNU и Стандартная общественная лицензия ограниченного применения GNU . Начиная с выпуска 3.14, выпуски NSS лицензируются под GPL-совместимой Mozilla Public License 2.0. [2]

История [ править ]

NSS произошел от библиотек, разработанных, когда Netscape изобрела протокол безопасности SSL.

Проверка FIPS 140 и тестирование NISCC [ править ]

Криптомодуль программного обеспечения NSS был аттестован пять раз (в 1997, [3] 1999, 2002, [4] 2007 и 2010 [5] ) на соответствие FIPS 140 на уровнях безопасности 1 и 2. [6] NSS был первая криптографическая библиотека с открытым исходным кодом, прошедшая проверку FIPS 140. [6] Библиотеки NSS прошли тесты NISCC TLS / SSL и S / MIME (1,6 миллиона тестовых случаев с неверными входными данными). [6]

Приложения, использующие NSS [ править ]

AOL , Red Hat , Sun Microsystems / Oracle Corporation , Google и другие компании и отдельные участники совместно разработали NSS. Mozilla предоставляет репозиторий исходного кода, систему отслеживания ошибок и инфраструктуру для списков рассылки и групп обсуждения. Они и другие лица, перечисленные ниже, используют NSS в различных продуктах, включая следующие:

  • Клиентские продукты Mozilla , включая Firefox , Thunderbird , SeaMonkey и Firefox для мобильных устройств . [7]
  • Коммуникатор AOL и AOL Instant Messenger (AIM)
  • Опера
  • Клиентские приложения с открытым исходным кодом, такие как Evolution , Pidgin и OpenOffice.org 2.0 и более поздние версии (и его потомки).
  • Серверные продукты от Red Hat : Red Hat Directory Server , Red Hat Certificate System и модуль mod nss SSL для веб-сервера Apache .
  • Серверные продукты Sun из Sun Java Enterprise System , включая Sun Java System Web Server , Sun Java System Directory Server , Sun Java System Portal Server , Sun Java System Messaging Server и Sun Java System Application Server , версию OpenDS сервера каталогов с открытым исходным кодом .
  • Libreswan IKE / IPsec требует NSS. Это форк Openswan, который при желании может использовать NSS.

Архитектура [ править ]

NSS включает среду, в которую разработчики и OEM-производители могут вносить исправления, такие как код сборки, для оптимизации производительности на своих платформах. Mozilla сертифицировала NSS 3.x на 18 платформах. [8] [9] NSS использует Netscape Portable Runtime (NSPR), платформенно- независимый API с открытым исходным кодом для системных функций, предназначенный для облегчения кроссплатформенной разработки. Как и NSS, NSPR широко используется во многих продуктах.

Комплект для разработки программного обеспечения [ править ]

В дополнение к библиотекам и API-интерфейсам NSS предоставляет инструменты безопасности, необходимые для отладки, диагностики, управления сертификатами и ключами, управления модулями криптографии и других задач разработки. NSS поставляется с обширным и постоянно растущим набором документации, включая вводный материал, ссылки на API, manстраницы для инструментов командной строки и примеры кода.

Программисты могут использовать NSS как исходный код и как разделяемые (динамические) библиотеки. Каждый выпуск NSS обратно совместим с предыдущими выпусками, что позволяет пользователям NSS обновляться до новых разделяемых библиотек NSS без перекомпиляции или повторного связывания своих приложений.

Совместимость и открытые стандарты [ править ]

NSS поддерживает ряд стандартов безопасности, включая следующие: [10] [11]

  • TLS 1.0 (RFC 2246), 1.1 (RFC 4346), 1.2 (RFC 5246) и 1.3 (RFC 8446). Протокол безопасности транспортного уровня (TLS) от IETF заменяет SSL v3.0, оставаясь при этом обратно совместимым с реализациями SSL v3.
  • SSL 3.0. Протокол Secure Sockets Layer (SSL) обеспечивает взаимную аутентификацию между клиентом и сервером и установление аутентифицированного и зашифрованного соединения.
  • DTLS 1.0 (RFC 4347) и 1.2 (RFC 6347).
  • DTLS-SRTP (RFC 5764).
  • Следующие стандарты PKCS :
    • ПККС №1. Стандарт RSA, который регулирует реализацию криптографии с открытым ключом на основе алгоритма RSA.
    • ПККС №3. Стандарт RSA, который регулирует реализацию соглашения о ключах Диффи – Хеллмана.
    • ПККС №5. Стандарт RSA, который управляет криптографией на основе паролей, например, для шифрования закрытых ключей для хранения.
    • ПККС №7. Стандарт RSA, который регулирует применение криптографии к данным, например цифровым подписям и цифровым конвертам.
    • ПККС №8. Стандарт RSA, регулирующий хранение и шифрование закрытых ключей.
    • ПККС №9. Стандарт RSA, который управляет выбранными типами атрибутов, включая те, которые используются с PKCS # 7, PKCS # 8 и PKCS # 10.
    • ПККС №10. Стандарт RSA, регулирующий синтаксис запросов сертификатов.
    • ПККС №11. Стандарт RSA, который управляет обменом данными с криптографическими токенами (такими как аппаратные ускорители и смарт-карты) и разрешает независимость приложений от определенных алгоритмов и реализаций.
    • ПККС №12. Стандарт RSA, который регулирует формат, используемый для хранения или передачи закрытых ключей, сертификатов и других секретных материалов.
  • Синтаксис криптографических сообщений , используемый в S / MIME (RFC 2311 и RFC 2633). Спецификация сообщений IETF (основанная на популярном стандарте Internet MIME ), обеспечивающая единообразный способ отправки и получения подписанных и зашифрованных данных MIME.
  • X.509 v3 . Стандарт ITU , регулирующий формат сертификатов, используемых для аутентификации в криптографии с открытым ключом.
  • OCSP (RFC 2560). Протокол онлайн-статуса сертификата (OCSP) управляет подтверждением действительности сертификата в реальном времени.
  • Сертификат PKIX и профиль CRL (RFC 3280). Первая часть стандарта из четырех частей, разрабатываемого рабочей группой IETF по инфраструктуре открытых ключей (X.509) (известной как PKIX) для инфраструктуры открытых ключей для Интернета.
  • RSA , DSA , ECDSA , Diffie – Hellman , EC Diffie – Hellman , AES , Triple DES , Camellia , IDEA , SEED , DES , RC2 , RC4 , SHA-1 , SHA-256, SHA-384, SHA-512 , MD2 , MD5 , HMAC : общие криптографические алгоритмы, используемые в криптографии с открытым и симметричным ключом.
  • Генератор псевдослучайных чисел FIPS 186-2.

Поддержка оборудования [ править ]

NSS поддерживает интерфейс PKCS # 11 для доступа к криптографическому оборудованию, такому как ускорители TLS / SSL , аппаратные модули безопасности и смарт-карты . Поскольку большинство поставщиков оборудования, таких как SafeNet , AEP и Thales, также поддерживают этот интерфейс, приложения с поддержкой NSS могут работать с высокоскоростным криптографическим оборудованием и использовать закрытые ключи, находящиеся на различных смарт-картах, если поставщики предоставляют необходимое промежуточное ПО. NSS версии 3.13 и выше поддерживает новые инструкции расширенного стандарта шифрования (AES-NI). [12]

Поддержка Java [ править ]

Службы сетевой безопасности для Java (JSS) состоят из интерфейса Java для NSS. Он поддерживает большинство стандартов безопасности и технологий шифрования, поддерживаемых NSS. JSS также предоставляет чистый интерфейс Java для типов ASN.1 и кодирования BER / DER . [13]

См. Также [ править ]

  • Информационная безопасность
  • Сравнение реализаций TLS

Ссылки [ править ]

  1. ^ a b «Примечания к выпуску для последних версий NSS» . Сеть разработчиков Mozilla . Проверено 25 февраля 2021 года .
  2. ^ «Примечания к выпуску NSS 3.14» . MDN . Сеть разработчиков Mozilla . Проверено 1 сентября 2015 . Лицензия NSS изменена на MPL 2.0. Предыдущие выпуски были выпущены под три-лицензией MPL 1.1 / GPL 2.0 / LGPL 2.1.
  3. ^ "Программа валидации криптографического модуля: Сертификат № 7" . NIST . 1997-08-29. модуль: Netscape Security Module 1, производитель: Netscape Communications Corporation
  4. ^ "Программа валидации криптографических модулей: Сертификат № 248" . NIST. 2002-09-04. модуль: Службы сетевой безопасности, поставщик: Sun Microsystems, Inc.
  5. ^ "Программа валидации криптографических модулей: Сертификат № 1280" . NIST. 2010-03-29. модуль: криптографический модуль служб сетевой безопасности (NSS), поставщик: Sun Microsystems, Inc., Red Hat®, Inc. и Mozilla Foundation, Inc.
  6. ^ a b c "ФИПС" . Mozilla Foundation . 2007-10-11 . Проверено 3 июля 2020 .
  7. ^ "Фенек использует NSS?" . группа новостей mozilla.dev.security.policy . 2010-04-09 . Проверено 3 июля 2020 .
  8. ^ «Обзор NSS: криптографические библиотеки с открытым исходным кодом» . Mozilla . 2020-03-02 . Проверено 3 июля 2020 .
  9. ^ "NSS FAQ" . Mozilla . 2019-11-21 . Проверено 3 июля 2020 .
  10. ^ «Технологии шифрования, доступные в NSS 3.11» . Mozilla . 2007-02-26 . Проверено 3 июля 2020 .
  11. ^ "Список релизов" . Архивировано из оригинала на 2015-02-14.
  12. ^ «Улучшения AES-NI для NSS в системах Sandy Bridge» . 2012-05-02 . Проверено 17 мая 2013 .
  13. ^ «jss: Службы сетевой безопасности для Java - это интерфейс Java для NSS» .

Внешние ссылки [ править ]

  • Официальный веб-сайт