Дипломные работы, курсовые проекты на заказ, контрольные работы на заказ

 
Начертательная геометрия Практикум по решению задач Геометрическое черчение Инженерная графика ЕСКД Кратные интегралы Математический анализ Матрицы Пределы Производные Векторная алгебра Интегральное исчисление ТФКП Ядерная физика Электростатика Магнетизм Оптика Информационные технологии
Учебник РНР
Назад Вперёд

mdecrypt_generic

(PHP 4 >= 4.0.2)

mdecrypt_generic - эта функция дешифрует данные.

Описание

string mdecrypt_generic (resource td, string data)

Эта функция дешифрует данные. Обратите внимание, что длина возвращаемой строки может оказаться больше, чем длина нешифрованной, из-за заполнения данными.

Пример 1. mdecrypt_generic()
<?php 
/* Данные */ $key = 'this is a very long key, even too long for the cipher'; $plain_text 
= 'very important data'; /* Открывает модуль и создаёт IV */ $td = mcrypt_module_open 
('des', '', 'ecb', ''); $key = substr ($key, 0, mcrypt_enc_get_key_size ($td)); 
$iv_size = mcrypt_enc_get_iv_size ($td); $iv = mcrypt_create_iv ($iv_size, MCRYPT_RAND); 
/* Инициализирует дескриптор шифрования */ if (mcrypt_generic_init ($td, $key, 
$iv) != -1) { /* Шифрует данные */ $c_t = mcrypt_generic ($td, $plain_text); mcrypt_generic_deinit 
($td); /* Реинициализирует буферы для дешифрования */ mcrypt_generic_init ($td, 
$key, $iv); $p_t = mdecrypt_generic ($td, $c_t); /* Зачистка */ mcrypt_generic_deinit 
($td); mcrypt_module_close ($td); } if (strncmp ($p_t, $plain_text, strlen($plain_text)) 
== 0) { echo "ok\n"; } else { echo "error\n"; } ?>

В этом примере показано, как проверить, являются ли данные перед шифровкой теми же, что и после дешифровки. очень важно реинициализировать буфер шифрования функцией mcrypt_generic_init(), прежде чем вы попытаетесь дешифровать данные.

Дескриптор дешифровки должен всегда инициализироваться функцией mcrypt_generic_init() с ключом и IV до вызова этой функции. После выполнения шифрования вы должны освободить буферы шифрования вызовом mcrypt_generic_deinit(). См. пример в mcrypt_module_open().

См. также mcrypt_generic(), mcrypt_generic_init() и mcrypt_generic_deinit().


НазадОглавление Вперёд
mcrypt_ofb ВверхФункции Mhash