为什么phpseclib没有正确签署此证书?

时间:2013-04-14 17:17:04

标签: php x509 phpseclib

我尝试用phpseclib签名密钥,当我用openssl解码结果时,我得到以下内容:

140513785948000:error:0D07209B:asn1 encoding routines:ASN1_get_object:too long:asn1_lib.c:142:
140513785948000:error:0D068066:asn1 encoding routines:ASN1_CHECK_TLEN:bad object header:tasn_dec.c:1306:
140513785948000:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:381:Type=X509
140513785948000:error:0906700D:PEM routines:PEM_ASN1_read_bio:ASN1 lib:pem_oth.c:83:

为什么要这样做?

(这个错误花了我一段时间才弄明白,所以我想通过在这里发布来帮助下一个解决这个问题的人)

1 个答案:

答案 0 :(得分:2)

问题是我正在加载密钥但忘记初始化它。

$publicKey = new Crypt_RSA();
$publicKey->loadKey($key);
$publicKey->setPublicKey(); //this line was missing