Lightweight, Zero-Dependency CSR (Certificate Signing Request) generator and parser for Node.js and Browsers
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
AJ ONeal 55199a8c26 v0.8.1: fix deps 5 years ago
tests fix test 5 years ago
.gitignore Initial commit 5 years ago
LICENSE Initial commit 5 years ago
README.md v0.8.0: generate CSR with native JavaScript 5 years ago
csr.js v0.8.0: generate CSR with native JavaScript 5 years ago
package-lock.json v0.8.1: fix deps 5 years ago
package.json v0.8.1: fix deps 5 years ago

README.md

@root/csr

Lightweight, Zero-Dependency CSR (Certificate Signing Request) generator and parser for Node.js and Browsers

Usage

var CSR = require('@root/csr');
var PEM = require('@root/pem/packer');

CSR.csr({
	jwk: jwk,
	domains: ['example.com', '*.example.com', 'foo.bar.example.com'],
	encoding: 'pem'
}).then(function(der) {
	var csr = PEM.packBlock({ type: 'CERTIFICATE REQUEST', bytes: der });
	console.log(csr);
});
-----BEGIN CERTIFICATE REQUEST-----
MIIBHjCBxQIBADAWMRQwEgYDVQQDDAtleGFtcGxlLmNvbTBZMBMGByqGSM49AgEG
CCqGSM49AwEHA0IABFL897BlwE6Tmco/r7LpwVL2BdDx12zZr+BnA/0/PjkI0lsu
013u1+X5fe6vKnOIjcb5obaFnSQixuMGu3qcVnmgTTBLBgkqhkiG9w0BCQ4xPjA8
MDoGA1UdEQQzMDGCC2V4YW1wbGUuY29tgg0qLmV4YW1wbGUuY29tghNmb28uYmFy
LmV4YW1wbGUuY29tMAoGCCqGSM49BAMCA0gAMEUCIADRCWsMYBjm70Hqi08QrOcR
Gcz8uJTe7vZwqOGtykWiAiEA1FTbMskZR9w2ugFWXkWfBdb1W6cD2v6nK+J0wj2r
Q48=
-----END CERTIFICATE REQUEST-----

Advanced Usage

Create an unsigned request

var CSR = require('@root/csr');

// Note: this requires the public key to embed it in the request
var hex = CSR.request({
	jwk: jwk,
	domains: ['example.com', '*.example.com', 'foo.bar.example.com'],
  encoding: 'hex'
})