INNER CODE UNIT · C++
curT2
ph4r05/Whitebox-crypto-AES · BGEAttack.cpp:1210
AES_TB_TYPE2 & curT2 = this->wbaes->eTab2[(r+1)][nextTbox[i]]; // T2 table in next round connected to particular HILO(xtb1, xtb2)
XTB & curXtb1 = this->wbaes->eXTab[r][i%4][5][2*(i/4)+0]; // 3.rd index - XOR table number 5, last in round
XTB & curXtb2 = this->wbaes->eXTab[r][i%4][5][2*(i/4)+1];
#ifdef AES_BGE_ATTACK
GF256_func_t & outBiject = this->wbaes->eOutputBijection[r][i];
#endif
// Copy original values of tables to be consistent in changes, not to change value that will be
// needed in future in original form (before application of transformation)
AES_TB_TYPE2 tmpT2;
memcpy(tmpT2, curT2, sizeof(AES_TB_TYPE2));
// Debug bijection for testing networking
//BIJECT8X8 tmpF;
//BIJECT8X8 tmpFinv;
//generator.generate8X8Bijection(&tmpF, &tmpFinv, false);
// which bijection to use? For debug we can use random one, or computed Q