# Secure ECDSA SRAM-PUF Based on Universal Single/Double Scalar Multiplication Architecture
## 2 Security Problems Existing in Soft-Decision RM Codes  
Since SRAMs are directly connected to the CPU, they are susceptible to being read by attackers through software attacks. Once SRAM is accessed by a third party, \(y^{\prime}\) will be leaked to the attacker. The attacker proceeds to target the ROM, which is also directly linked to the CPU, using software methods to acquire \(w\) and \(P\). Combining this information with \(y^{\prime}\), the attacker can derive \(c^{\prime}\), \(c\), and \(y\). The strength of PUF lies in its ability to resist replication even if an attacker gains access to the response value, as there is no means to control technological differences for modifying \(y^{\prime}\). However, with the introduction of \(P\) through soft-decision, the paper proposes the RM code soft-decision attack algorithm, as shown in Algorithm 1. In this algorithm, the attacker can manipulate \(P\) to correct \(c^{\prime}\) to an alternative \(c^{\prime}\), thereby altering the error-corrected response value \(y\).  
```
0:\(w\) and \(y\).
0:Replicated \(y\).
1: Registration stage:
2:for\(j=0\) to \(100\)do
3: SRAMs power on to obtain one \(y_{attack\_j}\);
4:endfor
5: SRAMs power on to obtain \(y_{attack}\);
6:for\(j=0\) to \(100\)do
7:for\(i=0\) to \(\mathit{Bit\_Length}(y_{attack})\)do
8:if\(y_{attack}[i]\
eq y_{attack\_j}[i]\)then
9:\(P_{attack\_j}=P_{attack\_j}+1\);
10:endif
11:endfor
12:for\(i=0\) to \(\mathit{Bit\_Length}(y_{attack})\)do
13:if\(y_{attack}[i]\
eq y_{attack\_j}[i]\)then
14:\(P_{attack\_j}=1-P_{attack\_j}\);
15:endif
16:endfor
17:endfor
18: Store \(w\) and \(P_{attack}\) in the ROM;
19: Recovery stage:
20: SRAMs power on to obtain \(y^{\prime}_{attack}\);
21:\(c^{\prime}_{attack}=w\oplus y^{\prime}_{attack}\);
22:\(c=RM\_Decode(c^{\prime}_{attack},P_{attack})\);
23:\(y=c\oplus w\); Return:\(y\).
```  
**Algorithm 1** The Proposed Attack Algorithm for SRAM-PUFs Based on Soft-Decision RM Code  
In the attack scheme, a comparison is made during the registration phase between each bit of \(y\) and \(y_{attack}\) to adjust each bit of \(P_{attack}\). If a bit of \(y\) and \(y_{attack}\) differs, the corresponding bit in \(P_{attack}\) is set to \(1-P_{attack}\). This adjustment ensures that the likelihood estimate for soft-decision error correction takes the opposite stance.  
In the recovery phase, the disparities between \(c^{\prime}_{attack}\) and \(c^{\prime}\) in the attacked SRAM-PUF are analogous to those between \(y^{\prime}_{attack}\) and \(y^{\prime}\), given the formulas \(c^{\prime}=w\oplus y^{\prime}\) and \(c^{\prime}_{attack}=w\oplus y^{\prime}_{attack}\). Consequently, modifications to the differing bits in \(P_{attack}\) between \(y^{\prime}_{attack}\) and \(y^{\prime}\) lead to reverse likelihood estimates for the corresponding bits. This reversal ultimately results in identical sign likelihood estimates for each bit between \(c^{\prime}_{attack}\) and \(c^{\prime}\). During the final decoding of the likelihood estimate to determine the symbol, two likelihood estimates with the same symbol will have a high probability of being error-corrected to yield the same code word. Thus, \(c^{\prime}_{attack}\) can be corrected to \(c^{\prime}\), allowing attackers to replicate \(y\). As a result, attackers do not need to alter the circuits. By substituting \(P\) in ROM with \(P_{attack}\), the same SRAM-PUF soft-decision algorithm can be ineffective at achieving the \"unclonable\" effect.