Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

GPG Encryption/Decryption in Node.js

travis npm downloads

This module is a wrapper around gpg for use within Node. Node-GPG takes care of spawning gpg, passing it the correct arguments, and piping input to stdin. It can also pipe input in from files and output out to files.

Use Node-GPG if you are considering calling gpg directly from your application.

Requirements

In order to use Node-GPG, you'll need to have the gpg binary in your $PATH.

Installation

npm install gpg

Usage

Node-GPG supports both direct calls to GPG with string arguments, and streaming calls for piping input and output from/to files.

See the source for more details.

If a function you need is not implemented, you can call gpg directly with arguments of your choice by calling gpg.call(stdinStr, argsArray, cb), or gpg.callStreaming(inputFileName, outputFileName, argsArray, cb).

Notes

Existing implementations of PGP in Javascript are blocking and unfeasibly slow for server use. In casual testing, encrypting a simple 400-character email to an El-Gamal key took upwards of 11 seconds using openpgpjs and 14 seconds with kbpgp, but takes less than 0.1 seconds with gpg directly.

Contributors

The following are the major contributors of node-gpg (in no specific order).

About

GPG encryption and decryption in node.js by way of the gpg command-line tool

Resources

License

You can’t perform that action at this time.