Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/angeal185/hex-transposition-cipher

hexadecimal transposition cipher for shuffle and reverse shuffling hex encoded cipher text
https://github.com/angeal185/hex-transposition-cipher

cipher decryption encryption hexadecimal shuffle transposition-cipher

Last synced: 6 days ago
JSON representation

hexadecimal transposition cipher for shuffle and reverse shuffling hex encoded cipher text

Awesome Lists containing this project

README

        

# hex-transposition-cipher
hexadecimal transposition cipher for shuffle and reverse shuffling hex encoded cipher text for nodejs and the browser.

Adds an extra layer of protection to your already encrypted code's hex output by essentially turning it into nothing but valid hex.

demo: https://angeal185.github.io/hex-transposition-cipher/
### Installation

npm

```sh
$ npm install hex-transposition-cipher
```

#### nodejs

```sh
$ const htc = require('hex-transposition-cipher');
```

#### browser

```html

```

### info

```js
// defaults
{
decode: false, // set true for decrypt
reverse: false, // reverse encrypted/decrypted hex string
}

// htc.keyGenSync()
const key = htc.keyGen(); //generates random hex key from the default key
console.log(key) // returns hex key ~ dont lose this

/**
* htc.keyGen(callback)
* @param {function} callback
*/

htc.keyGen(function(i){
console.log(i) // returns hex key ~ dont lose this
});

/**
* htc.subSync(hex, key, config)
* @param {string} hex ~ hex string
* @param {object} key ~ hex key
* @param {object} config ~ optional options
*/

let res = htc.subSync('74657374', key, {decode:false, reverse: false});
console.log(res); // returns encrypted hex string

res = htc.subSync('74657374', key, {decode:true, reverse: false});
console.log(res); // returns decrypted hex string

res = htc.subSync('74657374', key, {decode:false, reverse: true});
console.log(res); // returns encrypted hex string and reverses the output of the string

res = htc.subSync('74657374', key, {decode:true, reverse: true});
console.log(res); // returns decrypted hex string that has been reversed

/**
* htc.sub(hex, key, config, callback)
* @param {string} hex ~ hex string
* @param {object} key ~ hex key
* @param {object} config ~ optional options
* @param {function} callback
*/

htc.sub(res, key, {decode:true, reverse: false}, function(i){
console.log(i); // returns decrypted hex string
})

...

```