Review Request 115497: Replace SHA with PBKDF2-SHA512+Salt
Àlex Fiestas
afiestas at kde.org
Thu Feb 6 11:43:50 GMT 2014
> On Feb. 5, 2014, 7:18 p.m., Michael Pyne wrote:
> > kwalletd/backend/kwalletbackend.cc, line 130
> > <https://git.reviewboard.kde.org/r/115497/diff/1/?file=242022#file242022line130>
> >
> > The salt here seems to be based off of the user's login-name, which can change (for instance, someday my KDE git user account will change away from "kde-svn"... I've just been lazy so far ;).
> >
> > Beyond that the salt should really be random bytes otherwise you could still build rainbow tables of the top-100 most popular user names, for instance.
> >
> > Using random bytes would complicate this since you'd have to actually store the salt and re-load it to re-derive the right key, but it's the right way to do it.
> >
> > In any event it's probably more important to ensure that there's no data loss if the user tries to open their wallet under a different UNIX login, even if we have to use a plain constant string as the salt.
>
> Àlex Fiestas wrote:
> I decided to use the username because this hash will be produced from a pam module as well, accessing users data from there is kind of messy and we will have to generate and then chown that salt so I decided to go with a shortcut for the time being.
>
> Will implement proper salt in a future patch if that's ok for you.
Actually that will force me to update again the hash which is messy, so going to write that code right now.
- Àlex
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/115497/#review49065
-----------------------------------------------------------
On Feb. 5, 2014, 3:10 p.m., Àlex Fiestas wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/115497/
> -----------------------------------------------------------
>
> (Updated Feb. 5, 2014, 3:10 p.m.)
>
>
> Review request for KDE Runtime, Teo Mrnjavac and Valentin Rusu.
>
>
> Repository: kde-runtime
>
>
> Description
> -------
>
> Uses the MINOR_VERSION (which until now it was 0) to upgrade the hash from SHA to PBKDF2-SHA512+salt.
> I would have loved to completely replace it once the wallet is ported to the new hashing but because
> of kwalletd code that is not possible without a bigger rewrite.
>
> There are 2 reasons for this patch:
> 1-We avoid using our own implementation of SHA
> 2-We use a modern hashing technique
>
> I'm cooking more patches to use the system user password to open the wallet, we want that password to be
> hashed using PBKDF2_SHA512 for security reasons.
>
>
> Diffs
> -----
>
> CMakeLists.txt 275a6c7
> cmake/modules/FindLibGcrypt.cmake PRE-CREATION
> kwalletd/backend/CMakeLists.txt 5a5837c
> kwalletd/backend/backendpersisthandler.cpp bdef6ca
> kwalletd/backend/kwalletbackend.h 83ebf7f
> kwalletd/backend/kwalletbackend.cc e4d461c
>
> Diff: https://git.reviewboard.kde.org/r/115497/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Àlex Fiestas
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20140206/f2d193ee/attachment.htm>
More information about the kde-core-devel
mailing list