awesome-repositories.com
Blog
MCP
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

Java Encryption Libraries

Ranking updated Jul 13, 2026

For a java library for data encryption, the strongest matches are google/tink (Tink is a robust, high-level cryptographic library that provides), google/end-to-end (This is a JavaScript library for OpenPGP operations, which) and weidai11/cryptopp (This is a C++ library rather than a Java). agwa/git-crypt and guanzhi/gmssl round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.

We curate open-source GitHub repositories matching “best java encryption libraries”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.

Java Encryption Libraries

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

    google/tink

    13,542View on GitHub↗

    Tink is a multi-language cryptography library and security toolkit providing secure APIs for data encryption and digital signatures. It functions as a data encryption library and digital signature framework designed to prevent common implementation errors across different platforms and operating systems. The project serves as a cryptographic keyset manager, utilizing JSON for the storage, rotation, and serialization of keys to maintain consistency across various programming languages. It ensures identical cryptographic behavior globally by mapping language-specific libraries to a unified set

    Tink is a robust, high-level cryptographic library that provides secure, easy-to-use APIs for symmetric and asymmetric encryption, digital signatures, and comprehensive key management.

    JavaDigital Signature LibrariesKey Management SystemsEncryption Key Management
    View on GitHub↗13,542
  • google/end-to-endgoogle avatar

    google/end-to-end

    4,123View on GitHub↗

    This project is an OpenPGP cryptography library designed for encrypting, decrypting, and signing messages according to the OpenPGP standard for secure communication. It functions as an asymmetric encryption toolkit for securing data and managing digital identities through cryptographic operations. The library provides a cryptographic key manager to create and handle the public and private key pairs required for identity operations. It includes a digital signature implementation to ensure message authenticity and data integrity. The system covers a broad range of capabilities, including asymm

    This is a JavaScript library for OpenPGP operations, which does not meet the requirement for a Java-based cryptography library.

    JavaScriptAsymmetric EncryptionAsymmetric Encryption LibrariesDigital Message Signing
    View on GitHub↗4,123
  • 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,

    This is a C++ library rather than a Java library, making it a building block for native integrations rather than a native solution for your Java application.

    C++Asymmetric EncryptionDigital SignaturesSymmetric Encryption
    View on GitHub↗5,412
  • agwa/git-cryptAGWA avatar

    AGWA/git-crypt

    9,746View on GitHub↗

    git-crypt is a transparent cryptography layer and secret manager for Git repositories. It encrypts specific files so they remain as ciphertext on remote servers while appearing as plaintext in local directories. The tool uses Git attributes to define the scope of files and directories targeted for encryption. It supports both symmetric secret key encryption for shared access and asymmetric public key encryption to control decryption permissions among multiple collaborators. The system automates the encryption and decryption process through hook-based filters that trigger during commit and ch

    This is a specialized tool for encrypting files within Git repositories rather than a general-purpose Java cryptography library for application-level data security.

    C++Asymmetric EncryptionSymmetric EncryptionEncryption Key Management
    View on GitHub↗9,746
  • 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

    This is a C-based cryptographic library focused on Chinese national standards, and while it provides JNI bindings, it is not a native Java library designed for general-purpose Java application security.

    CAsymmetric EncryptionDigital Message SigningDigital Signatures
    View on GitHub↗6,075
  • signalapp/signal-iossignalapp avatar

    signalapp/Signal-iOS

    12,137View on GitHub↗

    Signal-iOS is an encrypted messaging client that provides secure communication for voice calls, media, and text. It functions as a complete implementation of the Signal Protocol, utilizing end-to-end encryption to ensure that only intended recipients can access transmitted data. The application distinguishes itself through the integration of advanced cryptographic standards, including the use of elliptic curve cryptography for identity verification and digital signature validation. It employs a double ratchet key exchange mechanism to rotate encryption keys for every individual message, ensur

    This is a complete messaging application written in Swift rather than a Java library, making it an unsuitable tool for implementing cryptographic functions in a Java-based application.

    SwiftDigital Signature SchemesEncryption Key ManagementElliptic Curve Cryptography
    View on GitHub↗12,137
  • ente-io/enteente-io avatar

    ente-io/ente

    27,281View on GitHub↗

    Ente is a privacy-focused platform for end-to-end encrypted storage and two-factor authentication management. It functions as a zero-knowledge identity provider, ensuring that all cryptographic operations, key derivation, and data encryption occur locally on the user's device. By maintaining this architecture, the service provider remains unable to access or decrypt any stored personal information or authentication credentials. The platform distinguishes itself through a combination of on-device intelligence and resilient data distribution. It utilizes a local machine learning engine to perfo

    This is a privacy-focused end-to-end encrypted storage application rather than a general-purpose Java cryptography library for developers to integrate into their own projects.

    DartKey ManagementKey Management Systems
    View on GitHub↗27,281
  • signalapp/signal-androidsignalapp avatar

    signalapp/Signal-Android

    28,964View on GitHub↗

    Signal-Android is an end-to-end encrypted messaging platform designed to ensure that only the sender and recipient can access communication content. The project provides a comprehensive framework for secure, asynchronous message initiation and key agreement, allowing users to establish private channels without requiring simultaneous online presence. It relies on a state machine architecture to manage communication epochs and authentication, ensuring consistent security transitions throughout the messaging lifecycle. The platform distinguishes itself through a hybrid cryptographic approach tha

    This is a complete end-to-end encrypted messaging application rather than a general-purpose Java cryptography library, making it a complex system to integrate if you only need specific cryptographic primitives.

    KotlinDigital Signature LibrariesDigital Signature SchemesElliptic Curve Cryptography
    View on GitHub↗28,964
  • vvo/iron-sessionvvo avatar

    vvo/iron-session

    4,130View on GitHub↗

    iron-session is a stateless session management library for JavaScript that stores encrypted and signed session data directly in browser cookies. It functions as authentication middleware to verify user identity without requiring a server-side database or network lookups for session retrieval. The project provides a symmetric key encryption tool that supports versioned password rotation. This allows encryption keys to be updated across a system without invalidating active user sessions. Beyond session management, the library includes utilities to seal arbitrary data objects into secure signed

    This is a JavaScript-based session management library for web applications, which does not provide the Java-native cryptographic primitives or general-purpose security abstractions required for your project.

    TypeScriptDigital Message SigningSymmetric Encryption
    View on GitHub↗4,130
  • bitnami-labs/sealed-secretsbitnami-labs avatar

    bitnami-labs/sealed-secrets

    8,925View on GitHub↗

    Sealed Secrets is a Kubernetes secret encryption tool and controller designed for GitOps security. It provides a mechanism to encrypt sensitive data into specialized resources that can be safely stored in public version control systems and decrypted only within a cluster. The system uses an asymmetric encryption manager to seal secrets with a public key, ensuring that only the corresponding private key held within the cluster can unseal them. It includes utilities for security key rotation, secret re-encryption, and offline private key recovery to maintain data access during disaster recovery

    This is a Kubernetes-specific tool for managing secrets in GitOps workflows rather than a general-purpose Java cryptography library for application-level data security.

    GoAsymmetric EncryptionEncryption Key Management
    View on GitHub↗8,925
  • jedisct1/libsodiumjedisct1 avatar

    jedisct1/libsodium

    13,467View on GitHub↗

    Libsodium is a portable, C-based cryptographic library that provides a collection of modern primitives for encryption, decryption, digital signatures, password hashing, and secure key exchange. It is designed to facilitate secure communication and data integrity across diverse hardware architectures and operating systems. The library distinguishes itself by utilizing constant-time primitive execution to prevent side-channel attacks and employing memory-hard algorithms to increase the difficulty of brute-force password attacks. It abstracts complex mathematical operations into simplified inter

    This is a C-based cryptographic library rather than a Java library, meaning it would require JNI or JNA wrappers to be used within a Java application.

    CDigital Signature LibrariesEncryption Key Management
    View on GitHub↗13,467
  • bitcoinj/bitcoinjbitcoinj avatar

    bitcoinj/bitcoinj

    5,216View on GitHub↗

    bitcoinj is a Java library and software development kit for integrating Bitcoin blockchain functionality into applications. It provides a foundation for implementing blockchain clients and managing digital wallets, allowing for the programmatic tracking of blockchain state and transaction histories. The project includes tools for creating and maintaining keychains and wallets, supported by a command-line interface for administrative wallet management and blockchain state synchronization. The library covers core cryptographic and structural primitives, including deterministic key derivation,

    This is a specialized SDK for Bitcoin blockchain integration and wallet management rather than a general-purpose cryptographic library for application-level data security.

    JavaDigital Signature Schemes
    View on GitHub↗5,216
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
google/tink13.5KJavaApache-2.0Apr 17, 2024
google/end-to-end4.1KJavaScriptApache-2.0Apr 9, 2023
weidai11/cryptopp5.4KC++otherAug 1, 2024
agwa/git-crypt9.7KC++GPL-3.0Sep 24, 2025
guanzhi/gmssl6.1KCApache-2.0Jun 22, 2026
signalapp/signal-ios12.1KSwiftAGPL-3.0Jun 18, 2026
ente-io/ente27.3KDartAGPL-3.0Jun 23, 2026
signalapp/signal-android29KKotlinAGPL-3.0Jun 22, 2026
vvo/iron-session4.1KTypeScriptMITApr 23, 2026
bitnami-labs/sealed-secrets8.9KGoapache-2.0Feb 17, 2026

Related searches

  • a javascript library for data encryption
  • a python library for data encryption
  • a secure encryption library for C#
  • a cryptographic library for Go applications
  • a cryptographic library for secure data operations
  • a python library for cryptographic operations
  • a Rust cryptography library
  • a java library for data compression