mrc convertor suite [Bitwarden, Solved]
So I'm migrating my bitwarden to 1password and it works fine using the mrc suite, however after importing the 1pux file every single one of my passwords now have a note that says fido2credentials and a random number.
Removing this from every single password manually is not really doable with over 500 passwords. How can I import them without that note?
1Password Version: Not Provided
Extension Version: Not Provided
OS Version: Not Provided
Browser: Not Provided
Comments
-
Hi @jimmy1987
I'd be happy to provide you with a customized version of the bitwarden converter that simply ignores that field.
Can you provide me with a sample from the JSON export file that contains that field? You can obfuscate any confidential details.
I'm doing some updates on my VMs right now, so can't create this myself at the moment.
0 -
Hi @MrC
here you go, I took the top one, but every item has it.
"items": [
{
"passwordHistory": null,
"revisionDate": "2023-11-25T20:58:32.660Z",
"creationDate": "2023-11-25T20:58:32.650Z",
"deletedDate": null,
"id": "id",
"organizationId": null,
"folderId": null,
"type": 1,
"reprompt": 0,
"name": "1password.community",
"notes": null,
"favorite": false,
"login": {
"fido2Credentials": [],
"uris": [
{
"match": null,
"uri": "https://1password.community"
}
],
"username": "username",
"password": "password",
"totp": nullthe field fido2credentials 1password takes as notes.
0 -
LOL - your timing was excellent. I had just minutes before created an export using the latest Bitwarden!
I've updated the converter suite to ignore the empty fido2Credentials array. You can download the updated version, re-convert, and re-import to see if the change works for you.
0 -
Cheers, and thanks for reporting this.
Enjoy 1Password!
0 -
Thank you MrC. 😊
-Dave
0 -
Hi,
First of all thanks for creating and maintaining this helpful tool!! Using a lot of custom fields it is basically the only way for moving from Bitwarden to 1Password.Since the latest Bitwarden releases it is possible to store passkeys. They a are stored in a HASH in the "fido2Credentials" field. Unfortunately, this cannot be handled by the converter. Im not even sure that 1Password would import a passkey (see below)?
Anyway, where is the issue (using the latest version, 2023-11-26):
Not an ARRAY reference at mrc-converter-suite/./MCS/Generators/PUX.pm line 1123 (#1) (F) Perl was trying to evaluate a reference to an array value, but found a reference to something else instead. You can use the ref() function to find out what kind of ref it really was. See perlref. Uncaught exception from user code: Not an ARRAY reference at mrc-converter-suite/./MCS/Generators/PUX.pm line 1123. MCS::Generators::PUX::to_string(ARRAY(0x131d2b9e0)) called at mrc-converter-suite/./MCS/Generators/PUX.pm line 551 MCS::Generators::PUX::new_item(MCS::Generators::PUX=HASH(0x1118a1330), "login", HASH(0x111a0a768)) called at mrc-converter-suite/./MCS/Generators/PUX.pm line 412 MCS::Generators::PUX::gen_conversion_file(MCS::Generators::PUX=HASH(0x1118a1330), HASH(0x131b5b018), "./output/export", undef) called at convert.pl line 213
MCS/Generators/PUX.pm:551
: Calls "to_string" with$f->{'value'}
, which seems to be anARRAY
that contains aHASH
in case of a passkey (printed using Data::Dumper):print Dumper($f->{'value'}); $VAR1 = [ { 'rpName' => 'Service', 'credentialId' => '12345... uuid', 'creationDate' => '1999...', 'userDisplayName' => 'My-name', 'counter' => '1', ... } ];
Ok, since this is only a debug statement, we could get rid of it; temporarily. Then a "1pux" file is generated, which unfortunately 1Password refuses to import. It says something like "this is a know problem and we are currently working on it". So, maybe it is not possible to import passkeys at all at the moment.
As quick fix we could completely ignore fido2Credentials, but this of course omits valid values, too:
Converters/Bitwarden.pm:246
:next if $key eq 'fido2Credentials'; #hack and ! @$field;
0 -
How does this look for you?
Since 1Password doesn't export passkeys into a 1PUX, I don't have a template for possible conversion of the Bitwarden passkey into 1Password's. And since they don't export passkeys, I doubt its 1PUX importer could handle them anyway.
0 -
Hi, Looks better! :-) I'm unsure if the key data could and should be re-used, but no information is lost and in any case with this it's visible that a passkey was used. Then we can search for such entries and decide what to do with it (delete and/or re-create). Your tool should be integrated into the product and you get paid by 1Password!! ;-)
0 -
Great, thanks. I tend to learn towards keeping as much data as possible, allowing users to decide. I can always provide custom options or converters to skip this field.
I'll be posting an update later today, so this change will be included.
Thanks for you kind words and assistance.
1