npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

minilock-cli

v0.2.14

Published

A command line version of miniLock

Downloads

23

Readme

GitHub version

miniLock-cli is a Node.js command line version of the miniLock encryption software.

You can read about miniLock here:

https://minilock.io/

The CLI version is written from scratch using the same crypto libraries as the original Google Chrome app.

Installation

Install Node.js.

Then run the following command:

$ npm install -g [email protected]
/usr/local/bin/mlck -> /usr/local/lib/node_modules/minilock-cli/mlck
[email protected] /usr/local/lib/node_modules/minilock-cli
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
└── [email protected]
$ 

Verify the installation:

$ mlck --version
miniLock-cli v0.2.13
$ 

Tutorial

Let's get started!

Generate an ID

First, you need a miniLock ID.

$ mlck id [email protected] --save
period dry million besides usually wild everybody

Passphrase (leave blank to quit): 

Enter a good passphrase, such as the one shown before the prompt. You need ~100 bits of entropy. Any 7-8 randomly selected words out of the English lexicon should be fine.

If you insist on using a simple passphrase like "hello" (not recommended at all!), you must use the --passphrase option.

$ mlck id [email protected] --save --passphrase='hello'

Your miniLock ID: LRFbCrhCeN2uVCdDXd2bagoCM1fVcGvUzwhfVdqfyVuhi.

$ 

You can look up your miniLock ID any time.

$ mlck id

Your miniLock ID: LRFbCrhCeN2uVCdDXd2bagoCM1fVcGvUzwhfVdqfyVuhi.

$ 

Once you're sure about it (i.e. you've picked a good passphrase that is also easy to remember), you can publish it on Twitter, on your website, and on various other channels. If people know your miniLock ID they can encrypt information to you even anonymously.

Encrypt a file

Let's say you have a text file called message.txt containing the following message:

The PIN code is 1337.

Withdraw 10,100 euros and meet me at Frederick Street at 5pm.

Don't forget my chocolate!

Now you can encrypt it to the miniLock ID gT1csvpmQDNRQSMkqc1Sz7ZWYzGZkmedPKEpgqjdNTy7Y using the following command:

$ mlck encrypt -f message.txt gT1csvpmQDNRQSMkqc1Sz7ZWYzGZkmedPKEpgqjdNTy7Y
Passphrase (leave blank to quit): 

Once again, it asks you for your passphrase. This time it's to identify you as the sender. If you wish to send anonymously (using a randomly generated sender ID), use the --anonymous option.

Note that you can send anonymously even if the message itself contains identifying information.

Here's the full interaction:

$ mlck encrypt -f message.txt gT1csvpmQDNRQSMkqc1Sz7ZWYzGZkmedPKEpgqjdNTy7Y
Passphrase (leave blank to quit): 

Encrypted from LRFbCrhCeN2uVCdDXd2bagoCM1fVcGvUzwhfVdqfyVuhi.

Wrote 1075 bytes to message.txt.minilock

$ 

Now you can send the file message.txt.minilock to its intended recipient.

Decrypt a file

Your friend Bob receives a file called message.txt.minilock in the mail. Luckily he has miniLock-cli installed. He proceeds to decrypt the file using his email address and his passphrase.

$ mlck decrypt -f message.txt.minilock -e [email protected] --passphrase='puff magic dragon sea frolic autumn mist lee'
--- BEGIN MESSAGE ---
The PIN code is 1337.

Withdraw 10,100 euros and meet me at Frederick Street at 5pm.

Don't forget my chocolate!
--- END MESSAGE ---

Message from LRFbCrhCeN2uVCdDXd2bagoCM1fVcGvUzwhfVdqfyVuhi.

Original filename: message.txt

$ 

Bob knows exactly what you mean by "Don't forget my chocolate!"

Links

Here are some useful links: