# Side-Channel Power Analysis Based on SA-SVM
## 4 Results and Analysis  
In this work, the framework for conducting our attacks was supported by LIB-SVM Library for SVM [35]. We ran the experiment on a laptop with Inter(R) Core (TM) i5-11320H CPU @ 3.20 GHz, 16 GB (Windows 11 x64). We implemented the experiments with Matlab2019b. In this section, we compare the performance of the different kernel functions under the SVM model and the SA-SVM model. The SVM model uses a grid search method to find the optimal parameters. We chose 1000 power traces from DPAv4.1 for our experimental dataset. Two-thirds of them were used as the learning set, and the remaining one-third was used for the testing set. The learning set was partitioned into three equal subsets via three-fold cross-validation. We trained the model using two subsets at a time and used the remaining subset for validation, repeating this process until three subsets were used for validation. This process generated three models, and we chose the parameters of the model with the highest accuracy and evaluated its effectiveness on the testing set. The subkey at this point was 108. In addition, 4 to 117 points of interest related to leakage were used in our experiments. The proposed SA-SVM approach's parameter values were as follows: \(L=100\); \(T_{0}=100\), \(T_{\text{end}}=1\); \(c=[0.01,128]\), \(sigma=[0.001,5]\), \(gamma=[0.001,5]\). Because simulated annealing is a stochastic algorithm, the solution will oscillate with each training. The SA-SVM model was used to perform five calculations on the dataset, and the best-performing one was chosen as the final result. To explore the impact of kernel functions and eigenvalues on model performance, we used accuracy, guessing entropy, and the time required as evaluation criteria. The data in Tables 2 and 3 range from 4 to 117 POIs for the various kernel functions. First, we can observe that all kernel functions performed well in terms of accuracy. Table 2 lists the results of the SVM model, which indicate that the greater the number of POIs, the higher the accuracy of SVM. However, after exceeding 53 POIs, the increase in accuracy slowed down. When there were 53 POIs, the Morlet-RBF kernel performed best with 92% accuracy, followed by the Mexican hat wavelet kernel with 91.75%. There was little difference in accuracy between kernel functions. Table 3 lists the results of the SA-SVM model, which indicate that the number of POIs reached its peak at 53, and accuracy began to decline after that. The Morlet wavelet had the highest accuracy at peak, 94.5%, which was 3.5% higher than when using the SVM model. The accuracy of the Morlet-RBF kernel was 1.5-2% higher than other Morlet kernels when POI was less than 29. The comparison of Tables 2 and 3 shows that, under the same kernel, the SA-SVM model had more significant advantages in classification than the SVM model, and the accuracy increased by 0.25-3.25%. Furthermore, the wavelet kernel outperformed the ordinary RBF kernel and linear function in terms of classification accuracy. Figure 4 depicts the time taken to conduct the experiments mentioned above. The results show that as the number of POIs increased, the total time for each algorithm increased. When the number of POIs increased from 4 to 117, the time of SVM increased by 159-309%, whereas the time of SA-SVM increased by 170 \begin{table}
\begin{tabular}{c c c c c c c c} \hline \hline \multirow{2}{*}{**Kernel**} & \multicolumn{8}{c}{**Accuracy (\%) of Different POIs**} \\ \cline{2-7}  & **4** & **14** & **20** & **29** & **53** & **84** & **117** \\ \hline Linear & 77.00 & 83.75 & 87.00 & 84.75 & 91.25 & 90.00 & 91.00 \\ RBF & 76.50 & 84.00 & 87.25 & 88.50 & 91.00 & 91.75 & 92.00 \\ Morlet wavelet & 76.75 & 84.75 & 88.50 & 89.25 & 91.25 & 91.50 & **92.25** \\ Mexican hat wavelet & 75.75 & 83.75 & 87.75 & 87.75 & 91.75 & 90.25 & 91.25 \\ Morlet–RBF wavelet & 77.00 & 85.25 & 87.00 & 88.50 & **92.00** & 91.50 & 91.25 \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Testing results (accuracy) of SVM.