Skip to content

hex7c0/cookie-encryption

Repository files navigation

NPM version Linux Status Windows Status Dependency Status Coveralls

Encrypt/decrypt data to store on cookie, with memoization. This class is built with arc4 cipher, autokey cipher, nodejs ciphers, nodejs hash, nodejs hmac, nodejs pbkdf2 and nodejs diffiehellman,

Installation

Install through NPM

npm install cookie-encryption

or

git clone git://github.com/hex7c0/cookie-encryption.git

API

inside expressjs project

var cookiee = require('cookie-encryption');

var vault = cookiee('ciao');

return supported ciphers

var cookiee = require('cookie-encryption');

cookiee.getCiphers();

Check Cookie options

Methods

write data ('pippo') to selected cookie

vault.write(req, 'pippo');

read data from selected cookie

vault.read(req);

flush data cache

vault.flush();

optional arguments inside of previous methods

 * @param {String} [cookie] - fast cookie
 * @param {String} [encoding] - fast encoding

cookiee(secret [, options])

secret

  • secret- String | Buffer Set password (default "required")

[options]

  • cipher - String Type of cipher, grab list from getCiphers (default "arc4")
  • domain - String Domain of cookie (default "null")
  • cookie - String Name of cookie (default "vault")
  • path - String Path of cookie (default "/")
  • maxAge - Number Age of cookie in millisecond (default "1 year")
  • httpOnly - Boolean Flag for http only cookie (default "false")
  • secure - Boolean Flag for using cookie over TLS/SSL (default "false")
  • signed - Boolean Will use the secret passed to cookieParser(secret) to sign the value (default "false")
  • encoding - String Type of output encoding by nodejs (default "hex")
  • extra - Array Extra info for Hmac ([true] to enable instead of Hash) and pbkdf2 ([salt, iterations, keylen]) (default "[ ]")

Examples

Take a look at my examples