是否有可能解码CSR以在javascript中公开CN,OU,O等典型字段?我找不到npm-package。
我知道 openssl 程序,它可以提取此信息。但在我的情况下,CSR通过javascript转发到CA.如果OU字段包含特定名称,除非CA被撤销,否则它应该只向CA发送。
csr.getAttribute({name: 'commonName'}); //returns ""
在我的情况下不起作用。结果是一个空字符串。
我想我提供的CSR(使用这种通常的格式----- BEGIN CERTIFICATE REQUEST -----...)作为字符串,我传递给这个方法并不是这个函数完全可以预料到的:< / p>
var csr = forge.pki.certificationRequestFromPem(csr);
但我仍然通过遍历对象数组来访问 commonName 主题:
var csrDecrypted = forge.pki.certificationRequestFromPem(csr);
var subjects = csrDecrypted.subject.attributes;
var commonName = subjects.find(function(subject) {
return subject["name"] === "commonName";
}).value; //returns "MyCommonName"
现在,我需要确保提供的CSR有效。如果我通过添加一些无意义来破坏CSR字符串,则以下方法崩溃:
var csr = forge.pki.certificationRequestFromPem(csr);
我不能打电话:
csr.verify()
如果CSR损坏(例如它不遵循PKS#10格式),如何在不崩溃的情况下检测?