JSSE

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Расширение Java для безопасных сокетов (англ. Java Secure Socket Extension, JSSE) — библиотека классов для реализации безопасных соединений в Интернете. В JSSE реализованы протоколы SSL и TLS. JSSE включает функциональность по шифрованию данных, аутентификации сервера и клиента, проверки целостности сообщений.

Описание[править | править вики-текст]

Данные, которые передаются по сети, могут быть легко перехвачены теми, кому они не предназначены. Если данные содержат конфиденциальную информацию, такую как пароли или номера кредитных карт, необходимо предпринять определённые действия, чтобы обезопасить передаваемые данные. Вместе с тем необходимы гарантии, что данные не были изменены, умышленно или неумышленно, в процессе передачи. Протоколы SSL и TLS были разработаны с целью обеспечения защиты конфиденциальности и целостности данных при передаче по сети.

JSSE даёт возможность устанавливать безопасные интернет-соединения. JSSE предоставляет программные интерфейсы и реализацию на языке Java протоколов SSL и TLS и включает функциональность для шифрования данных, аутентификации сервера, целостности сообщений и опционально — аутентификации клиента. Используя JSSE, разработчики могут безопасно передавать данные по протоколам HTTP, Telnet и FTP, работающих поверх протокола TCP/IP.

Благодаря абстрагированию сложных базовых алгоритмов безопасности, JSSE минимизирует риск создания незаметных, но крайне опасных уязвимостей. Более того, JSSE упрощает разработку приложений, выступая в роли строительных блоков, которые разработчики могут непосредственно включать в свои приложения.

Первоначально JSSE был опциональной библиотекой, которую надо было дополнительно подключать после установки JVM. Так было во времена JVM и JDK версий 1.2 и 1.3. Начиная с версии 1.4, JSSE интегрирована в платформу Java 2 и средства разработки JDK.

Программные интерфейсы JSSE API поддерживают SSL версий 2.0 и 3.0, а также TLS версии 1.0. Реализация JSSE в рамках J2SDK, v 1.4 поддерживают протоколы SSL 3.0 и TLS 1.0. В ней не реализован протокол SSL версии 2.0.

Другие компоненты обеспечения безопасности в рамках платформы Java 2 включают Криптографическое расширение Java (Java Cryptography Extension — JCE), Службу аутентификации и авторизации (the Java Authentication and Authorization Service — JAAS) и Инструментарий обеспечения безопасности (Java Security Tools).

Программные интерфейсы JSSE API позволяют подключить другую реализацию протоколов SSL/TLS и Инфраструктуры открытых ключей (Public Key Infrastructure — PKI). В частности, для российских разработчиков это означает, что оставаясь в рамках JSSE и используя хорошо знакомые и документированные возможности API, они могут подключить сертифицированные российские реализации алгоритмов безопасности, потому что только они имеют юридическую силу на территории РФ.

Поддержка криптографических протоколов[править | править вики-текст]

В JSSE реализованы некоторые криптографические алгоритмы, которые широко используются в средствах защиты данных:

Криптографический алгоритм Криптографический процесс Длина ключа (бит)
RSA Аутентификация и обмен ключами 2048 (аутентификация)
2048 (обмен ключами)
512 (обмен ключами)
RC4 Потоковое шифрование 128
128 (40 эффективных)
DES Потоковое шифрование 64 (56 эффективных)
64 (40 эффективных)
Triple DES Потоковое шифрование 192 (112 эффективных)
Diffie-Hellman Выработка ключей 1024
512
DSA Аутентификация 1024

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