1.0.5 • Published 7 months ago

@marcuwynu23/aliasgen v1.0.5

Weekly downloads
-
License
ISC
Repository
-
Last release
7 months ago

AliasGen

AliasGen is a simple, secure Node.js library and command-line tool to generate short, random-looking aliases from any text, protected by a secret key.

It uses strong AES-256 encryption via crypto-js and outputs a Base64 URL-safe alias (without any = padding).

AliasGen can also decrypt the encrypted text back into the original input (as long as the full encrypted text is saved).


Features

  • AES-256 encryption (CryptoJS)
  • URL-safe Base64 encoding (no =, no +, no /)
  • Configurable alias size (default 6 characters)
  • Cross-platform (Windows, Linux, MacOS)
  • Can be used both as a library (module) and a command-line tool
  • Full TypeScript support with type definitions (.d.ts)

Installation

Prerequisites

To install the necessary dependencies:

If you want to use it as a module in your own Node.js project, run:

npm install @marcuwynu23/aliasgen

Usage

As a Command-Line Tool

To use AliasGen from the command line (CLI), follow the instructions below:

Encrypt Text (Generate Alias)

aliasgen "<your text here>" --secret "<your secret>" [--size <number>]
  • --secret (required): The secret passphrase used for encryption.
  • --size (optional): Length of alias. Default is 6 characters.

Example:

aliasgen "hello world" --secret "supersecretkey" --size 8

Output:

Alias: U2FsdGVk
Encrypted: U2FsdGVkX1_4klrcIA5XhR9wJxNqkVD1VfA7OSDXaj8
  • alias: Short alias (8 characters)
  • encrypted: Full encrypted text

Note: Always save the full encrypted value if you want to decrypt later.

Decrypt Text

aliasgen --decode "<encryptedText>" --secret "<your secret>"

Example:

aliasgen --decode "U2FsdGVkX1_4klrcIA5XhR9wJxNqkVD1VfA7OSDXaj8=" --secret "supersecretkey"

Output:

Decrypted: hello world

As a Module (Library)

You can also use AliasGen as a Node.js module. Here's how to implement it in your own Node.js application.

Install the package

npm install aliasgen

Import and Use the Module

To use AliasGen as a module in your Node.js code, you can do the following:

const { encrypt, decrypt } = require("aliasgen");

// Encrypt the text to generate an alias
const data = encrypt("Hello World", "supersecretkey", 8);
console.log("Alias:", data.alias);
console.log("Encrypted:", data.encrypted);

// Decrypt the alias to get the original text
const decrypted = decrypt(data.encrypted, "supersecretkey");
console.log("Decrypted:", decrypted);

In TypeScript:

import { encrypt, decrypt } from "aliasgen";

// Encrypt the text to generate an alias
const data = encrypt("Hello World", "supersecretkey", 8);
console.log("Alias:", data.alias);
console.log("Encrypted:", data.encrypted);

// Decrypt the alias to get the original text
const decrypted = decrypt(data.encrypted, "supersecretkey");
console.log("Decrypted:", decrypted);

Example Output:

Alias: U2FsdGVk
Encrypted: U2FsdGVkX1_4klrcIA5XhR9wJxNqkVD1VfA7OSDXaj8=
Decrypted: Hello World

License

MIT License.


Notes

  • Short aliases (6-8 characters) are good for IDs but cannot be reversed without the full encrypted text.
  • Always protect your secret key carefully.
  • Always save the encrypted field if you need to decrypt later.

Author

Developed by Mark Wayne Menorca

1.0.5

7 months ago

1.0.4

7 months ago

1.0.3

7 months ago

1.0.2

7 months ago

1.0.1

7 months ago