The CSR API sample is not working. Throws TypeError: rs.KJUR.asn1.x509.CertificationRequest is not a constructor at Object.<anonymous>
robcordes opened this issue · 2 comments
The code I used to generate the CSR: (version 11 of jsrsasign used)
var rs = require("jsrsasign");
// Generate CSR
// signed by private key
var pub = kp.pubKeyObj;
var prvpem = rs.KEYUTIL.getPEM(prv, "PKCS8PRV");
var pubpem = rs.KEYUTIL.getPEM(pub, "PKCS8PUB");
csr = new rs.KJUR.asn1.x509.CertificationRequest();
csr.setByParam({
subject: {str:"/C=US/O=Test"},
sbjpubkey: prvpem, //"-----BEGIN PUBLIC KEY...",SA a
extreq: [{extname:"subjectAltName",array:[{dns:"example.com"}]}],
sigalg: "SHA256withRSA",
sbjprvkey: pubpem // "-----BEGIN PRIVATE KEY..."
});
pem = csr.getPEM(); // signed with sbjprvkey automatically
the version of JSRSASIGHN used is version 11.
I somehow got the wrong sample code. The below code works.
var rs = require("jsrsasign");
try {
// Generate CSR
// signed by private key
var kp = rs.KEYUTIL.generateKeypair("RSA", "2048");
var prv = kp.prvKeyObj;
var pub = kp.pubKeyObj;
var prvpem = rs.KEYUTIL.getPEM(prv, "PKCS8PRV");
var pubpem = rs.KEYUTIL.getPEM(pub, "PKCS8PUB");
let csr = new rs.KJUR.asn1.csr.CertificationRequest({
subject: {str:"/C=US/O=Test"},
sbjpubkey: pubpem,// "-----BEGIN PUBLIC KEY...",
extreq: [{extname:"subjectAltName",array:[{dns:"example.com"}]}],
sigalg: "SHA256withRSA",
sbjprvkey: prvpem // "-----BEGIN PRIVATE KEY..."
});
let pem = csr.getPEM(); // signed with sbjprvkey automatically
console.log(pem);
} catch (err) {
console.log(err);
}