cryptography ip-cores in vhdl / verilog
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
T. Meissner 302ad79ced Add CBC-AES testbench using VHPIdirect & openSSL as reference 8 months ago
.github Add CBC-AES testbench using VHPIdirect & openSSL as reference 8 months ago
aes aes: fix build arg order 11 months ago
cbcaes Add CBC-AES testbench using VHPIdirect & openSSL as reference 8 months ago
cbcdes Update CBCDES unit and tests 1 year ago
cbcmac_aes Add more VHDL-synthesis Makefiles; use src of des instead of local copies; minor refactoring 1 year ago
cbcmac_des Add more VHDL-synthesis Makefiles; use src of des instead of local copies; minor refactoring 1 year ago
cbctdes Add Makefile for synthesis of CBCTDES 11 months ago
ctraes Refactor conditions in counter process; add info about submodule update 8 months ago
des Update & restructure DES testbench to use openSSL and random simuli 10 months ago
lib Bump OSVVM to version 2020.12a 8 months ago
tdes Minor update to TDES sim makefile and testbench 11 months ago
.gitignore added ignore file 8 years ago
.gitmodules Add OSVVM as submodule 1 year ago
LICENSE.textile added GPLv2 license file 7 years ago
README.md Add CBC-AES testbench using VHPIdirect & openSSL as reference 8 months ago

README.md

simulation

cryptocores

Cryptography IP-cores & tests written in VHDL / Verilog

The components in this repository are not intended as productional code. They serve as proof of concept, for example how to implement a pipeline using only (local) variables instead of (global) signals. Furthermore they were used how to do a VHDL-to-Verilog conversion for learning purposes.

The testbenches to verify DES, AES, CTR-AES and CBC-AES are examples how useful GHDLs VHPIdirect is. They use openSSL as reference models to check the correctness of the VHDL implementation.

HINT:

The tests of some algorithms use the OSVVM library, which is redistributed as submodule. To get & initialize the submodule, please use the --recursive option when cloning this repository. Use git submodule update --recursive to update the submodule if you already chaked out the main repository.