Closed robcordes closed 7 months ago
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); }
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