power leak
Last updated
Last updated
import pandas as pd
import numpy as np
import hashlib
df = pd.read_csv('power_traces.csv')
secret = []
for pos in range(6):
pos_df = df[df['position'] == pos]
guess_vars = {}
for g in range(10):
g_df = pos_df[pos_df['guess'] == g]
guess_vars[g] = g_df['power_mW'].var()
best = max(guess_vars, key=guess_vars.get)
secret.append(str(best))
secret_str = ''.join(secret)
flag = 'EHAX{' + hashlib.sha256(secret_str.encode()).hexdigest() + '}'
print(f'Secret: {secret_str}')
print(f'Flag: {flag}')Position 0: guess 7 (var=69.06)
Position 1: guess 9 (var=68.97)
Position 2: guess 2 (var=68.21)
Position 3: guess 9 (var=69.28)
Position 4: guess 6 (var=67.24)
Position 5: guess 3 (var=67.65)
Secret: 792963SHA256("792963") = 5bec84ad039e23fcd51d331e662e27be15542ca83fd8ef4d6c5e5a8ad614a54dEHAX{5bec84ad039e23fcd51d331e662e27be15542ca83fd8ef4d6c5e5a8ad614a54d}