Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.03.2023, 17:54   #1
gpi65
 
Регистрация: 30.01.2019
Сообщений: 5
По умолчанию Шифрование файла с использованием сертификата

Здравствуйте.
Партнер желает получать зашифрованный файл. Для шифрования он прислал сертификат в текстовом виде. Первая и последняя строка в тексте
-----BEGIN CERTIFICATE-----
и
-----END CERTIFICATE-----
Я сделал из этого файл .cer, файл .jks, файл .p12 (Использовал для этого KeyStore Explorer)
Перерыл гору информации в интернете, попробовал несколько предложенных способов, ничего у меня не заработало.

Если кто в теме, подскажите пошагово, что мне и как делать с этим сертификатом, и как с ним зашифровать файл.
gpi65 вне форума Ответить с цитированием
Старый 23.03.2023, 18:11   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Что-то типа:
Код:
openssl rsautl -encrypt -inkey key.pem -pubin -in file.txt -out file.txt.enc
p51x на форуме Ответить с цитированием
Старый 24.03.2023, 09:01   #3
gpi65
 
Регистрация: 30.01.2019
Сообщений: 5
По умолчанию

а как это сделать на java?
gpi65 вне форума Ответить с цитированием
Старый 24.03.2023, 09:57   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Как обычно.
1. Генерите der
2. Грузите его типа
Код:
    KeyFactory publicKeyFactory = KeyFactory.getInstance("RSA");
    EncodedKeySpec publicKeySpec = new X509EncodedKeySpec(publicKeyBytes);
    PublicKey publicKey = publicKeyFactory.generatePublic(publicKeySpec);
3. Шифруете
Код:
    Cipher cipher = Cipher.getInstance("RSA");
    cipher.init(Cipher.ENCRYPT_MODE, publicKey);
    byte[] bytes = cipher.doFinal(toEncode.getBytes(StandardCharsets.UTF_8));
можете с вариантами шифра побаловаться
Код:
    Cipher cipher = Cipher.getInstance("RSA/ECB/OAEPWithSHA1AndMGF1Padding");   
    cipher.init(Cipher.ENCRYPT_MODE, key);  
    return cipher.doFinal(plaintext);
p51x на форуме Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите!Шифрование видео с использованием AES kzlbm C# (си шарп) 0 01.05.2018 02:01
За один просмотр файла действительных чисел и с использованием очереди напечатать элементы файла в следующем порядке: сначала – вс zenya1998 Паскаль, Turbo Pascal, PascalABC.NET 0 28.04.2016 17:52
Дешифрование с использованием сертификата Борис1 SQL, базы данных 0 07.12.2015 20:44
шифрование с использованием алгебры матриц 123kiv Общие вопросы Delphi 0 18.03.2011 23:10
Delphi - шифрование с использованием томика со стихами Robhefist Помощь студентам 3 15.02.2011 11:27