All Projects → Xor-el → Hashlib4pascal

Xor-el / Hashlib4pascal

Licence: mit
Hashing for Modern Object Pascal

Programming Languages

pascal
1382 projects
delphi
115 projects

Projects that are alternatives of or similar to Hashlib4pascal

bytes-java
Bytes is a utility library that makes it easy to create, parse, transform, validate and convert byte arrays in Java. It supports endianness as well as immutability and mutability, so the caller may decide to favor performance.
Stars: ✭ 120 (-9.09%)
Mutual labels:  encoding, checksum, hash
hashids.pm
Hashids, ported for Perl
Stars: ✭ 15 (-88.64%)
Mutual labels:  encoding, hash
Highwayhash
Node.js implementation of HighwayHash, Google's fast and strong hash function
Stars: ✭ 183 (+38.64%)
Mutual labels:  hash, checksum
JSum
Consistent checksum calculation of JSON objects.
Stars: ✭ 64 (-51.52%)
Mutual labels:  checksum, hash
Codetective
a tool to determine the crypto/encoding algorithm used according to traces from its representation
Stars: ✭ 121 (-8.33%)
Mutual labels:  hash, encoding
Csv
CSV Decoding and Encoding for Elixir
Stars: ✭ 398 (+201.52%)
Mutual labels:  stream, encoding
harsh
Hashids implementation in Rust
Stars: ✭ 48 (-63.64%)
Mutual labels:  encoding, hash
Gtkhash
A cross-platform desktop utility for computing message digests or checksums
Stars: ✭ 167 (+26.52%)
Mutual labels:  hash, checksum
Farmhash
Node.js implementation of FarmHash, Google's family of high performance hash functions
Stars: ✭ 342 (+159.09%)
Mutual labels:  hash, checksum
Hashids.js
A small JavaScript library to generate YouTube-like ids from numbers.
Stars: ✭ 3,525 (+2570.45%)
Mutual labels:  hash, encoding
Rtspallthethings
Deprecated RTSP media server -- Use github.com/aler9/rtsp-simple-server instead.
Stars: ✭ 258 (+95.45%)
Mutual labels:  stream, encoding
Openhashtab
📝 File hashing and checking shell extension
Stars: ✭ 599 (+353.79%)
Mutual labels:  hash, checksum
Hashids
A small PHP library to generate YouTube-like ids from numbers. Use it when you don't want to expose your database ids to the user.
Stars: ✭ 4,596 (+3381.82%)
Mutual labels:  hash, encoding
Vxg.media.sdk.android
Market leading Android SDK with encoding, streaming & playback functionality
Stars: ✭ 119 (-9.85%)
Mutual labels:  stream, encoding
Lerc
Limited Error Raster Compression
Stars: ✭ 126 (-4.55%)
Mutual labels:  encoding
Data Structures
Data-Structures using C++.
Stars: ✭ 121 (-8.33%)
Mutual labels:  hash
Gulp Rev
Static asset revisioning by appending content hash to filenames: `unicorn.css` → `unicorn-d41d8cd98f.css`
Stars: ✭ 1,540 (+1066.67%)
Mutual labels:  hash
Stream Php
PHP Client - Build Activity Feeds & Streams with GetStream.io
Stars: ✭ 129 (-2.27%)
Mutual labels:  stream
Watsonwebserver
Watson is the fastest, easiest way to build scalable RESTful web servers and services in C#.
Stars: ✭ 125 (-5.3%)
Mutual labels:  stream
Js Codepage
💱 Codepages for JS
Stars: ✭ 119 (-9.85%)
Mutual labels:  encoding

HashLib4Pascal: Hashing for Modern Object Pascal License

HashLib4Pascal is an Object Pascal hashing library released under the permissive MIT License which provides an easy to use interface for computing hashes and checksums of data. It also supports state based (incremental) hashing.

HashLib4Pascal's goal is to be the best option for hashing in Object Pascal by offering various hashing primitives via an easy to use API to Object Pascal developers.

Development is coordinated on GitHub and contributions are welcome. If you need help, please open an issue here.

Build Status Build Status

Available Algorithms

Hashes


Cyclic Redundancy Checks
  • All CRC Variants from CRC3 to CRC64
Checksums
  • Adler32
Non-Cryptographic Hash Functions

32 bit hashes
  • AP BKDR Bernstein Bernstein1 DEK DJB ELF FNV

  • FNV1a JS Jenkins3 Murmur2 MurmurHash3_x86_32 OneAtTime

  • PJW RS Rotating SDBM ShiftAndXor SuperFast XXHash32

64 bit hashes
  • FNV64 FNV1a64 Murmur2_64 SipHash2_4 XXHash64
128 bit hashes
  • MurmurHash3_x86_128 MurmurHash3_x64_128
Cryptographic Hash Functions

  • MD2

  • MD4

  • MD5

  • SHA-0

  • SHA-1

  • SHA-2 (224, 256, 384, 512, 512-224, 512-256)

  • GOST 34.11-94

  • GOST R 34.11-2012 (AKA Streebog) (256, 512)

  • Grindahl (256, 512)

  • Has160

  • RIPEMD (128, 160, 256, 256, 320)

  • Tiger (128, 160, 192 (Rounds 3, 4, 5))

  • Tiger2 (128, 160, 192 (Rounds 3, 4, 5))

  • Snefru (128, 256)

  • Haval (128, 160, 192, 224, 256 (Rounds 3, 4, 5))

  • Panama

  • RadioGatun (RadioGatun32, RadioGatun64)

  • WhirlPool

  • Blake2B (160, 256, 384, 512)

  • Blake2S (128, 160, 224, 256)

  • SHA-3 (224, 256, 384, 512)

  • Keccak (224, 256, 288, 384, 512)

  • Blake2BP

  • Blake2SP

  • Blake3

Key Derivation Functions


Password Hashing Schemes (Password Based Key Derivation Functions)

  • PBKDF2

  • Argon2 (2i, 2d and 2id variants)

  • Scrypt

MAC


  • HMAC (all supported hashes)

  • KMAC (KMAC128, KMAC256)

  • Blake2MAC (Blake2BMAC, Blake2SMAC)

XOF (Extendable Output Function)


  • Shake (Shake-128, Shake-256)

  • CShake (CShake-128, CShake-256)

  • Blake2X (Blake2XS, Blake2XB)

  • KMACXOF (KMAC128XOF, KMAC256XOF)

  • Blake3XOF

Supported Compilers


  • FreePascal 3.0.0+

  • Delphi 2010+

Other Implementations


If you want implementations in other languages, you can check out these

Tip Jar


  • 💵 Bitcoin: 1MhFfW7tDuEHQSgie65uJcAfJgCNchGeKf
  • 💶 Ethereum: 0x6c1DC21aeC49A822A4f1E3bf07c623C2C1978a98
  • 💷 Pascalcoin: 345367-40
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].