boolean openssl_pkcs7_decrypt(string encrypted, string clear, resource certificate, resource key)
Функция openssl_pkcs7_decrypt предназначена для расшифровки сообщения S/MIME. С помощью аргументов encrypted и clear задаются пути к файлам.
boolean openssl_pkcs7_encrypt(string clear, string encrypted, resource certificate, array headers, long flags)
Функция openssl_pkcs7_encrypt предназначена для шифрования сообщения, представленного в формате S/MIME. Аргумент clear задает путь к расшифрованному текстовому сообщению. Аргументом encrypted является путь, куда PHP записывает зашифрованное сообщение. Аргумент certificate задает один сертификат или массив сертификатов, если имеется несколько адресатов. Аргументом headers является массив заголовков, добавляемых к зашифрованным данным. Массив может индексироваться целыми числами, и в таком случае каждый элемент является полным заголовком или проиндексирован по имени заголовка. Необязательный аргумент flags меняет аспекты шифрования. Константы, приведенные в табл. 19.20, можно объединять при помощи оператора "логическое ИЛИ".
boolean openssl_pkcs7_sign(string clear, string signed, resource certificate, resource key, array headers, integer flags, string extra_certificates)
Функция openssl_pkcs7_sign предназначена для подписания сообщения, представленного в формате S/MIME. PHP считывает сообщение из файла, заданного аргументом clear, и записывает подписанное сообщение в файл, указанный аргументом signed. Аргументом headers является массив заголовков, добавляемых к зашифрованным данным. Массив может индексироваться целыми числами, и в таком случае каждый элемент является полным заголовком или проиндексирован по имени заголовка.
Необязательный аргумент flags меняет аспекты шифрования. Константы, приведенные в табл. 19.20, можно объединять при помощи операторов "логическое ИЛИ". По умолчанию он имеет значение PKCS7_DETACHED.
Необязательный аргумент extra_certificates задает путь к коллекции дополнительно включаемых сертификатов.
boolean openssl_pkcs7_verify(string file, long flags, string certificates, array ca, string extra_certificates)
Функция openssl_pkcs7_verify предназначена для проверки сообщения, представленного в формате S/MIME, в заданном файле. В аргументе flags могут быть заданы константы, приведенные в табл. 19.20.
Необязательный аргумент certificates задает путь, по которому PHP сохраняет сертификаты подписавшихся. Необязательный аргумент ca должен быть массивом путей к файлам или каталогам, содержащим сертификаты бюро сертификации. Необязательный аргумент extra_certificates может задавать путь к коллекции ненадежных сертификатов.
boolean openssl_pkey_export(resource key, string output, string passphrase, array config)
Функция openssl_pkey_export записывает PEM-версию заданного ключа в аргумент output. Необязательный аргумент config может быть массивом, управляющим настройкой ключей. Перечень параметров настройки см. в табл. 19.19.
boolean openssl_pkey_export_to_file(resource key, string file, string passphrase, array config_args)
Функция openssl_pkey_export_to_file записывает PEM-версию заданного ключа в заданный файл. Необязательный аргумент config может быть массивом, управляющим настройкой ключей. Перечень параметров настройки см. в табл. 19.19.
openssl_pkey_free(resource key)
Функция openssl_pkey_free освобождает память, занятую ресурсом key.
resource openssl_pkey_get_private(string key, string passphrase)
Функция openssl_pkey_get_private создает ресурс key из строки или файла. Аргумент passphrase является необязательным.
resource openssl_pkey_get_public(resource certificate)
Функция openssl_pkey_get_public создает ресурс key по сертификату. Имеется возможность задать сертификат из ресурса, возвращенного функцией openssl_x5 0 9_read, или из PEM-файла.
resource openssl_pkey_new(array config)
Функция openssl_pkey_new возвращает ресурс key. Необязательный аргумент config может быть массивом, управляющим настройкой ключей. Перечень параметров настройки см. в табл. 19.19.
boolean openssl_private_decrypt(string data, string decrypted, resource key, integer padding)
Функция openssl_private_decrypt (листинг 19.14) позволяет зашифровать сообщение с помощью секретного ключа. Необязательный аргумент padding по умолчанию имеет значение OPENSSL_PKCS1_PADDING. Кроме того, можно задать константу OPENSSL_SSLV2 3_PADDING, OPENSSL_PKCS1_OAEP_PADDING или
OPENSSL_NO_PADDING.
| Листинг 19.14. Функции openssl_private_decrypt и openssl_public_encrypt
<?php /*
** Промоделировать зашифрованное сообщение */
//кто-то зашифровал сообщение с помощью секретного ключа $message = "This message is for you only."; openssl_public_encrypt($message, $encrypted,
"file://example.crt"); //получатель для расшифровки использует секретный ключ openssl_private_decrypt($encrypted, $clear,
array("file://example.pem", 'corephp')); print("Расшифрованное сообщение: $clear<br>");
?>
ТОП-10 популярных
Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...
БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Компьютер для гурманов.«Эксимер ДМ»
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...
В дополнение к календарным типам, предназначенным для хранения даты и времени отдельно, MySQL также поддерживает гибридные типы данных DATETIME и...
Вообще, к изменению настроек сервера прибегают очень редко. В MySQL программа заранее настроена так, чтобы соответствовать самым распространенным и основным...
PHP. Разное:Apache,IMAP,MnoGoSearch,OpenSSL. Часть Одиннадцатая.
28-04-2015
<< Предыдущая статья | Следующая статья >> |
PHP. Разное:Apache,IMAP,MnoGoSearch,OpenSSL. Часть Десятая. | PHP. Разное:Apache,IMAP,MnoGoSearch,OpenSSL. Часть Двеннадцатая. |