Какой длины в string должен быть ключ который используется в DES встроенной в Java? Cipher DES = Cipher.getInstance("DES"); byte[] decodedKey1 = java.util.Base64.getDecoder().decode(key); SecretKey originalKey1 = new SecretKeySpec(decodedKey1, 0, decodedKey1.length, "DES"); DES.init(Cipher.ENCRYPT_MODE, originalKey1); byte[] line = input.getBytes("UTF-8"); byte[] encryptedDes = DES.doFinal(line); Вот такой простой код. Почему он не принимает ключ с длиной 7 ? Вроде ключ там обычно 56 битов, а это 7 символов ?
В DES с использованием Java, ключ должен быть длиной 8 байт, что эквивалентно 64 битам. Однако в Java ключ обычно представляется в виде строки, поэтому при использовании Base64 кодирования для представления ключа в виде строки, его длина будет больше 8 символов.
Если вы хотите использовать ключ длиной 7 символов, вам нужно добавить дополнительный символ до 8 для соответствия требованиям длины ключа в DES. В противном случае, Java будет выдавать ошибку при попытке использовать ключ неправильной длины.
Итак, для использования ключа длиной 7 символов в DES в Java, добавьте один дополнительный символ до 8 символов.
В DES с использованием Java, ключ должен быть длиной 8 байт, что эквивалентно 64 битам. Однако в Java ключ обычно представляется в виде строки, поэтому при использовании Base64 кодирования для представления ключа в виде строки, его длина будет больше 8 символов.
Если вы хотите использовать ключ длиной 7 символов, вам нужно добавить дополнительный символ до 8 для соответствия требованиям длины ключа в DES. В противном случае, Java будет выдавать ошибку при попытке использовать ключ неправильной длины.
Итак, для использования ключа длиной 7 символов в DES в Java, добавьте один дополнительный символ до 8 символов.