Ready to take your JavaScript development to the next level? Meet npm Enterprise - the ultimate in enterprise JavaScript. Learn more »

rsautl

0.2.0 • Public • Published

RSA utility for Node

A thin wrapper for OpenSSL's rsautl(1) for those precious few cases where native bindings won't work.

Installation

$ npm install rsautl

Usage

var rsautl = require('rsautl');
 
var privateKey = '...'; 
var publicKey = '...';
 
rsautl.encrypt('Encrypt me please!', publicKey, function (err, encrypted) {
    // encrypted contains a base64 encoded encrypted string
    if (err) return console.log(err);
    rsautl.decrypt(encrypted, privateKey, function (err, decrypted) {
        if (err) return console.log(err);
        console.log(decrypted); // Encrypt me please!    
    });
});
 
rsautl.sign('Sign me please!', privateKey, function (err, signed) {
    // signed contains a base64 encoded signed string
    if (err) return console.log(err);
    rsautl.verify(signed, publicKey, function (err, verified) {
        if (err) return console.log(err);
        console.log(verified); // Sign me please!    
    });
});
 

Notes

This code writes private keys to temporary files in order for openssl(1) to read them. Make sure your tempfs is based in memory. If you can, use native binding implementations.

License

This is free software released under the Simplified BSD License. See the LICENSE file for further information.

install

npm i rsautl

Downloadsweekly downloads

11

version

0.2.0

license

none

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability