This is an old revision of the document!


Lab TC - Side-Channel Attacks on Classic McEliece

In this lab we'll do some implementations of side-channel attacks on Classic McEliece.

For this lab we'll use MATLAB, which you can download from Mathworks with your student account: Get Matlab

For this lab you might also find useful the following resources: lab6.zip

Exercițiul 1 (2p)

Analizați fișierul lab6_cpa.m și plotați datele de leakage din fișierul simdata.mat, precum și corelația pentru prima cheie posibilă.

Exercițiul 2 (4p)

Calculați corelația pentru toate valorile posibile din cheie și plotați rezultatul corelației pentru fiecare cheie posibilă. Mai exact, folosiți comanda plot(x, y) din Octave/MATLAB, unde x este un vector ce reprezintă toate valorile posibile pentru cheie [0:255] și y este un vector ce conține corelația pentru fiecare cheie.

Corelația poate fi obținută folosind corrcoef, care va returna o matrice de dimensiune 2×2 pentru cazul nostru. În acest caz, poate fi selectat elementul de la indexul (1, 2) pentru restul calculelor. Valorile de la indexul (1, 1) și indexul (2, 2) reprezintă varianța pentru fiecare variabilă (hamming weight și datele de leakage). Puteți deduce cine este elementul de la indicele (2, 1).

Exercițiul 3 (4p)

Pentru evaluarea securității unui device împotriva atacurilor de tip side-channel, una dintre metodele cele mai folosite este success rate (SR), care măsoară cât de eficient este un atac. Pentru implementarea acestei metode folosiți următorii pași:

  1. Rulați atacul pe diferite seturi de trace-uri (ex. R=50 de subseturi cu N trace-uri fiecare) și pentru fiecare atac determinați dacă cheia corectă (K) conduce la cea mai mare corelație.
  2. Calculați success rate ca numărul de experimente în care cheia corectă conduce la corelație maxima împărțit la numărul total de experimente. $SR = {#cheia corectă prima / #experimente}$

Testați metoda de evaluare success rate folosind diferite valori pentru numărul de trace-uri din fiecare subset (ex. $N \in \{10, 20, 50, 100, 200, 500, 1000\}$) și plotați SR în funcție de N.

ac/laboratoare/tc-sca-cm.1776779186.txt.gz · Last modified: 2026/04/21 16:46 by marios.choudary
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0