## 3 Method of Generating Dummy Power Trace Data
### Converting Assembly Instructions to Power Trace Data  
After extracting the assembly-level execution data from the QEMU-based simulation environment, the next step involves converting this data into power trace data using the ELMO simulator [28]. ELMO is a widely used tool for modeling power consumption in cryptographic implementations. It estimates power consumption based on instruction-level characteristics and register interactions, providing a realistic power trace that represents the execution of cryptographic algorithms.  
The power trace conversion follows a mathematical model, where the power consumption \(y\) is expressed as Formula (1).  
\[y=\delta+\big{[}I_{p}\big{|}I_{s}\big{|}D\big{|}DxI_{p}\big{|}DxI_{s}\big{]} \beta+\epsilon \tag{1}\]  
\begin{table}
\begin{tabular}{c c c} \hline \hline
**Memory Address** & **Instruction Type** & **Operand Values** \\ \hline
0x08000100 & LDR r4, [pc, \#16] & r4 = 0x2b7e151 \\
0x08000104 & LDR r5, [pc, \#20] & r5 = 0x28 ead2a \\
0x08000108 & LDR r6, [pc, \#24] & r6 = 0 xabf7158 \\
0x0800010C & LDR r7, [pc, \#28] & r7 = 0x09 cf4f3c \\
0x08000110 & EOR r0, r0, r4 & r0 \({}^{\circ}\) = 0x2b7e1516 \\
0x08000114 & EOR r1, r1, r5 & r1 \({}^{\circ}\) = 0x28 ead2a6 \\
0x08000118 & EOR r2, r2, r6 & r2 \({}^{\circ}\) = 0 xabf71588 \\
0x0800011C & EOR r3, r3, r7 & r3 \({}^{\circ}\) = 0x09 cf4f3c \\ \hline \hline \end{tabular}
\end{table}
Table 5: Information on extracted assembly data.  
In this formula, \(\delta\) represents the scalar intercept, which serves as the baseline power consumption level. The coefficients \(I_{p}\) and \(I_{s}\) capture the influence of the previous and next instructions, respectively, on power consumption. These coefficients are determined based on predefined instruction categories such as ALU operations, load/store, and shift operations. The operand-related values, represented by \(D\), consist of the set \([O_{0}\,|\,O_{1}\,|\,T_{0}\,|\,T_{1}]\), which encodes 128-bit operands and their interactions during execution. A crucial component in this model is \(T_{i}\), which is assigned a binary matrix value corresponding to the operand of the \(i\)-th instruction in the execution sequence. The value of \(T_{i}\) is calculated using an XOR operation between the current operand bit matrix and the previously assigned operand matrix. For instance, if the current operand matrix is '0101' and the previous operand matrix is '1100', the XOR operation results in '1001' as the assigned \(T_{i}\) value. Another key factor, \(D_{x}I_{p}\), represents the Hamming weight of the previous 32-bit operation and the Hamming distance between the last two operation values. These parameters significantly influence power consumption as they dictate the number of bit transitions occurring within registers. Finally, \(\epsilon\) denotes an error vector that accounts for noise in power consumption measurements, while \(\beta\) is a coefficient vector determined based on ELMO's calibrated power model parameters.  
In the actual implementation, the ELMO engine received as input the instruction types of the previous, current, and next instructions, along with the operand addresses and values for the previous and current instructions. Based on these inputs, ELMO computed instruction-level power consumption traces for each execution instance.  
By applying this model, the extracted assembly data is systematically converted into power traces that replicate real-world power consumption characteristics. These traces provide valuable insight into how cryptographic operations impact power consumption, allowing for an in-depth evaluation of their susceptibility to DL-based classification attacks.