MOON
Server: Apache
System: Linux e2e-78-16.ssdcloudindia.net 3.10.0-1160.45.1.el7.x86_64 #1 SMP Wed Oct 13 17:20:51 UTC 2021 x86_64
User: imensosw (1005)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //opt/bitninja-dispatcher/node_modules/.bin/ebg
#!/usr/bin/env node

const rot13 = require('../index');
const keys = require('../keys/index');
const argv = require('minimist')(process.argv.slice(2));
const chalk = require('chalk');
const cowsay = require('cowsay');

if (argv['generate-keys']) {
  const seed = argv.seed;
  console.log(keys.generate(seed));
  process.exit();
}

if (!argv._.length) {
  const usageMessage = `
Usage: ebg13 [--generate-keys] [--seed seed] [--key key] message1 [message2 [...]]
  
  --generate-keys - Generages a pair of assymetric keys to be used for encoding/deconding
  --seed seed - uses the seed as the private key and calculates a public key from it
  --key key - [optional] encoding/decoding key (it defaults to 13)
  message1, message2, ... - a list of at least one message to be encoded/decoded

A non empty list og messages is required for encoding/decoding but is
not necessary when generating keys.
  `;

  console.log(cowsay.say({
    text: usageMessage,
  }));

  process.exit(-1);
}

const key = argv.key || 13;
const encodedMessages = argv._.map(message => rot13(message, key));

encodedMessages.forEach(message => console.log(chalk.yellow(message)));