summaryrefslogtreecommitdiff
path: root/gnu/packages/password-utils.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/password-utils.scm')
-rw-r--r--gnu/packages/password-utils.scm131
1 files changed, 108 insertions, 23 deletions
diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index 9ac30420b7..a63fd9bb36 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -19,6 +19,8 @@
;;; Copyright © 2018 Konrad Hinsen <konrad.hinsen@fastmail.net>
;;; Copyright © 2018 Thomas Sigurdsen <tonton@riseup.net>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com>
+;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -61,6 +63,8 @@
#:use-module (gnu packages man)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
+ #:use-module (gnu packages opencl)
+ #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-web)
@@ -96,7 +100,7 @@ human.")
(define-public keepassxc
(package
(name "keepassxc")
- (version "2.3.3")
+ (version "2.3.4")
(source
(origin
(method url-fetch)
@@ -105,27 +109,17 @@ human.")
version "-src.tar.xz"))
(sha256
(base32
- "1m8alsp39vk21zgcvy5zswk0dc1xmajbwnccg7n0lndsi7pqbzyg"))))
+ "02kq0a7a7hpw824n03apma00yq1c6dds224g15mrnnqqjn4af90c"))))
(build-system cmake-build-system)
(arguments
'(#:configure-flags '("-DWITH_XC_NETWORKING=YES"
"-DWITH_XC_BROWSER=YES"
- "-DWITH_XC_SSHAGENT=YES")
- #:phases
- (modify-phases %standard-phases
- ;; should be fixed in 2.3.3+, see:
- ;; https://github.com/keepassxreboot/keepassxc/pull/1964
- (add-after 'unpack 'patch-sources
- (lambda _
- (substitute* "src/gui/entry/EditEntryWidget.cpp"
- (("#include <QColorDialog>") "#include <QColorDialog>
-#include <QButtonGroup>"))
- #t)))))
+ "-DWITH_XC_SSHAGENT=YES")))
(inputs
`(("argon2" ,argon2)
- ("curl" ,curl) ; XC_NETWORKING
+ ("curl" ,curl) ; XC_NETWORKING
("libgcrypt" ,libgcrypt)
- ("libsodium" ,libsodium) ; XC_BROWSER
+ ("libsodium" ,libsodium) ; XC_BROWSER
("libxi" ,libxi)
("libxtst" ,libxtst)
("qtbase" ,qtbase)
@@ -140,7 +134,7 @@ manage your passwords in a secure way. You can put all your passwords in one
database, which is locked with one master key or a key-file which can be stored
on an external storage device. The databases are encrypted using the
algorithms AES or Twofish.")
- ;; Non functional parts use various licences.
+ ;; Non-functional parts use various licences.
(license license:gpl3)))
(define-public keepassx
@@ -358,7 +352,7 @@ any X11 window.")
(define-public password-store
(package
(name "password-store")
- (version "1.7.2")
+ (version "1.7.3")
(source (origin
(method url-fetch)
(uri
@@ -366,7 +360,7 @@ any X11 window.")
name "-" version ".tar.xz"))
(sha256
(base32
- "1sl0d7nc85c6c2bmmmyb8rpmn47vhkj831l153mjlkawjvhwas27"))))
+ "1x53k5dn3cdmvy8m4fqdld4hji5n676ksl0ql4armkmsds26av1b"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@@ -383,9 +377,9 @@ any X11 window.")
#t))
(add-after 'install 'install-passmenu
(lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (copy-file "contrib/dmenu/passmenu"
- (string-append out "/bin/passmenu"))
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (install-file "contrib/dmenu/passmenu" bin)
#t)))
(add-after 'install 'wrap-path
(lambda* (#:key inputs outputs #:allow-other-keys)
@@ -422,7 +416,7 @@ any X11 window.")
("which" ,which)
("xclip" ,xclip)
("xdotool" ,xdotool)))
- (home-page "http://www.passwordstore.org/")
+ (home-page "https://www.passwordstore.org/")
(synopsis "Encrypted password manager")
(description "Password-store is a password manager which uses GnuPG to
store and retrieve passwords. The tool stores each password in its own
@@ -458,8 +452,18 @@ through the pass command.")
(let ((out (assoc-ref outputs "out")))
(substitute* "Makefile"
(("PREFIX = /usr") (string-append "PREFIX = " out)))
+ (substitute* "libargon2.pc"
+ (("prefix=/usr") (string-append "prefix=" out))
+ (("@HOST_MULTIARCH@") "")
+ (("@UPSTREAM_VER@") ,version))
#t)))
- (delete 'configure))))
+ (delete 'configure)
+ (add-after 'install 'install-argon2.pc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (install-file "libargon2.pc"
+ (string-append out "/lib/pkgconfig"))
+ #t))))))
(home-page "https://www.argon2.com/")
(synopsis "Password hashing library")
(description "Argon2 provides a key derivation function that was declared
@@ -697,3 +701,84 @@ rotating passwords on various web services. It makes it easier to rotate your
passwords, one at a time or in bulk, when security events or routine upkeep of
your online accounts makes it necessary.")
(license license:expat)))
+
+(define-public hashcat
+ (package
+ (name "hashcat")
+ (version "4.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://hashcat.net/files/hashcat-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "170i2y32ykgzb1qf1wz3klwn31c09bviz4x3bnrwia65adqrj8xx"))))
+ (native-inputs
+ `(("opencl-headers" ,opencl-headers)))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f ;no tests
+ #:make-flags (list (string-append "PREFIX=" %output))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (home-page "https://hashcat.net/hashcat/")
+ (synopsis "Advanced password recovery utility")
+ (description "Hashcat is an password recovery utility, supporting five
+unique modes of attack for over 200 highly-optimized hashing algorithms.
+Hashcat currently supports CPUs, GPUs, and other hardware accelerators on
+Linux, Windows, and macOS, and has facilities to help enable distributed
+password cracking.")
+ (license license:expat)))
+
+(define-public hashcat-utils
+ (package
+ (name "hashcat-utils")
+ (version "1.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/hashcat/hashcat-utils/releases/download/v"
+ version "/hashcat-utils-1.8.7z"))
+ (sha256
+ (base32
+ "1x80rngjz7gkhwplhw1iqr0wzb6hjkrjfld2kz9kmgp5dr9nys1p"))))
+ (native-inputs
+ `(("p7zip" ,p7zip)))
+ (inputs
+ `(("perl" ,perl)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ;no tests
+ #:make-flags (list "CC=gcc"
+ ;; Upstream bug(?): "make all" seems to remove the
+ ;; Perl scripts from the source.
+ "native")
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'unpack
+ (lambda* (#:key source #:allow-other-keys)
+ (invoke "7z" "x" source)
+ (chdir (string-append "hashcat-utils-" ,version "/src"))
+ #t))
+ (delete 'configure)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (string-append (assoc-ref outputs "out") "/bin")))
+ (mkdir-p out)
+ (for-each (lambda (file)
+ (copy-file file (string-append out "/" (basename file ".bin"))))
+ (find-files "." "\\.bin$"))
+ (for-each (lambda (file)
+ (copy-file file (string-append out "/" (basename file ".pl"))))
+ (find-files "../bin" "\\.pl$"))
+ #t))))))
+ (home-page "https://github.com/hashcat/hashcat-utils/")
+ (synopsis "Small utilities that are useful in advanced password cracking")
+ (description "Hashcat-utils are a set of small utilities that are useful
+in advanced password cracking. They all are packed into multiple stand-alone
+binaries. All of these utils are designed to execute only one specific
+function. Since they all work with @code{STDIN} and @code{STDOUT} you can
+group them into chains.")
+ (license license:expat)))