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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





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

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


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