У меня есть 56-битная двоичная строка, которую я хочу использовать в качестве секретного ключа для шифрования DES.
Я нашел следующий код на веб-сайте документации JCA
byte[] desKeyData = { (byte)0x01, (byte)0x02, (byte)0x03,
(byte)0x04, (byte)0x05, (byte)0x06, (byte)0x07, (byte)0x08 };
DESKeySpec desKeySpec = new DESKeySpec(desKeyData);
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES");
SecretKey secretKey = keyFactory.generateSecret(desKeySpec);
Однако он использует 8 байтов для ключа (вместо 7. Неясно, соответствует ли desKeyData [0] младший или самый значимый байт. Кроме того, можно ли использовать 56-битную строку напрямую для генерации массива байтов, который можно использовать для этой цели?