README.md 1.02 KB
Newer Older
1 2
CRY(T_T)
========
davxy's avatar
davxy committed
3

davxy's avatar
davxy committed
4 5 6 7 8 9
A small crypto library.


Multiple precision integers
---------------------------

davxy's avatar
davxy committed
10
- Basic arithmentic (add,sub,mul,div,mod,abs,exp,sqr)
davxy's avatar
davxy committed
11 12 13 14 15
- Modular exponentiation
- Modular inverse (Euclidean)
- GCD and LCM
- Probabilistic prime numbers generator (Miller-Rabin)
- Random mpi generator
davxy's avatar
davxy committed
16

davxy's avatar
davxy committed
17

davxy's avatar
davxy committed
18 19 20 21
Symmetric ciphers
-----------------

### Block ciphers
22 23

- AES
davxy's avatar
davxy committed
24
- DES and Triple DES
25 26 27 28 29

### Block cipher mode of operation

- ECB
- CBC
davxy's avatar
davxy committed
30
- GCM
davxy's avatar
davxy committed
31
- CTR
32

davxy's avatar
davxy committed
33 34 35 36 37

Public key algorithms
---------------------

### Ciphers
davxy's avatar
davxy committed
38 39 40

- RSA (PKCS#1 v1.5)

davxy's avatar
davxy committed
41 42 43 44
### Secret exchange

- Diffie-Hellman

davxy's avatar
davxy committed
45 46 47 48

Pseudo random numbers generators
--------------------------------

49
- OS agnostic CSPRNG with AES-CTR
davxy's avatar
davxy committed
50 51 52
- Weak portable PRNG
- Posix CSPRNG (using '/dev/urandom')
- Windows CSPRNG (using 'CryptGenRandom')
davxy's avatar
davxy committed
53

davxy's avatar
davxy committed
54 55 56 57
Message authentication code
---------------------------

- CMAC
davxy's avatar
davxy committed
58
- HMAC
davxy's avatar
davxy committed
59

davxy's avatar
davxy committed
60

davxy's avatar
davxy committed
61 62 63 64 65 66 67 68 69 70 71
Hash
----

### Cryptographic hash

- MD5
- SHA-256

### CRC

- CRC16-CCITT
72
- CRC16-IBM
davxy's avatar
davxy committed
73
- CRC32-Ethernet
davxy's avatar
davxy committed
74

davxy's avatar
davxy committed
75 76 77 78 79
### Checksums

- LRC
- 8-bit trivial checksum

davxy's avatar
davxy committed
80

81 82 83 84 85
Utilities
---------

- Base64 encoder/decoder