Как я могу зашифровать данные с помощью уже сгенерированного ключа AES 256 GCM 96 (поступившего из Hashicorp Vault)?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как я могу зашифровать данные с помощью уже сгенерированного ключа AES 256 GCM 96 (поступившего из Hashicorp Vault)?

Сообщение Anonymous »

У меня есть строка, представляющая симметричный ключ, полученный с помощью Hashicorp Vault (на самом деле это может быть не важно). Мне нужен этот ключ для шифрования больших файлов, поэтому я не могу отправить файл напрямую в Vault с просьбой зашифровать данные. Вместо этого я хочу сделать это локально, поэтому попросил Vault создать для меня симметричный ключ (с помощью конечной точкиtransit/datakey/plaintext/). Теперь у меня есть симметричный ключ (и его зашифрованный текст) длиной 44 байта, сгенерированный с помощью алгоритма aes256_gcm96. Итак, насколько я понял, мой 32-байтовый ключ заключен в 96-битный (12-байтовый) блок gcm.
Теперь я хочу использовать этот ключ для шифрования моих данных, но ключ слишком длинный для этого. , поэтому мне нужно как-то его либо развернуть, либо вызвать какую-то функцию, которая принимает на вход такой ключ. Я пытался использовать Cipher для шифрования своих данных. Это то, что я (ошибочно) сделал до сих пор

Код: Выделить всё

byte[] datakeyByteArray = mySymmetricKey.getBytes();
SecretKey secretKey = new SecretKeySpec(datakeyByteArray, "AES_256");
Cipher cipher = Cipher.getInstance("AES_256/GCM/NoPadding");
cipher.init(Cipher.ENCRYPT_MODE, secretKey);`
При вызове функции init, очевидно, выдается исключение: java.security.InvalidKeyException: Ключ должен быть длиной 32 байта
Какого рода Могу ли я выполнить операцию, чтобы получить действительный ключ?
Спасибо.

Подробнее здесь: https://stackoverflow.com/questions/647 ... oming-from
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»