This is a small library designed to work with the 42 projects that would need to use some cryptographic functions.
- make (version 4.3 or greater)
- gcc (version 13.1.1 or greater)
- The bundled libft (another library that I created in the context of 42)
- libm
And the following libraries (to build and run tests):
- Google test which is declared as a submodule of this repos (it will be pulled and built by the Makefile)
- openssl itself to use its library
$ make # compile only libcrypto42
$ make check # run testsTo compile an executable using this library, you need to add the following libraries:
libcrypto42.a(-L<path to libcrypto42> -lcrypto42)libft.a(-L<path to libft> -lft)- The system math library (
-lm)
- MD5
- SHA2 suite (sha224, sha256, sha384, sha512, sha512/224, sha512/256)
- SHA3 suite
- PBKDF
- HMAC
- DES
- AES
- AES128
- AES192
- AES256
- 3DES (EDE only)
- 2 Keys option
- 3 Keys option
- Operation modes for symmetric encryption
- ECB
- CBC
- CFB
- OFB
- CTR
- Base64
- Use of the Kernel CSPRNG