-
-
Notifications
You must be signed in to change notification settings - Fork 5.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How can we make argon2 safe? #14702
Comments
Ok there are multiple options here, any and potentially all of which should be implemented:
I understand a user on discord is looking in to the second option right now - but I think we seriously need to consider both of the other options in addition. |
Argon2 memory usage could be configured by Gitea so that users could chose suitable variable according his system. |
That is point 2: Expose and make configurable the parameters used for hashing. |
Moving my comment over from #14294 (comment) (sorry! found that via the PR linked in latest release notes) Mostly interested in what the symptoms are here that we're trying to solve by ditching Argon2.
|
It's pertinent to point out that you can still use argon2, it just isn't the default anymore. |
OK I absolutely do not want this issue to turn into other issues that go round in circles without solutions. So further comments that do not address the memory issues with argon2 and the solutions proposed above or propose other solutions WILL be deleted.
It is not prudent to explain further than I have stated above: its memory use can be unbounded especially under LFS. @vladionescu If you want further explanation come to discord and chat to me directly. |
This comment has been minimized.
This comment has been minimized.
Fundamentally the issue is that hashing passwords is supposed to be expensive and has to be expensive in order to provide protection against cracking. Changing algorithm and adjusting its parameters etc. is not going to form a complete solution to this problem - it may well form part of the solution in order to tune parameters for running systems and allow more concurrent password checks - but it is not the solution. If we allow unlimited password validation we are going to run out resources simply because password validation is expensive. Our only options are to limit the amount of concurrent password validation actions on the server and to move users of the API and HTTP from using passwords to using tokens which are far less expensive to validate. |
Hey guys, I am oticing an increase of memory consumtion of 4 MB on a single user request to verify a password? |
Argon2 is clearly causing multiple problems due to its memory requirements, especially on lower spec'd systems.
I cannot recommend argon2 in good conscience at present as its memory use can be unbounded especially under LFS.
Ref #14674
The text was updated successfully, but these errors were encountered: