Измененная архитектура безопасности позволит создавать крупномасштабные распределенные Java-приложения
Фирма Sun Microsystems работает над новой архитектурой безопасности Java, которая сделает возможным создание сложных распределенных приложений.
В версии 1.2 комплекта Java Development Kit (JDK) появятся криптографические расширения и новая модель контроля прав доступа. С помощью JDK 1.2 пользователи смогут получать доступ к определенным ресурсам и каталогам локального компьютера и управлять ими.
Новая модель доступа позволит пользователям авторизовать Java-аплеты так, чтобы они могли обращаться к определенным локальным ресурсам. Помимо этого разработчики смогут создавать расширяемые приложения, которые можно будет распределять по нескольким серверам.
Java Cryptography Extensions 1.2 (криптографические расширения Java, JCE) позволят работать с множеством стандартных технологий шифрования и создавать вокруг Java-аплетов шифровальные оболочки (encryption wrapper), с помощью которых создаются частные виртуальные каналы.
В настоящее время доступна ознакомительная версия JDK 1.2. По заявлению официальных представителей подразделения JavaSoft (Купертино, шт. Калифорния) фирмы Sun, вслед за JDK 1.2 будет выпущен пакет JCE 1.2. Его бета-тестирование должно завершиться до конца 1997 г., а окончательный вариант появится в I квартале 1998 г.
По мнению разработчиков, новая версия JDK откроет возможность создания сложных приложений масштаба предприятия, способных безопасно функционировать в среде Internet.
Грэхем Томас, консультант по Java-приложениям из Нью-Йорка, считает, что “в прошлом модель безопасности Java стесняла возможности разработки. С помощью новой технологии можно создавать приложения, способные, например, автоматически обращаться к запасному серверу при выходе из строя основного”.
Технология разграничения прав доступа из JDK 1.2 позволяет разрабатывать серверные приложения, использующие набор корпоративных интерфейсов прикладного программирования Enterprise JavaBeans (EJBs) фирмы Sun, бета-тестирование которого началось в декабре. EJBs созданы для обеспечения доступа приложений и инструментов Java к каталогам, базам данным, а также почтовым системам и мониторам транзакций.
Существующая модель безопасности допускает связь между аплетом и сервером лишь по схеме “один с одним”, из-за чего оказывается невозможным создание распределенных Java-приложений. С помощью JDK 1.2, аплет можно передавать с сервера в LDAP-каталог и оттуда переправить его новому приложению.
Схема безопасности на основе разграничения прав доступа улучшит работу аплетов и на клиентском конце. Пользователи или системные администраторы смогут определять права определенных аплетов при их работе на локальном компьютере.
Разработчики, которые воспользуются криптографическими расширениями JCE 1.2, получат возможность работать с открытым алгоритмом шифрования Диффи-Хеллмана и алгоритмами симметричного шифрования, такими, как DES (Digital Encryption Standard - стандарт цифрового кодирования) и Triple DES. По данным из официальных источников, JavaSoft не планирует поддерживать алгоритм шифрования с открытым ключом фирмы RSA Data Security.
Разработчики также смогут строить вокруг Java-аплетов шифровальную оболочку, создающую безопасные частные виртуальные каналы, которые JavaSoft называет Secure Streams (безопасные потоки). Из нескольких безопасных потоков образуется безопасный канал Secure Channel.
Благодаря шифровальной оболочке аплет имеет возможность кодировать и декодировать пересылаемые данные по алгоритмам DES или Triple DES (заметим, что Triple DES не может экспортироваться). Процесс шифрования происходит автоматически и невидим как для отправителя, так и для получателя. Однако он требует введения аутентифицирующих цифровых подписей обеих сторон.
JCE 1.2 также поддерживает стандарт SSL 3 (протокол защиты данных на уровне гнезд версии 3) и стандарт цифровых сертификатов Х.509 версии 3. 4
Майкл Мюллер, Джим Керстеттер