-
Notifications
You must be signed in to change notification settings - Fork 31
Open
Description
The current issue is just a dashboard for all algorithms/operations/providers supported or planned to be supported by the library. Status is updated after release where specific item is implemented. List is ordered only by release version and doesn't represent priority in which new items will be implemented.
Feel free to comment if you are missing something from or outside the list!
For detailed information about which provider support which algorithms please consult documentation: https://whyoleg.github.io/cryptography-kotlin/providers/
Status is provided in format of [ ] when it’s not implemented and [x] (X.Y.Z) when it’s implemented in version X.Y.Z
Algorithms
- (0.1.0) MD5 (hash) - LEGACY
- (0.1.0) SHA1 (hash) - LEGACY
- (0.1.0) SHA256, SHA512 (hash)
- (0.1.0) HMAC (mac)
- (0.1.0) AES-CBC (cipher)
- (0.1.0) AES-GCM (cipher)
- (0.1.0) RSA-OAEP (cipher)
- (0.1.0) RSA-PSS (signature)
- (0.1.0) ECDSA (signature)
- (0.2.0) SHA224, SHA384 (hash)
- (0.2.0) SHA3 family (hash)
- (0.2.0) RSA-PKCS1-V1.5 (signature)
- (0.3.0) AES-CTR (cipher)
- (0.4.0) ECDH (key agreement)
- (0.4.0) PBKDF2 (prf)
- (0.4.0) HKDF (kdf)
- (0.4.0) AES-ECB (cipher) - LEGACY
- (0.4.0) RSA without padding (cipher/ signature[?]) - LEGACY
- (0.4.0) RSA-PKCS1-V1.5 (cipher) - LEGACY
- (0.5.0) CMAC (mac)
- (0.5.0) RIPEMD160 (hash)
- AES-KW (key wrap/unwrap)
- ChaCha20-Poly1305 (stream cipher)
- Agron2 (prf)
- scrypt (prf)
- brcypt (prf)
- Blowfish (cipher)
- Blake (hash)
- SHAKE (hash)
- EdDSA (signature)
- XDH (key agreement)
- DH (key agreement)
- DHKEM (kem)
- MLDSA (signature) - PQC
- MLKEM (kem) - PQC
- TOTP/HOTP (otp)
Operations
- (0.1.0) Hashing
- (0.1.0) Cipher and AEAD Cipher
- (0.1.0) Signature generation and verification
- (0.4.0) Key agreement
- (0.4.0) Key derive (kdf/prf)
- Key wrap/unwrap
- Hybrid Encryption
- KEM (Key encapsulation mechanism)
- OTP (One Time Password) support
Providers
- (0.1.0) WebCrypto
- (0.1.0) Apple
- (0.1.0) JDK
- (0.1.0) OpenSSL3
- (0.5.0) CryptoKit
- Windows CNG
- AWS/GCP KMS provider
- BorringSSL (optional, in addition to openssl)
- NodeJS engine
- OpenSSL3 KMP (JVM , may be JS/Wasm)
- wasi-crypto or via component model
Metadata
Metadata
Assignees
Labels
No labels