Side-channel attacks pose significant challenges to the security of embedded systems, often allowing attackers to circumvent encryption algorithms in minutes compared to the trillions of years required for brute-force attacks. To mitigate these vulnerabilities, various countermeasures have been developed. This study focuses on two specific countermeasures: randomization of the encryption algorithm’s clock and the incorporation of a dummy core to disguise power traces. The objective of this research is to identify the optimal frequencies that yield the highest level of randomness when these two countermeasures are combined. By investigating the interplay between clock randomization and the presence of dummy cores, we aim to enhance the overall security of embedded systems. The insights gained from this study will contribute to the development of more robust countermeasures against side-channel attacks, bolstering the protection of sensitive information and systems. To achieve this, we conduct simulations and perform side-channel attacks on an FPGA to establish the relationship between frequencies and the resulting protection. We break the encryption on a non-duplicated circuit and note the least amount of measured power traces necessary and the timing overhead. We do this for all sets of frequencies considered which gives a good indication of which sets of frequencies give good protection. By comparing the frequencies generated with those from the duplicated circuit we use similar conclusions to prove whether a frequency set is secure or not. Based on our results we argue that having one frequency lower than half of the base frequency and the other frequencies being close but not higher than the base gives the highest security compared to the timing overhead measured. / Sido-kanal attacker utgör betydande utmaningar för säkerheten hos integrerade system och möjliggör ofta för angripare att kringgå krypteringsalgoritmer på minuter jämfört med de miljarder år som krävs för brute-force attacker. För att minska dessa sårbarheter har olika motåtgärder utvecklats. Denna studie fokuserar på två specifika motåtgärder: slumpmässig anpassning av krypteringsalgoritmens klocka och användningen av en dummykärna för att maskera strömsignaler. Syftet med denna forskning är att identifiera optimala frekvenser som ger högsta grad av slumpmässighet när dessa två motåtgärder kombineras. Genom att undersöka samverkan mellan slumpmässig anpassning av klockan och närvaron av dummykärnor strävar vi efter att förbättra den övergripande säkerheten hos integrerade system. De insikter som erhålls från denna studie kommer att bidra till utvecklingen av mer robusta motåtgärder mot sido-kanals attacker och stärka skyddet av känsliga system och information. För att uppnå detta genomför vi simuleringar och utför sido-kanals attacker på en FPGA för att etablera sambandet mellan frekvenser och det resulterande skyddet. Vi knäcker krypteringen på en icke-duplicerad krets och noterar den minsta mängden mätta strömsignaler som krävs samt tids fördröjning. Vi gör detta för alla uppsättningar av frekvenser som övervägs, vilket ger en god indikation på vilka frekvensuppsättningar som ger ett bra skydd. Genom att jämföra de genererade frekvenserna med dem från den duplicerade kretsen drar vi slutsatser för att bevisa om en frekvensuppsättning är säker eller inte. Baserat på våra resultat argumenterar vi för att ha en frekvens som är lägre än hälften av basfrekvensen och att de andra frekvenserna är nära men inte högre ger högsta säkerhet jämfört med den uppmätta tids fördröjningen.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-337375 |
Date | January 2023 |
Creators | Klasson Landin, Gabriel, Julborg, Truls |
Publisher | KTH, Skolan för elektroteknik och datavetenskap (EECS) |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | Swedish |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | TRITA-EECS-EX ; 2023:612 |
Page generated in 0.0021 seconds