П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 4098 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 6759 раз(а).

Учебник HTML.
Просмотров 3720 раз(а).

Руководство по PHP5.
Просмотров 5993 раз(а).

Хостинг через призму DNS.
Просмотров 4815 раз(а).

Подборка текстов стандартных документов.
Просмотров 56246 раз(а).

Учебник PHP - Самоучитель
Просмотров 3706 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 8346 раз(а).

Внешние атаки...
Просмотров 4566 раз(а).

Учебник PHP.
Просмотров 3175 раз(а).

SSI в примерах.
Просмотров 176 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь





Учебник РНР
НазадВперёд

openssl_seal

(PHP 4 >= 4.0.4)

openssl_seal - пломбирует (шифрует) данные.

Описание

int openssl_seal (string data, string sealed_data, array env_keys, array pub_key_ids)

Предупреждение!

Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.

Возвращает длину пломбированных данных при успехе, FALSE при ошибке. При успехе возвращаются пломбированные данные в параметре sealed_data, и envelope-ключи - в env_keys.

openssl_seal() пломбирует (шифрует) data с помощью RC4 случайно генерируемым секретным ключом. Этот ключ шифруется с каждым public ключом, ассоциированным с идентификатором в pub_key_ids, и каждый шифрованный ключ возвращается в env_keys. Это значит, что можно пломбировать данные для нескольких принимающих (в предположении, что пломбировщик имеет их public ключи). Каждый принимающий обязан получить пломбированные данные и envelope ключ, который был зашифрован с public ключом принимающего.

Пример 1. openssl_seal()
// принимаем, что $data содержит пломбируемые данные

// извлекаем public ключи для наших получателей и читаем их
$fp = fopen("/src/openssl-0.9.6/demos/maurice/cert.pem", "r");
$cert = fread($fp, 8192);
fclose($fp);
$pk1 = openssl_get_publickey($cert);
// повторяем для второго получателя
$fp = fopen("/src/openssl-0.9.6/demos/sign/cert.pem", "r");
$cert = fread($fp, 8192);
fclose($fp);
$pk2 = openssl_get_publickey($cert);

// пломбируем сообщение, только владельцы $pk1 и $pk2 могут дешифровать $sealed ключами
// $ekeys[0] и $ekeys[1], соответственно.
openssl_seal($data, $sealed, $ekeys, array($pk1,$pk2));

// освобождает ключи из памяти
openssl_free_key($pk1);
openssl_free_key($pk2);

См. также openssl_open().


Назад Оглавление Вперёд
openssl_public_encrypt Вверхopenssl_sign


Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту: