PHP: Phar::setSignatureAlgorithm - Manual
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 1.1.0)
Phar::setSignatureAlgorithm โ Set the signature algorithm for a phar and apply it
Description
public function Phar::setSignatureAlgorithm(int $algo, ?string $privateKey = null): void
Note: This method requires the php.ini setting
phar.readonlyto be set to0in order to work for Phar objects. Otherwise, a PharException will be thrown.
set the signature algorithm for a phar and apply it. The
signature algorithm must be one of Phar::MD5,
Phar::SHA1, Phar::SHA256,
Phar::SHA512, or Phar::OPENSSL.
Note that all executable phar archives have a signature created
automatically, SHA1 by default. data tar- or zip-based archives
(archives created with the PharData class) must have
their signature created and set explicitly via
Phar::setSignatureAlgorithm().
Parameters
algo-
One of
Phar::MD5,Phar::SHA1,Phar::SHA256,Phar::SHA512, orPhar::OPENSSL privateKey-
The contents of an OpenSSL private key, as extracted from a certificate or OpenSSL key file:
See phar introduction for instructions on naming and placement of the public key file.<?php $private = openssl_get_privatekey(file_get_contents('private.pem')); $pkey = ''; openssl_pkey_export($private, $pkey); $p->setSignatureAlgorithm(Phar::OPENSSL, $pkey); ?>
Return Values
No value is returned.
Changelog
| Version | Description |
|---|---|
| 8.0.0 |
privateKey is now nullable.
|
See Also
- Phar::getSupportedSignatures() - Return array of supported signature types
- Phar::getSignature() - Return MD5/SHA1/SHA256/SHA512/OpenSSL signature of a Phar archive