关于使用公钥进行签名验证的代码

时间:2021-12-24 17:54:25
2. 保存好自己的私钥,把公钥可以公开给别人。如果需要对某数据进行签名,证明那数据是从你这里发出的,就需要用私钥:


$res = openssl_pkey_get_private($pri);
if (openssl_sign('hello', $out, $res))
var_dump(base64_encode($out));


3. 别人收到你的数据 'hello' 和签名字串,想验证这是从你发来的数据的话,用你公开的公钥验证:


$sig = base64_decode($sig);
$res = openssl_pkey_get_public($pubkey);
if (openssl_verify('hello', $sig, $res) === 1)
; // 通过验证


上例中刚开始的 $sig 为之前你base64编码过的签名, $pubkey 为你的公钥