GridPass - printable password lookup table generator

This shell script uses LaTeX to generate a PDF with a table of randomly generated passwords in a nice tabular format. This table can be used to easily choose different, random and secure passwords for various online accounts. Such practice is effective at reducing security risks imposed by usage of insecure (what is secure?) web services (just take a look at recent password leaks from linkedin and lastfm for example). REMEMBER to always BACKUP multiple copies of the generated PDF in order to not lock yourself out of all of your accounts by losing a single sheet of paper! ;)

A nice screenshot with default options follows (./gridpass.sh OR ./gridpass.sh -c 10 -r 40 -l 8 ):
Fun fact --- this picture was generated with: 
$ gs -sDEVICE=pngalpha -sOutputFile=gridtest.png -r144 gridtest.pdf

General use-case is as follows:
  1. you're filling a registration form, which requires you to choose a password
  2. randomly choose one password from the table and memorize the column and row coordinates or write them down on a piece of paper and store securely
  3. complete registration by entering the password you've chosen

By having a sufficiently large amount of passwords in the table (400 by default in this script), you can also take a look at the table at public places where someone could be peeking over your shoulder - you just locate the right col and row with your eyes and type it in (however, beware of keyloggers on public PCs).

Such table could also be used as a two-factor authentication token - similar to a grid card commonly used for internet banking purposes. You just have to find a way to store the generated table on auth server and you're good to go. You can also provide your own password generator if you'd like --- by default, pwgen(1) is used.

Script has some sane options built-in (pwgen(1) as generator, 400 passwords, 8-character length, secure and without ambiguous characters), you can optionally set them via command-line options (get them with ./gridpass -h or whatever) or in ~/.gridpass (automatically generated if it doesn't exist). It outputs LaTeX source code to STDOUT if no filename argument is given or generates a PDF file with pdflatex if you provide a filename. You can also redirect STDOUT to a file and compile with your own set of commands (or do whatever else you'd like to). Also, if the columns in your configuration exceed the paper size when compiling into PDF, the script will give out a warning so you can try to reduce column count until it's OK.

GridPass can also generate a title with its "-t" command-line switch (by using LaTeX's \maketitle command). It simply gets you full name from /etc/passwd or username if full name is empty and prints it out along with password info (how many passwords are there in total and their length) and current date. It may be useful if printing table for more people, so they don't get their tables mixed up --- then you can also use the "-u [username]" parameter for specifying whose table this is. However, this title "feature" takes up quite a lot of space.

Source code is available at my github repository and distributed under GPLv3 license. Feel free to post some feedback or improvement ideas.

WolframAlpha CLI interface

I've reworked one of my old shell scripts: the WolframAlpha commandline interface. This client uses the free WolframAlpha API. You can get your own API key at https://developer.wolframalpha.com/portal/apisignup.html (you need it in order to use this script as I'm not giving away my own key). After you've registered your key, put it into script's config section. Here goes a little screenshot to show you the looks of this script interface:
Hope it will be of some use to somebody ;). As always, the sources are in my Github repo.

ThePirateBay.se search script

This ThePirateBay.se torrent search script is based on the quite modular Torrentz.eu one I've made a while ago. You can find it on my GitHub as will be usual for all of my future scripts and stuff, so don't forget to add me to your watch list :).

This deprecates the old TPB search script.

I'll greatly appreciate any feedback, so don't hesitate to leave a comment if you'd like to. Improvement ideas are also welcome ;).

You can also modify and reuse all my scripts listed in the repo if you feel like it as they're licensed under GPLv3.

I'm on GitHub, come and fork me!

Recently I came to the conclusion that it would be much better to keep my shell scripting work in a Git repository instead of relying on Pastebin, so I created a repo on Github. Everyone is welcome to contribute their improvements :). Hell, I'm sure my scripts are far from complete/usable and many optimizations can be made. You can even fork me if you dare! ;)

As for now, I've pushed the most recent script, the Torrentz.eu search and download "API". As time goes by, I'll try to add older scripts and publish some new ones, so I encourage you to add the repo to your watchlist :).

Long live free and open source software!

Torrentz.eu search shell script

Torrentz.eu is a great meta-search engine collecting info from dozens of torrent hosting sites, such as ThePirateBay.se. You can read through the complete list of scraped sites right here (almost 7M of live torrents indexed as of now, ThePirateBay alone has "only" 3.1M).

I've written this /bin/sh compatible script mainly because my previous torrent search script for ThePirateBay stopped to function properly and I was just too lazy to rewrite the code to work with TPB's new way of offering torrent downloads -- via magnet links, which are great by the way ;).


Oh, and just in case you've missed it: you can download an offline copy of TPB's torrent database in format suitable for making and SQLite database and searching torrents completely anonymously. Hell, it's just 90 megs! However, pr0n is not included, so it's only 1,643,194 torrents :P.

OK, so let's go to the point. Here's a screenshot:

As you can see, it has a nice colorized output (um... well, it can be disabled with the -C cmdline switch) and shows first 15 results by default (a max. of 50 due to pagination, sometimes less due to DMCA takedown notices sent to torrentz.eu -- it's quite funny how they just let you know which torrents exactly are they watching :P).

And t3h s0urc3, ofc: see this pastebin, it's more readable and copypastable than listing it here. Be sure to edit the torrent download command at the beginning of the script if you're using client other than Transmission. You can also change the default number of displayed results and output colors if you'd like. Don't forget to leave a comment or drop some spare coin into my PayPal account if you like my works ;).