Как правильно подписывать данные несколько раз с помощью openssl? - PullRequest
0 голосов
/ 03 апреля 2019

У меня есть система, в которой несколько компонентов должны подписать строку своими закрытыми ключами.Нужно ли создавать подпись для каждого компонента, как это:

$data = 'my data';
openssl_sign($data, $signature_component1, $private_key_component1, OPENSSL_ALGO_SHA256);
openssl_sign($data, $signature_component2, $private_key_component2, OPENSSL_ALGO_SHA256);

$r_component1 = openssl_verify($data, $signature_component1, $public_key_component1, "sha256WithRSAEncryption");
$r_component2 = openssl_verify($data, $signature_component2, $public_key_component2, "sha256WithRSAEncryption");

if($r_component1 && $r_component2){
    // Verification successful
}
// Verification failed

Это довольно хлопотно для всех компонентов, чтобы передать все входящие подписи и новую подпись для следующего компонента.Есть ли более удобный способ, с помощью которого я могу многократно подписывать свои данные и сохранять накладные расходы на проверку подписей в каждом компоненте как можно ниже

...