Commit graph

39 commits

Author SHA1 Message Date
Ivailo Monev
7dc5187778 kdecore: replace most of KRandomSequence with new KRandom::randomMax() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-26 12:58:37 +03:00
Ivailo Monev
7026d992e9 kutils: switch password store cipher to AES-256 CBC
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-21 02:03:46 +03:00
Ivailo Monev
43e773758a kutils: build fix for the case when HAVE_OPENSSL is not defined
for reference:
https://github.com/fluxer/katana/issues/33

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-07-19 21:00:13 +03:00
Ivailo Monev
4a4c85431e kdecore: move K_EXPORT_PLUGIN() macro to kpluginfactory header [ci reset]
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-31 09:06:11 +03:00
Ivailo Monev
e4c7b66490 kdecore: move K_EXPORT_PLUGIN() macro to kpluginloader header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-30 22:01:35 +03:00
Ivailo Monev
926345627a generic: bump minimum Katie version requirement to 4.12.0
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 03:54:07 +03:00
Ivailo Monev
400f5bfe01 kutils: KPasswdRouletteDialog clarification
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-12 20:33:31 +03:00
Ivailo Monev
aad42e8b56 kutils: not so generic KDED modules descriptions
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-12 01:15:06 +03:00
Ivailo Monev
56c272bba5 kutils: cache cipher block size and fix build without OpenSSL
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-02 16:31:30 +03:00
Ivailo Monev
7d47c9b699 kutils: implement password generator for KPasswdRouletteDialog
fortune favours the brave:
https://ibb.co/G04BWRR

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-28 15:18:20 +03:00
Ivailo Monev
31976a9582 kutils: mark KPasswdStore and KPasswdRouletteDialog as stable
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-10 03:27:21 +03:00
Ivailo Monev
9eb97d4d78 kutils: use OpenSSL functions to get cipher key and initialization vector length
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-09 16:53:15 +03:00
Ivailo Monev
07ad923cf2 kutils: implement config options for the cookie type, number of retries and timeout
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-09 16:02:48 +03:00
Ivailo Monev
cea6ac00f4 kutils: limit the store password length to the key length
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-09 13:36:33 +03:00
Ivailo Monev
58a511fa8f kutils: switch password store cipher to Blowfish CFB 2022-04-09 01:52:08 +03:00
Ivailo Monev
cc1d2b01e0 kutils: KPasswdStore documentation clarification
here is what a store looks like:
https://ibb.co/Pc5Ky9w

things are different for both KPasswdStore and KWallet from the perspective
of `dbus-monitor` tho

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-07 04:02:42 +03:00
Ivailo Monev
87a765a21b kutils: do not assume password contains latin only characters in base64 implementation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 19:38:41 +03:00
Ivailo Monev
b8655d7296 kutils: somewhat automatic KPasswdStore test
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 19:04:48 +03:00
Ivailo Monev
92ddfed63a kutils: convert byte-generator method to static function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 16:55:39 +03:00
Ivailo Monev
c3c8b942a8 kutils: link kpasswdstore library to kdeui library
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 16:05:37 +03:00
Ivailo Monev
c1b2744596 kutils: separate the glue from the actual password store implementation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 15:39:18 +03:00
Ivailo Monev
a6dbc9fa93 kutils: reimplement password store as KDED module
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 06:42:21 +03:00
Ivailo Monev
fc6fa44f47 kutils: fix encryption and decryption of long passwords
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 03:43:19 +03:00
Ivailo Monev
2e3be50bfb kutils: do not attempt to encrypt empty passwords
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 02:40:06 +03:00
Ivailo Monev
0481bb3b61 kutils: optimize password store opening
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 21:11:45 +03:00
Ivailo Monev
e1701d2ec7 kutils: new KPasswdRouletteDialog class part of kpasswdstore library
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 20:34:15 +03:00
Ivailo Monev
ef663a874e kutils: add missing Q_OBJECT in KPasswdStore declaration
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 19:12:14 +03:00
Ivailo Monev
5ae08ac8a9 kutils: do not retry on storage open if dialogs are not accepted
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 18:10:50 +03:00
Ivailo Monev
08646e57ce kutils: use KPasswdStore::makeKey() for password hash
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 17:55:48 +03:00
Ivailo Monev
767b81e0c2 kutils: increase password inactivity time to 2 minutes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 17:38:24 +03:00
Ivailo Monev
2bca331971 kutils: use KNewPasswordDialog to get initial store password
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 17:33:51 +03:00
Ivailo Monev
33f2246be7 kutils: do not attempt to decrypt empty password if there is not entry for the key
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 17:01:15 +03:00
Ivailo Monev
1897ee447e kutils: brief KPasswdStore design documentation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 16:39:32 +03:00
Ivailo Monev
335d5b39d8 kutils: members of KPasswdStore data pointer no longer have to be mutable
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 16:38:27 +03:00
Ivailo Monev
4890b72db9 kutils: add method to open passwords store manually
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 00:35:59 +03:00
Ivailo Monev
1fe3f61065 generic: port KIO to KPasswdStore and drop kwallet and kwasswdserver
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-04 23:32:58 +03:00
Ivailo Monev
4634b5c14f kutils: verify the password when re-opening the store and fallback to cache-only mode
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-04 21:20:54 +03:00
Ivailo Monev
b76ccab478 kutils: generate password and initialization vector bytes when getting the password
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-04 20:08:54 +03:00
Ivailo Monev
c19956a9ca kutils: new kpasswdstore library
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-04 19:45:35 +03:00