uTransformers
uTransformers is a transport-layer obfuscation library for uProxy.
This library currently builds two uTransformers modules:
- uTransformers.rabbit: based on http://en.wikipedia.org/wiki/Rabbit_(cipher)
- uTransformers.fte: based on https://github.com/uproxy/libfte
See "Example Usage" below for more details.
Installation
npm install uTransformers
Example Usage
FTE
var fte = ;var regex2dfa = ; var transformer = ; var key = "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF";var ab_key = ;transformer; var json_obj = 'plaintext_dfa': regex2dfa 'plaintext_max_len': 128 'ciphertext_dfa': regex2dfa 'ciphertext_max_len': 128 var json_str = JSON;transformer; var ab_plaintext = ;var ciphertext = transformer;var ab_output_plaintext = transformer;var output_plaintext = ;
Rabbit
var rabbit = ;var transformer = ; var key = "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF";var ab_key = ;transformer; var ab_plaintext = ;var ciphertext = transformer;var ab_output_plaintext = transformer;var output_plaintext = ;
Building
There are two stages to the build process:
- The first stage is the process of building
uTransformers.fte.js
anduTransformers.rabbit.js
using emscripten. This is done in a vagrant virutal machine. Seevagrant/README.md
for details. To ease the build process, these artifacts are checked into git when the their cc files change. - The second step of the build process runs jasmine tests with grunt. This produces artifacts in
build/
.