Análisis Side-Channel mediante aprendizaje automático (machine learning): estudio de técnicas y aplicabilidad
Document typeBachelor thesis
Rights accessRestricted access - confidentiality agreement
Machine learning has the objective of developing techniques, methods and algorithms that allow machines to learn. As many techniques and algorithms exist with this purpose, this project is focused on the study of three of them, decision trees, neuronal networks and support vector machines, considering that they are applicable to Side-Channel Analysis. Side-Channel Analysis is a cryptanalysis technique that tries to obtain secret information from a system taking advantage of the leakage of information, which is indirectly produced during a normal execution of a code executed in a device. During the experimental part of the project, a Side-Channel analysis has been carried out using support vector machines on power consumption traces belonging to AES algorithm. For doing so, it was necessary to comprehend the functioning of the AES operation as well as perform the acquisition and the post-processing of its power consumption traces. Afterwards, different tests have been performed, such as the influence of the kernel's type, the validation methods, the number of traces or the number of points of each trace, for evaluating the support vector machines technique and finding the best configuration. Finally, after applying the aforementioned tests, two procedures, able to extract the key of the AES algorithm, have been developed.