JSPM

optimus-js

0.1.4
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 2065
  • Score
    100M100P100Q114279F
  • License MIT

Knuths multiplicative hashing based id obfuscation for javascript (port of https://github.com/jenssegers/optimus).

Package Exports

  • optimus-js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (optimus-js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Knuth's integer hashing based id obfuscation

Build Status Latest build

This is a port of jenssegers/optimus PHP library for Javascript. It works on the browser as well as node.

Installation

npm install optimus-js
bower install optimus-js

Usage

To initialize the library you need 3 things.

  • Large prime number lower than 2147483647 (prime)
  • The inverse prime so that (prime * inverse) & 2147483647 = 1
  • A large random number lower than 2147483647

for more info and a command line too to generate these values please refer the original project

using the above parameters you can create instances of Optimus(prime, inverse, random)

var Optimus = require('optimus');

var optimus = new Optimus(1580030173, 59260789, 1163945558);

After that you can use encode and decode methods to encode/decode positive integers ranging from (0 to 2147483647).

var hash = optimus.encode(25);
var original = optimus.decode(hash);

Warning: Please note that this library only provides obfuscation and not encryption.