guix/gnu/packages/golang-crypto.scm
Sharlatan Hellseher f54ec8a59b
gnu: go-filippo-io-edwards25519: Move to (gnu packages golang-crypto).
* gnu/packages/golang.scm (go-filippo-io-edwards25519): Move from here ...
* gnu/packages/golang-crypto.scm: ... to here.

* gnu/packages/password-utils.scm: Add (gnu packages golang-crypto) to
used modules.

Change-Id: I11769b8b212bf4cbe98fe10181c0a2a479c599df
2024-01-28 23:21:03 +00:00

301 lines
12 KiB
Scheme
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2023 Clément Lassieur <clement@lassieur.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages golang-crypto)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system go)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-check))
;;; Commentary:
;;;
;;; Golang modules (libraries) related to Cryptography: encryption algorithms,
;;; hashing functions, TLS, key management, digital signatures, password
;;; hashing etc.
;;;
;;; Please: Try to add new module packages in alphabetic order.
;;;
;;; Code:
(define-public go-filippo-io-edwards25519
(package
(name "go-filippo-io-edwards25519")
(version "1.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/FiloSottile/edwards25519")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "01m8hpaj0cwp250f7b0din09cf8j6j5y631grx67qfhvfrmwr1zr"))))
(build-system go-build-system)
(arguments
'(#:import-path "filippo.io/edwards25519"))
(home-page "https://filippo.io/edwards25519")
(synopsis "Group logic for the twisted Edwards curve")
(description "This package implements the edwards25519 elliptic curve in
Go, exposing the necessary APIs to build a wide array of higher-level
primitives.")
(license license:bsd-3)))
(define-public go-github-com-aead-chacha20
(let ((commit "8b13a72661dae6e9e5dea04f344f0dc95ea29547")
(revision "0"))
(package
(name "go-github-com-aead-chacha20")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aead/chacha20")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0gbmgq5kbqmbyrsav57ql4jzbvqvp1q7yvcd5fl3wf5g94iyv56r"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/aead/chacha20"))
(propagated-inputs
(list go-golang-org-x-sys))
(home-page "https://github.com/aead/chacha20")
(synopsis "ChaCha20 and XChaCha20 stream ciphers")
(description "ChaCha is a stream cipher family created by Daniel
Bernstein. The most common ChaCha variant is ChaCha20 (20 rounds). ChaCha20
is standardized in RFC 7539.")
(license license:expat))))
(define-public go-github-com-libp2p-go-libp2p-crypto
(let ((commit "7240b40a3ddc47c4d17c15baabcbe45e5219171b")
(revision "0"))
(package
(name "go-github-com-libp2p-go-libp2p-crypto")
(version (git-version "2.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/libp2p/go-libp2p-crypto")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0qwpy57qv5143l9dlfwfvpqsxdd2i4zwnawx1w4pmgxxim3nw1wb"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/libp2p/go-libp2p-crypto"))
(native-inputs
(list go-github-com-btcsuite-btcd-btcec
go-github-com-gogo-protobuf
go-github-com-minio-sha256-simd
go-golang-org-x-crypto))
(home-page
"https://github.com/libp2p/go-libp2p-crypto")
(synopsis "Various cryptographic utilities used by IPFS")
(description "Various cryptographic utilities used by IPFS")
(license license:expat))))
(define-public go-github-com-libp2p-go-libp2p-peer
(let ((commit "993d742bc29dcf4894b7730ba610fd78900be76c")
(revision "0"))
(package
(name "go-github-com-libp2p-go-libp2p-peer")
(version (git-version "2.3.8" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/libp2p/go-libp2p-peer")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1h96qjdi0i1wbr0jliap2903mycphas3ny0zdrm77yca9plcnphh"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/libp2p/go-libp2p-peer"))
(native-inputs
(list go-github-com-btcsuite-btcd-btcec
go-github-com-gogo-protobuf
go-github-com-gxed-hashland-keccakpg
go-github-com-libp2p-go-libp2p-crypto
go-github-com-minio-blake2b-simd
go-github-com-minio-sha256-simd
go-github-com-mr-tron-base58
go-github-com-multiformats-go-multihash
go-github-com-spaolacci-murmur3
go-golang-org-x-crypto))
(home-page "https://github.com/libp2p/go-libp2p-peer")
(synopsis "PKI based identities for use in go-libp2p")
(description "PKI based identities for use in @command{go-libp2p}.")
(license license:expat))))
(define-public go-github-com-marten-seemann-chacha20
(package
(name "go-github-com-marten-seemann-chacha20")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/marten-seemann/chacha20")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0x1j4cvbap45zk962qkjalc1h3axhzzdy9cdzhcjmprmm1ql4gjm"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/marten-seemann/chacha20"))
(home-page "https://github.com/marten-seemann/chacha20")
(synopsis "ChaCha20 in Go")
(description "This package is an external copy of the Go standard
library's internal ChaCha20 package.")
(license license:bsd-3)))
(define-public go-github-com-multiformats-go-multihash
(let ((commit "97cdb562a04c6ef66d8ed40cd62f8fbcddd396d6")
(revision "0"))
(package
(name "go-github-com-multiformats-go-multihash")
(version (git-version "1.0.8" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/multiformats/go-multihash")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "02wd9akrwy4y5m0nig9m24p14bjjgb4n1djydrq8cm4yhbvjrrk0"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/multiformats/go-multihash"))
(native-inputs
(list go-github-com-mr-tron-base58
go-github-com-gxed-hashland-keccakpg
go-github-com-minio-blake2b-simd
go-github-com-minio-sha256-simd
go-github-com-spaolacci-murmur3
go-golang-org-x-crypto))
(home-page "https://github.com/multiformats/go-multihash")
(synopsis "Multihash implementation in Go")
(description "Multihash implementation in Go.")
(license license:expat))))
(define-public go-github-com-refraction-networking-utls
(package
(name "go-github-com-refraction-networking-utls")
(version "1.6.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/refraction-networking/utls")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1iywar5vqsml4b177k2nkcxmjm8mw92g3p112yjsrpmikiwpwpyw"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/refraction-networking/utls"
#:go ,go-1.20
#:tests? #f)) ;requires internet access
(propagated-inputs
(list go-github-com-andybalholm-brotli
go-github-com-cloudflare-circl
go-github-com-gaukas-godicttls
go-github-com-klauspost-compress
go-github-com-quic-go-quic-go
go-golang-org-x-crypto
go-golang-org-x-net
go-golang-org-x-sys))
(home-page "https://github.com/refraction-networking/utls")
(synopsis "Fork of the Go standard TLS library, providing low-level access
to the ClientHello for mimicry purposes")
(description "uTLS is a fork of “crypto/tls”, which provides ClientHello
fingerprinting resistance, low-level access to handshake, fake session tickets
and some other features. Handshake is still performed by “crypto/tls”, this
library merely changes ClientHello part of it and provides low-level access.")
(license license:bsd-3)))
(define-public go-github-com-riobard-go-bloom
(let ((commit "cdc8013cb5b3eb0efebec85f0e904efccac42df9")
(revision "0"))
(package
(name "go-github-com-riobard-go-bloom")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/riobard/go-bloom")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "10a8ixh6zw52df2imxrzgxi82zc1j5hqnv5smjp818qwdn1a1rhj"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/riobard/go-bloom"))
(home-page "https://github.com/riobard/go-bloom")
(synopsis "Bloom filter in Go")
(description "Go-Bloom implements bloom filter using double hashing.")
(license license:asl2.0))))
(define-public go-github-com-shadowsocks-go-shadowsocks2
(package
(name "go-github-com-shadowsocks-go-shadowsocks2")
;; Version > 0.1.3 requires go-toolchain v1.16.
(version "0.1.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/shadowsocks/go-shadowsocks2")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1wzy3ml4ld83iawcl6p313bskzs6zjhz8vlg8kpwgn71cnbv4pvi"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/shadowsocks/go-shadowsocks2"))
(propagated-inputs
(list go-github-com-riobard-go-bloom
go-golang-org-x-crypto
go-golang-org-x-net
go-golang-org-x-sys
go-golang-org-x-text))
(home-page "https://github.com/shadowsocks/go-shadowsocks2")
(synopsis "Shadowsocks tunnel proxy")
(description "Go-ShadowSocks is a Go implementation of the Shadowsocks
tunnel proxy protocol.")
(license license:asl2.0)))
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar
;;; functionality or similar names.
;;;