用openssl多次签名数据的正确方法是什么?

时间:2019-04-03 08:19:23

标签: php openssl sign

我有一个系统,其中多个组件必须使用其私钥对字符串进行签名。我是否需要为每个组件生成一个签名,如下所示:

$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

在所有组件中传递所有传入的签名和将新的签名传递到下一个组件相当麻烦。有没有更方便的方法可以多次对数据进行签名,从而将检查每个组件中的签名的开销保持在最低水平

0 个答案:

没有答案