Affiliate Disclosure: By buying the products we recommend, you help keep the lights on at MakeUseOf. Read more.
Your options for a truly free and secure password solution that syncs with iOS and OS X are limited, but thankfully a combination of KeePassX and MiniKeePass makes it possible. With these clients, Google Drive or Dropbox and a KeePass database the process isn’t entirely automatic, but certainly does the job.
We last took a look at KeePassX, a KeePass compatible for Mac and Linux, in 2010 so it’s time to see what’s different about the upcoming KeePassX 2.
KeePass for Mac & Linux
KeePass 2 has been available for some time to Windows users, which is the platform the software was originally written for. Being Windows software, developers used Microsoft’s .NET framework when creating the app, which results in problems when it comes to Mac or Linux versions. There is a version of KeePass for Mac that uses Mono, the unofficial Mac and Linux answer to .NET, but as of writing I can’t get it working (and what I’ve read hasn’t been particularly encouraging).
KeePassX compiles natively for Linux and Mac OS X, which means no reliance on Mono. This results in a faster and more reliable application that doesn’t rely on a framework. KeePassX 2 – which provides compatibility for KeePass 2 databases – is currently in the alpha stages of development, though from experience it’s already quite stable aside from a few bugs.
You can still use the original (and stable) KeePassX 0.43, but you’ll be limited to KeePass 1 databases too. KeePass 2 databases provide many benefits, including the ability to add custom fields to entries, a history feature for tracking changes, notes, a recycle bin and much more. You can see all of the differences between the versions on this handy comparison table.
The dangers of using alpha software apply here. Losing access to all of your passwords is far from ideal, so make sure you have suitable recovery options (like a working a phone number) on your primary email account in case the worst happens. If you’re especially concerned about loss, one option would be to download KeePassX 0.43, create a KeePass 1 database and then convert it to a KeePassX 2 database at a later date once the software is stable.
A Look At KeePassX 2
You should read our article about KeePass for a detailed explanation, but KeePass is a tool that uses a database to store private information like passwords. These databases take the form of a .KDB (KeePass 1) or .KDBX (KeePass 2) file, and KeePassX is an application that is able to open and modify these databases.
KeePassX allows you to create, manage and open these files, as well as add entries in the form of passwords, usernames and custom fields. KeePassX 2 improves on the older version with an expanded UI, though things still feel a bit “free software” and the package lacks the polish of (admittedly rather expensive) products like 1Password.
Adding a new entry via the New Entry button reveals fields for the entry title, username, a URL and two fields for your password. Clicking the ellipsis “…” button will disable password masking, while the Gen. button reveals a customisable password generator. Make sure you check special characters and increase the length, if the service you are adding allows it. Hitting the Apply button will copy the password into the appropriate fields.
You can then select an entry and hit Cmd+C or use the two-finger click (right click) menu to copy username, title or any other fields you have added. For syncing purposes – whether you are using KeePassX 0.43 or 2 – you should store your database in either your Google Drive or Dropbox folders. Both of these services offer two-factor authentication, so if you value your security use it.
MiniKeePass for iOS
Once you have populated your KeePass database and saved it in the cloud storage folder of your choice, you’ll need to download that particular service’s iOS app – be it Dropbox for iOS or Google Drive for iOS – as well as MiniKeePass itself.
After downloading and signing in to the cloud storage service of choice, open the respective mobile app and find the .KDB or .KDBX file you just created. When prompted, choose Open in… and choose MiniKeePass when asked to do so. Once complete, you have full access to your KeePass database on your iPhone.
MiniKeePass is a great little app, but it’s not much to talk about. You can view, create or delete entries, but you cannot change the master password or automatically sync back with your PC. It’s important to remember that changes you make here won’t be reflected anywhere else, for that you’ll need to export it using the share button provided.
This can be confusing, but it doesn’t need to be. I personally only sync one-way, which means I only update my database on my Mac. This then saves to my Google Drive, which allows me to quickly open the file from Google Drive in MiniKeePass (the older file will be replaced by the new one, provided the filenames are the same). By only syncing one-way, I never have to worry about which version is most up-to-date.
Of course you can always export to Google Drive from MiniKeePass too, if you decide you’d rather do it that way.
KeePass Compared to 1Password & LastPass
Using a paid alternative to KeePass will afford you better compatibility with various devices, more polish when it comes to software and (in some cases) support when things go wrong. Using KeePassX, which itself is removed from the official KeePass project, isn’t exactly “risky” though. There are alternatives to LastPass, 1Password and KeePass, but these three are arguably the most popular solutions on the market.
KeePass is open source, which means that its security algorithms have stood the test of time so far – if you want to break it, go ahead and give it a go. 1Password also uses open source (SSL) encryption, so it too is considered transparently secure. What worries many is proprietary encryption, such as that used by LastPass. Because there’s no source code to dismantle and test, there’s no telling quite how secure LastPass really is. That’s not to say it’s insecure, but one as one commenter on this LastPass blog entry put it: “If an enemy knew everything but the password, you system should still be just as secure.”
To briefly sum up each offering:
- 1Password is relatively expensive, and you’ll have to pay a separate fee per platform starting at $17.99 for the iOS version, and $49.99 for the Mac version [No longer available]. The software is polished, syncs automatically via Dropbox or iCloud and uses openSSL to encrypt its data.
- LastPass is cheaper at $1 per month (you’ll have to pay this if you want access on your mobile, otherwise it too is free) which provides access on just about any OS you want (complete with browser extensions). It syncs automatically, but this process uses the LastPass servers and closed source proprietary encryption.
- The KeePassX and MiniKeePass combination is free and completely open source. It syncs manually via Dropbox or Google Drive and the clients are much less polished. In addition to this, Linux and Mac users are currently stuck to the alpha version for KeePass 2 support.
KeePass 1 has stood the test of time well and KeePass 2 databases improve on what is already a very good thing. It really says something that KeePass remains one of the most prevalent password solutions out there, and thanks to projects like KeyPassX being a Mac or Linux user shouldn’t deter anyone; especially with great iPhone apps like MiniKeePass available.
Do you use a password manager to keep your computer and iPhone in sync? Which did you choose, and why? Let us know how you feel in the comments, below.