I've been using keepass and libkeepass to access the key database via Python. Although the code works on linux it does not work on Windows, I receive this error relating to the keyfile:
with libkeepass.open(db_path, keyfile) as kdb:
File "C:\Python27\lib\contextlib.py", line 17, in __enter__
return self.gen.next()
File "build\bdist.win-amd64\egg\libkeepass\__init__.py", line 33, in open
File "build\bdist.win-amd64\egg\libkeepass\kdb4.py", line 380, in __init__
File "build\bdist.win-amd64\egg\libkeepass\kdb4.py", line 54, in __init__
File "build\bdist.win-amd64\egg\libkeepass\common.py", line 137, in __init__
File "build\bdist.win-amd64\egg\libkeepass\kdb4.py", line 383, in read_from
File "build\bdist.win-amd64\egg\libkeepass\kdb4.py", line 72, in read_from
File "build\bdist.win-amd64\egg\libkeepass\common.py", line 143, in read_from
File "build\bdist.win-amd64\egg\libkeepass\kdb4.py", line 191, in _decrypt
IOError: Master key invalid.
I had quite a bit of trouble getting libkeepass installed on windows as opposed to linux. Not sure if this effecting it, the library loads fine it just doesn't seem to be able to use the keyfile.
I'm open to suggestions for a better key database that has a more robust python API if one exists, it needs to be a free to use piece of software?
TIA