Closed khapota closed 10 years ago
Could you be more specific please? I can't find where keepassx uses more than one core for encryption/decryption. And to be honest I don't understand how this should work at all because I can see no point in the encryption/decryption process which could be parallelized (it would be really bad if one could parallelize AES-CBC...).
In my scenario, i use password and key to open database. I still do not look at keepassx and keepassc source code but i open my database with two programs then monitor cpu usage. It is very difference, keepassx uses double cpu compare to keepassc.
I'm sorry but what you describe has nothing to do with a parallelization of the encryption algorithm. First, the database is decrypted and lies unencrypted in the memory after this. There's no more decryption/encryption after this (except for locking). Second, KeePassX is a Qt-application, KeePassC a console application. Although KeePassX is written in C++ and KeePassC in Python I guess that using Qt as the GUI-Framework leads to much more resource usage.
I close this issue because as I already mentioned in my first post the question makes no sense as it is not possible to parallelize AES-CBC. If it would be we could renounce password managers with encryption and save our passwords in a normal textfile.
I see that keepassc use one core to process with database. But keepassx use all core to do that. Could you improve it?