30 open-source projects similar to kokke/tiny-aes-c, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Tiny AES C alternative.
This is a symmetric cryptography library written in C that provides a portable implementation of the Advanced Encryption Standard. It functions as a block cipher implementation supporting 128, 192, and 256 bit key sizes for encrypting and decrypting data. The library includes an AES cipher mode provider that supports electronic codebook, cipher block chaining, and counter modes. These operational modes are decoupled from the core block transformation to allow for different encryption patterns. The implementation utilizes static memory allocation and table-based substitution to avoid dynamic
CryptoSwift is a cryptography library implemented entirely in the Swift programming language. It provides a collection of standard cryptographic algorithms for encryption, decryption, and hashing without relying on native C libraries or system frameworks. The library supports symmetric and asymmetric encryption, including RSA key generation and signature management. It features authenticated encryption schemes and the ability to generate cryptographic digests for data integrity verification. The toolset covers message authentication codes, secure key derivation from passwords, and data paddi
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,
sjcl is a JavaScript cryptography library providing a collection of primitives for encryption, hashing, and encoding within a web browser. It functions as an AES symmetric encryption tool, a cryptographic hashing library, and a Base32 data encoder. The project provides implementations for the Advanced Encryption Standard to secure data through symmetric key encryption and decryption. It also enables the generation of fixed-length data fingerprints to verify information integrity and authenticity. The library covers a broader range of security capabilities, including client-side data hashing,
crypto-js is a JavaScript cryptography library providing a collection of standard cryptographic algorithms and data transformation tools. It functions as a symmetric encryption toolset, a cryptographic hash implementation, and a password derivation tool for the JavaScript environment. The library enables the protection of sensitive data through symmetric encryption and the production of fixed-size data digests to verify integrity. It includes utilities for converting user passwords into secure cryptographic keys and a data format converter for translating information between Base64, Hex, and
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
php-encryption is a symmetric encryption library for PHP that provides tools for authenticated encryption and key derivation to ensure data confidentiality and integrity. It functions as a cryptography toolkit that wraps complex primitives into simplified interfaces to prevent common implementation errors. The library includes a binary-safe ciphertext serializer to maintain data structure during storage and transmission, as well as a password-based key derivation tool that transforms low-entropy passwords into cryptographically strong keys through iterative processes. The project covers a br
This project is a Python cryptography library that provides a collection of cryptographic primitives and high-level recipes for implementing secure encryption and authentication. It functions as a symmetric encryption toolkit and a cryptographic hash provider, offering both a low-level cryptographic interface for building custom protocols and high-level tools for securing data. The library covers a broad range of security capabilities, including symmetric data encryption, the derivation of cryptographic keys from passwords or secret values, and data integrity verification through the generati
Mbed TLS is an open-source TLS and DTLS library with a small footprint, designed for embedded systems and IoT devices. It provides a portable cryptographic library that includes symmetric ciphers, hashing, and public-key cryptography, along with a reference implementation of the PSA Cryptography API for standardized cryptographic operations across platforms. The library also offers X.509 certificate management for parsing, validating, and managing certificate chains in secure communications. The library is built around a platform abstraction layer that decouples it from OS-specific services t
Hiredis is a minimalistic C client library designed to send commands and receive responses from Redis servers using a binary-safe protocol. It functions as a core toolkit providing a Redis protocol parser, a secure connector, and both synchronous and asynchronous driver interfaces. The library distinguishes itself through a decoupled protocol parser that converts raw byte streams into structured data objects independently of the network transport layer. It supports high-performance pipelining to batch multiple commands into a single network round-trip and provides a secure networking layer fo
LibTomCrypt is a fairly comprehensive, modular and portable cryptographic toolkit that provides developers with a vast array of well known published block ciphers, one-way hash functions, chaining modes, pseudo-random number generators, public key cryptography and a plethora of other routines.
A lightweight, secure, easy-to-use crypto library suitable for constrained environments.
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
ECDH and ECDSA for 8-bit, 32-bit, and 64-bit processors.
Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms.
Chartbrew is a self-hosted business intelligence platform and data visualization engine designed to transform raw data from SQL databases and external API endpoints into interactive charts and dashboards. It serves as a tool for building analytics dashboards that monitor business metrics and KPIs through a privately hosted environment. The platform distinguishes itself with an embedded analytics workflow, allowing users to generate secure, time-limited shared links and iframes to display private charts on external websites. It also provides programmatic chart generation via API and integrates
This project is a cross-platform C library designed for implementing MQTT messaging in applications. It serves as an asynchronous networking toolkit that enables resource-constrained systems and distributed components to exchange telemetry data and control signals with messaging brokers. The library distinguishes itself through a state-machine-based protocol handler that manages connection lifecycles and persistent session states, ensuring reliable message delivery even during intermittent network connectivity. It utilizes a background thread to manage network operations, allowing application
libgit2 is a portable, cross-platform C library that provides a programmatic interface for integrating Git version control directly into applications. It serves as a linkable implementation of Git internals, allowing developers to manage repositories and manipulate version control data without requiring a system installation of the Git command line tool. The library functions as an embedded API and object database manager capable of reading and writing commits, trees, blobs, and tags. It includes a network transport client to handle the transfer of repository data over protocols such as SSH a
AuthenticatorPro is an open-source security application for Android designed to manage two-factor authentication. It functions as a client for generating time-based and counter-based one-time passwords to secure user accounts. The project distinguishes itself through Wear OS integration, which allows authentication codes to be synchronized from a mobile device to a companion wearable. It also includes a system for importing credentials from external services and using the device camera to scan QR codes for account configuration. The application provides a suite of security and organization c
Conan is a package manager and binary repository for C and C++ that resolves and installs external libraries to ensure consistent build environments across different platforms. It functions as a native dependency resolver and a cross-platform build tool designed to facilitate reproducible native builds. The project provides capabilities for native package hosting, allowing users to implement a server to store and distribute pre-compiled libraries and their required dependencies. It also supports standalone binary bundling to create executable files that include all necessary runtime dependenc
CJDNS is a peer-to-peer VPN and cryptographic network overlay that implements an encrypted IPv6 mesh network. It functions as a distributed hash table router, utilizing a non-hierarchical XOR metric to route traffic across nodes without relying on a central authority or registry. The project distinguishes itself by tying network identity to cryptographic ownership, deriving unique IPv6 addresses from public keys. It ensures secure peer connectivity across NAT boundaries using public-key authentication, end-to-end packet encryption, and a handshake protocol that provides perfect forward secrec
Horcrux is a threshold cryptography system and file fragmentation tool that splits files into encrypted fragments. It functions as a distributed key management utility, using symmetric encryption to secure data with a key that is then divided into pieces, removing the need for a master passcode. The tool implements Shamir Secret Sharing to ensure that no single fragment reveals information about the original file. It allows for passwordless recovery by requiring a specific minimum threshold, or quorum, of distributed fragments to reconstruct the decryption key and restore the original data.
klib is a comprehensive C standard library extension and data structure toolkit. It provides a set of fundamental tools for memory management, data organization, and general-purpose utility functions for standalone C applications. The project features specialized capabilities for bioinformatics sequence analysis, including the parsing of FASTA, FASTQ, and Newick formats and the implementation of Smith-Waterman sequence alignment and Hidden Markov Models. It also includes a mathematical computation library for numerical routines and expression evaluation, as well as a lightweight HTTP and FTP
IncludeOS is a unikernel operating system that bundles application code with only the necessary kernel drivers into a single bootable image. It functions as a resource-efficient cloud service virtual machine and a lightweight serverless runtime environment designed to minimize memory footprints and boot times. The project provides a Linux compatibility layer via a C library, allowing applications written for Linux to be compiled and executed within the unikernel environment. It also serves as a network appliance framework for building high-performance firewalls and load balancers using config
UltraJSON is a high-performance JSON library and parser written in C with bindings for Python. It provides a fast alternative to standard JSON processing for decoding JSON strings into native data structures and encoding data structures back into JSON strings. The library utilizes a C-based engine to reduce processing latency and increase throughput for JSON generation and parsing. It is designed to accelerate data pipelines and optimize the handling of JSON payloads.
Imageflow is a high-performance image manipulation library and composition engine available as a C-compatible library, a command-line image processor, and a dynamic image processing server. It provides the means to decode, encode, and apply complex visual transformations to images through programmatic interfaces, JSON job files, or on-the-fly URL query strings. The system distinguishes itself through a graph-based processing pipeline that allows for single-pass multi-format encoding, generating multiple image sizes and formats from a single decode to reduce overhead. It further features a res
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 blind image watermarking and steganography tool designed to embed and extract hidden data from images without requiring the original source file. It functions as a framework for concealing text or bit arrays within images using mathematical transforms to ensure the marks remain invisible to the viewer. The system is designed for robust watermark extraction, allowing hidden information to be recovered even after images have undergone rotations, cropping, resizing, noise injection, or brightness changes. It utilizes a blind extraction mechanism that retrieves data using a shared passw
dsvpn is a point-to-point virtual private network tool that establishes encrypted tunnels between two specific endpoints. It functions as a network driver utility that routes raw operating system traffic through a virtual interface for encapsulation and secure transmission. The project distinguishes itself by encapsulating IP packets within TCP streams, allowing secure connections to bypass restrictive network firewalls and filters that block non-standard protocols. It uses symmetric encryption with pre-shared secret keys to authenticate participants and protect data transmission. The softwa
jrnl is a command-line journaling tool used for recording dated entries and managing personal journals directly from a terminal. It functions as an encrypted plain-text journal system that protects private entries through encryption and integration with native system keychains. The project includes a calendar-based activity tracker that visualizes entry frequency and patterns using a heatmap layout. It also serves as a data utility for exporting journal entries into formats such as Markdown, JSON, YAML, and XML. The system supports multi-journal management for different life areas and provid