HashLib4Pascal - это библиотека HASHAL HASHAL PASCAL, выпущенная по разрешающей лицензии MIT, которая обеспечивает простой в использовании интерфейс для вычисления хэшей и контрольных сумм данных. Он также поддерживает хэширование на основе состояний (инкрементальный).
Цель HashLib4Pascal's - быть лучшим вариантом для хэширования в объекте Pascal, предлагая различные примитивы хеширования через простые в использовании API для объекта разработчиков Pascal.
Развитие координируется на GitHub, и взносы приветствуются. Если вам нужна помощь, пожалуйста, откройте проблему здесь.
Статус сборки
All CRC Variants from CRC3 to CRC64 Adler32 AP BKDR Bernstein Bernstein1 DEK DJB ELF FNV
FNV1a JS Jenkins3 Murmur2 MurmurHash3_x86_32 OneAtTime
PJW RS Rotating SDBM ShiftAndXor SuperFast XXHash32
FNV64 FNV1a64 Murmur2_64 SipHash2_4 XXHash64 MurmurHash3_x86_128 MurmurHash3_x64_128 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
PBKDF2
Argon2 (2i, 2d and 2id variants)
Scrypt
HMAC (all supported hashes)
KMAC (KMAC128, KMAC256)
Blake2MAC (Blake2BMAC, Blake2SMAC)
Shake (Shake-128, Shake-256)
CShake (CShake-128, CShake-256)
Blake2X (Blake2XS, Blake2XB)
KMACXOF (KMAC128XOF, KMAC256XOF)
Blake3XOF
FreePascal 3.0.0+
Delphi 2010+
Если вы хотите реализации на других языках, вы можете проверить это
1MhFfW7tDuEHQSgie65uJcAfJgCNchGeKf0x6c1DC21aeC49A822A4f1E3bf07c623C2C1978a98345367-40