@sebastienrousseau/crypto-cli
v0.0.1
Published
The Crypto Lib Command Line Interface (CLI) is a unified tool to perform common cryptographic operations such as key generation, data encryption, digital signing, and signature verification which are invoked from the command prompt or terminal.
Downloads
5
Readme
❯ Crypto CLI
Website • Documentation • Submit an Issue • Contributing Guidelines
👋 Welcome to Crypto CLI
Crypto CLI is a simple, yet powerful, command line interface that can be used to perform common cryptographic operations from the command prompt or terminal.
✨ Key Features
The cryptographic operations include:
- Authentication via Digital Signature,
- Confidentiality via Encryption and Decryption,
- Compression,
- Key Generation,
- Key Management,
- Pseudorandom Number Generation,
- Signature Verification.
This library is based on OpenPGP.js - a JavaScript implementation of the OpenPGP protocol. It implements RFC4880 and parts of RFC4880bis.
Development of this library is hosted by GitHub at the following page. Source code is available to everyone under the standard MIT license.
Getting Started
👉 Note: » Crypto CLI is a Node.js module available through the npm registry. Before installing, download and install Node.js. Node.js 12.20.0 or or later.
This allows you to always be on the latest version when we release new builds with automatic upgrades.
🔧 Installation
The first step to using Crypto CLI is to download and install the application and other required components.
1️⃣ Install the Crypto CLI via npm
, yarn
or pnpm
package
managers:
npm i @sebastienrousseau/crypto-cli
yarn add @sebastienrousseau/crypto-cli
pnpm add @sebastienrousseau/crypto-cli
For users who are unable to install the Crypto CLI, released builds can be manually downloaded from this repository's Releases page.
What's included
Within the download you'll find all the crypto lib source files grouped into the dist folder.
You'll see something like this:
.
├── COPYRIGHT
├── Makefile
├── Report.txt
├── cli.d.ts
├── cli.d.ts.map
├── cli.js
├── cli.js.map
├── commands
│ ├── decrypt.command.d.ts
│ ├── decrypt.command.d.ts.map
│ ├── decrypt.command.js
│ ├── decrypt.command.js.map
│ ├── encrypt.command.d.ts
│ ├── encrypt.command.d.ts.map
│ ├── encrypt.command.js
│ ├── encrypt.command.js.map
│ ├── generate.command.d.ts
│ ├── generate.command.d.ts.map
│ ├── generate.command.js
│ ├── generate.command.js.map
│ ├── help.command.d.ts
│ ├── help.command.d.ts.map
│ ├── help.command.js
│ ├── help.command.js.map
│ ├── index.d.ts
│ ├── index.d.ts.map
│ ├── index.js
│ ├── index.js.map
│ ├── reformat.command.d.ts
│ ├── reformat.command.d.ts.map
│ ├── reformat.command.js
│ ├── reformat.command.js.map
│ ├── revoke.command.d.ts
│ ├── revoke.command.d.ts.map
│ ├── revoke.command.js
│ ├── revoke.command.js.map
│ ├── session.command.d.ts
│ ├── session.command.d.ts.map
│ ├── session.command.js
│ ├── session.command.js.map
│ ├── sign.command.d.ts
│ ├── sign.command.d.ts.map
│ ├── sign.command.js
│ ├── sign.command.js.map
│ ├── verify.command.d.ts
│ ├── verify.command.d.ts.map
│ ├── verify.command.js
│ └── verify.command.js.map
├── helpers
│ ├── banner.d.ts
│ ├── banner.d.ts.map
│ ├── banner.js
│ └── banner.js.map
├── key
│ ├── key.d.ts
│ ├── key.d.ts.map
│ ├── key.js
│ ├── key.js.map
│ ├── rsa-reformat.cert
│ ├── rsa-reformat.key
│ ├── rsa-reformat.pub
│ ├── rsa-revoke.key
│ ├── rsa-revoke.pub
│ ├── rsa.cert
│ ├── rsa.key
│ └── rsa.pub
├── package.json
└── utils
├── version.utils.d.ts
├── version.utils.d.ts.map
├── version.utils.js
├── version.utils.js.map
├── write.utils.d.ts
├── write.utils.d.ts.map
├── write.utils.js
└── write.utils.js.map
4 directories, 72 files
2️⃣ Set up your app
You can get started with a simple app by running the following in your terminal:
> mkdir my-app
> cd my-app
> yarn add @sebastienrousseau/crypto-cli -D
> yarn start
3️⃣ Try it out and let us know what you think!
❯ Crypto Command Line Interface (CLI) syntax
The Crypto CLI accepts multiple types of options. Options are a list of flags and other parameters that can control the behavior of the Crypto CLI as a whole.
Below is the full list of supported options for the Crypto CLI.
| Option | Description | |---|---| | help | Displays the help message. | | decrypt | Decrypts a message. | | encrypt | Encrypts a message. | | generate | Generates a new OpenPGP key pair. Supports RSA and ECC keys. | | reformat | Reformats signature packets for a key. | | revoke | Revokes a key. | | session | Generate a new session key object. | | sign | Signs a message. | | verify | Verifies signatures of clear text signed message. |
🚥 Semantic Versioning Policy
For transparency into our release cycle and in striving to maintain backward
compatibility, crypto-cli
follows semantic versioning
and ESLint's Semantic Versioning Policy.
✅ Changelog
❤️ Contributing
Thank you for using Crypto CLI! If you like the library, it would be great if you can give it a star ⭐ on GitHub.
There are also many ways in which you can participate in this project, for example:
- Submit bugs and feature requests, and help us verify as they are checked in,
- Review source code changes, and help us improve our code quality,
- Review the documentation and make pull requests for anything from typos to additional and new content.
🥂 License
Copyright (c) Sebastien Rousseau. All rights reserved.
Licensed under the MIT license.
🏢 Acknowledgements
Crypto Service Suite is beautifully crafted by these people and a bunch of awesome contributors.
| Contributors | |---------| || |Sebastien Rousseau|