Phar::setSignatureAlgorithm
(PHP 5 >= 5.3.0, PHP 7, PECL phar >= 1.1.0)
Phar::setSignatureAlgorithm — Установить алгоритм подписания phar-архива и применение его
Описание
$sigtype
, string $privatekey
= ?
) : voidЗамечание:
Для корректной работы с объектами Phar этому методу необходима установка значения php.ini
phar.readonly
в0
. В противном случае, будет выброшено исключение PharException.
Устанавливает алгоритм подписания phar-архива и применяет его.
Доступны следующие алгоритмы подписания: Phar::MD5
,
Phar::SHA1
, Phar::SHA256
,
Phar::SHA512
и Phar::OPENSSL
.
Обратите внимание, что для всех исполняемых phar-архивов подпись создается
автоматически, с использованием по умолчанию SHA1
.
Архивы с данными на основе tar или zip
(созданные с помощью класса PharData) должны иметь
явно созданную с помощью Phar::setSignatureAlgorithm() подпись.
Список параметров
-
sigtype
-
Одна из констант:
Phar::MD5
,Phar::SHA1
,Phar::SHA256
,Phar::SHA512
илиPhar::OPENSSL
-
privatekey
-
Секретный ключ OpenSSL, извлеченный из сертификата, либо файл с ключем OpenSSL:
<?php
$private = openssl_get_privatekey(file_get_contents('private.pem'));
$pkey = '';
openssl_pkey_export($private, $pkey);
$p->setSignatureAlgorithm(Phar::OPENSSL, $pkey);
?>
Возвращаемые значения
Эта функция не возвращает значения после выполнения.
Ошибки
Выбрасывает исключение UnexpectedValueException при любых ошибках, кроме ошибок записи на диск. При ошибках записи на диск выбрасывает исключение PharException.
Смотрите также
- Phar::getSupportedSignatures() - Получить массив поддерживаемых алгоритмов подписи архива
- Phar::getSignature() - Получить MD5/SHA1/SHA256/SHA512/OpenSSL подпись Phar-архива