Skip to content
Switch branches/tags

Commits on Jun 23, 2017

  1. Command line tool that decrypts an OPVault keychain and dumps it to s…

    To compile: gcc -o opvault opvault.c cJSON.c -lcrypto
    Usage: ./opvault </path/to/mykeychain.opvault> <password>
    This is just a proof of concept; I'll be recycling this into proper OPVault
    support in 1pass later and deleting this tool.
    This uses OpenSSL's libcrypto for the math instead of all the homegrown
    crypto this project is otherwise using. I'll probably migrate the rest in
    this direction, too, since this wasn't as bad as I expected to use and
    gets you all the package-manager mojo of automatic bug fixes and security
    patches and shared code, etc.
    cJSON parses JSON in C. That is from
    An example OPVault keychain from AgileBits is available here:
    icculus committed Jun 23, 2017

Commits on Jun 18, 2017

  1. Added One Time Password support.

    This is only for time-based OTP for now ("TOPT" algorithm), but that's more
    or less what one expects to see in the wild anyhow.
    This is sort of a placeholder UI until I replace the entire existing UI with
    something better.
    icculus committed Jun 18, 2017
  2. Replaced existing HMAC-SHA1 code in pkcs5_pbkdf2.c with my new one.

    Didn't realize this was already here, doh! It was a good learning experience
    in any case!
    icculus committed Jun 18, 2017
  3. Implemented SHA1Hmac().

    icculus committed Jun 18, 2017

Commits on Jun 14, 2017

  1. Closing gtkui branch.

    icculus committed Jun 14, 2017

Commits on Dec 17, 2016

Commits on Mar 23, 2016

Commits on Jan 1, 2016

  1. Updated copyright.

    icculus committed Jan 1, 2016

Commits on Nov 9, 2015

  1. Added experimental support for using a "trusted device."

    This might be a terrible idea, just experimenting here.
    icculus committed Nov 9, 2015

Commits on Oct 18, 2015

  1. Moved to a more robust GTK UI.

    This removes the popup windows, in favor of something searchable, etc, but
    it's not without its problems, too, so it's sitting in branch until I decide
    I really like it or I should replace it with SDL or something.  :)
    (If someone can figure out how to get the window to steal focus when popped
    up, that would fix the most egregious issue, but there are other small
    details that need fixing, too.)
    icculus committed Oct 18, 2015

Commits on Apr 1, 2015

  1. Be more robust about i/o failures to the keychain.

    (and bail immediately if it's clearly missing.)
    icculus committed Apr 1, 2015

Commits on Feb 23, 2015

  1. Fixed driver license dates that might be missing (thanks, Patrick!).

    Some regions don't have expiring drivers licenses and don't use this field,
    or maybe might only use some parts (year, month, day). Made this more robust.
    icculus committed Feb 23, 2015

Commits on Jul 9, 2014

  1. Don't crash if you get one of these "{}" entries that 1Password makes.

    It looks like some version of 1Password has obsolete entries that still have
    JSON files listed, but the entirety of the JSON is "{}" ... we now check if we
    got an empty table back from the Lua JSON parser and treat it as a dead entry.
    icculus committed Jul 9, 2014
  2. chdir() to where the binary is running from before doing anything else.

    This is so we can find our script files, etc, regardless of where the
     program is run from.
    Note that this means your 1Password symlink needs to live where the binary
     does, at least until we let you specify one elsewhere.
    icculus committed Jul 9, 2014

Commits on May 1, 2014

Commits on Apr 19, 2014

  1. Pick out the right password when multiple passwords are included.

    This happens when you update a password field in the official 1Password app,
     at least on Mac OS X, as I discovered thanks to Heartbleed.
    icculus committed Apr 19, 2014