cpass
TypeScript icon, indicating that this package has built-in type declarations

2.3.0 • Public • Published

cpass - simplified secured password two-ways encryption

NPM

npm version Downloads Build Status

Encrypts password to some sort of a 'secure string' to be stored in text configs to reduce risks of a silly leak.

Decripts a 'secure string' to plain password.

Installation

npm install cpass --save-dev

or

yarn add cpass --dev

Usage

JavaScript

const Cpass = require('cpass').Cpass;
const cpass = new Cpass();
 
const password = 'password';
 
let secured = cpass.encode(password);
// secured: "40bbb043608f54d....MhKghXTcaR2A//yNXg==" - is unique on different machines
 
let unsecured = cpass.decode(secured);
// unsecured: 'password'

TypeScript

import { Cpass } from 'cpass';
const cpass = new Cpass();
 
const password = 'password';
 
let secured = cpass.encode(password);
// secured: "40bbb043608f54d....MhKghXTcaR2A//yNXg==" - is unique on different machines
 
let unsecured = cpass.decode(secured);
// unsecured: 'password'

Decoding plain text will return it back:

let plainText = 'plain (not encoded text)';
let decodedText = cpass.decode(plainText);
// decodedText: 'plain (not encoded text)'
// plainText === decodedText

Encryption with master key

import { Cpass } from 'cpass';
const cpass = new Cpass('MasterKey');

Tests

Local run

npm run test

Run in Docker for specific Node.js version

# Build an image 
docker build -f ./docker/Dockerfile.node8 -t cpass.node8 .
# Run tests 
docker run cpass.node8

Comments

This module is not for a real security purposes. Just for 'dummy hackers' secure and minifying risks of any password storage in a plain form.

Once encoded, the password secured form can be decoded only on the same machine, but the logic behind this is very straightforward.

Package Sidebar

Install

npm i cpass

Weekly Downloads

13,086

Version

2.3.0

License

MIT

Unpacked Size

20.5 kB

Total Files

21

Last publish

Collaborators

  • koltyakov
  • sergeisnitko