Phar::setSignatureAlgorithm
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 1.1.0)
Phar::setSignatureAlgorithm — phar에 대한 서명 알고리즘을 설정하고 적용
설명
public Phar::setSignatureAlgorithm(int $algo
, ?string $privateKey
= null
): 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()을 통해 명시적으로 설정해야 합니다.
매개변수
algo
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); ?>
공개 키 파일의 이름 지정 및 배치에 대한 지침은 phar 소개를 참조하십시오.
반환 값
값이 반환되지 않습니다.
오류/예외
많은 오류에 대해 UnexpectedValueException을 발생시키고 디스크에 변경 사항을 플러시하는 데 문제가 발생하면 PharException을 발생시킵니다.
변경 로그
버전 | 설명 |
---|---|
8.0.0 | privateKey 는 이제 null을 허용합니다. |
기타
- Phar::getSupportedSignatures() - 지원되는 서명 유형의 반환 배열
- Phar::getSignature() - Phar 아카이브의 MD5/SHA1/SHA256/SHA512/OpenSSL 서명 반환