Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php JWT与证书认证_Php_Ssl_Certificate_Rsa_Jwt - Fatal编程技术网

Php JWT与证书认证

Php JWT与证书认证,php,ssl,certificate,rsa,jwt,Php,Ssl,Certificate,Rsa,Jwt,客户希望我在客户服务器上的PHP网站上使用oauth2和JWT连接到salesforce Web服务 客户端向我发送了一个certificate.txt(“----BEGIN certificate----”,密钥大小2048),但当我尝试生成JWT并使用证书和带有RSA algo的SHA256对其进行签名时(此algo对于Web服务是必需的),openssl返回一个错误: “无法将提供的密钥参数强制转换为私钥” 以下是我使用的代码: $binary_signature = "";

客户希望我在客户服务器上的PHP网站上使用oauth2和JWT连接到salesforce Web服务

客户端向我发送了一个certificate.txt(“----BEGIN certificate----”,密钥大小2048),但当我尝试生成JWT并使用证书和带有RSA algo的SHA256对其进行签名时(此algo对于Web服务是必需的),openssl返回一个错误:

“无法将提供的密钥参数强制转换为私钥”

以下是我使用的代码:

    $binary_signature = "";
    $algo = "SHA256";
    openssl_sign($encodedString, $binary_signature, $certificateContent, $algo);
    print(base64_encode($binary_signature) ."\n");

我不熟悉证书,通过阅读web没有找到答案,证书是否有误?

您需要的是私钥,而不是证书。JWT甚至不使用证书,只使用公钥和私钥。你需要的是私钥,而不是证书。JWT甚至不使用证书,只使用公钥和私钥。它让生活变得容易多了。