Collection of open-source JavaCard crypto algorithms. Optimized for memory and speed with unified interface (where possible). See each algorithm's own readme file for more details.
- AEGIS, ACORN, ASCON, CLOC, MORUS - Authenticated Encryption
- TWINE, Zorro - Block Ciphers
- SHA-3 - Message Digest
- PBKDF2 - Key derivation
- OpenPGP - extend your GnuPG with smart card!
- Elliptic curves: JCMathLib
- Sha3 (Keccak): JCSha3, OptimizedJCAlgs (Discontinued on JCSha3, continuing here; SHAKE not done yet)
- JCSWAlgs (don't blindly trust the code there)
- Sha3
- Sha512
- AES
- Twine Cipher (incorrect implementation there, correct here)
- Zorro Cipher (correct implementation here, but the alg. design is not secure!)
- Primitives_SmartCard
- Sha3
- LBlock Cipher
- Picollo Cipher
- Rectangle Cipher
- Authenticated Encryption: AEonJC (well optimized)
- AEGIS
- ACORN
- ASCON
- CLOC
- MORUS
- OpenPGP - open source PGP on JC
- LedgerHQ Wallet - implementation of Ledger cryptocurrency wallet on JC
- Password-based key derivation: OptimizedJCAlgs
- PBKDF2 (Sha1, Sha256; single-block, 128-bit salt) (pretty slow)
Profiling and optimization tools:
JC miracle people: Martin Paljak, PetrS