Introduction
Ce write-up détaille la manière dont j’ai résolu le challenge Sbox - Hackropole en utilisant un script Python.
Script Python
J’ai écrit un script Python pour résoudre ce challenge.
Le script utilise deux fonctions principales, XOR
et NOR
, pour effectuer des opérations logiques sur quatre variables d’entrée.
Voici le script complet :
def XOR (a, b):
if a != b:
return 1
else:
return 0
def NOR(a, b):
if(a == 0) and (b == 0):
return 1
elif(a == 0) and (b == 1):
return 0
elif(a == 1) and (b == 0):
return 0
elif(a == 1) and (b == 1):
return 0
if __name__=='__main__':
x3=x1=1
x2=x0=0
y3 = XOR(x0,NOR(x3,x2))
y2 = XOR(x3,NOR(x2,x1))
y1 = XOR(x2,NOR(x1,y3))
y0 = XOR(x1,NOR(y3,y2))
print(f"FCSC{{{y3}{y2}{y1}{y0}}}")
Explication du script
La fonction XOR
prend deux arguments et renvoie 1 si les arguments sont différents, sinon elle renvoie 0. La fonction NOR
prend également deux arguments et renvoie 1 si les deux arguments sont 0, sinon elle renvoie 0.
Dans le bloc principal du programme, quatre variables d’entrée sont définies. Ensuite, les fonctions XOR
et NOR
sont utilisées pour calculer quatre nouvelles variables. Enfin, ces nouvelles variables sont imprimées sous la forme FCSC{y3,y2,y1,y0}
.
Résultat
En exécutant ce script, j’ai pu résoudre le challenge Sbox - Hackropole.