## 3 Development of an Imitation-Resistant Zero-Knowledge Authentication Protocol Based on an MPPC
The result is written to the memory as a combination \(U^{n}(x)=(U_{1}^{n}(x),\ U_{2}^{n}(x),\,\ldots,\,U_{k}^{n}(x))\). At Steps 1.3-1.4 of the protocol, \(K\), \(D(n)\) and \(L(n)\) are distorted. For this purpose, a set of random residues is generated. They satisfy the following condition:  
\[SRSU:\ \{\Delta K_{i}(n),\,\Delta D_{i}(n),\,\Delta L_{i}(n)\}<W_{i}, \tag{11}\]  
where \(W_{i}=2^{\text{deg}m_{i}(x)}-1\); \(i=1,\ldots,k\). Then, a distortion of the secret parameters is performed:  
\[SRSU:\left\{ \begin{array}{l}\tilde{K}_{i}(n)=(K_{i}+\Delta K_{i}(n))\text{ mod}W_{i}\\ \tilde{D}_{i}(n)=(D_{i}(n)+\Delta D_{i}(n))\text{mod}W_{i}\\ \tilde{L}_{i}(n)=(L_{i}(n)+\Delta L_{i}(n))\text{mod}W_{i}\end{array} \right. \tag{12}\]  
where \(i=1,\ldots,k\). At Step 1.5 of the protocol, the distorted digest of the satellite RSU is computed. The calculations are performed in parallel on bases of MPPC using the distorted parameters. \[SRSU:\tilde{U}_{i}^{n}(x)=x^{\tilde{K}_{i}(n)}x^{\tilde{D}_{i}(n)}x^{L_{i}(n) }\text{mod}m_{i}(x). \tag{13}\]  
The result in a form of \(\tilde{U}^{n}(x)=(\tilde{U}_{1}^{n}(x),\tilde{U}_{2}^{n}(x),\ldots,\,\tilde{U }_{k}^{n}(x))\) is written to the memory. Let us consider the second part of the operational stage of the developed authentication protocol. At Step 2.1 of the protocol, when the satellite RSU appears in the line of sight of the receiving device located on the vehicle, the OBU generates a set of random residues \(V(n)=(V_{1}(n),\,\ldots,\,V_{k}(n))\). This combination is a request that is transmitted to the satellite RSU. At Steps 2.2-2.3 of the protocol, the satellite RSU starts to compute the responses. The RSU's secret parameters and the request are involved in the calculation of responses. \[ \begin{array}{l}Y_{i}^{1}(n)=(\hat{K}_{i}(n)-V_{i}(n)K_{i})\text{mod}W_{i},\\ Y_{i}^{2}(n)=(\hat{D}_{i}(n)-V_{i}(n)D_{i}(n))\text{mod}W_{i},\\ Y_{i}^{3}(n)=(\hat{L}_{i}(n)-V_{i}(n)L_{i}(n))\text{mod}W_{i}.\end{array}  \tag{14}\]  
The obtained results \(\big{\{}(Y_{1}^{1}(n),\,\ldots,\,Y_{k}^{1}(n))\), \((Y_{1}^{2}(n),\,\ldots,\,Y_{k}^{2}(n))\), \((Y_{1}^{3}(n),\,\ldots,\,Y_{k}^{3}(n))\big{\}}\) are used to generate the response signal of the satellite RSU. This signal contains two digests and three responses represented in the MPPC. The signal is transmitted to the OBU. \[RSU\to OBU:\ \ (U_{i}^{n}(x)\Big{|}\Big{|}\tilde{U}_{i}^{n}(x)\Big{|} \Big{|}Y_{i}^{1}(n)\Big{|}\Big{|}Y_{i}^{2}(n)\Big{|}\Big{|}Y_{i}^{3}(n)). \tag{15}\]  
At Step 2.4 of the protocol, the OBU located on the vehicle performs a check of the received signal from the satellite RSU. The computation involves the true digest, three responses, and the request. \[OBU:\ \ A_{i}^{n}(x)=\Big{(}U_{i}^{n}(x)^{V_{i}(n)}x^{Y_{i}^{1}(n)}x^{Y_{i}^{2}( n)}x^{Y_{i}^{3}(n)}\Big{)}\text{mod}m_{i}(x). \tag{16}\]  
If the calculation results match the distorted digest (\(A_{i}^{n}(x)=\tilde{U}_{i}^{n}(x)\)), the OBU decides that the satellite RSU is legitimate. Then, the data exchange between the OBU and RSU starts. Development of an Algorithm for Error Burst Correction and Bases Expansion in a Modular Polyalphabetic Polynomial Code  
The independence of the execution of modular operations on a code's bases became a trigger for using modular codes when creating fault-tolerant computing devices. For this purpose, redundant bases are introduced. In [51], a proof is presented, showing that the introduction of a single redundant base \(m_{k+1}(x)\) in the MPPC allows for detecting the presence of a one-time error. In modular codes, a one-time error means the distortion of one residue in a combination. The introduction of a second redundant base \(m_{k+2}(x)\) allows for correcting a one-time error [50; 51].