# A Low-Complexity Security Scheme for Drone Communication Based on PUF and LDPC
## 3 Security Architecture
### System Model
#### 3.1.3 Communication Model  
Based on the above authentication results, the following communication scheme is proposed. All the frames used for data transmission and network formation are encrypted. If it is a P2P transmission, the corresponding key is used; if it is a broadcast frame, a broadcast-exclusive key, \(key_{bc}\), is used. The GS regularly updates the group broadcast key through flood broadcasting. After successful authentication, a one-time key, \(key_{temp}\), is generated based on the authentication information, and the GS uses this key to inform the newly authorized drone of the current broadcast key. Once the drone receives the current broadcast key, both parties abandon \(key_{temp}\). Considering the impact of the number of drones on storage, a 4-byte session key seed is used for P2P communication. In addition, during clustered networking, the drones only need to store the internal communication keys of the gateway. The gateway drones need to store the additional session key seeds of the other gateway drones. Based on the current authorized number of drones \(n\), the GS generates a collection of 4-byte random numbers (including the communication with the GS) to form a key seed set \(s=\left\{IP_{new},IP_{1},s_{1},\ldots,IP_{n},s_{n}\right\}\) and broadcasts it to the entire network using the broadcast key. All the authorized drones add keys for communication with the newly authorized drones based on their own \(IP_{i}\). The newly authorized drones record the broadcast key in RAM. Therefore, each drone has a key collection \(s_{i}=\left\{key_{bc},s_{toSG},IP_{j},s_{toIP_{j}}\right\},1\leq j\leq n,j\
eq i\), recorded in RAM. Note that the neighboring secret key seed broadcast by the BS is only 32 bits; therefore, it is only used for the first P2P communication and has a single lifetime. The lifetime of the secret key of a P2P session is related to the link state, e.g., two parties with a robust link means that the distance is close and the communication is more frequent, and the secret key lifetime is appropriately reduced to increase security. If the link is stable, both P2P parties pass the current secret key as a random seed into the same random number generator (e.g., to compute the hash value of the old secret key); if the link is unstable, the secret key lifetime can be calculated via the parties informing each other of the packet loss rate, and the negotiation accompanied by the link state information in the network topology frame not only reduces the overhead of secret key negotiation but also avoids the risk of secret key exposure. From a global perspective, the key seed set used for P2P communication is an adjacency matrix with the originating drone in the vertical coordinate and the receiving drone in the horizontal coordinate, as seen in Formula (1), where \(\hat{s}_{IP_{n}}\) is the key set removes the broadcast key \(key_{bc}\). The keys vary to different degrees based on the number of sessions between the drones (it could be a 256-bit secret key or a 32-bit initial seed), as seen in Formula (2). For example, coordinates \((1,3)\) represent \(a\) iterations of the communication key between Drone \(D_{1}\) and Drone \(D_{2}\), and since the secret key is symmetric, the secret key for coordinate \((2,2)\) is also iterated \(a\) times. In fact, a P2P secret key is a dynamic secret key that undergoes constant iteration with the number of communications. \[S= \begin{bmatrix}\hat{s}_{IP_{1}}\\ \hat{s}_{IP_{2}}\\ \vdots\\ \hat{s}_{IP_{n}}\end{bmatrix} = \begin{bmatrix}s_{GS_{1}}&s_{IP_{2}}&\cdots&s_{IP _{n}}\\ s_{GS_{2}}&s_{IP_{1}}&\cdots&s_{IP_{n}}\\ \vdots&\vdots&\vdots&&\vdots\\ s_{GS_{n}}&s_{IP_{1}}&s_{IP_{2}}&\cdots\end{bmatrix}  \tag{1}\]\[\rightarrow\hat{S}=\left[