Мне нужно сгенерировать SecretKeySpec
в Java в указанном диапазоне. например. Мне нужны все 16-битные ключи. Поскольку мне нужны ключи для DES, длина ключа должна быть 8 байт. Это означает, что старшие 6 байтов равны 0, а младшие два байта хранят числа от 1 до 2^16 -1. В последний час я много читал о битах, байтах и шестнадцатеричных числах, и я действительно запутался во всем этом. Конструктор SecretKeySpec
, который я хотел бы использовать, это:
public SecretKeySpec(byte[] key,
String algorithm)
Этот конструктор ожидает массив байтов в качестве ключа. Я хотел создать эти массивы размером 2 ^ 16 -1 байт, чтобы заполнить два младших байта соответствующими числами. например.
- Ключ 0: ключ [7] = 0, ключ [6] = 0 ..., ключ [0] = 0;
- Ключ 1: ключ [7] = 0, ключ [6] = 0 ..., ключ [1] = 0, ключ [0] = 1;
Я бы использовал циклы для заполнения массивов байтов. Могу ли я так справиться с этой проблемой?