Project: Dvorcode

I've just finished hacking together a simple little program to transcode my "dvorcodes" for when entering on a QWERTY keyboard. I've created a new project on SourceForge and I've uploaded the code and a pair of pre-compiled executable JARs (one for Java 5 and also a re-worked version that's been tested on Java 1.4.2).

What!?

What are "dvorcodes"? Well, I use a Dvorak Simplified keyboard, which is great except for entering passwords. If you must use one of those systems that locks your account after too many wrong tries, you really have to know 100% where all the keys are! My work-around has been: think of a password and then enter that on the QWERTY caps. For instance, typing the keys bluepotato on a Dvorak-mapped QWERTY keyboard comes out as xng.lryayr.

This is all great, until you have to enter the password on a QWERTY keyboard (say, a friend or co-worker's machine) and all of a sudden you realise: you have to enter the real password!

Problem: you don't remember (or never even knew) what the dvorcode for "bluepotato" is. Also you can't just walk back to your machine, and your friend is not convinced about Dvorak's greatness enough to let you re-map her own keyboard to Dvorak just so you can spend five minutes checking your web mail on her computer. Trust me: deaf ears, plus your password problem adds weight to her argument...

This utility is a solution. You run it, enter the password you remember on the QWERTY keyboard, and it'll give you the dvorcode. You can then cut/paste or just remember it for a few seconds and type it in by hand. It's a Java app, so it can be kept on a USB memory for just this emergency, and it will run wherever a JRE is installed (if your friend's machine doesn't have a JRE, why are they your friend?).

Why?

  • I needed a tool to decode "dvorcodes" for exactly the situation above
  • It's an opportunity to learn some Open Source / Agile project management skills with a simple project
  • It might be useful to someone else
  • There are several things in this tool that could be improved
  • It's good Java and NetBeans practice
  • Possibly meet some new hacker friends on-line

Project details

Documentation

Here's a quick overview. I'll probably put something better up on SourceForge.

Enter phrases in the top box (where it says "Enter phrase here"). Press the GO button to perform the trans-code operation. The result is displayed in the lower box. As results are added to the lower box, they scroll down so the newest one is always at the top of the list. Use the radio buttons to change trans-code direction.

Shortcut Keys

The mouse is supported too, but I prefer these to the mouse:

Key Function
Enter trans-code the phrase (pushes the GO button for you.)
Esc Quit the program

CUA copy/paste and field navigation key (Tab/Shift-Tab), as well as common Copy/Paste keys are also supported (courtesy of Swing).

Steps to decode a "dvorcode"

The scrolling text pane automatically selects the newest result for you, so the simplest workflow (but not safest, see cautions) is:

  1. Start dvorcode.jar on your friend's machine
  2. Type your password as you remember it, using the normal QWERTY key mapping, press Enter
  3. Press Tab to go to result
  4. Copy (Ctrl-C or Ctrl-Insert)
  5. Alt-Tab (or whatever) to where you must enter the password
  6. Paste (However that's done on the host platform)

Some cautions

  • dvorcodes are not a safe way to come up with "unguessable" passwords. It's simple to build a dvorcode dictionary (you could use this tool in fact) so crackers probably already have one
  • This utility is not safe against shoulder surfing. The passwords and dvorcodes are clear on the screen!
  • If you copy/paste the dvorcode, it'll remain on your friend's clipboard. Copy something else there before you step away, or better yet, never copy/paste passwords...
  • Remember to exit the program once you have your code, so that your passwords aren't left lying around on some strange computer. You can do it quickly with the Escape key, that's why I added it
  • It might be wise practice to change your password after using it on someone else's computer anyway, just in case...

UPDATE: 2008-08-18T09:32+1000 - Dvorak Simplified promotion

I used to recommend people go to see dvzine.org for a cute magazine that promotes the Dvorak keyboard, and also how to turn it on with most computers (it's pre-installed in most modern/popular systems, even Mac and Windows).

Unfortunately that domain and website seem to have dissapeared sometime in late 2007 early 2008. Not surprising since it was run by some university students while they were at college.

However the internet archive wayback machine has saved several copies of dvzine.org, including a fairly good working copy.