У меня есть приложение, разработанное на BlackBerry JE 4.6.1, которое расшифровывает информацию из WebServer с использованием алгоритма DES.Если я отправляю зашифрованную информацию на сервер, она хорошо расшифровывается.Но в случае, если сервер отправляет зашифрованные данные, я не получаю правильное значение после расшифровки.Ключ должен быть одинаковым, а зашифрованная информация отправляется в кодировке base64.Во время отладки я обнаружил, что после создания DESKey его внутренние данные отличаются от байтового массива, передаваемого конструктору.Например, если я создаю DESKey следующим образом
String keyStr = "2100000A";
DESKey desKey = new DESKey(keyStr.getBytes()); // pass the byte array {'2','1','0','0','0','0','0','A'}
, метод desKey.getData () возвращает байтовый массив {'2', '1', '1', '1', '1', '1', '1', '@'}, который отличается от начальных байтов ключа.
Так возможно ли, что такое поведение DESKey может быть причиной, по которой я не могу расшифровать данные с сервера?
Спасибо.