superstarxue630 2023-04-12 10:01 采纳率: 63.6%
浏览 20
已结题

PHP编程实现linux环境制作P12证书

PHP编程实现linux环境制作P12证书
Linux使用OpenSSL制作P12证书的语句已知

//创建密钥
openssl genrsa -out ca-key.pem 1024
//创建证书请求
openssl req -new -out ca-req.csr -key ca-key.pem -subj "/C=CN/ST=shandong/L=jinan/O=jn/OU=scb/CN=demain"
//自签署证书
openssl x509 -req -in ca-req.csr -out ca-cert.pem -signkey ca-key.pem -days 3650 
//将证书转成浏览器支持的P12格式
openssl pkcs12 -export -clcerts -in ca-cert.pem -inkey ca-key.pem -out ca.p12 

Linux环境自带OpenSSL
PHP要怎么通过编程实现以上语句

  • 写回答

1条回答 默认 最新

  • gangdan118 2023-04-12 17:55
    关注

    在PHP中,可以使用shell_exec函数来执行命令行命令,因此你可以将上面的命令作为字符串传递给shell_exec函数来实现制作P12证书。

    以下是示例代码:
    <?php
    // 创建密钥
    $output = shell_exec('openssl genrsa -out ca-key.pem 1024');
    echo $output;

    // 创建证书请求
    $output = shell_exec('openssl req -new -out ca-req.csr -key ca-key.pem -subj "/C=CN/ST=shandong/L=jinan/O=jn/OU=scb/CN=demain"');
    echo $output;

    // 自签署证书
    $output = shell_exec('openssl x509 -req -in ca-req.csr -out ca-cert.pem -signkey ca-key.pem -days 3650');
    echo $output;

    // 将证书转成浏览器支持的P12格式
    $output = shell_exec('openssl pkcs12 -export -clcerts -in ca-cert.pem -inkey ca-key.pem -out ca.p12');
    echo $output;
    ?>
    这个脚本将在当前目录下生成一个ca-key.pem文件,用于创建证书请求和自签署证书。然后,它将生成一个证书请求文件ca-req.csr和自签署的证书文件ca-cert.pem。

    最后,它将使用openssl pkcs12命令将证书和私钥打包到ca.p12文件中,该文件可以用作浏览器支持的P12格式的证书。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月13日
  • 已采纳回答 4月13日
  • 修改了问题 4月12日
  • 修改了问题 4月12日
  • 展开全部

悬赏问题

  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教