## 3 System Model
### Join the Network
It is written in C++; however, the network simulation script can be written in either C++ or python. It consists of a collection of core libraries called NS-3 modules, developed within an open-source project. It is licensed under the GNU GPLv2 license [40]. NS-3 simulator has a 5G NR millimeter wave module [41] and a module for the V2X network [42]. It can simulate a V2X network with different mobility models, routing protocols and wireless communication technologies. Additionally, NS-3 supports hybrid devices where the lower part of the network stack is simulated while the upper layers can be implemented in a Linux container. In our simulator, RSU and vehicles were implemented in NS-3 with a hybrid 5G network interface using the tap bridge module [43] of NS-3. In this hybrid 5G interface, one side is connected to NS-3 and the other end is connected to a commercial 5G network via a Linux container. Using a commercial 5G network restricts the capability of our simulator to the application's layer protocol evaluation. However, it was enough for the scope of this research. TA functionality is developed as Microsoft.net Core REST API and hosted in the AWS Cloud platform. To demonstrate the different locations of TAs, we hosted TAs in different AWS regions. Client functionality of key exchange and other cryptographic functionalities were developed as a.net Core application and hosted in a Linux container, and it is connected to NS3 simulated Wi-Fi ad hoc network. ### Performance Evaluation of Network Initialisation

Our proposed solution should contain at least two TAs, i.e., Local TA and Home TA. As all TAs are cloud-based and can be initialized in parallel, we evaluated the initialization process of a single TA only. The time taken for network initialization is influenced by the size of the private key, the threshold value T, and the computational power of the machine executing the process. However, we did not assess different cloud servers, as server optimization is beyond the scope of our study and computational power can be easily increased in cloud computing. Thus, we conducted our simulation using AWS's minimum available cloud server (t3a.nano) [44]. As described in Section 3.2, the network initializes by generating a large random number as its secret, along with randomly generated witness values, as illustrated in Equations (1)-(7). We utilized a range of simulation parameters, as shown in Table 3, and each configuration was executed 10,000 times, with the average time taken for initialization recorded. We simulated T values from 3 to 12 and private key sizes of 64 to 512. We kept the size of P and Q as 64-bit and the ID size as 32-bit for the entire simulation. Figure 5 depicts the network initialization time per TA for various private key sizes and threshold values. \begin{table}
\begin{tabular}{c c} \hline \hline
**Parameter** & **Value** \\ \hline Threshold value (T) & 3 to 12 \\ Large prime number (P) & 64-bit random number \\ Large prime number (Q) & 64-bit random number \\ Private Key—Secret (\(a_{\text{i}0}\)) & 64–512-bit random number \\ Vehicle Id & 32-bit random number \\ Commitment coefficients \(\left(a_{1_{\text{r}}},\,a_{1_{\text{z}}}\ldots a_{1_{\text{r}-1}}\right)\) & 8-bit random number \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Range of simulation parameters. Figure 4: Proposed system architecture. The result shows that with the increase of private key size, initialization time increases linearly. However, even for a larger private key size of 512, it only takes 2-3 milliseconds. Considering network initialization is one operation, it is possible to use larger private key sizes without considerable overhead while significantly increasing the network's security. In addition, notice that the threshold value T does not have much impact on network initialization. Therefore, network designers should try to use large private key sizes as well as large T values.