当前位置: 首页 > 知识库问答 >
问题:

OpenSSL:PEM例程:PEM_read_bio:无起始行:pem_lib. c:703:预期:可信证书[关闭]

邴景山
2023-03-14

这个问题似乎不是关于特定的编程问题、软件算法或主要由程序员使用的软件工具。如果您认为这个问题在另一个Stack Exchange网站上是主题,您可以发表评论来解释这个问题在哪里可以得到回答。

我需要一个哈希名称的文件才能在隧道的CApath目录中发布。我在这个目录中有一些证书,它们运行良好。另外,我有一个服务器服务器和服务器密钥:

cert = c:\Program Files (x86)\stunnel\server_cert.pem 
key = c:\Program> Files (x86)\stunnel\private\server_key.pem

当我尝试计算新证书的哈希值时,我收到一个错误:

/etc/pki/tls/misc/c_hash cert.pem

unable to load certificate 140603809879880:error:0906D06C:PEM
routines:PEM_read_bio:no start line:pem_lib.c:703:Expecting: TRUSTED CERTIFICATE

据我所知,我必须签署我的证书,但我不明白我该怎么做。请提供解决方案。

附言:

消息

unable to load certificate 140603809879880:error:0906D06C:PEM
routines:PEM_read_bio:no start line:pem_lib.c:703:Expecting: TRUSTED CERTIFICATE:

当我为cert.pem创建c_hash时发布。这不是server_cert。pem,这是Root_CA,内容类似

-----BEGIN CERTIFICATE-----  
...6UXBNSDVg5rSx60=.. 

-----END CERTIFICATE-----

当我写作时

openssl x509 -noout -text -in cert.pem

在控制台面板中,我看到以下信息:

    Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 1 (0x1)
    Signature Algorithm: sha1WithRSAEncryption
        Issuer: C=BE, ST=BB, L=BB, O=BANKSYS NV, OU=SCY, CN=TEST Root CA
        Validity
            Not Before: May 31 08:06:40 2005 GMT
            Not After : May 31 08:06:40 2020 GMT
        Subject: C=BE, ST=BB, L=BB, O=BB NV, OU=SCY, CN=TEST Root CA
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (2048 bit)
                Modulus:
                    00:82:c8:58:1e:e5:7a:b2:63:a6:15:bd:f9:bb:1f:
............
                Exponent: 65537 (0x10001)
        X509v3 extensions:
            X509v3 Basic Constraints: critical
                CA:TRUE
            X509v3 Key Usage: critical
                Certificate Sign, CRL Sign
            X509v3 Subject Key Identifier:
                76:70:AB:92:9B:B1:26:CE:9E:93:D8:77:4F:78:0D:B8:D4:6C:DA:C6
    Signature Algorithm: sha1WithRSAEncryption
         2c:7e:bd:3f:da:48:a4:df:8d:7c:96:58:f7:87:bd:e7:16:24:
...............

共有3个答案

漆雕奇
2023-03-14

我的错误只是使用了CSR文件而不是CERT文件

卫甫
2023-03-14

另一个可能的原因是试图使用;x509非X.509上的模块

服务器证书是X.509格式,但私钥是RSA。

所以:

openssl rsa -noout -text -in privkey.pem
openssl x509 -noout -text -in servercert.pem
闻人越
2023-03-14

> < li>

由于您使用的是Windows,请确保您在Windows中的证书“兼容”,最重要的是每行末尾没有^M

如果你打开它,它会是这样的:

-----BEGIN CERTIFICATE-----^M
MIIDITCCAoqgAwIBAgIQL9+89q6RUm0PmqPfQDQ+mjANBgkqhkiG9w0BAQUFADBM^M

要解决这个问题,请使用< code>Write或记事本打开它,并将其转换为Windows“样式”

尝试在server_cert.pem中运行opensl x509 -文本 -通知DER-并查看输出是什么,私钥/私钥不太可能不可信,仅当您从密钥库导出密钥时才需要信任,对吗?

 类似资料: