Knuths multiplicative hashing based id obfuscation for javascript (port of https://github.com/jenssegers/optimus).
Map sequential IDs or serial numbers to random-looking strings
Compute the multiplicative inverse of a double-precision floating-point number.
Compute the multiplicative inverse of a single-precision floating-point number.
This is a cypher engine which uses ElGamal cryptosystem internally. besides cryptography, it provide some group functionality such as add 2 members or select a random group member and so on.