Initial commit
Initial commit
Adjusted .gitignore to fulfill development requirements
Added two credential providers: Password and Keyfile
Added CredentialStore to manage all database credentials
Added Cryptography helper class
Added KeePassHeader class to safely store and retrieve the database header values
Added buildCompositeHash method to CredentialStore, which merges all credentials together
Made all methods within Cryptography helper class static
Fixed bug within get() method, which gave wrong return values
Added database loading and master key generation
buildCompositeHash() now returns a Buffer, which is more suitable for binary data
Fixed bug within both credential providers, added working database decryption
Added HBIO for checking database consistency, added database loading / saving flow, fixed minor bugs
Replaced unnecessary calls to jspack library with calls to Buffer library
Decided to drop jspack completely
When loading a database, the XML now gets parsed and all protected entries will be unlocked with the Salsa20 stream cipher
When saving a database, the JSON gets transformed back into an XML and all protected entries will be locked again with the Salsa20 stream cipher
Added Travis-CI configuration
Started working on testsuite, slowly removing chai()-asserts from production code, introduced custom errors