За последние 24 часа нас посетили 22526 программистов и 1139 роботов. Сейчас ищут 620 программистов ...

Дешифрование с помощю AES в режиме CBC

Тема в разделе "Прочие вопросы по PHP", создана пользователем Dark19, 2 июн 2015.

  1. Dark19

    Dark19 Активный пользователь

    С нами с:
    10 май 2014
    Сообщения:
    51
    Симпатии:
    0
    Добрый день, стоит такое задание: нужно реализовать криптосистему, которая использует AES в режиме CBC. 16-байтный начальный вектор IV избирается случайно и приписывается спереди шифротекста. Для режима CBC использовать схему PKCS5 для дополнения сообщения, чтобы его длина стала кратной длине блока. Ниже приведены ключ и зашифрованное сообщение в шестнадцатеричном виде. Задача заключается в дешифровке сообщения.
    Собственно данные:
    1) ключ - 140b41b22a29beb4061bda66b6747e14
    2) шифротекст - 4ca00ff4c898d61e1edbf1800618fb2828a226d160dad07883d04e008a7897ee\
    2e4b7465d5290d0c0e6c6822236e1daafb94ffe0c5da05d9476be028ad7c1d81

    Я в этом вообще не шарю, но лабу нужно сделать. Вот поискав на просторах интернета решения, я нашел кое что и немного привел к нужному виду для этой задачи, но вот не знаю, что дальше нужно делать чтобы дешифровать текст?

    Вот код:
    Код (PHP):
    1. <?php
    2. $Pass = "140b41b22a29beb4061bda66b6747e14";
    3. $Clear = "4ca00ff4c898d61e1edbf1800618fb2828a226d160dad07883d04e008a7897ee\2e4b7465d5290d0c0e6c6822236e1daafb94ffe0c5da05d9476be028ad7c1d81";
    4. $newClear = fnDecrypt($Clear, $Pass);
    5. echo "Decrypred: ".$newClear."</br>";
    6. function fnDecrypt($sValue, $sSecretKey)
    7. {
    8.     return rtrim( mcrypt_decrypt( MCRYPT_RIJNDAEL_256, $sSecretKey, base64_decode($sValue), MCRYPT_MODE_CBC, mcrypt_create_iv( mcrypt_get_iv_size( MCRYPT_RIJNDAEL_256, MCRYPT_MODE_CBC ), MCRYPT_RAND )), "\0");
    9. }
    10.  
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    А что об этом в документации пишут?