Skip to main content

From Zoho Vault to KeePassX

I am constantly searching for the greener side. Sometimes I find one, sometimes I have to go back to the way I used to do things.

Zoho Vault is like LastPass - you provide your encryption key to the web page and it decrypts your data, you can also use an Android app. It is also completely free for personal use of a single account.


And so, having spent two months using Zoho Vault, I decided to migrate back to using KeePassX, though.

I found the web interface slightly annoying with the credential search taking a noticeable amount of time, password copy/paste depending on flash and constantly trying to mask the password that you've just unmasked to copy.

The firefox plugin was making the experience better (earlier versions would block your browser while you are logging in to Zoho, much improved now), but I again stopped feeling happy about off-loading all the keys to my kingdom to a third-party resource.

And then I also found that KeePassX has released a new major version, 2.0, making it compatible with the newer releases of KeePass Password Safe, a .NET application (which you can run under linux with mono).

KeePassX 2.0 is a substantial improvement over the 1.x version - the UI became simpler, the addition of custom tags made it easier to store related things together, and basically this is the future, so upgrade now.


But KeePassX also uses the new .kbdx format, and can only import the older .kdb one.

So, since I am usually going head-first without leaving an easy way back, I now had to get the data out of Zoho Vault and into KeePassX 2.

So I got the Zoho Export CSV, wrote a python script that would convert the entries to the .kdb format and then imported them into the new KeePassX 2 built in my Copr project.

Since there's currently no way to create kdbx files directly, I used the kppy module to generate the v1 database:


$ pip3 install kppy
$ python3 ~/Downloads/zoho-export.csv zoho-export.kdb
Password: <master password>

And then use Database / Import KeePass 1 database menu entry.