pico2026 cryptomaze
Автор: Martin Carlisle
Загружено: 2026-06-08
Просмотров: 42
Описание:
LFSR (подробнее см. в Википедии) используется для создания ключа AES.
import binascii
from Crypto.Cipher import AES
initial_state = [0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1]
taps = [63, 61, 60, 58]
enc_flag_hex = "8f0e6d0f5b0dc1db201948b9e0cebd8f9195f08c0c8364a8741150da8e5bc72838338e7e04fbddef0c6260a4eb758417"
enc_flag = bytes.fromhex(enc_flag_hex)
def generate_key_stream(state, taps, num_bits):
st = state[:]
out = []
for _ in range(num_bits):
out.append(st[0])
feedback = 0
for t in taps:
feedback ^= st[t]
st = st[1:] + [feedback]
return out
def bits_to_bytes(bits):
res = []
for i in range(0, len(bits), 8):
byte_bits = bits[i:i+8]
val = 0
for b in byte_bits:
val = (val 1) | b
res.append(val)
return bytes(res)
bits = generate_key_stream(initial_state, taps, 128)
key = bits_to_bytes(bits)
cipher = AES.new(key, AES.MODE_ECB)
dec = (cipher.decrypt(enc_flag), AES.block_size)
print(f"ECB Decrypted: {dec}")
Повторяем попытку...
Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: