# Research of Security Routing Protocol for UAV Communication Network Based on AODV
## 3 Improved Security AODV Routing Protocol
### Secure Routing Scheme Based on ECC
#### 3.2.1 Digital Signature Scheme Based on Elliptic Curve  
It is assumed that network bandwidth resources in the network are limited, and nodes can move freely, and communicate with each other through wireless multi hop channels. The relationship between nodes in the network is also dynamic, and nodes can join or leave at any time. The wireless link between nodes is bidirectional, and the nodes within the range of each other's communication are called neighbor nodes. This scheme assumes that there is a trusted system authorization center (such as distributed certification authority system) in the network, which can verify the validity of each user's identity, and generate a self-certified public key for the user according to the user's identity and other information. Table 3 shows the symbol definition of this secure routing scheme. \begin{table}
\begin{tabular}{c c c c} \hline \hline
**Deciphering Time/MIPS-a** & **RSA Key Length/Bit** & **ECC Key Length/Bit** & **RSA/ECC Key Length Ratio** \\ \hline \(10^{4}\) & 512 & 106 & 5:1 \\ \(10^{8}\) & 768 & 132 & 6:1 \\ \(10^{12}\) & 1024 & 160 & 7:1 \\ \(10^{20}\) & 2048 & 210 & 10:1 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Security analysis and comparison between elliptic curve cryptosystem (ECC) and RSA. \begin{table}
\begin{tabular}{c c c} \hline \hline  & **Signature Length/Bit** & **Encrypted Message Length/Bit** \\ \hline RSA & 1024 & 1024 \\ DSA & 320 & - \\ ElGamal & - & 2048 \\ ECC & 320 & 320 \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Comparison of signature and encryption length of several cryptosystems. \begin{table}
\begin{tabular}{c c} \hline \hline
**Symbol** & **Definition** \\ \hline \(ID_{i}\) & Identity information of node \(i\) \\ \(q\) & The size of a finite field, which is a prime or a power of two, is about 160 bits long. \\ \(E\left[F_{q}\right]\) & Elliptic curve based on finite field \(F_{q}\) \\ \(G\) & The base point on the \(E\left[F_{q}\right]\), whose order is \(n\), where \(n\) is a large prime (160 bits) \\ \(X(G)\) & Take the abscissa value of point \(G\) \\ \(S_{u}\) & Private key of node \(u\) \\ \(P_{u}\) & Public key of node \(u\) \\ \(M\) & Routing information to be signed \\ \(A\) & Node that signs routing information \\ \(B\) & Node that verifies signature \\ \(S_{SA}\) & Private key of system CA, \(S_{SA}\in[2,n-2]\) \\ \(P_{SA}\) & Public key of system CA, and \(P_{SA}=S_{SA}G\) \\ \(h(\cdot)\) & One-way hash function \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Symbol definition. The process of user \(U_{i}\) registering with system CA is shown in Algorithms 2. It can be seen from the above process that the system CA only generates the user's public key, and the user's private key is generated by the user itself, and the user can verify the authenticity of the public key with the private key generated by itself, so the problem of secure distribution of the user's private key is avoided. After users obtain their own public and private key pairs, they can use the following process for signature and verification. ```
1:for each \(U_{i}\)do
2: Select a user identity information, expressed as \(I_{i}\)
3: Randomly select an integer \(x_{i}\in[2,n-2]\) as the random key
4: Calculate \(V_{i}=h(x_{i}||I_{i})\cdot G\)
5: Submit \(\{I_{i},V_{i}\}\) to system CA
6: Randomly select an integer variable \(k_{i}\in[2,n-2]\)
7: Calculate the public key \(P_{i}\) and public key evidence \(w_{i}\): \(P_{i}=V_{i}+(k_{i}-h(I_{i}))\times G=\big{(}p_{ix}\times P_{iy}\big{)}\)
8:\(w_{i}=k_{i}+S_{SA}\times(P_{ix}+h(I_{i}))(\bmod n)\)
9: Return \(\{P_{i},w_{i}\}\) to user \(U_{i}\)
10:\(U_{i}\) generates its own private key: \(s_{i}=w_{i}+h(x_{i}||I_{i})(\bmod n)\)
11: Verify the authenticity of user public key: \(s_{i}\times G=P_{i}+h(I_{i})\times G+[(P_{ix}+h(I_{i}))\bmod n]\times P_{SA}\)
12:endfor
```  
**Algorithm 2** The Process of User \(U_{i}\) Registering with System CA  
The process of signature and verification is shown in Algorithms 3.