summaryrefslogtreecommitdiff
path: root/src/add_python/lilliput/ae_mode_1.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/add_python/lilliput/ae_mode_1.py')
-rw-r--r--src/add_python/lilliput/ae_mode_1.py28
1 files changed, 2 insertions, 26 deletions
diff --git a/src/add_python/lilliput/ae_mode_1.py b/src/add_python/lilliput/ae_mode_1.py
index efa0b6f..a5ba7c8 100644
--- a/src/add_python/lilliput/ae_mode_1.py
+++ b/src/add_python/lilliput/ae_mode_1.py
@@ -36,30 +36,6 @@ TWEAK_BITS = 192
TWEAK_BYTES = TWEAK_BITS//8
-def _low_part(array, number_bits):
- shifted = 0
- for byte in range(0, len(array)):
- shifted |= (array[byte] << (8 * byte))
-
- mask = 0
- for bit in range(0, number_bits):
- mask |= (0x1 << bit)
-
- lower_part = shifted & mask
-
- will_pad = 0
- if number_bits % 8 != 0:
- will_pad = 1
-
- lower_part_byte = []
- nb_bytes = number_bits//8 + will_pad
- for byte in range(nb_bytes):
- lower_part_byte.append(lower_part & 0xff)
- lower_part = lower_part >> 8
-
- return lower_part_byte
-
-
class _MessageTweak(Enum):
BLOCK = 0b0000
NO_PADDING = 0b0001
@@ -106,7 +82,7 @@ def _treat_message_enc(M, N, key):
tweak = _tweak_message(N, l, _MessageTweak.PAD)
pad = tbc.encrypt(tweak, key, [0 for byte in range(0, BLOCK_BYTES)])
- lower_part = _low_part(pad, padding_bytes*8)
+ lower_part = pad[:padding_bytes]
C.append(xor(M[l], lower_part))
tweak_final = _tweak_message(N, l+1, _MessageTweak.FINAL)
Final = tbc.encrypt(tweak_final, key, checksum)
@@ -135,7 +111,7 @@ def _treat_message_dec(C, N, key):
else:
tweak = _tweak_message(N, l, _MessageTweak.PAD)
pad = tbc.encrypt(tweak, key, [0 for byte in range(0, BLOCK_BYTES)])
- lower_part = _low_part(pad, padding_bytes*8)
+ lower_part = pad[:padding_bytes]
M.append(xor(C[l], lower_part))
m_padded = pad10(M[l])