Utilities/crypto/py3AES.py

changeset 5664
9b318fcb1ee2
parent 5604
b047181a4a33
child 6048
82ad8ec9548c
equal deleted inserted replaced
5663:52a91f9a7a76 5664:9b318fcb1ee2
391 else: 391 else:
392 mult = [2, 1, 1, 3] 392 mult = [2, 1, 1, 3]
393 cpy = column[:] 393 cpy = column[:]
394 g = self.__galois_multiplication 394 g = self.__galois_multiplication
395 395
396 column[0] = g(cpy[0], mult[0]) ^ g(cpy[3], mult[1]) ^ \ 396 column[0] = (
397 g(cpy[0], mult[0]) ^ g(cpy[3], mult[1]) ^
397 g(cpy[2], mult[2]) ^ g(cpy[1], mult[3]) 398 g(cpy[2], mult[2]) ^ g(cpy[1], mult[3])
398 column[1] = g(cpy[1], mult[0]) ^ g(cpy[0], mult[1]) ^ \ 399 )
400 column[1] = (
401 g(cpy[1], mult[0]) ^ g(cpy[0], mult[1]) ^
399 g(cpy[3], mult[2]) ^ g(cpy[2], mult[3]) 402 g(cpy[3], mult[2]) ^ g(cpy[2], mult[3])
400 column[2] = g(cpy[2], mult[0]) ^ g(cpy[1], mult[1]) ^ \ 403 )
404 column[2] = (
405 g(cpy[2], mult[0]) ^ g(cpy[1], mult[1]) ^
401 g(cpy[0], mult[2]) ^ g(cpy[3], mult[3]) 406 g(cpy[0], mult[2]) ^ g(cpy[3], mult[3])
402 column[3] = g(cpy[3], mult[0]) ^ g(cpy[2], mult[1]) ^ \ 407 )
408 column[3] = (
409 g(cpy[3], mult[0]) ^ g(cpy[2], mult[1]) ^
403 g(cpy[1], mult[2]) ^ g(cpy[0], mult[3]) 410 g(cpy[1], mult[2]) ^ g(cpy[0], mult[3])
411 )
404 return column 412 return column
405 413
406 def __aes_round(self, state, roundKey): 414 def __aes_round(self, state, roundKey):
407 """ 415 """
408 Private method to apply the 4 operations of the forward round in 416 Private method to apply the 4 operations of the forward round in

eric ide

mercurial