1.0.3 • Published 2 years ago

encdenc v1.0.3

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

EncDeEnc

Encryption algorithm

Different encryption for same stuff everytime*

  • it depends on your config, the more unique the config, the more randomized encryption for same string

How to use?

  1. Install it using npm
npm i encdenc
  1. Import the package
const EncryptionMachine = require('encdenc/EncryptionMachine.js')
// or
import EncryptionMachine from "encdenc/EncryptionMachine.js";
  1. Create a new machine
const machine = new EncryptionMachine();
  1. Edit the default config (it is secure to create your own)
// Array of random numbers, atmost 1000
// size and uniqueness of array ∝ randomized result for same string
machine.config = [1,3,45,23,666,44,75,999,436]

Keep your config same for your project for correct results

  1. Encrypt stuff
let enc = machine.encrypt("abcd 1234 #${}|\\|"))
// returns binary form of encryption, not constant for a specific input
// Test1: 10000011 1100100 1100100 10000101 1001101 1110001 1111010010011 1010101 110110 100001 1000100 1010001 10111011 1111011011110 10011110 1011110 1111101-5
// Test2: 1100010 10000011 10010000 10100100 1111010000001 1010011 110100 110100 1010101 1001101 1100011 1111010000101 10011101 1111111 1111101 1111101 10101001-0
  1. Decrypt stuff
let dec = machine.decrypt(enc)
// this always returns the correct result, no matter what the encryption is for a certain string
// Test1: abcd 1234 #${}|\\|
// Test2: abcd 1234 #${}|\\|
  1. Check performance
machine.__testMachine() // default params: iterations=100; string='abcd 1234 #${}|\\|'
// console logs uniqueness and correctness of the algorithm
// better the config, better the uniqueness

// you can edit the total iterations and test input:
machine.__testMachine(10000, "{'name': 'helloworld', 'age': '2222'}")