php openssl错误创建证书不自行签名

发布于 2025-02-06 18:44:59 字数 1305 浏览 0 评论 0原文

我想创建一个不自行签名的证书。我尝试了此代码

<?php
// Supposons que ce script est configuré pour recevoir des CSR qui ont
// été collés dans un champ textarea depuis une autre page
 
$csrdata ="client.crt";

// Nous allons signer la requête avec notre propre certificat, en tant
// qu'"autorité de certification". Vous pouvez utiliser n'importe quel
// certificat pour en signer un autre, mais le processus est inutile à moins
// que le certificat de signature n'ait la confiance des utilisateurs
// qui utiliseront le nouveau certificat signé.

// Nous avons besoin de notre certificat et de la clé privée
$cacert = "CA.crt";
$privkey = array("CA.key", "la_cle_secrete_de_votre_certificat");

$usercert = openssl_csr_sign($csrdata, $cacert, $privkey, 365);

// Affichons maintenant le certificat généré, de façon à ce que l'utilisateur
// puisse le copier/coller dans sa configuration locale (comme un
// fichier qui contient les certificats de son serveur SSL)
openssl_x509_export($usercert, $certout);
echo "<br>IL CERTIFICATO FINALE è :<br> $certout";

// Affiche toutes les erreurs survenues
while (($e = openssl_error_string()) !== false) {
    echo $e . "\n";
}
?>

,但是我收到错误错误:

0906D06C:PEM例程:PEM_READ_BIO:无启动行。

有人知道解决方案吗?

i want to create a certificate NOT self signed, similar CA. I 've tried this code

<?php
// Supposons que ce script est configuré pour recevoir des CSR qui ont
// été collés dans un champ textarea depuis une autre page
 
$csrdata ="client.crt";

// Nous allons signer la requête avec notre propre certificat, en tant
// qu'"autorité de certification". Vous pouvez utiliser n'importe quel
// certificat pour en signer un autre, mais le processus est inutile à moins
// que le certificat de signature n'ait la confiance des utilisateurs
// qui utiliseront le nouveau certificat signé.

// Nous avons besoin de notre certificat et de la clé privée
$cacert = "CA.crt";
$privkey = array("CA.key", "la_cle_secrete_de_votre_certificat");

$usercert = openssl_csr_sign($csrdata, $cacert, $privkey, 365);

// Affichons maintenant le certificat généré, de façon à ce que l'utilisateur
// puisse le copier/coller dans sa configuration locale (comme un
// fichier qui contient les certificats de son serveur SSL)
openssl_x509_export($usercert, $certout);
echo "<br>IL CERTIFICATO FINALE è :<br> $certout";

// Affiche toutes les erreurs survenues
while (($e = openssl_error_string()) !== false) {
    echo $e . "\n";
}
?>

But i receive the error error:

0906D06C:PEM routines:PEM_read_bio:no start line.

Someone know the solution?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浅唱ヾ落雨殇 2025-02-13 18:44:59

我解决了。这是创建类似证书的问题的解决方案

<?php

$csrdata ="file://client.csr";
$cacert = "file://CA.crt";
$privkey = array("file://CA.key", "la_cle_secrete_de_votre_certificat");

$usercert = openssl_csr_sign($csrdata, $cacert, $privkey, 365);

openssl_x509_export($usercert, $certout);
echo "<br>FINAL RESULT :<br> $certout";

// Affiche toutes les erreurs survenues
while (($e = openssl_error_string()) !== false) {
    echo $e . "\n";
}
?>

i've resolved. This is the solution of the problem to create a Certificate similar CA

<?php

$csrdata ="file://client.csr";
$cacert = "file://CA.crt";
$privkey = array("file://CA.key", "la_cle_secrete_de_votre_certificat");

$usercert = openssl_csr_sign($csrdata, $cacert, $privkey, 365);

openssl_x509_export($usercert, $certout);
echo "<br>FINAL RESULT :<br> $certout";

// Affiche toutes les erreurs survenues
while (($e = openssl_error_string()) !== false) {
    echo $e . "\n";
}
?>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文