Sunday password fun with Trunk Notes...

I’m not an advocate of using just one uber-app. I use many different apps in addition to Trunk Notes to manage information. This is just an experiment to see whether Trunk Notes could function as my password manager – and to get you to think about new and exciting things you could use Trunk for.

WARNING! WARNING! WARNING! This is a fairly technical blog entry. If you are familiar with Mac OS X command line and understand things such as CSV, UTF8, line endings then carry on reading…

I have had problems finding a password manager for iOS that meets my exacting requirements. Ideally it should have a Mac OS X client. It should allow me to enter a numeric password that is longer than 4 digits. It should also remember that I want to enter such a password and show me an appropriate numeric keypad by default. When I exit the app, and after a suitable length of time, it should forget the password and prompt me again when I launch the app – it should NOT show me the page I was looking at for a second or two and then display the password entry screen. Finally I want to get in and out of the password manager as quickly as possible. Pointless animations will only serve to annoy me.

I will be migrating my passwords for my current password manager which does have an iOS app and a Mac OS X client. Luckily it exports everything to a CSV file with just a few clicks. Make sure that the CSV file is encoded as UTF8 and has normal UNIX type line endings (my password manager didn’t quite comply and I had to use an editor to force the CSV file into a ‘modern’ format.)

A line in the CSV file exported by my password manager looks something like this:

Web Logins,amazon.co.uk,myusername,mypassword,,”Jan 27, 2009",,Personal

For this experiment I am going to keep things simple and only bother with the first four fields:

  • Category (in the above case this is Web Logins)
  • Site (amazon.co.uk)
  • Username
  • Password

All other fields are going to be ignored.

What I want is a series of text files suitable for importing into Trunk Notes.

The wiki entries will have names like Password:WebLogins, Password:Computers, Password:NonComputers

Each page will have a table of contents (to allow me to quickly access the password I want) and then the password details in a form that I can quickly use copy/paste.

Once I have the wiki entries in Trunk Notes I can then encrypt them.

Step 1

Export the CSV file from your existing password manager.

Step 2

Write a script to create the wiki entries. I nearly always choose Python for this kind of task. I’m not writing good reusable code here – just something quick and dirty to get the job done.

Always when downloading and running scripts – read them carefully first! This particular script isn’t well written and does nothing to cope with error conditions.

(Download the script)

Save the script as something like generate_pages.py, make it executable (chmod +x) and then run it – the only argument required is the path to the CSV file. You can see here that the script generates a bunch of files, which I can then zip up ready for uploading to Trunk Notes:

mattsmac:TrunkPasswords matt$ ./generatepages.py passwords.csv mattsmac:TrunkPasswords matt$ zip passwords.zip BankAccts CreditCards Identification Memberships PasswordIndex SerialNumbers Unfiled WebLogins mattsmac:TrunkPasswords matt$ ls BankAccts PasswordIndex generatepages.py CreditCards SerialNumbers passwords.csv Identification Unfiled passwords.zip Memberships WebLogins

Step 3

Upload the zip file to Trunk Notes. Before doing this make sure you don’t have any page name conflicts – otherwise you might overwrite important information in your wiki!

Step 4

Once the passwords have been safely uploaded into Trunk Notes you should go and encrypt each page. The encryption will need to be carried out on your iPhone/iPad/iPod Touch.

Step 5

Delete all the files (well maybe except the Python script) you created on your computer. Otherwise you are leaving lots of plain text versions of your important passwords, ready for someone to steal!

Step 6

Finished!

If you go to the page Password:Index you should see each of the categories listed. Tap a category and you will see an index. Tap an item in the index to see the details. The password will be blacked out – to stop passers by looking over your shoulder. To copy the password into the pasteboard simply hold your finger down on the text and choose copy.

photophoto-1

Conclusion

This is really just a bit of fun, inspired by my futile search for password management perfection. To be honest some of the solutions are nearly there, just maybe lacking a good Mac OS X client, or has a pointless and time wasting startup animation. The Trunk Notes version doesn’t do password generation and adding new entries isn’t as nice as with a dedicated app.

If you have a favourite password manager or decide to try my experiment and use Trunk Notes – let me know in the comments!