I want to re-implement a research paper for s-boxes for my semester project and I am short of time now. My part is to test different modes of aes (like cbc,ecb,ctr,gcm) with different sboxes. I am using openssl library 1.0.1i for the purpose. Obviously I need to generate lookup tables and for that this post was helpful
Generating AES (AES-256) Lookup Tables
Now I have to embed those tables. I have gone through the openssl library and found aes_core.c having all lookup tables and useful functions used by crypto_cbc128_encrypt() and other modes sources files in aes/... Compilation was successful but for GCM_AES_256 I am stuck. I am unable to locate a GCM_aes_256 source file like aes_cbc, aes_ctr etc. Is it implemented differently?? As aes is used in all modes so finally same lookup tables should be used from aes_core file. Isnt it the case? Is it implemented differently in openssl??
Additional in Openssl files, I have seen Htables in gcm_128. What do these tables do? Are they pointing to same lookup tables as in aescore?