Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
8211d9b6d8 | |||
361b0bf994 |
15
README.md
15
README.md
@ -1,8 +1,9 @@
|
|||||||
[RSA-CSR.js](https://git.coolaj86.com/coolaj86/rsa-csr.js)
|
[RSA-CSR.js](https://git.coolaj86.com/coolaj86/rsa-csr.js)
|
||||||
==========
|
==========
|
||||||
|
|
||||||
Sponsored by [Root](https://therootcompany.com),
|
A [Root](https://therootcompany.com) Project.
|
||||||
built for [ACME.js](https://git.coolaj86.com/coolaj86/acme.js)
|
|
||||||
|
Built for [ACME.js](https://git.coolaj86.com/coolaj86/acme.js)
|
||||||
and [Greenlock.js](https://git.coolaj86.com/coolaj86/greenlock-express.js)
|
and [Greenlock.js](https://git.coolaj86.com/coolaj86/greenlock-express.js)
|
||||||
|
|
||||||
A focused, **zero-dependency** library that can do exactly one thing really, really well:
|
A focused, **zero-dependency** library that can do exactly one thing really, really well:
|
||||||
@ -10,10 +11,6 @@ A focused, **zero-dependency** library that can do exactly one thing really, rea
|
|||||||
|
|
||||||
| < 300 lines of code | 1.7k gzipped | 4.7k minified | 8.5k with comments |
|
| < 300 lines of code | 1.7k gzipped | 4.7k minified | 8.5k with comments |
|
||||||
|
|
||||||
Need JWK-to-PEM? Try [Rasha.js](https://git.coolaj86.com/coolaj86/rasha.js)
|
|
||||||
|
|
||||||
Need to generate an EC CSR? Try [ECSDA-CSR.js](https://git.coolaj86.com/coolaj86/ecdsa-csr.js)
|
|
||||||
|
|
||||||
Features
|
Features
|
||||||
========
|
========
|
||||||
|
|
||||||
@ -32,6 +29,10 @@ Features
|
|||||||
* [x] Vanilla Node.js
|
* [x] Vanilla Node.js
|
||||||
* no school like the old school
|
* no school like the old school
|
||||||
* easy to read and understand
|
* easy to read and understand
|
||||||
|
* [ ] JWK-to-PEM
|
||||||
|
* See [Rasha.js](https://git.coolaj86.com/coolaj86/rasha.js)
|
||||||
|
* [ ] EC CSR
|
||||||
|
* See [ECSDA-CSR.js](https://git.coolaj86.com/coolaj86/ecdsa-csr.js)
|
||||||
|
|
||||||
Usage
|
Usage
|
||||||
-----
|
-----
|
||||||
@ -56,7 +57,7 @@ var key = {
|
|||||||
};
|
};
|
||||||
var domains = [ 'example.com', 'www.example.com' ];
|
var domains = [ 'example.com', 'www.example.com' ];
|
||||||
|
|
||||||
return rsacsr({ key: key, domains: domains }).then(function (csr) {
|
return rsacsr({ jwk: key, domains: domains }).then(function (csr) {
|
||||||
console.log('CSR PEM:');
|
console.log('CSR PEM:');
|
||||||
console.log(csr);
|
console.log(csr);
|
||||||
});
|
});
|
||||||
|
@ -15,7 +15,7 @@ try {
|
|||||||
// ignore
|
// ignore
|
||||||
}
|
}
|
||||||
|
|
||||||
rsacsr({ key: key, domains: domains }).then(function (csr) {
|
rsacsr({ jwk: key, domains: domains }).then(function (csr) {
|
||||||
// Using error so that we can redirect stdout to file
|
// Using error so that we can redirect stdout to file
|
||||||
//console.error("CN=" + domains[0]);
|
//console.error("CN=" + domains[0]);
|
||||||
//console.error("subjectAltName=" + domains.join(','));
|
//console.error("subjectAltName=" + domains.join(','));
|
||||||
|
@ -110,13 +110,13 @@ RSA.sign = function signRsa(keypem, ab) {
|
|||||||
return Promise.resolve().then(function () {
|
return Promise.resolve().then(function () {
|
||||||
// Signer is a stream
|
// Signer is a stream
|
||||||
var sign = crypto.createSign('SHA256');
|
var sign = crypto.createSign('SHA256');
|
||||||
sign.write(new Uint8Array(ab));
|
sign.write(ab);
|
||||||
sign.end();
|
sign.end();
|
||||||
|
|
||||||
// The signature is ASN1 encoded, as it turns out
|
// The signature is ASN1 encoded, as it turns out
|
||||||
var sig = sign.sign(keypem);
|
var sig = sign.sign(keypem);
|
||||||
|
|
||||||
// Convert to a JavaScript ArrayBuffer just because
|
// Convert to a JavaScript ArrayBuffer just because
|
||||||
return new Uint8Array(sig.buffer.slice(sig.byteOffset, sig.byteOffset + sig.byteLength));
|
return sig.buffer.slice(sig.byteOffset, sig.byteOffset + sig.byteLength);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "rsa-csr",
|
"name": "rsa-csr",
|
||||||
"version": "1.0.5",
|
"version": "1.0.6",
|
||||||
"description": "💯 A focused, zero-dependency library to generate a Certificate Signing Request (CSR) and sign it!",
|
"description": "💯 A focused, zero-dependency library to generate a Certificate Signing Request (CSR) and sign it!",
|
||||||
"homepage": "https://git.coolaj86.com/coolaj86/rsa-csr.js",
|
"homepage": "https://git.coolaj86.com/coolaj86/rsa-csr.js",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user