summaryrefslogtreecommitdiff
path: root/gnu/packages/crates-crypto.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/crates-crypto.scm')
-rw-r--r--gnu/packages/crates-crypto.scm365
1 files changed, 363 insertions, 2 deletions
diff --git a/gnu/packages/crates-crypto.scm b/gnu/packages/crates-crypto.scm
index 399c0b5c58..59cc42eb77 100644
--- a/gnu/packages/crates-crypto.scm
+++ b/gnu/packages/crates-crypto.scm
@@ -1,15 +1,20 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019, 2020 John Soo <jsoo1@asu.edu>
+;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2020, 2022, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Valentin Ignatev <valentignatev@gmail.com>
;;; Copyright © 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021 Domagoj Stolfa <domagoj.stolfa@gmail.com>
;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2023 Steve George <steve@futurile.net>
;;; Copyright © 2023 VÖRÖSKŐI András <voroskoi@gmail.com>
+;;; Copyright © 2024 Wilko Meyer <w@wmeyer.eu>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -34,8 +39,11 @@
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (gnu packages)
+ #:use-module (gnu packages crates-apple)
#:use-module (gnu packages crates-io)
- #:use-module (gnu packages crypto))
+ #:use-module (gnu packages crates-windows)
+ #:use-module (gnu packages crypto)
+ #:use-module (gnu packages tls))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -696,3 +704,356 @@ based on Blake2s.")
(description
"The ChaCha family of stream ciphers.")
(license (list license:asl2.0 license:expat))))
+
+(define-public rust-crypto-secretbox-0.1
+ (package
+ (name "rust-crypto-secretbox")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto_secretbox" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1qa1w5s8dbyb88269zrmvbnillqahz394pl07bsds6gpmn3wzmmr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs (("rust-aead" ,rust-aead-0.5)
+ ("rust-chacha20" ,rust-chacha20-0.9)
+ ("rust-cipher" ,rust-cipher-0.4)
+ ("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-poly1305" ,rust-poly1305-0.8)
+ ("rust-salsa20" ,rust-salsa20-0.10)
+ ("rust-subtle" ,rust-subtle-2)
+ ("rust-zeroize" ,rust-zeroize-1))
+ #:cargo-development-inputs (("rust-hex-literal" ,rust-hex-literal-0.4))))
+ (home-page
+ "https://github.com/RustCrypto/nacl-compat/tree/master/crypto_secretbox")
+ (synopsis
+ "Pure Rust implementation of the XSalsa20Poly1305")
+ (description
+ "Pure Rust implementation of the XSalsa20Poly1305 (a.k.a. @code{NaCl}
+crypto_secretbox) authenticated encryption cipher as well as the libsodium
+variant of X@code{ChaCha20Poly1305}.")
+ (license (list license:asl2.0 license:expat))))
+
+(define-public rust-crypto-bigint-0.5
+ (package
+ (name "rust-crypto-bigint")
+ (version "0.5.2")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-bigint" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "05gy7sqkxg65bj1wrgq1pbh8iwn1kmfysvzx1g22p4gx3972yk6g"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-der" ,rust-der-0.7)
+ ("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-rand-core" ,rust-rand-core-0.6)
+ ("rust-rlp" ,rust-rlp-0.5)
+ ("rust-serdect" ,rust-serdect-0.2)
+ ("rust-subtle" ,rust-subtle-2)
+ ("rust-zeroize" ,rust-zeroize-1))
+ #:cargo-development-inputs
+ (("rust-bincode" ,rust-bincode-1)
+ ("rust-criterion" ,rust-criterion-0.4)
+ ("rust-hex-literal" ,rust-hex-literal-0.4)
+ ("rust-num-bigint" ,rust-num-bigint-0.4)
+ ("rust-num-integer" ,rust-num-integer-0.1)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-proptest" ,rust-proptest-1)
+ ("rust-rand-chacha" ,rust-rand-chacha-0.3)
+ ("rust-rand-core" ,rust-rand-core-0.6))))
+ (home-page "https://github.com/RustCrypto/crypto-bigint")
+ (synopsis "Big integer library designed for use in cryptography")
+ (description
+ "This crate is a pure Rust implementation of a big integer library which
+has been designed from the ground-up for use in cryptographic applications.
+Provides constant-time, no_std-friendly implementations of modern formulas
+using const generics.")
+ (license (list license:asl2.0 license:expat))))
+
+(define-public rust-crypto-bigint-0.4
+ (package
+ (inherit rust-crypto-bigint-0.5)
+ (name "rust-crypto-bigint")
+ (version "0.4.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-bigint" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1vqprgj0aj1340w186zyspi58397ih78jsc0iydvhs6zrlilnazg"))))
+ (arguments
+ `(#:cargo-inputs (("rust-der" ,rust-der-0.6)
+ ("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-rand-core" ,rust-rand-core-0.6)
+ ("rust-rlp" ,rust-rlp-0.5)
+ ("rust-serdect" ,rust-serdect-0.1)
+ ("rust-subtle" ,rust-subtle-2)
+ ("rust-zeroize" ,rust-zeroize-1))
+ #:cargo-development-inputs (("rust-bincode" ,rust-bincode-1)
+ ("rust-hex-literal" ,rust-hex-literal-0.3)
+ ("rust-num-bigint" ,rust-num-bigint-0.4)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-proptest" ,rust-proptest-1)
+ ("rust-rand-chacha" ,rust-rand-chacha-0.3)
+ ("rust-rand-core" ,rust-rand-core-0.6))))))
+
+(define-public rust-crypto-bigint-0.3
+ (package
+ (inherit rust-crypto-bigint-0.5)
+ (name "rust-crypto-bigint")
+ (version "0.3.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-bigint" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "08gx92sj93hk2smqy4nvk8lmpjjjqm7a9ps22q3pxqqxzbas3ih3"))))
+ (arguments
+ `(#:cargo-inputs (("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-rand-core" ,rust-rand-core-0.6)
+ ("rust-rlp" ,rust-rlp-0.5)
+ ("rust-subtle" ,rust-subtle-2)
+ ("rust-zeroize" ,rust-zeroize-1))
+ #:cargo-development-inputs (("rust-hex-literal" ,rust-hex-literal-0.3)
+ ("rust-num-bigint" ,rust-num-bigint-0.4)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-proptest" ,rust-proptest-1)
+ ("rust-rand-chacha" ,rust-rand-chacha-0.3)
+ ("rust-rand-core" ,rust-rand-core-0.6))))))
+
+(define-public rust-crypto-bigint-0.2
+ (package
+ (inherit rust-crypto-bigint-0.5)
+ (name "rust-crypto-bigint")
+ (version "0.2.11")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-bigint" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "00qckh65nzb7s7vd60wylw6alxf9g37xh31lirb1qw0l8fxx6fzq"))))
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-rand-core" ,rust-rand-core-0.6)
+ ("rust-rlp" ,rust-rlp-0.5)
+ ("rust-subtle" ,rust-subtle-2)
+ ("rust-zeroize" ,rust-zeroize-1))))))
+
+(define-public rust-crypto-common-0.1
+ (package
+ (name "rust-crypto-common")
+ (version "0.1.6")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-common" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1cvby95a6xg7kxdz5ln3rl9xh66nz66w46mm3g56ri1z5x815yqv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-rand-core" ,rust-rand-core-0.6)
+ ("rust-typenum" ,rust-typenum-1))))
+ (home-page "https://github.com/RustCrypto/traits")
+ (synopsis "Common cryptographic traits")
+ (description
+ "This package contains a collection of traits which describe functionality
+of cryptographic primitives.")
+ ;; The user can choose either license.
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-crypto-mac-0.11
+ (package
+ (name "rust-crypto-mac")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-mac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ghh3qmjf7hv580zqdk4yrbg99v57jx773zb7lzi7j4hj24bdyi5"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-blobby" ,rust-blobby-0.3)
+ ("rust-cipher" ,rust-cipher-0.3)
+ ("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-subtle" ,rust-subtle-2))))
+ (home-page "https://github.com/RustCrypto/traits")
+ (synopsis "Trait for Message Authentication Code (MAC) algorithms")
+ (description "This package provides trait for @dfn{Message Authentication
+Code} (MAC) algorithms.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-crypto-mac-0.10
+ (package
+ (inherit rust-crypto-mac-0.11)
+ (name "rust-crypto-mac")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-mac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "19iyh7h9qaqrv29dhbd31rm6pq023ry78nw7jwr3qjy3l22zsms8"))))
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-blobby" ,rust-blobby-0.3)
+ ("rust-cipher" ,rust-cipher-0.2)
+ ("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-subtle" ,rust-subtle-2))))))
+
+(define-public rust-crypto-mac-0.8
+ (package
+ (inherit rust-crypto-mac-0.10)
+ (name "rust-crypto-mac")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-mac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1axfs4zmy74rn9666p92j7nmcv11zdp2d51yrppc2dv26cqa715m"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-blobby" ,rust-blobby-0.1)
+ ("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-subtle" ,rust-subtle-2))))))
+
+(define-public rust-crypto-mac-0.7
+ (package
+ (inherit rust-crypto-mac-0.10)
+ (name "rust-crypto-mac")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-mac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rbrq6qy9dl0pj4ym2zy33miaaa8vpzdss60p9bdb58xy46l0d24"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-blobby" ,rust-blobby-0.1)
+ ("rust-generic-array" ,rust-generic-array-0.12)
+ ("rust-subtle" ,rust-subtle-1))))))
+
+(define-public rust-crypto-mac-0.5
+ (package
+ (inherit rust-crypto-mac-0.10)
+ (name "rust-crypto-mac")
+ (version "0.5.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-mac" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0n6r10zlnfv9gbjj0380sxfffxhq1khfjqwsn7fx8iil9pzv9689"))))
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-constant-time-eq" ,rust-constant-time-eq-0.1)
+ ("rust-generic-array" ,rust-generic-array-0.9))))))
+
+(define-public rust-crypto-mac-0.4
+ (package
+ (name "rust-crypto-mac")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-mac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "160ixpghhz5kz16f38kzcyv6lx8wmi4cgbhlhq4nazf678iib43p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-constant-time-eq" ,rust-constant-time-eq-0.1)
+ ("rust-generic-array" ,rust-generic-array-0.8))))
+ (home-page "https://github.com/RustCrypto/traits")
+ (synopsis "Trait for Message Authentication Code (MAC) algorithms")
+ (description "This package provides traits for Message Authentication
+Code (MAC) algorithms.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-crypto-tests-0.5
+ (package
+ (name "rust-crypto-tests")
+ (version "0.5.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-tests" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "08yrh40a9ll4k29ppizg2yjf96i6s3i9pbkhxp60y8arar93134v"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-block-cipher-trait" ,rust-block-cipher-trait-0.4)
+ ("rust-crypto-mac" ,rust-crypto-mac-0.4)
+ ("rust-digest" ,rust-digest-0.6)
+ ("rust-generic-array" ,rust-generic-array-0.8))))
+ (home-page "https://github.com/RustCrypto/utils")
+ (synopsis "Test helpers for cryptographic algorithms")
+ (description "This package provides test helpers for cryptographic
+algorithms.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-crypto-hash-0.3
+ (package
+ (name "rust-crypto-hash")
+ (version "0.3.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-hash" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jnxgpk0j29hzcv42viq5dckyfjnxdjsar55366j95zx80i1cxwa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-commoncrypto" ,rust-commoncrypto-0.2)
+ ("rust-hex" ,rust-hex-0.3)
+ ("rust-openssl" ,rust-openssl-0.10)
+ ("rust-winapi" ,rust-winapi-0.3))))
+ (inputs
+ (list openssl))
+ (home-page "https://github.com/malept/crypto-hash")
+ (synopsis "Wrapper for OS-level cryptographic hash functions")
+ (description "This package provides a wrapper for OS-level cryptographic
+hash functions.")
+ (license license:expat)))