-
Notifications
You must be signed in to change notification settings - Fork 35
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
Add BCrypt and Argon2 password handling to crypto module #577
Add BCrypt and Argon2 password handling to crypto module #577
Conversation
…om/randilt/module-ballerina-crypto into implement-password-handling-bcrypt
…and hash formatting
…e comparison method
…es on hash uniqueness
@randilt Thank you for your contribution. @MohamedSabthar @DimuthuMadushan Please review the new APIs. |
native/src/main/java/io/ballerina/stdlib/crypto/PasswordUtils.java
Outdated
Show resolved
Hide resolved
native/src/main/java/io/ballerina/stdlib/crypto/nativeimpl/Password.java
Outdated
Show resolved
Hide resolved
native/src/main/java/io/ballerina/stdlib/crypto/nativeimpl/PasswordArgon2.java
Outdated
Show resolved
Hide resolved
…sword.java Co-authored-by: Danesh Kuruppu <[email protected]>
…swordArgon2.java Co-authored-by: Danesh Kuruppu <[email protected]>
…java Co-authored-by: Danesh Kuruppu <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry for this "drive-by" review. Hopefully these comments are useful, but I am not a project member so feel free to consider these comments at most as suggestions. I don't want to disrupt this review process.
native/src/main/java/io/ballerina/stdlib/crypto/PasswordUtils.java
Outdated
Show resolved
Hide resolved
native/src/main/java/io/ballerina/stdlib/crypto/nativeimpl/Password.java
Outdated
Show resolved
Hide resolved
…at for BCrypt and Argon2 hash formatting
@ThisaruGuruge @daneshk Please review the newly added changes. Added security fixes and improvements suggested by @Marcono1234 Thanks for the suggestions! @Marcono1234 |
…erina crypto module
…s to emphasize modularity and review process
…ude reviewer information and maintain formatting consistency
…ls and adjust creation/update dates
…ue references and enhance algorithm descriptions
…mation and adjust formatting
Co-authored-by: Danesh Kuruppu <[email protected]>
Quality Gate passedIssues Measures |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@randilt, thank you very much for your contribution. It will be included in our next release. |
I'm glad to contribute! Thank you all for your suggestions and support. I learned a lot during this PR. 😊 |
Purpose
This PR introduces implementation for BCrypt and Argon2id password hashing in Ballerina Crypto Module. It provides functions for securely hashing passwords, verifying them, and generating salts with customizable parameters. The support for both BCrypt and Argon2id allows for flexible and secure password management with different algorithms and configurable options like work factor (for BCrypt) and iterations, memory, and parallelism (for Argon2id).
Resolves: #2744
Fixes: ballerina-platform/ballerina-library#2441
Fixes: ballerina-platform/ballerina-library#2744
Examples
Checklist