Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
41 / 37 / 9
Регистрация: 01.02.2014
Сообщений: 825

Дешифрование AES(Rijndael) строки ключем

27.06.2015, 22:53. Показов 1137. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужен код, который сможет расшифровать строку с помощью ключа.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$Pass = "1234";
$Clear = "IteXf4qRhADKsrIiJi5ihg==";
$Clear = base64_decode($Clear);
 
$newClear = fnDecrypt($Clear, $Pass);
echo "Decrypred: ".$newClear."</br>";
 
function fnDecrypt($sValue, $sSecretKey)
{
    return PKCS5RemovePadding(mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $sSecretKey, $sValue, MCRYPT_MODE_CBC));
}
 
function PKCS5RemovePadding($input)    
{ 
        return rtrim($input, substr($input, strlen($input) - 1, 1)); 
}
?>
вот сделал сам, но выдает не "password". Работает если поставить в $Clear = "EvZ53MrxRuTitekVPMdQBw==".

Код который шифрует и дешифрует все это на C#:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/// /// Шифрует строку value
/// 
/// Строка которую необходимо зашифровать
/// Ключ шифрования
public static string Encrypt(string str, string keyCrypt)
{
return Convert.ToBase64String(Encrypt(Encoding.UTF8.GetBytes(str), keyCrypt));
}
 
/// /// Расшифроывает данные из строки value
/// 
/// Зашифрованая строка
/// Ключ шифрования
/// Возвращает null, если прочесть данные не удалось
public static string Decrypt(string str, string keyCrypt)
{
string Result;
try
{
CryptoStream Cs = InternalDecrypt(Convert.FromBase64String(str), keyCrypt);
StreamReader Sr = new StreamReader(Cs);
 
Result = Sr.ReadToEnd();
 
Cs.Close();
Cs.Dispose();
 
Sr.Close();
Sr.Dispose();
}
catch (CryptographicException)
{
return null;
}
 
return Result;
}
 
private static byte[] Encrypt(byte[] key, string value)
{
SymmetricAlgorithm Sa = Rijndael.Create();
ICryptoTransform Ct = Sa.CreateEncryptor((new PasswordDeriveBytes(value, null)).GetBytes(16), new byte[16]);
 
MemoryStream Ms = new MemoryStream();
CryptoStream Cs = new CryptoStream(Ms, Ct, CryptoStreamMode.Write);
 
Cs.Write(key, 0, key.Length);
Cs.FlushFinalBlock();
 
byte[] Result = Ms.ToArray();
 
Ms.Close();
Ms.Dispose();
 
Cs.Close();
Cs.Dispose();
 
Ct.Dispose();
 
return Result;
}
 
private static CryptoStream InternalDecrypt(byte[] key, string value)
{
SymmetricAlgorithm sa = Rijndael.Create();
ICryptoTransform ct = sa.CreateDecryptor((new PasswordDeriveBytes(value, null)).GetBytes(16), new byte[16]);
 
MemoryStream ms = new MemoryStream(key);
return new CryptoStream(ms, ct, CryptoStreamMode.Read);
}
Помогите написать расшифровку на php. Очень нужно)

Добавлено через 3 часа 29 минут
уже сам все сделал, не нужно!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.06.2015, 22:53
Ответы с готовыми решениями:

Base64 AES Rijndael
Добрый день, помогите пожалуйста с решением моей проблемы! я шифрую текст шифром AES Rijndael и результат кодирую в Base64, а в другой...

Алгоритм Rijndael (AES)
Всем привет) Не подскажете, как зашифровать двоичную последовательность (например 00100000, ключ: 10101001) AES-ом? Если он работает только...

Не выполняется AES дешифрование
Не получается дешифровать файл, не могу понять в чем проблема. Скорее всего с байтами outdata нагрешил public void Encrypt128(byte...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.06.2015, 22:53
Помогаю со студенческими работами здесь

Шифрование и дешифрование символьной строки
Доброй ночи. есть код, все правильно написано, но выдает ошибку в строке: copy( istream_iterator &lt; string &gt;( ist ),...

Не работает функция дешифровки строки из AES
Я не знаю, что я делаю не так, потому что на вашем форуме в разделе &quot;C++/CLI Windows Forms&quot; есть всего одна тема со словом...

Шифрование строки AES (готовое решение)
искал на форуме простое шифрование строки с AES но не смог найти что искал может плохо искал в конце разобрался решил скинуть может...

Получение ключа для AES шифрования из строки
Здравствуйте, есть строка в формате string, имеющая 32 символа (хеш md5). Нужно эту строку преобразовать в byte 128bit, для использования в...

AES 192 и AES 256
Добрый день! Возможно ли в Java сделать шифрование с помощью AES 256- или 192-битными ключами? Единственное условие, что мешает мне...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru