#java #ssl #encryption
#java #ssl #шифрование
Вопрос:
Я создаю сервер и клиент, которые используют канал TLS и начальный алгоритм для шифрования данных.
Я просмотрел документы о SSL-соединении и задался вопросом, когда мне следует обменять ключ для шифрования данных.
Я вижу, что для JAVA существует хороший класс SSL, поэтому я могу легко открыть канал SSL с выбранным сертификатом.
Мой первый вопрос заключается в том, когда я должен обменять секретный ключ на шифрование. безопасно ли просто отправлять ключ через канал после обмена сертификатами и приема сокета ssl? или есть другие способы сделать это?
Второй вопрос: есть ли какой-либо способ управлять сертификатами для каждого клиента? потому что кажется, что сам сертификат включен в сокет ssl.
Спасибо
Комментарии:
1. Почему? Если вы используете TLS, у вас уже есть шифрование, обмен ключами, обмен сертификатами, … И сертификаты не «включены в сокет SSL», что бы это ни значило. Я предлагаю вам еще немного почитать. Начните со справочного руководства по JSSE.
2. Что я действительно хочу сделать, так это независимо от того, существует ли реальный защищенный подключенный канал или нет, я хочу зашифровать свои данные в соответствии с моими требованиями. Что мне точно интересно, так это… возможность создания сертификата или какого-либо файла с паролем, в который я могу ввести свой секретный ключ шифрования данных (SEED, алгоритм ARIA)