收藏
回答

Authorization不合法, SHA256 with RSA 进行签名

    /**
     * 获取sha256签名  php
     * @param string $sign_str 签名串
     *
     * @return string
     */
    public function get_sign_sha256_rsa($sign_str="")
    {
   //  		echo "<pre>";
			// var_dump($sign_str);
			// die;	
			// echo "</pre>";	
        // SHA256 with RSA
        //使用商户私钥对摘要信息进行 RSA 签名(签名类型为 SHA256),得到二进制的签名值
        $private_key = file_get_contents("./cert/apiclient_key.pem"); //证书内容格式不对
   //      echo "<pre>";
			// var_dump($private_key);
			// die;	
			// echo "</pre>";
        $binary_signature = "";
        $priv_key_id = openssl_pkey_get_private($private_key); //获取私钥
        openssl_sign($sign_str, $binary_signature, $priv_key_id, OPENSSL_ALGO_SHA256);
        $sign = base64_encode($binary_signature);
        return $sign;
    }
回答关注问题邀请回答
收藏

1 个回答

登录 后发表内容
问题标签