An open API service indexing awesome lists of open source software.

https://github.com/kessler/connect-crypto

some crypto related middlewares for connect
https://github.com/kessler/connect-crypto

Last synced: about 2 months ago
JSON representation

some crypto related middlewares for connect

Awesome Lists containing this project

README

        

connect crypto utils
====================

### Install ###

```
npm install connect-crypto
```

### query decryptor ###

decrypt predefined url parameters and reassigns the decrypted value to request.query

```
var queryDecryptor = require('connect-crypto').queryDecryptor;

var mypassword = '123123Foo';

// the server
var server = connect()
.use(connect.query())
.use(queryDecryptor('p', mypassword)) // decrypt any url that has ?p=encryptedData (will turn to ?p=decryptedData)
.listen(3000);

// the server
var server = connect()
.use(connect.query())
.use(queryDecryptor(['p1', 'p2'], mypassword)) // several querystring params can be decrypted
.listen(3000);

```

further customization can be achieved by supplying an options object:
```
var options = {
algorithm: which algo is used for encyption/decryption, defaults to 'aes192'

debug: debug mode will write errors from decipher.final() to console and alert if
query middleware isn't installed

decryptedDataEncoding: encoding used to output decrypted data - must be the same encoding used in
the encyption process - defaults to 'ascii'

encryptedDataEncoding: encoding used for encrypted data - defaults to 'base64'
};

connect()
.use(connect.query())
.use(queryDecryptor('p', mypassword, options));
```
when using the options object, one may specify only a subset of the above options