def test_SubBytesInv(self): # test single substitution sbox_input = gf._cache.fetch_int(0xb8) expected_result = gf._cache.fetch_int(0x9a) instance = AES() result = instance.SubBytesInv([sbox_input])[0] self.assertEquals(expected_result, result) poly = gf._cache.fetch_int(0x99) self.assertEquals(poly, instance.SubBytesInv(instance.SubBytes([poly]))[0]) # full inversion test self.assertEquals( self.gf_full, instance.SubBytesInv(instance.SubBytes(self.gf_full)))