沃梦达 / 编程问答 / php问题 / 正文

PHP-REACT验证加密签名

PHP-React Verify Cryptographic Signature(PHP-REACT验证加密签名)

本文介绍了PHP-REACT验证加密签名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在Reaction Native中使用此程序包进行生物识别身份验证:https://www.npmjs.com/package/react-native-biometrics

它将一个公钥发送到我们的PHP服务器,然后发送一个加密签名,我们在其中进行了验证。

有没有什么库可以用来根据PHP中的加密签名验证公钥?

推荐答案

我就是这么做的

  1. public key保存到数据库
  2. 每次尝试生物识别时,该库将向PHP发送signaturepayload
  3. 比较signaturepublic key
  4. 成功时验证用户,因为openssl_verify将返回0或1

第3步的代码为

Openssl_verify( $有效负载, Base64_Decode($Signrature_In_Step_3), $PUBLIC_KEY_SAVED_IN_STEP_1, RSA-SHA256&Quot; );

ps:确保步骤1中的public key格式正确,否则openssl_verify将抛出异常:在使用openssl_verify

之前,请参阅以下示例以实现正确的格式
$public_key_saved_in_step_1 = openssl_pkey_get_public("-----BEGIN PUBLIC KEY-----
$publicKeyStringFromDB
-----END PUBLIC KEY-----");

这篇关于PHP-REACT验证加密签名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:PHP-REACT验证加密签名

基础教程推荐