strongbox-password-safe / Strongbox

A KeePass/Password Safe Client for iOS and OS X
https://strongboxsafe.com
GNU Affero General Public License v3.0
1.29k stars 100 forks source link

Import from Enpass #762

Open Tekl opened 5 months ago

Tekl commented 5 months ago

Hi,

thanks for adding Wifi sync. This could be the final reason for many people to switch from Enpass to a KeePass-based Password Manager. The current solutions with Python scripts like enpasstokeepass are not perfect. For example, creation dates or icons are omitted. A native and user-friendly way to migrate from Enpass JSON to Strongbox would be great.

strongbox-mark commented 5 months ago

Hi @Tekl - Yes, that's not a bad idea. Do you know the format of this JSON file? Would you be able to attach a dummy sample or post a spec of the format?

I believe KeePass on Windows does support importing this? Do you have access there, or know if that's the case?

Tekl commented 4 months ago

Hi @strongbox-mark, thanks for your reply and the interest. The Windows version only supports the CSV format from Enpass. But those files don't contain attachments or tags. I've attached an example export in both formats and a screenshot. The example "AudioBook Builder" entry contains a custom icon and an attachment. Icons are stored centralized in Enpass so you can use them in multiple entries. It seems that Favicons aren't part of the export. The field labels are localized, my export has mixed English and German entries.

enpass-test-export.csv enpass-test-export.json Screenshot 2024-02-05 at 13 11 52

strongbox-mark commented 4 months ago

Wow, that's great work, thanks... One thing will be problematic. It looks like Enpass doesn't really do "Groups" or traditional folders, but it does tags. This is fine, we can handle this, but it also seems to have hierarchical tags (e.g. "irgendwas" above), which isn't supported in the KeePass format.

Probably not a major issue, I don't think hierarchical tags make much sense in general anyway, it's just going to have a flatter look on the side bar.

We'd probably create groups for the "Kategorien" as we do for 1Password import.

Tekl commented 4 months ago

The script EnpassToKeepass also creates groups for the categories. Before preparing the export, I didn't know that Enpass supports nested tags. 😉 Importing them "flat" would be okay for most users, I think.

In the JSON file the category doen't show the sub-categories which are accessible when creating entries in Enpass. The item "template_type" shows what I've selected there. That could be used to create subfolders.

Here's an overview of the dialogs: Screenshot 2024-02-06 at 13 58 54

strongbox-mark commented 4 months ago

Hi @Tekl - This is now available in 1.59.5, would be interested to hear your thoughts.