Subject: [PATCH 1/4] gnu: Add hashcat.
From: Pierre Neidhardt <[email-masked]>
To: [email-masked]
Date: Tue, 31 Jul 2018 12:14:35 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

* gnu/packages/password-utils.scm (hashcat): New variable.
---
 gnu/packages/password-utils.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index 9ac30420b..91eb6d83f 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -19,6 +19,7 @@
 ;;; Copyright © 2018 Konrad Hinsen <[email-masked]>
 ;;; Copyright © 2018 Thomas Sigurdsen <[email-masked]>
 ;;; Copyright © 2018 Arun Isaac <[email-masked]>
+;;; Copyright © 2018 Pierre Neidhardt <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -61,6 +62,7 @@
   #:use-module (gnu packages man)
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages opencl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-web)
@@ -697,3 +699,33 @@ 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 advanced 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)))
-- 
2.18.0