Nous devons calculer l’opération inverse de np.fft.ifft
en l’occurrence np.fft.fft
:
#!/usr/bin/python3
import numpy as np
import numpy.fft
FFT = np.fromfile('fftea', dtype=numpy.complex64)
# Compute FFT
result = np.array(np.fft.fft(FFT, n=64), dtype=np.complex64)
flag = ""
for c in result:
flag += chr(int(c.real))
print(flag)
On exécute les commandes Bash suivantes :
#!/bin/bash
set -e
if [ ! -f fftea ]; then
wget https://hackropole.fr/challenges/fcsc2024-hardware-fftea/public/fftea -O fftea
fi
python3 020_FFTea.py
Le résultat est le suivant :
--2025-01-19 15:24:59-- https://hackropole.fr/challenges/fcsc2024-hardware-fftea/public/fftea
Resolving hackropole.fr (hackropole.fr)... 51.91.236.193, 2001:41d0:301::28
Connecting to hackropole.fr (hackropole.fr)|51.91.236.193|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 512
Saving to: ‘fftea’
fftea 100%[================================================================================================================>] 512 --.-KB/s in 0s
2025-01-19 15:24:59 (769 MB/s) - ‘fftea’ saved [512/512]
FCSC{xxxxxxxx}