powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Расшифровка файла зашифрованного как AES rijndael на Java.
5 сообщений из 5, страница 1 из 1
[PHP] Расшифровка файла зашифрованного как AES rijndael на Java.
    #38652268
Deniska2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Требуется в PHP расшифровать файл предварительно зашифрованный в Андроид-приложении при помощи следующего кода на Java:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
        try {
            IvParameterSpec ivps = new IvParameterSpec("0123456789abcdef".getBytes("UTF-8"));
            FileInputStream fis = new FileInputStream(srcFileName);
            FileOutputStream fos = new FileOutputStream(destFileName);
            SecretKeySpec sks = new SecretKeySpec("fedcba9876543210".getBytes("UTF-8"), "AES");
            Cipher cipher = Cipher.getInstance("AES/CBC/ZeroBytePadding");
            cipher.init(Cipher.ENCRYPT_MODE, sks, ivps);
            CipherOutputStream cos = new CipherOutputStream(fos, cipher);
            int b;
            byte[] d = new byte[8];
            while ((b = fis.read(d)) != -1) {
                cos.write(d, 0, b);
            }
            cos.flush();
            cos.close();
            fis.close();
        } catch (Exception e) {
            SessionHelper.showToast(e.getMessage());
        }



Попробовал так, не пашет:

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
$f = fopen($srcFileName, 'r');
$encrypted = fread($f, filesize($srcFileName));
fclose($f);

$decrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, hex2bin('fedcba9876543210'), hex2bin($encrypted), MCRYPT_MODE_CBC, '0123456789abcdef');

$f = fopen($destFileName, 'w+');
fwrite($f, $decrypted);
fclose($f);



Где ошибка?
...
Рейтинг: 0 / 0
[PHP] Расшифровка файла зашифрованного как AES rijndael на Java.
    #38652480
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deniska2014,

я не понял, счего сделан вывод что не пашет?
...
Рейтинг: 0 / 0
[PHP] Расшифровка файла зашифрованного как AES rijndael на Java.
    #38652541
Deniska2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Получаемый из PHP файл $destFileName не соответствует оригинальному файлу который был перед шифрованием на Java. Аудиофайл не проигрывается.
...
Рейтинг: 0 / 0
[PHP] Расшифровка файла зашифрованного как AES rijndael на Java.
    #38652997
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну тогда иди на ветку по джава. (пхп код сравнительно простой) им легче будет понять оба кода и сказать, тоже самое ли они делают....

не уверен,но
лично я полагаю что джава строка
"fedcba9876543210".getBytes("UTF-8") получает набор байт соответсвующий ютф-8 кодированию данной строки.
Тоесть
баква Ф кодируеться в ютф восем и получаем байт, ....итд

И УВЕРЕН ЧТО
hex2bin('fedcba9876543210') сделает совсем другое
буквы ФЕ - дают одно значение байта , Д и Ц второе и так далее.
...
Рейтинг: 0 / 0
[PHP] Расшифровка файла зашифрованного как AES rijndael на Java.
    #38653002
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тебе надо не hex2bin() а pack()

а возможно, вообще взять просто код делать в ютф-8 и тупо как есть оставить строку.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Расшифровка файла зашифрованного как AES rijndael на Java.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]