This is the command kpcli that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
kpcli - A command line interface to KeePass database files.
A command line interface (interactive shell) to work with KeePass database files
(http://http://en.wikipedia.org/wiki/KeePass). This program was inspired by my use of
"kedpm -c" combined with my need to migrate to KeePass. The curious can read about the Ked
Password Manager at http://kedpm.sourceforge.net/.
Please run the program and type "help" to learn how to use it.
This program requires these non-core modules:
"Crypt::Rijndael" - libcrypt-rijndael-perl on Ubuntu 10.04
"Term::ReadKey" - libterm-readkey-perl on Ubuntu 10.04
"Sort::Naturally" - libsort-naturally-perl on Ubuntu 10.04
"File::KeePass" - libfile-keepass-perl on Ubuntu 12.04
"Term::ShellUI" - libterm-shellui-perl on Ubuntu 12.10
It is recommended that you install "Term::ReadLine::Gnu" which will provide more fluid
signal handling on Unix-like systems, making kpcli robust to suspend, resume, and interupt
- SIGSTP, SIGCONT and SIGINT. That module is in the libterm-readline-gnu-perl package on
You can optionally install "Clipboard" and "Tiny::Capture" to use the clipboard features;
http://search.cpan.org/~king/Clipboard/ and libcapture-tiny-perl on Ubuntu 10.04.
You can optionally install "Data::Password" to use the pwck feature (Password Quality
Check); libdata-password-perl on Ubuntu 10.04.
On MS Windows, you can optionally install "Win32::Console::ANSI" to get ANSI colors in
Windows cmd terminals. Strawberry Perl 5.16.2 was used for the kpcli port to Windows and,
using cpanminus, one can install all of kpcli's dependencies, sans Term::ReadLine::Gnu
which is optional for kpcli and not supported on MS Windows.
CAVEATS AND WORDS OF CAUTION
The main author of kpcli primarily interoperability tests with KeePassX
(http://www.keepassx.org/) and primarily uses KeePass v1 (*.kdb) files. Support for
KeePass v2 (*.kdbx) files in kpcli is substantial, and many people use it daily, but it is
not the author's primary use case. It is also the author's intent to maintain
compatibility with v1 files, and so anyone sending patches, for consideration for
inclusion in future kpcli versions, is asked to validate them with both v1 and v2 files.
No history tracking for KeePass 2 (*.kdbx) files
Recording entries' history in KeePass 2 files is not implemented. History that exists in a
file is not destroyed, but results of entry changes made in kpcli are not recorded into
their history. Prior-to-change copies are stored into the "Recycle Bin." Note that
File::KeePass does not encrypt passwords of history entries in RAM, like it does for
current entries. This is a small security risk that can, in theory, allow priviledged
users to steal your passwords from RAM, from entry history.
File::KeePass bug prior to version 2.03
Prior to version 2.03, File::KeePass had a bug related to some "unknown" data that
KeePassX stores in group records. For File::KeePass < v2.03, kpcli deletes those unknown
data when saving. Research in the libkpass (http://libkpass.sourceforge.net/) source code
revealed that what early versions of File::KeePass classifies as "unknown" are the times
for created/modified/accessed/expires as well as "flags" (id=9), but only for groups;
File::KeePass handled those fields just fine for entries. I found no ill-effect from
dropping those fields when saving and so that is what kpcli does to work around the
File::KeePass bug, if kpcli is using File::KeePass < v2.03.
Use kpcli online using onworks.net services