## Dynamic Key Sharing and Fuzzy Adaptive Route Selection
### Fuzzy Adaptive Selection of Data Forwarding Routes  
PVFS has functional power and the flexibility to deal with both FRIA and FVIA attacks, making it a good choice for our proposed scheme to further improve energy efficiency, load balancing, and increased network life. There are always \(c\) different paths available to the e-CH; however, it uses only the shortest path for forwarding the reports [7; 11]. For each data generating cluster, every path will have exactly the same number of verification nodes (\(L\)). Therefore, the abilities of each route to detect false reports are equal in terms of the number of verification keys. However, due to the probabilistic selection of the verification nodes, their distances relative to the e-CH are different. That is some nodes are closer to the e-CH, while others are farther away. It is very likely that a false report may travel farther on the shortest path than on a longer path since we know that:  
\[ \begin{split}& if\ p(n_{i},d_{lo})=\frac{d_{i}}{d_{lo}},\ p(n_{i},d_{k})=\frac{d_{i}}{d_{k}},\ p(n_{i},d_{sh})=\ \frac{d_{i}}{d_{sh}},\\ & then\ p(n_{i},d_{lo})<p(n_{i},d_{k})<\ p(n_{i},d_{sh})\ for\ d_{lo}>d_{k}>d_{sh},\end{split}  \tag{2}\]  
Here, \(d_{i}\) represents the distance between the BS and the \(i\)th CH on any data routing path, and \(d_{lo}\), \(d_{k}\), and \(d_{sh}\) represent the distance between e-CH and the BS via the longest, \(k\)-hop long, and shortest path, respectively. Equation (2) show the probability that a node that is \(i\) hops away from the BS and located on a specific path will be chosen as a verification node. It shows that, though the distance from the BS may be same on different paths, however the probability of a node being chosen as a verification node is different from that of other nodes. Therefore, nodes farther from the BS on longer paths are more likely to become verification nodes than nodes on shorter paths. Choosing verification nodes near the BS implies that they hold more authentication keys, and false data are highly likely to travel near the BS before they are filtered by the verification nodes. False data traveling near the BS result in a higher energy cost on nodes around the BS. Therefore, the energy-hole problem will occur sooner than in other configurations. Figure 1 shows how a cluster head chooses between the different available upward paths. The number of verification keys within, say \(h=8\) hops, is greater on the upper path than on the lower path. Moreover, we can say that the energy status of the intermediate nodes on the upper path is better than that of the verification nodes on the lower path. Therefore, it is ideal for the e-CH to choose the upper path, although its hop length is greater than the lower path. The rationale for considering verification nodes only within \(L\) hops (where \(h=L\)) is that all the paths have exactly the same number of verification nodes. Therefore, the filtering power of each path is essentially the same. A few verification nodes might not be closer to the e-CH, but may be closer to the BS station. It makes sense to only consider the number of verification nodes within \(L\) hops rather than considering all the nodes since we use the threshold values (such as \(s\leq L\)) to establish the number of MACs necessary to endorse a report, and check if the number of recorded true votes \(T_{t}\) or false votes \(T_{f}\) have reached threshold values. The topology creates the routes using [PERSON]'s shortest path algorithm [45; 46] for the cluster based model [7; 12; 47; 48; 49]. The selection of a minimum cost multi-constrained path is NP-complete [23]. The CH also identifies the 2 nd, 3 rd,..., \(c\)th shortest paths during the route discovery phase to make use of these in case a node fails on the shortest path [1; 18]. Each CH can discover \(c\) different paths, where \(c\) is a variable and its value may be different for every cluster. Routing paths are created by flooding a control message broadcasted by the BS. Most routing protocols use this technique for establishing paths [50; 51].