SuperGenPass: Keyboard Shortcut

Earlier today, I wrote about the fantastic bookmarklet, SuperGenPass; a great tool for generating secure, random and site-specific passwords with an additional two-clicks added to your login process. However, as noted in my previous post, two more clicks is not the ideal solution, at least not for me. I have detailed below the steps to implement a keyboard shortcut for SuperGenPass to reduce the effort down from two clicks to zero.

What you need (requirements)

  1. Using the handy bookmarklet builder at the SGP homepage, generate a bookmarklet for Firefox with the option to “Enter your master password each time, but use a hash to verify it” and your preferred number of characters.
  2. Add the generated bookmarklet to your bookmark toolbar.
  3. Right click on SGP and click properties, copy the SGP code (starting with ‘javascript:’) into your favorite text editor.
  4. Do a Find & Replace All.
    Find: .blur Replace: .focus This will ensure that no added clicks will have to be added into your login procedure (i.e., you will press your keyboard shortcut and then ‘Enter’ to login, rather than having to click the ‘Login’ button)
  5. Copy your modified code back into the ‘Location’ field of the bookmark properties
  6. Assign a ‘Keyword’ to the bookmarklet (e.g., sgp) and remember this keyword
  7. Install the Keyconfig extension
  8. Type about:config into your address bar and hit ‘Enter’
  9. Right click on the config screen and create a New >> String
  10. For the preference name enter: keyconfig.main.xxx_key__SGP BOOKMARK KEYWORD
  11. For the string value enter: meta][][][if(window.loadURI) loadURI(getShortcutOrURI('SGP BOOKMARK KEYWORD',{}));
  12. In the Firefox menu Tools >> Keyconfig find the name of the bookmark keyword you just added.
  13. Assign a keyboard shortcut.
  14. Restart Firefox.
  15. Choose a site that you wish to test your new bookmarklet (e.g., yahoo.com).
  16. Open your account preferences and select the ‘Change Password’ function.
  17. Type in your master password (as set on the bookmarklet generator page) into the ‘Current Password’ text box and execute your keyboard shortcut. The text boxes (Current, New, Confirm) will turn green, indicating that they have been populated with the password as generated by SGP.
  18. In the ‘Current Password’ box, type in your current password (leaving the ‘New’ and ‘Confirm’ boxes alone and submit the changes.

Next time you go to the site to login, type in your master password, execute your keyboard shortcut, and press enter. Voila!

Secure, Random Passwords with SuperGenPass

In my never ending quest to secure my identity on the Internet, I came across an interesting bookmarklet by the name of SuperGenPass (SGP). Created by Chris Zarate, this snippet (alright, it’s a bit larger than a ‘snippet’) of JavaScript allows you to generate secure, domain-specific, “random” passwords on the fly with only a few clicks.

Using your master password, this bookmarklet uses a one-way MD5 hash in order to generate a secure alpha-numeric password that will give your typical dictionary and brute-force password crackers a mighty big headache. Due to the nature of the hashing, your master password cannot be discovered by reverse engineering your generated, domain-specific password. Perhaps best of all, consistently using this ‘tool’ drastically reduces the need to remember a bevy of passwords used to access the four corners of the Internet. With additional perks such as phishing protection and over 1,000 top-level domains supported, SGP sure seems to have promise.

All of this seems fantastic, but I must admit that I am adverse to adding additional clicks to my browsing experience. Though SGP touts only two additional clicks (one for password generation and one for population), that is two clicks too many for me.

This set of instructions will demonstrate how to implement the fantastic features of SGP with the ease of a keyboard shortcut.

Google Maps: Multiple Destinations

While using Google Maps this morning, I noticed a new feature: multiple destinations. You can now use your (read: mine) favorite online mapping application to plan your road trip, run errands, or some other multi-destination trip you have in mind.

Not only can you have multiple destinations in one itinerary, but you can drag the address up and down in the list to dynamically redraw the map and reorder the directions.

Just another sneaky little enhancement from those fine folks at Google.

How To: Reset a non-responsive Blackberry 7130e

It seems that my BlackBerry and I get in fights every once in a while. While attempting to “fix” it in order to enable Bluetooth synchronization with my new work laptop, I discovered that it was missing not one, but two, critical services for this type of connection: Desktop Connectivity and Wireless Bypass. Unsure of how to restore the services that were there when I purchased the device I proceeded to restore the settings to the factory defaults (after a handy backup of all my data, of course). After waiting 30 minutes for the device to erase the data and reset, to no avail, I performed a hard reset by removing the battery (read: mistake #1).

Upon reinserting the battery, I was greeted with a white screen, spinning hour glass, and frantically blinking red light. After 30 minutes I began to worry that I had interrupted the process and was going to be unable to reawaken my device. I tried multiple hard resets and kept coming up with the same results. I even tried powering the device with the USB cable and no battery. A pretty screen showing me that I had no battery was as far as I could get. I turned to the BlackBerry Desktop Manager software to see if it would recognize the device. As the 7130e powered on, the Desktop Manager software would briefly recognize that it was connected but once the hour glass began spinning the software acted as if the device was not there. Timing is everything.

I pulled up the Application Loader section of the software and, with my BlackBerry connected, performed a hard reset. When the screen turned on I clicked “Next” and we have connection! The Application Loader recognized that the BB was in trouble and instantly prompted me to reinstall the OS and core system software. A simple click of the “Next” button and a quick 15-20 minutes and I’m back up and running.

Hopefully there’s no permanent damage.

Online vs. Desktop

With the Web 2.0 movement (technically, is it still a movement?) booming and more and more feature-rich sites being launched everyday, this question is now at the forefront: do I use conventional desktop applications or move to web-centered, online apps?

Gmail, Yahoo! Mail, Google Reader, BlueDot, Digg, del.icio.us, Plaxo, Google Docs & Spreadsheets. To name a few. These “enhanced websites” offer a variety of functionality from e-mail to bookmarking to address book synchronization and even “Word” and “Excel” documents. Rather than firing up Office or Mail.app, why not just launch Firefox or Safari?

I have been wrestling with this question for the past few weeks as I have been discovering and sampling a breadth of online replacements for my favorite desktop-centered applications. To be sure, there are challenges with both offerings; not the least of which is the requirement for an active Internet connection to even access the long list of applications I’ve listed above. On the flip-side, how many hours per day (on a “normal” day) are you without a connection to the Internet? For some of you, it may be a sizable amount of time. For me? Not including my BlackBerry (which technically gives me 24/7/365 access to the web unless I’m on an airplane), I’m not connected (and not sleeping) at maximum 9 hours per day. As wireless becomes even more pervasive, that number will keep dropping until “I don’t have a connection” is no longer an excuse.

I’ve always been one to use desktop applications. When I was younger, I would go through a great deal of trouble in order to get Outlook working for my e-mail accounts. Now, I seek out the best of the best for my desktop apps. Mail.app, NewsFire, Address Book, iCal, OpenOffice (once again, to name a few). I like the integration on my desktop, how things click together and just work.

I’m a stickler for aesthetics. One of the biggest reasons I switched to Mac last year was because of the beauty of OS X. A functionally sound (built on a UNIX backend), aesthetically astounding operating system installed on a beautiful piece of hardware. Again, that’s where these desktop applications come in. They’re designed to take advantage of the aesthetic abilities of OS X and fit right in. However, as more Web 2.0 advancements pop up here and there the lines between a desktop application and webpage are continuing to blur. With AJAX we are no longer plagued with constant page refreshes. New transition and movement effects allow the user to feel like they are truly interacting with the webapp, rather than just merely using it.

While webapps are getting prettier, they still are a long way from the seamless integration of the desktop. So if it’s not truly aesthetics, what makes me ponder this question of online vs. desktop? One word: Synchronization.

I work on not one, but two (and if you get technical, three) different computers everyday. What does this mean? It means I read e-mail and RSS feeds on 3 computers. It means I have 3 different copies of my calendar and address book. It means e-mail attachments and USB keys are my best friends. It means it’s a pain to keep all 3 computers on the same page.

I would read e-mail throughout the day while at work (or on my BlackBerry) just to arrive home and have all of that e-mail still unread. I would skim my RSS feeds and mark them all as read throughout the day just to arrive home and have 192 articles waiting for me. I’d add an entry to my address book just to…well, you get the picture.

I wanted the state of my information to be known across all of my devices. No matter where I was, no matter what computer/handheld/kiosk I was using everything was updated. Now I’m not saying that a few webapps have gotten me to the point of true synchronization. No, that day is still a ways away. But it has helped me take a few strides forward.