CatCrypto - An easy way for hashing and encryption.

  •        6

CatCrypto also contains Swift bindings of Argon2, the password-hashing function that won the Password Hashing Competition (PHC). Context contains inputs and configures for function crypto.



Related Projects

EMIHash - Managed hash library

  •    DotNet

A managed hash library that supports SHA1, SHA256, SHA384, SHA512, MD5, MD2, CRC32_ZIP, CRC8, CRC16_IBM, CRC16_CCITT, CRC16_ARC, CRC16_XMODEM, CRC16_ZMODEM, CRC24, CRC32, CRC32_JAMCRC, CRC32_BZIP2, CRC64_ISO, CRC64_ECMA, MD4, SHA224, HMACSHA1, HMACSHA256, HMACSHA384, HMACSHA51...

jshashes - Fast and dependency-free cryptographic hashing library for node

  •    Javascript

jshashes is lightweight library implementing the most extended cryptographic hash function algorithms in pure JavaScript (ES5 compliant).You can use the simple command-line interface to generate hashes.


  •    VB

OpenSSL Digest frontend for Windows. This program can be used to create/verify MD2/MD4/MD5/SHA/SHA1/MDC2/RIPEMD160 checksums of your files. OpenSSL32 now supports file encryption/decryption using various encryption Ciphers, such as Blowfish, Idea, DES,

forge - A native implementation of TLS in Javascript and tools to write crypto-based and network-heavy webapps

  •    Javascript

A native implementation of TLS (and various other cryptographic tools) in JavaScript. The Forge software is a fully native implementation of the TLS protocol in JavaScript, a set of cryptography utilities, and a set of tools for developing Web Apps that utilize many network resources.

hasha - Hashing made simple. Get the hash of a buffer/string/stream/file.

  •    Javascript

Hashing made simple. Get the hash of a buffer/string/stream/file.Convenience wrapper around the core crypto Hash class with simpler API and better defaults.


  •    C++

A program to calculate and verify checksums of multiple files with wizard-like GUI. Supports 12 hashes: CRC32, MD2, MD4, MD5, SHA1, SHA2, RIPEMD,Whirlpool, ED2K, AICH, Tiger, TTH. Allows processing of nested directories and updating of checksum files


  •    C++

KIside is a message digest computing and displaying tool. It computes and shows the hash code of any file as a string of hexadecimal numbers. KIside implements standard algorithms such as MD4, MD5, SHA1, SHA256, SHA384, SHA512, TIGER, RIPEMD160.

password-hashing - Password hashing code.

  •    PHP

This repository contains peer-reviewed libraries for password storage in PHP, C#, Ruby, and Java. Passwords are "hashed" with PBKDF2 (64,000 iterations of SHA1 by default) using a cryptographically-random salt. The implementations are compatible with each other, so you can, for instance, create a hash in PHP and then verify it in C#. This code uses the PBKDF2 algorithm to protect passwords. Better technologies for protecting passwords exist today, like bcrypt, scrypt, or Argon2. Before using this code, you should try to find a well-reviewed and carefully-made implementation of one of those algorithms for the language that you are using. These algorithms are "memory hard," meaning that they don't just need a lot of CPU power to compute, they also require a lot of memory (unlike PBKDF2). By using a memory hard algorithm, your passwords will be better protected.

object-hash - Generate hashes from javascript objects in node and the browser.

  •    Javascript

Generate hashes from objects and values in node and the browser. Uses node.js crypto module for hashing. Supports SHA1 and many others (depending on the platform) as well as custom streams (e.g. CRC32). Starting with version 1.1.8 (released April 2017), new versions will consider the exact returned hash part of the API contract, i.e. changes that will affect hash values will be considered semver-major. Previous versions may violate that expectation.

sjcl - Stanford Javascript Crypto Library

  •    Javascript

The Stanford Javascript Crypto Library is a project by the Stanford Computer Security Lab to build a secure, powerful, fast, small, easy-to-use, cross-browser library for cryptography in Javascript. SJCL is secure. It uses the industry-standard AES algorithm at 128, 192 or 256 bits; the SHA256 hash function; the HMAC authentication code; the PBKDF2 password strengthener; and the CCM and OCB authenticated-encryption modes.

libsodium - A modern and easy-to-use crypto library.

  •    C

Sodium is a new, easy-to-use software library for encryption, decryption, signatures, password hashing and more. It is a portable, cross-compilable, installable, packageable fork of NaCl, with a compatible API, and an extended API to improve usability even further. Its goal is to provide all of the core operations needed to build higher-level cryptographic tools.

Fsum frontend

  •    D

Fsum Frontend is a files integrity checker. It can calculate 96 hash and checksum algorithms(CRC32, MD5, SHA1, SHA2, ADLER, DHA256, FORK256, ...). You can verify your files using a .sfv/.md5/.sha1/.sha2 file or create your own checksum file.

Rusha - High-performance pure-javascript SHA1 implementation suitable for large binary data, reaching up to half the native speed.

  •    Javascript

High-performance pure-javascript SHA1 implementation suitable for large binary data, reaching up to half the native speed.


  •    C

A GTK+ utility for computing message digests or checksums. Currently supported hash functions include MD5, MD6, SHA1, SHA256, SHA512, RIPEMD, HAVAL, TIGER and WHIRLPOOL.


  •    CSharp

hashPwd provides hashing algorithms within a classical windows form. Current Version: 1.0b

imagehash - 🌄 Perceptual image hashing for PHP

  •    PHP

A perceptual hash is a fingerprint of a multimedia file derived from various features from its content. Unlike cryptographic hash functions which rely on the avalanche effect of small changes in input leading to drastic changes in the output, perceptual hashes are "close" to one another if the features are similar. Perceptual hashes are a different concept compared to cryptographic hash functions like MD5 and SHA1. With cryptographic hashes, the hash values are random. The data used to generate the hash acts like a random seed, so the same data will generate the same result, but different data will create different results. Comparing two SHA1 hash values really only tells you two things. If the hashes are different, then the data is different. And if the hashes are the same, then the data is likely the same. In contrast, perceptual hashes can be compared -- giving you a sense of similarity between the two data sets.

MD5 computation program

  •    DotNet

MD5 project is a simple example of using ComputeHash method to create MD5 hash value from a file given in argument. It's written in C#. Also available at

Botan - Crypto library for C++

  •    C++

Botan (Japanese for peony) is a cryptography library written in C++11. Botan's goal is to be the best option for cryptography in new C++ code by offering the tools necessary to implement a range of practical systems, such as TLS/DTLS, PKIX certificate handling, PKCS#11 and TPM hardware support, password hashing, and post quantum crypto schemes. In addition to the C++, botan has a C89 API specifically designed to be easy to call from other languages. A Python binding using ctypes is included, and several other language bindings are available.