Skip to content

Instantly share code, notes, and snippets.

@camshaft
Created May 17, 2013 20:33
Show Gist options
  • Save camshaft/5601802 to your computer and use it in GitHub Desktop.
Save camshaft/5601802 to your computer and use it in GitHub Desktop.
Simple-secret command line tool
#!/usr/bin/env node
/**
* Module dependencies.
*/
var program = require('commander')
, secrets = require('simple-secrets');
program
.version(require("../package.json").version)
.option('-k, --key <key>', 'Master key');
program
.command("encrypt <obj>")
.description("Encrypt a secret")
.action(function(obj) {
var key = new Buffer(program.key, 'hex')
, sender = secrets(key)
, obj = JSON.parse(obj);
console.log(sender.pack(obj));
});
program
.command("decrypt <hash>")
.description("Decrypt a secret")
.action(function(hash) {
var key = new Buffer(program.key, 'hex')
, sender = secrets(key);
console.log(sender.unpack(hash));
});
program.parse(process.argv);
if (!program.args.length) program.help();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment