aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-10-10 01:03:33 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-10-10 01:03:33 -0400
commite4dbc257948a3a322ac00e665ae5e83c045a8c6d (patch)
tree91bd1312afa2cebc2731cb737bcceab143a1565c
parent4451d08828994f6f9d711188edbe9c4c8256e022 (diff)
downloadguix-e4dbc257948a3a322ac00e665ae5e83c045a8c6d.tar
guix-e4dbc257948a3a322ac00e665ae5e83c045a8c6d.tar.gz
gnu: Add python-zxcvbn.
* gnu/packages/python-crypto.scm (python-zxcvbn): New variable.
-rw-r--r--gnu/packages/python-crypto.scm30
1 files changed, 30 insertions, 0 deletions
diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index d8e52225c1..00b1e8c803 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -1760,3 +1760,33 @@ supply a handful of python functions as methods to a class.")
(description "This package provides a Python ECDSA library, optimized for
speed but without C extensions.")
(license license:expat)))
+
+(define-public python-zxcvbn
+ (package
+ (name "python-zxcvbn")
+ (version "4.4.28")
+ (source (origin
+ (method git-fetch) ;for tests
+ (uri (git-reference
+ (url "https://github.com/dwolfhub/zxcvbn-python")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0xzlsqc9h0llfy19w4m39jgfcnvzqviv8jhgwn3r75kip97i5mvs"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/dwolfhub/zxcvbn-python")
+ (synopsis "Realistic password strength estimator Python library")
+ (description "This is a Python implementation of the @code{zxcvbn} library
+created at Dropbox. The original library, written for JavaScript, can be
+found @url{https://github.com/dropbox/zxcvbn, here}. This port includes
+features such as:
+@enumerate
+@item Accepts user data to be added to the dictionaries that are tested
+against (name, birthdate, etc.)
+@item Gives a score to the password, from 0 (terrible) to 4 (great).
+@item Provides feedback on the password and ways to improve it.
+@item Returns time estimates on how long it would take to guess the password
+in different situations.
+@end enumerate")
+ (license license:expat)))