From a9cf850cb00f5a9a04c6286ac7de1897587296bc Mon Sep 17 00:00:00 2001 From: Artem Vasilev Date: Tue, 15 Nov 2022 12:09:34 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D1=80=D0=BE=D0=BF=D0=B8=D1=81=D0=B0?= =?UTF-8?q?=D0=BB=20=D0=BD=D0=BE=D0=B2=D1=8B=D0=B5=20=D0=BA=D0=BE=D0=BD?= =?UTF-8?q?=D1=81=D1=82=D0=B0=D0=BD=D1=82=D1=8B=20=D0=B8=20=D0=B4=D0=BE?= =?UTF-8?q?=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20ENCODING=5FTYPE=20=D0=BF=D1=80?= =?UTF-8?q?=D0=B8=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=B5=20=D1=81=20=D1=85?= =?UTF-8?q?=D1=8D=D1=88=D0=B0=D0=BC=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/CryptoPro.php | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/src/CryptoPro.php b/src/CryptoPro.php index 3caa099..9d90cb1 100755 --- a/src/CryptoPro.php +++ b/src/CryptoPro.php @@ -5,12 +5,13 @@ namespace Webmasterskaya\CryptoPro; use Webmasterskaya\CryptoPro\Constants\CADESCOM_ATTRIBUTE; use Webmasterskaya\CryptoPro\Constants\CADESCOM_CADES_TYPE; use Webmasterskaya\CryptoPro\Constants\CADESCOM_CONTENT_ENCODING_TYPE; -use Webmasterskaya\CryptoPro\Constants\CADESCOM_ENCODE; +use Webmasterskaya\CryptoPro\Constants\CADESCOM_ENCODING_TYPE; use Webmasterskaya\CryptoPro\Constants\CADESCOM_HASH_ALGORITHM; use Webmasterskaya\CryptoPro\Constants\CADESCOM_STORE_LOCATION; use Webmasterskaya\CryptoPro\Constants\CAPICOM_CERTIFICATE_FIND_TYPE; use Webmasterskaya\CryptoPro\Constants\CAPICOM_CERTIFICATE_INCLUDE_OPTION; use Webmasterskaya\CryptoPro\Constants\CAPICOM_PROPID; +use Webmasterskaya\CryptoPro\Constants\CAPICOM_STORE_OPEN_MODE; use Webmasterskaya\CryptoPro\Helpers\CertificateHelper; use Webmasterskaya\CryptoPro\Helpers\ErrorMessageHelper; @@ -298,7 +299,7 @@ class CryptoPro $cadesSigner, CADESCOM_CADES_TYPE::PKCS7_TYPE, false, - CADESCOM_ENCODE::BASE64 + CADESCOM_ENCODING_TYPE::BASE64 ); } catch (\Throwable $e) @@ -362,7 +363,6 @@ class CryptoPro $cadesAuthAttrs->Add($cadesAttrs); $cadesSigner->set_Options(CAPICOM_CERTIFICATE_INCLUDE_OPTION::WHOLE_CHAIN); - } catch (\Throwable $e) { @@ -372,8 +372,10 @@ class CryptoPro try { $cadesHashedData->set_Algorithm(CADESCOM_HASH_ALGORITHM::HASH_CP_GOST_3411_2012_256); + $cadesHashedData->set_DataEncoding(CADESCOM_CONTENT_ENCODING_TYPE::BASE64_TO_BINARY); $cadesHashedData->SetHashValue($messageHash); + $cadesSignedData->set_ContentEncoding(CADESCOM_CONTENT_ENCODING_TYPE::BASE64_TO_BINARY); // Для получения объекта отсоединенной (открепленной) подписи, необходимо задать любой контент. // Этот баг описан на форуме. // https://www.cryptopro.ru/forum2/default.aspx?g=posts&m=78553#post78553 @@ -391,7 +393,7 @@ class CryptoPro $cadesHashedData, $cadesSigner, CADESCOM_CADES_TYPE::PKCS7_TYPE, - CADESCOM_ENCODE::BASE64 + CADESCOM_ENCODING_TYPE::BASE64 ); } catch (\Throwable $e) @@ -476,7 +478,7 @@ class CryptoPro $signature = $cadesSignedData->CoSignCades( $cadesSigner, CADESCOM_CADES_TYPE::PKCS7_TYPE, - CADESCOM_ENCODE::BASE64 + CADESCOM_ENCODING_TYPE::BASE64 ); } catch (\Throwable $e) @@ -550,8 +552,10 @@ class CryptoPro try { $cadesHashedData->set_Algorithm(CADESCOM_HASH_ALGORITHM::HASH_CP_GOST_3411_2012_256); + $cadesHashedData->set_DataEncoding(CADESCOM_CONTENT_ENCODING_TYPE::BASE64_TO_BINARY); $cadesHashedData->SetHashValue($messageHash); + $cadesSignedData->set_ContentEncoding(CADESCOM_CONTENT_ENCODING_TYPE::BASE64_TO_BINARY); // Для получения объекта отсоединенной (открепленной) подписи, необходимо задать любой контент. // Этот баг описан на форуме. // https://www.cryptopro.ru/forum2/default.aspx?g=posts&m=78553#post78553 @@ -574,7 +578,7 @@ class CryptoPro $cadesSigner, $cadesHashedData, CADESCOM_CADES_TYPE::PKCS7_TYPE, - CADESCOM_ENCODE::BASE64 + CADESCOM_ENCODING_TYPE::BASE64 ); } catch (\Throwable $e) @@ -609,7 +613,7 @@ class CryptoPro try { $cadesHashedData->set_Algorithm(CADESCOM_HASH_ALGORITHM::HASH_CP_GOST_3411_2012_256); - $cadesHashedData->set_DataEncoding(BASE64_TO_BINARY); + $cadesHashedData->set_DataEncoding(CADESCOM_CONTENT_ENCODING_TYPE::BASE64_TO_BINARY); $cadesHashedData->Hash($messageBase64); } catch (\Throwable $e) @@ -679,7 +683,7 @@ class CryptoPro try { - $cadesStore->Open($storeLocation, $storeName, STORE_OPEN_MAXIMUM_ALLOWED); + $cadesStore->Open($storeLocation, $storeName, CAPICOM_STORE_OPEN_MODE::MAXIMUM_ALLOWED); } catch (\Throwable $e) { @@ -772,7 +776,7 @@ class CryptoPro try { - $cadesStore->Open($storeLocation, $storeName, STORE_OPEN_MAXIMUM_ALLOWED); + $cadesStore->Open($storeLocation, $storeName, CAPICOM_STORE_OPEN_MODE::MAXIMUM_ALLOWED); } catch (\Throwable $e) {