awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

Cryptography toolkits

Ranking updated Jun 30, 2026

For a cryptography library written in Go or Rust, the strongest matches are phpseclib/phpseclib (phpseclib is a full-featured pure-PHP cryptography library covering symmetric), weidai11/cryptopp (Crypto++ is a comprehensive C++ cryptography library covering symmetric) and blake3-team/blake3 (BLAKE3 is a high-speed cryptographic hash function with support). signalapp/libsignal and guanzhi/gmssl round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.

Explore the best cryptography toolkits written in Go and Rust. Compare top-rated libraries by activity and features to find the best fit for your project.

Cryptography toolkits

Find the best repos with AI.We'll search the best matching repositories with AI.
  • phpseclib/phpseclibphpseclib avatar

    phpseclib/phpseclib

    5,572View on GitHub↗

    phpseclib is a pure-PHP cryptographic library that provides a comprehensive suite of cryptographic operations entirely without requiring compiled C extensions. At its core, it implements arbitrary-precision integer arithmetic for big-number math, ASN.1 DER encoding and decoding for working with cryptographic data structures, and a full set of pure-PHP cryptographic primitives. The library is designed to operate on PHP 5.6 and above, automatically detecting and using native extensions like GMP or BCMath when available, but falling back to its own pure-PHP implementations when they are not. The

    phpseclib is a full-featured pure-PHP cryptography library covering symmetric and asymmetric ciphers, hash functions, and secure protocols, but it is written in PHP rather than Go or Rust, so it addresses the broader cryptography category but not your language requirement.

    PHPAsymmetric EncryptionSymmetric EncryptionCryptographic Hash Computations
    View on GitHub↗5,572
  • weidai11/cryptoppweidai11 avatar

    weidai11/cryptopp

    5,412View on GitHub↗

    Crypto++ is a comprehensive C++ cryptographic library that implements a broad range of algorithms for symmetric and asymmetric encryption, hashing, and digital signatures. It is designed as a portable toolkit, usable across different operating systems without modification. The library distinguishes itself through its architecture: cryptographic parameters such as key size and mode are configured at compile time via C++ templates, eliminating runtime overhead. Algorithms are registered in a static factory for runtime lookup, while data processing follows a pipeline model of composable sources,

    Crypto++ is a comprehensive C++ cryptography library covering symmetric and asymmetric encryption, hashing, and signatures, but it is not implemented in Go or Rust as you requested.

    C++Asymmetric EncryptionSymmetric Encryption
    View on GitHub↗5,412
  • blake3-team/blake3BLAKE3-team avatar

    BLAKE3-team/BLAKE3

    6,284View on GitHub↗

    BLAKE3 is a high-performance implementation of the BLAKE3 cryptographic hash algorithm used for calculating secure data digests and fingerprints. It functions as a parallel cryptographic hash tool that distributes workloads across multiple processor threads to process large datasets rapidly. The project provides specialized tools for keyed hashing and the generation of message authentication codes. It also includes functionality for cryptographic key derivation, allowing the creation of unique secret sub-keys from a master key and context strings. The implementation supports data integrity v

    BLAKE3 is a high-speed cryptographic hash function with support for keyed hashing and key derivation, implemented in Rust (with assembly optimizations) and usable across many languages, making it a solid hash tool for secure development — but it covers only hashing and does not provide symmetric or asymmetric encryption, AEAD, or constant-time operations beyond its own design, so it lacks several features you listed.

    AssemblyHashing and Derivation FunctionsKey Derivation Schemes
    View on GitHub↗6,284
  • signalapp/libsignalsignalapp avatar

    signalapp/libsignal

    5,847View on GitHub↗

    libsignal is a cryptographic library that implements the Signal Protocol, providing the core primitives for end-to-end encrypted messaging with forward secrecy and deniable authentication. It includes the Double Ratchet algorithm for iteratively deriving fresh encryption keys per message, and the X3DH key agreement protocol for establishing shared secrets between parties asynchronously. A session state machine maintains cryptographic state across message exchanges, supporting recovery and out-of-order delivery. The library extends beyond basic messaging encryption with capabilities such as ze

    libsignal is a Rust cryptographic library implementing the Signal Protocol for end-to-end encrypted messaging, which fits your search for Rust-based crypto tools; however, it focuses on message-layer security and may not cover all the specific algorithms (e.g., RSA, ECC, AES, Argon2) you listed as separate primitives.

    RustKey Derivation Protocols
    View on GitHub↗5,847
  • guanzhi/gmsslguanzhi avatar

    guanzhi/GmSSL

    6,075View on GitHub↗

    GmSSL is an open-source cryptographic library that implements the Chinese national cryptographic standards SM2, SM3, SM4, SM9, and ZUC as a unified algorithm suite. It provides a comprehensive set of cryptographic primitives including symmetric and asymmetric encryption, digital signatures, hashing, and key exchange, all built around these national standards for government and enterprise security applications. The library distinguishes itself through several integration capabilities. It includes an OpenSSL compatibility layer that maps GmSSL functions to OpenSSL API calls, enabling drop-in re

    GmSSL is a cryptography library implementing Chinese national standards (SM2, SM3, SM4, etc.) and provides symmetric and asymmetric encryption, hashing, and key exchange, which fits the search for cryptographic libraries; however, it is written in C rather than Go or Rust, so it lacks the language features you required for direct integration into Go or Rust projects.

    CAsymmetric EncryptionSymmetric Encryption
    View on GitHub↗6,075
  • filosottile/ageFiloSottile avatar

    FiloSottile/age

    21,369View on GitHub↗

    Age is a command-line utility for file encryption that utilizes hybrid cryptography to secure data for multiple recipients. It employs a combination of asymmetric key exchange and symmetric encryption to protect files, supporting access control through public keys, shared passphrases, and hardware-backed identity integration. The tool is designed for memory-efficient operation, utilizing stream-oriented processing to handle large datasets in small, sequential chunks. It features a stanza-based metadata framing system that allows for extensible file headers and supports random-access decryptio

    Age is a command-line file encryption tool written in Go that uses hybrid cryptography (X25519 key exchange ChaCha20-Poly1305 symmetric AEAD) and supports multiple recipient public keys, passphrases, and hardware-backed identities — it fits the intent as a cryptography tool in Go, though it targets file encryption rather than providing a general-purpose library for application development, and lacks Rust implementation and explicit audit or constant-time documentation.

    GoEncryption ToolsEncryptionCryptographic Processors
    View on GitHub↗21,369
  • rustcrypto/hashesRustCrypto avatar

    RustCrypto/hashes

    2,230View on GitHub↗

    Collection of cryptographic hash functions written in pure Rust

    rustcrypto/hashes is a pure Rust collection of cryptographic hash functions, satisfying the Rust language requirement and covering the hash and key derivation features you listed, but it does not include symmetric or asymmetric encryption so it meets only part of your full feature set.

    RustRust Cryptography
    View on GitHub↗2,230
  • rustcrypto/aeadsRustCrypto avatar

    RustCrypto/AEADs

    938View on GitHub↗

    Authenticated Encryption with Associated Data Algorithms: high-level encryption ciphers

    This Rust crate provides authenticated encryption (AEAD) implementations such as AES-GCM and ChaCha20-Poly1305, making it a focused cryptographic library; while it covers symmetric encryption and AEAD, it does not provide asymmetric encryption, hashing, or a Go version — best suited when AEAD is the primary need.

    RustRust Cryptography
    View on GitHub↗938
  • rustcrypto/elliptic-curvesRustCrypto avatar

    RustCrypto/elliptic-curves

    859View on GitHub↗

    Collection of pure Rust elliptic curve implementations: NIST P-224, P-256, P-384, P-521, secp256k1, SM2

    A pure Rust library implementing multiple elliptic curves (P-224, P-256, P-384, P-521, secp256k1, SM2) for asymmetric cryptography, which directly serves your need for Rust-based cryptographic primitives, though it does not include symmetric encryption, hashing, or other features you listed.

    RustRust Cryptography
    View on GitHub↗859
  • rustcrypto/signaturesRustCrypto avatar

    RustCrypto/signatures

    643View on GitHub↗

    Cryptographic signature algorithms: DSA, ECDSA, Ed25519

    rustcrypto/signatures is a Rust cryptography library focused on digital signature algorithms (DSA, ECDSA, Ed25519), which fits your search for cryptographic tools in Rust, though it covers only signatures rather than the broader encryption, hashing, and AEAD features you listed.

    RustRust CryptographyTrophy Case
    View on GitHub↗643
  • dalek-cryptography/curve25519-dalekdalek-cryptography avatar

    dalek-cryptography/curve25519-dalek

    1,173View on GitHub↗

    This library provides a collection of low-level mathematical primitives for Curve25519 and Ristretto group operations. It serves as a foundation for building secure cryptographic protocols, offering tools for elliptic curve arithmetic, key exchange, and digital signature generation. The implementation prioritizes side-channel resistance by utilizing constant-time arithmetic logic across all operations, ensuring that secret-dependent timing variations are prevented. It leverages the Rust type system to enforce state validity, making illegal group elements unrepresentable at compile time. To ma

    curve25519-dalek is a pure-Rust library implementing elliptic curve group operations (Curve25519, Ristretto) for cryptographic use — it covers elliptic-curve asymmetric primitives (X25519, Ed25519) but does not provide symmetric encryption, hashing, or AEAD, making it a focused building block rather than a full cryptographic toolkit.

    RustRust Cryptography LibrariesElliptic Curve Cryptography
    View on GitHub↗1,173
  • keys-pub/keyskeys-pub avatar

    keys-pub/keys

    914View on GitHub↗

    Keys is a library and command-line utility designed for the generation, storage, and lifecycle management of cryptographic keys. It provides tools to create asymmetric key pairs, perform digital signature verification, and implement authenticated encryption to ensure the confidentiality and integrity of sensitive data. The project distinguishes itself by offering a secure storage abstraction that decouples application logic from underlying key storage mechanisms. By utilizing standardized cryptographic protocols, it enables consistent identity verification and data protection across diverse c

    keys-pub/keys is a Go cryptography library focused on key management (Ed25519, X25519, encryption, signing, Noise protocol), fitting the search for Go-based crypto tools but lacking a Rust implementation.

    GoCryptographic Key ManagementAsymmetric Key ManagementAuthenticated Encryption
    View on GitHub↗914
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
phpseclib/phpseclib5.6KPHPMITJun 15, 2026
weidai11/cryptopp5.4KC++otherAug 1, 2024
blake3-team/blake36.3KAssemblyApache-2.0May 21, 2026
signalapp/libsignal5.8KRustAGPL-3.0Jun 18, 2026
guanzhi/gmssl6.1KCApache-2.0Jun 22, 2026
filosottile/age21.4KGobsd-3-clauseFeb 2, 2026
rustcrypto/hashes2.2KRust—Jun 16, 2026
rustcrypto/aeads938Rust—Jun 11, 2026
rustcrypto/elliptic-curves859Rust—Jun 17, 2026
rustcrypto/signatures643Rust—Jun 17, 2026

Related searches

  • a cryptographic library for Go applications
  • a Rust cryptography library
  • a python library for cryptographic operations
  • a cryptographic library for secure data operations
  • a python library for data encryption
  • a learning path for applied cryptography
  • a textbook on cryptography for security engineers
  • a secure encryption library for C#