Какие-нибудь учебники по шифрованию с открытым ключом в Java? [закрыто]
-
19-08-2019 - |
Вопрос
Мне удалось найти информацию о симметричном шифровании и хешировании, но у меня возникли некоторые проблемы с поиском большого количества информации о любом виде шифрования с открытым ключом для Java. Что я хотел бы сделать, так это сделать очень простое доказательство концепции программы, которая берет строку (или файл, который я предполагаю), шифрует ее с помощью открытого ключа, а затем дешифрует ее с помощью закрытого ключа.
Любые учебные ссылки или примеры приветствуются. Я просто хочу сделать что-то, демонстрирующее, как вы можете использовать шифрование с открытым ключом в Java.
Решение
В Интернете довольно много ресурсов по этому поводу. В основном это поворачивается вокруг класса KeyPairGenerator.
См. http://www.informit.com /articles/article.aspx?p=170967&seqNum=4 для примера программы.
Другие советы
Обычно вы используете шифрование с открытым ключом для шифрования симметричного ключа, отчасти потому, что шифрование с открытым ключом происходит очень медленно. Обычно вы отправляете получателю следующее, чтобы он мог расшифровать ваше сообщение:
<Ол>Я нашел пример кода в JCE документации достаточно, чтобы все заработало.
Стандартный формат для объединения всей этой информации - это Синтаксис криптографических сообщений, или CMS, который используется S / MIME в почтовых приложениях. Я рекомендую использовать библиотеки Bouncy Castle ; они надежны, просты и активно поддерживаются. Справочная документация немного слабовата, но они предоставляют примеры кода.