CryptoLib4Pascal
is an Object Pascal cryptographic library released under the permissive MIT License.
CryptoLib4Pascal's
goal is to be the best option for cryptography in Object Pascal by offering cryptographic recipes and primitives to Object Pascal developers.
Development is coordinated on GitHub and contributions are welcome. If you need help, please open an issue here.
-
AES (128, 192, and 256)
-
Rijndael
-
Blowfish
-
Speck
-
ChaCha
-
(X)Salsa20
-
ECB
-
CBC
-
CFB
-
CTR
-
CTS
-
OFB
-
SIC
-
ISO 10126-2
-
ISO 7816-4
-
Bit (ISO/IEC 9797-1)
-
PKCS#5
-
PKCS#7
-
TBC (Trailing Bit Complement)
-
ANSI X9.23
-
Zero
-
DSA
-
(DET)ECDSA (supported curves: NIST, X9.62, SEC2, Brainpool)
-
ECNR
-
ECSchnorr
-
EdDSA (Ed25519, Ed25519Blake2B)
-
ECDH
-
ECDHC
-
X25519
-
HKDF
-
KDF1
-
KDF2
-
PBKDF2
-
Argon2 (2i, 2d and 2id variants)
-
Scrypt
-
HMAC (all supported hashes)
-
X25519
-
MD2
-
MD4
-
MD5
-
SHA-1
-
SHA-2 (224, 256, 384, 512, 512-224, 512-256)
-
Gost3411
-
Gost3411-2012 (256, 512)
-
RIPEMD (128, 256, 256, 320)
-
Tiger
-
WhirlPool
-
Blake2B (160, 256, 384, 512)
-
Blake2S (128, 160, 224, 256)
-
SHA-3 (224, 256, 384, 512)
-
Keccak (224, 256, 288, 384, 512)
Shake (Shake-128, Shake-256)
-
RNG wrappers for system RNG
-
ASN1 Parsing Utilities
-
Base Encoding and Decoding Utilities
-
FreePascal 3.2.0+
-
Delphi Tokyo+
-
Windows XP+
-
Linux (Including Android and Raspberry PI)
-
macOS 10.7+
-
iOS 2.0+
-
FreeBSD, NetBSD, OpenBSD and DragonBSD
- Thanks to Sphere 10 Software for sponsoring the development of this library.
- 💵 Bitcoin:
1MhFfW7tDuEHQSgie65uJcAfJgCNchGeKf
- 💶 Ethereum:
0x6c1DC21aeC49A822A4f1E3bf07c623C2C1978a98
- 💷 Pascalcoin:
345367-40