CryptoLib
FreePascal Crypt Library
- Quiet · last change 8-3-2022
- ★ 9 on GitHub
README
CryptoLib
FreePascal Crypt Library 沿自 CryptoLib4Pascal: Crypto for Modern Object Pascal
基本上修改了一些,以適應FreePascal。以及我自己的SSH Client 使用,具體改了哪些,我也記不起來。 實際應用上,在我的SSH Client 中正確和OpenSSHD 接上,並無錯誤。 呀,這套沒有RSA,你要用請自行IMPLEMENT。因為SSH 也沒在RSA 了。
Available Algorithms
Symmetric Encryption
Block Ciphers
AES (128, 192, and 256)RijndaelBlowfishSpeck
Stream Ciphers
ChaCha(X)Salsa20
Block Cipher Modes Of Operation
ECBCBCCFBCTRCTSOFBSIC
Block Cipher Padding Schemes
ISO 10126-2ISO 7816-4Bit (ISO/IEC 9797-1)PKCS#5PKCS#7TBC (Trailing Bit Complement)ANSI X9.23Zero
Asymmetric Cryptography
DSA(DET)ECDSA (supported curves: NIST, X9.62, SEC2, Brainpool)ECNRECSchnorrEdDSA (Ed25519, Ed25519Blake2B)
Key Agreement/Exchange
DHECDHECDHCX25519
Key Derivation Functions
HKDFKDF1KDF2
Password Hashing Schemes (Password Based Key Derivation Functions)
PBKDF2Argon2 (2i, 2d and 2id variants)Scrypt
MAC
HMAC (all supported hashes)KMAC (KMAC128, KMAC256)
Hashes
MD2
MD4
MD5
SHA-1
SHA-2 (224, 256, 384, 512, 512-224, 512-256)
Gost3411
Gost3411-2012 (256, 512)
RIPEMD (128, 160, 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)
XOF (Extendable Output Function)
Shake (Shake-128, Shake-256)
Other Useful Things
RNG wrappers for system RNGASN1 Parsing UtilitiesBase Encoding and Decoding Utilities
Compile-Time Dependencies
Supported Compilers
FreePascal 3.2.0+Delphi Tokyo+
Supported / Tested OSes
Tested OS boxes are checked
-
- [x]
Windows XP+
- [x]
-
- [x]
Linux (Including Android and Raspberry PI)
- [x]
-
- [x]
Mac OS X
- [x]
-
- [x]
iOS 2.0+
- [x]
-
- [x]
(Oracle) Solaris
- [x]
-
- [x]
OpenBSD
- [x]
-
- [ ]
FreeBSD
- [ ]
-
- [ ]
NetBSD
- [ ]
-
- [ ]
DragonFlyBSD
- [ ]

