MrC's Convert to 1Password Utility (mrc-converter-suite)

Options
1242527293052

Comments

  • Zete
    Zete
    Community Member
    Options

    OK. I had had it ("pm_export.txt") on the desktop along with the onepassword-utilities-master directory. So I moved it in that directory and tried to dragged it ("pm_export.txt") on top of the AppleScript_Conversion_Helper app. Same result. I must have something in the wrong location or I'm dragging the wrong thing. Can you please clarify? Thank you much.

  • MrC
    MrC
    Volunteer Moderator
    Options

    @Zete,

    You must still be using the 1.08 version of the converter suite (since you mention onepassword-utilities-master - that's 1.08). To use the AppleScript helper with Sierra, you need the 1.09 version, available in Testing Bits of the converter suite thread.

    Would you like some remote help? If so, send me an email (its at the top of the convert_to_1p4.pl script which you can open with a text editor). It will just take a few minutes in total.

  • edgfeider
    edgfeider
    Community Member
    Options

    @Mrc.
    Thank you. Did as you said. Got version 1.09. Left the whole folder on the desktop, dragged the wallet txt file onto the apple script, got a message if I wanted to use any conversion options (which I left blank) hit enter and got this:

    Gilless-Air-2:~ gillesfeider$ cd '/Users/gillesfeider/Desktop/convert_to_1p4' && /usr/bin/perl convert_to_1p4.pl ewallet '/Users/gillesfeider/Desktop/pm_export.txt' -v
    -bash: cd: /Users/gillesfeider/Desktop/convert_to_1p4: No such file or directory
    Gilless-Air-2:~ gillesfeider$

    Sorry to bother you with my problems. If you have any other suggestions, thanks!

  • MrC
    MrC
    Volunteer Moderator
    Options

    Hi @edgfeider,

    I'm sorry for the issues you are facing - I wish the process were a little simpler to use / describe. Its all very technical and geeky, and requires exactness unfortunately.

    This message:

    cd: /Users/gillesfeider/Desktop/convert_to_1p4: No such file or directory
    

    tells me the folder convert_to_1p4 itself is not directly on the Desktop. That is the exact folder (itself, with its contents) that needs to be on the Desktop.

    As I offered the user above...

    Would you like some remote help? If so, send me an email (its at the top of the convert_to_1p4.pl script which you can open with a text editor). It will just take a few minutes in total.

  • edgfeider
    edgfeider
    Community Member
    Options

    I'd gladly accept your help. Just sent you an e-mail!
    Thx.

  • edgfeider
    edgfeider
    Community Member
    Options

    Mike many thanks for your help. Best customer service ever. I got a file that I could import into 1Password. Only issue is that the info is not structured and hardly useable. But i guess that is an ewallet problem, a program that wasn't conceived to export/import in a structured way. Thx again.

  • MrC
    MrC
    Volunteer Moderator
    edited January 2017
    Options

    @edgfeider ,

    Glad to help out!

    Can you explain what you mean by "not structured", or "hardly usable"? I noticed from the verbose output of the conversion that several record categories were created. There may be some options we can run the conversion with to do some additional things for you.

    Or it could be, due to eWallet's terrible record separation, that some records were merged (due to being unable to clearly distinguish one record from the next).

    I'll await your reply to see what can be done next...

  • edgfeider
    edgfeider
    Community Member
    Options

    I'm in Europe, way beyond my bedtime for this now. I might be in touch again tomorrow. You've done more than can be expected. Just hope that 1password rewards you for your capabilities and dynamism!

  • Drew_AG
    Drew_AG
    1Password Alumni
    Options

    We're extremely fortunate to have MrC helping out on our forums - he's helped countless customers import data to 1Password, and I honestly don't know what we would do without him!

    @MrC, we probably don't say it enough, but from all of us at AgileBits: Thank you, thank you, thank you!!! :love:

  • kissakiwi
    kissakiwi
    Community Member
    Options

    Hi @MrC I am having a bit of a problem that I hope you can help with.

    I want to convert my RoboForm logins to 1Password.
    I have downloaded the 1.09 version of tool.
    I am running Mac with latest OS
    I am running version 2.6.0 of Roboform on the Mac.
    I have doen the export as directed and when I ran the AppleScrip Helper, I got an error in Terminal to say 'Unexpected Roboform print list format"
    Is there a max level of Roboform that the tool will work with?

    Many thanks

  • MrC
    MrC
    Volunteer Moderator
    Options

    @kissakiwi ,

    Are you using Roboform in a non-English language? The error you see is caused by not being able to detect a certain keyword, and this can happen when the exported data comes from a non-English running Roboform.

    FYI: The converter has not been localized, but has the capability to be. I just can't do all the translations myself, and have to rely on others.

  • kissakiwi
    kissakiwi
    Community Member
    Options

    Hi @MrC

    Thanks for your quick response.
    No - it's just the English version, so list is very much in English. I am based in UK.

    I would be happy to share a portion of the print list file produced if you would like to see and it helps?

    Thanks,

  • MrC
    MrC
    Volunteer Moderator
    Options

    Hi @kissakiwi ,

    Ok, a shared sample of an entry or two would be great. You can email it to me. My email is at the top of the convert_to_1p4.pl script, which you can view with a text editor. Be sure no confidential information exists.

  • kissakiwi
    kissakiwi
    Community Member
    Options

    @MrC That's great thanks - Will have to do this evening when I am back home as dont have the Mac here with me in the office. Thanks again!

  • kissakiwi
    kissakiwi
    Community Member
    Options

    @MrC have sent you prive email with the file attached. Thanks

  • MrC
    MrC
    Volunteer Moderator
    Options

    @kissakiwi ,

    I have it, thanks, and will follow-up via email. We can summarize here when completed.

  • hellosunshine
    hellosunshine
    Community Member
    Options

    Hi there! I'm trying to import my OS X Keychain passwords into 1Password, but am running into a problem. I successfully exported the local and iCloud keychains, and those files, along with the convert_to_1p4 folder, are all on my desktop. When I drag either exported file (pm_export-icloud.txt and pm_export.txt) to the AppleScript_Conversion_Helper, I get an error message:

    Can't open perl script "convert_to_1p4.pl": No such file or directory

    This has happened to me multiple times. Terminal is also unable to find the perl script when I try to run the conversion manually, even though I used the command given in Step 3 of the ReadMe that tells it to look in the convert_to_1p4 folder.

    Any advice?? I'm running OS X 10.12.2.

    Thanks so much for building this tool! Looking forward to having everything successfully imported....

  • MrC
    MrC
    Volunteer Moderator
    Options

    Hi @hellosunshine ,

    You're welcome!

    See this post to see it helps. This is a Sierra change, and you'll need the 1.09 version of the converter.

  • hellosunshine
    hellosunshine
    Community Member
    Options

    @MrC thanks! I just downloaded the 1.09 version from "Testing bits" and dragged the new convert_to_1p4 folder to the desktop, but when I try to open the AppleScript converter, I get a dialog box saying "%@" can't be found. I deleted the folder, did it all again, and got the same result. Any thoughts?

  • MrC
    MrC
    Volunteer Moderator
    Options

    @hellosunshine ,

    I'd like to get to the bottom of what might be causing this. Sierra presented a few bumps. Would you be amenable to some remote help, so we can do this together, and I can see the situation you're in? This way, I can resolve it, or at least understand what is causing this particular error so that I can document it or provide a workaround.

    If so, please send me an email - my email is at the top of the convert_to_1p4.pl script, which you can view with a text editor. We'll go from there.

  • hellosunshine
    hellosunshine
    Community Member
    Options

    @MrC sounds great! thanks so much—I'll send you an email right now.

  • Pilar
    Pilar
    1Password Alumni
    Options

    Hi @hellosunshine

    I'm so glad to hear that @MrC is being able to help you sort all this out! Please let us know how it all turns out :chuffed:

    Thanks so much @MrC for all your help!

  • hellosunshine
    hellosunshine
    Community Member
    Options

    Hey @Pilar-- @MrC was able to get it sorted in about three minutes flat. (Thanks so much, @MrC!). I'm good to go from here! Thanks for checking.

  • stowington
    stowington
    Community Member
    Options

    @MrC , thanks for the scripts!

    I am trying to import from my OS X (Sierra) keychain. The 1.09 converter ran successfully on my iCloud keychain and I was able to import the resulting file into 1Password, but I got an error message in Terminal when I tried to convert my login keychain:

    Unexpected undefined value in class=genp attribute 'genp'
    genp

    Does this mean anything to you?

    Thanks!

  • MrC
    MrC
    Volunteer Moderator
    edited January 2017
    Options

    Hi @stowington ,

    You're very welcome.

    I'm not certain why are getting that error, but it is fatal, meaning the converter aborts before the entire keychain is processed.

    The reason for the error is that there is some unexpected format in your Keychain. A dumped keychain has one or more entries that all follow a particular pattern, each looks like this:

    keychain: "/Users/cappella/Library/Keychains/login.keychain-db"
    version: 512
    class: "genp"
    attributes:
        0x00000007 <blob>="com.apple.account.AppleID.appleid-token-gamecenter"
        0x00000008 <blob>=<NULL>
        "acct"<blob>="mrc@example.com"
        "cdat"<timedate>=0x32303133303332393031323434375A00  "20130329012447Z\000"
        "crtr"<uint32>=<NULL>
        "cusi"<sint32>=<NULL>
        "desc"<blob>=<NULL>
        "gena"<blob>=<NULL>
        "icmt"<blob>=<NULL>
        "invi"<sint32>=<NULL>
        "mdat"<timedate>=0x32303133303332393031323434375A00  "20130329012447Z\000"
        "nega"<sint32>=<NULL>
        "prot"<blob>=<NULL>
        "scrp"<sint32>=<NULL>
        "svce"<blob>="com.apple.account.AppleID.appleid-token-gamecenter"
        "type"<uint32>=<NULL>
    data:
    "2:28:ABCDE...XYZ=:28:QRSTUV..ABC="
    

    If the last part - the "data:" part is missing, you'll get the error you see. I've never seen this, but perhaps it is OK that there is no data section. I'd have to make some changes to accommodate this, since I use the "data:" marker to tell me the entry has ended.

    If you can run the converter in debug mode, it can help you verify my theory. Add the -d option to the command line or in the extra options area in the AppleScript helper if you used that.

    It will output many lines, but when you get the problem record, the converter will abort. You'll see at the end something like:

    do_import           : Entry 109
    do_import           : raw attibute list:
    genp
    Unexpected undefined value in class=genp attribute 'genp'
    genp
    

    But there isn't enough information there to help identify the record (besides it being record 109). You could examine your keychain export and scan down until you pass through 108 "keychain:" lines, or you could scroll the screen of debug output up a few lines until you see the data in the previous record (108). It will have a list of attributes:

    do_import           : Entry 108
    do_import           : raw attibute list:
        0x00000007 <blob>="com.apple.assistant"
        0x00000008 <blob>=<NULL>
        "acct"<blob>="40D21974-1254-1342-B993-0985745EB0 - Assistant Identifier"
        "cdat"<timedate>=0x32303136313231363032303735395A00  "20161216020759Z\000" 
        ...
    

    and you could search your keychain export file for something from those attributes that seems unique, like the value "40D21974-1254-1342-B993-0985745EB0". If you find only one, the next keychain record after that is the offending record that is missing a data: section.

    Does this make sense? Do you think you can verify that indeed a data: section is missing?

  • stowington
    stowington
    Community Member
    Options

    Hi @MrC,

    Thanks for the quick and detailed reply. After the last successful entry there are in fact three that look problematic (ellipses where information was deleted for privacy/length):

    keychain: "/Users/.../Library/Keychains/login.keychain-db"
    version: 512
    class: "genp"
    attributes:
    keychain: "/Users/.../Library/Keychains/login.keychain-db"
    version: 512
    class: "genp"
    attributes:
        0x00000007 <blob>="...@mac.com SharedServices"
        0x00000008 <blob>=<NULL>
        "acct"<blob>="... (.Mac Sharing Certificate)"
        "cdat"<timedate>=0x32303038313032383230323834305A00  "20081028202840Z\000"
        "crtr"<uint32>="aapl"
        "cusi"<sint32>=<NULL>
        "desc"<blob>=<NULL>
        "gena"<blob>=0x7... "ssui... APPLE .MAC CERTIFICATE AUTHORITY\000\000\000\003I\320\316"
        "icmt"<blob>=<NULL>
        "invi"<sint32>=<NULL>
        "mdat"<timedate>=0x32303038313032383230323834335A00  "20081028202843Z\000"
        "nega"<sint32>=<NULL>
        "prot"<blob>=<NULL>
        "scrp"<sint32>=<NULL>
        "svce"<blob>="...@mac.com SharedServices"
        "type"<uint32>="iprf"
    data:
    

    And then another with a blank data: section.

    So deleting these entries should allow the rest to go through?

  • MrC
    MrC
    Volunteer Moderator
    edited January 2017
    Options

    Hi @stowington ,

    You are awesome!

    Yes, you can try deleting the currently problematic records to see if you can convert successfully. Delete from "keychain: ..." to "data:...", each "keychain: ..." entry being the start of a record.

    Suggestion, keep your current keychain export for a bit, and make modifications to a copy, so that I can update the converter for you to test.

    If I'm understanding you correctly, there are entries where there is a "data:" line, but no follow-on data, and either the file ends, or the next "keychain: ..." entry begins. Is this correct?

    Edit: hmmm I just tested those two conditions, and don't get the error. The only time I get the error is when there is no "data:" label or follow on data at all. I'll await your clarification.

    Edit2:, sorry, I looked more carefully at your data, and used it to test. I see what the issue is - there is an entry with an empty attributes list and no data section. That seems to be an entirely useless entry, and I can't imagine why it is in the keychain export.

  • stowington
    stowington
    Community Member
    Options

    It sounds like it's getting stuck on that first one I copied, then, which has nothing after "attributes:". You're right, the next two entries have nothing but a blank line between "data:" and the next "keychain:".

    Deleting the entry with the empty "attributes:" section allowed the converter to finish.

  • MrC
    MrC
    Volunteer Moderator
    Options

    @stowington ,

    Got it. My Edit2 above addressed, this. I'll see what I can do to update the converter to handle this bizarre case.

  • MrC
    MrC
    Volunteer Moderator
    edited January 2017
    Options

    @stowington ,

    Can you try the keychain.pm file with your original data, that I've placed in Testing Bits here:

    https://www.dropbox.com/sh/g8ruqcmnyafblf6/AADg6tWQQ_yrkhdcCf1TK9uja?dl=0

    It skips essentially empty keychain entries, and the debug message is:

    do_import : Entry 5
    do_import : skipping empty keychain entry: no attributes

    Replace your Converters/Keychain.pm file with the updated version, and re-run the conversion.

This discussion has been closed.