jutility

1.2.1 • Public • Published

Jutility

A simple command line utility tool I have written for myself which can generate random secure passwords and passphrases, as well as AES encrypt files or directories. The name comes from my first name Jakob.

For random number generations it uses the random-number-csprng library to generate cryptographically secure pseudo-random numbers.

Install

npm install -g jutility

Usage

Password Generation

jutility password [length] [noNumbers] [noSymbols] [noUpper] [noSimilar]
  • length [required] definies the length of the password
  • noNumbers [optional] password will not contain any numbers
  • noSymbols [optional] password will not contain any symbols
  • noUpper [optional] password will not contain any uppercase letters
  • noSimiliar [optional] password will not contain any similiar letters like ilI ec.

Passphrase Generation

jutility passphrase [length]
  • length [required] of how much words the Passphrase should consist of

At the moment the Passphrase Generator uses a german dictionary consisting of about 5 million words. You could easily change the used dictionary by changing the file in res/german.dic or add your own file. The current code requires each word in a file to be seperated by newline.

Name Generation

jutility name

Will generate a name consiting of a randomly choosen first and last name. The dictionaries used for this can be found in res directory

AES Encryption

jutility [encrypt|decrypt] [file] [key] [iv]
  • encrypt|decrypt if you want to encrypt of decrypt files
  • file the name of the file or directory you want to encrypt or decrypt. In your cmd you have to navigate directly to the file or directory. Paths to a file or directory are not supported.
  • key The Key you want to use, has to be a 32 character long string.
  • iv Will be used for the initialization vector, has to be 16 character long string.

In version 1.2.0 a second encryption command was added. You will be promted for the IV and Key, and both should provided hex encoded. Again IV should be 16 bytes long and key 32 bytes. (Note that this would mean a 32 and 64 character hex string)

jutility [encrypt2|decrypt2] [file]
  • encrypt|decrypt if you want to encrypt of decrypt files
  • file the name of the file or directory you want to encrypt or decrypt. In your cmd you have to navigate directly to the file or directory. Paths to a file or directory are not supported.

The library is capable of handling recursive directories. But please be to test if everything works correctly for your, before you use it on a everyday basis. I have only tested in on one OS.

Package Sidebar

Install

npm i jutility

Weekly Downloads

4

Version

1.2.1

License

MIT

Unpacked Size

34.3 MB

Total Files

22

Last publish

Collaborators

  • jabfalter