INNER CODE UNIT · C++

deltaGF

ph4r05/Whitebox-crypto-AES · BGEAttack.cpp:830

		GF2E deltaGF    = GF2EFromLong(prop3->P[x].delta, 8);
		GF2E deltaInvGF = NTL::inv(deltaGF);
		BYTE deltaInv   = getLong(deltaInvGF);
		if (doCout) cout
			 << "   recoverQj self-test; r="<<r<<"; col="<<col<<"; (y0, y"<<row<<"); P["<<x
			 <<"].deltaInv="<<CHEX(deltaInv)
			 <<"; alfa_{"<<row<<","<<x<<"}="<< CHEX(prop3->P[x].alfa_0) << endl;
	}

	if (doCout) cout << "   recoverQj; q = " << CHEX(*qj) << "; gamma=" << CHEX(prop3->gamma) << "; " << endl;

	delete prop3;
	return 0;
}

int BGEAttack::recoverCipherKey(GenericAES & aes, BYTE roundKeys[2][16], vec_GF2E& encKey){
	encKey.SetLength(16);

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…