Sage ideal crypto toolbox
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Back to SAGE & cryptology
This is a lengthy list but it's our Xmas list ;-) We aim to have a toolbox for research/education/playing not production optimizations required. So easy access, reconfigurability and clearness are more important!
Block ciphers
Block cipher algorithms
Make sure the internals are accessible and reconfigurable, particularly the S-BOXes.
Try to make generic constructors such as Feistel cipher, etc
- Serpent
- Blowfish, Twofish
- Idea
- DES, 3DES 112, 168
- AES 128, 196, 256
- Present
Modes of operation
Make sure we can select independently the block cipher encryption/decryption mode and the chaining "encryption/decryption" mode
- Authentication modes
- CMAC
- XCBC
- CBC-MAC
- Authentication+encryption modes
- CCM
- GCM
- Encryption modes
- ECB
- CBC
- CTR
- Disk encryption modes
- LRW
- XTS
Non-keyed hashes
- MDC-2 (ISO 10118-2)
Paddings
- Bit padding (can be done at bit level, others are at byte level)
DD DD DD 80 00 00 00 00
- zeros
DD DD DD 00 00 00 00 00
- PKCS7
DD DD DD 05 05 05 05 05
- ISO 10126
DD DD DD 42 DB 8A 98 05
- ANSI X.923
DD DD DD 00 00 00 00 05
Stream ciphers
Same thing, get the internals accessible and patchable
- RC4
- A5/1 A5/2
- SNOW2 SNOW3G
- SW candidates of eSTREAM:
- HC-128
- RABBIT
- Salsa 20/12
- SOSEMANUK
- HW candidates of eSTREAM:
- F-FCSR
- Grain
- MICKEY
- Trivium
- LFSR
- Shrinking generator
- Self-shrinking generator
One-way functions
- MD5
- SHA family
- Whirlpool
- RipeMD
- MDC-2
- RadioGatún
Ways to transform a block cipher into a hash
- Davies-Meyer
- Matyas-Meyer-Oseas
- Miyaguchi-Preneel
MACs based on hash functions
- HMAC
- NMAC
Key derivation functions
- KDF family
- PBKDF2
Public-key cryptography
ECC
- all coordinate systems
- cf http://www.hyperelliptic.org/EFD/
Others
- RSA (encryption, signature, PKCS#1 v1.5 and v2.1, with and without CTR)
- DSA
- ElGamal
- DH
- XTR
- Paillier
- NTRUE
Pseudo-random generators
- cf NIST
- Mersenne Twister
Cryptanalysis tools
- boolean functions & S-Box
- algebraic degree
- algebraic immunity
- algebraic normal form (ANF)
- non linearity
- resiliency
- Walsh transforms
- cross-correlation
- ECC point counting
- complex multiplication?
- factorisation solver
- discrete log solver
- statistical tests (diehard, FIPS...)
- Field operations: addition, multiplication, inverses (normal and polynomial basis)