# PINE: Post-Quantum Based Incentive Technique for Non-Cooperating Nodes in Internet of Everything
## 3 Proposed Approach--PINE Protocol
### Protocol Design
#### 3.3.2 Operational Phase
However, if this comparison turns out to be \(False\), then node \(S\) raises a red flag for \(N_{S}\) and continues searching for a worthy \(F_{j}\) by considering the fresh direct and overheard information of the next worthy node based on the incentive from \(\{Neighbour_{S}\}\); this process continues until a single honest node belonging to \(\{Neighbour_{S}\}\) is found. * If \(F_{j}\) is found from the set \(\{Neighbour_{S}\}\), then \(F_{j}\) further selects and nominates \(F_{j+1}\) by requesting and comparing the direct \(EnergyStatus_{N_{j}}\) and overheard \(NetInfo_{N_{j}}\), where high-incentive \(N_{j}\in\{Neighbour_{F_{j}}\}\). If the comparison is \(False\), a new node from the set \(\{Neighbour_{F_{j}}\}\) is selected and fresh direct and overheard information is requested for comparison. If the comparison turns out to be _True_, then the same process is continued until \(F_{R-1}\). Note: Different color representation in the figure are as follows: (1) Red color: Failed verification/communication interruption or process, (2) Green color: Successful verification/uninterrupted communication or process, (3) Blue color: Active overhearing by the nearby nodes, (4) Brown color: Next node selection. Figure 4: _Cont._

Blackhole Attack Detection
* As shown in the previous sections, after the selection and nomination of \(F_{j}\) from the set of \(\{Neighbour_{S}\}\), node \(S\) transmits \(Enc_{R}\) to \(F_{j}\) and this process continues until the message \(Enc_{R}\) reaches node \(R\) when considering the energy spoofing scenario. * After node \(S\) calculates the incentive for relay nodes as shown in Algorithm 2 using Equations (3) and (4), node \(S\) forwards the calculated incentive to the relay nodes and these relay nodes further forward the incentive to the neighbour-relay nodes until it reaches all the nodes, with the goal of recognizing the reputation of each node. * To proceed with blackhole attack detection (refer to Figure 5), \(F_{j}\) requests \(EnergyStatus_{N_{F_{j}}}\) from a selected node in \(\{Neighbour_{F_{j}}\}\) such that \(N_{F_{j}}\in\{Neighbour_{F_{j}}\}\). After receiving the \(EnergyStatus_{N_{F_{j}}}\), \(F_{j}\) further requests the overheard \(NetInfo_{N_{F_{j}}}\) to verify the \(EnergyStatus_{N_{F_{j}}}\) and \(NetInfo_{N_{F_{j}}}\). If the verification turns out to be \(True\), \(N_{F_{j}}\) is selected and nominated as \(F_{j+1}\), similar to Figure 4.
* However, there may be a chance that the forwarding nodes execute an attack not in terms of energy but rather through a malicious packet drop. Apart from the attack discussed in the previous section, such nodes are hazardous to the network as well. Suppose \(Enc_{R}\) is maliciously dropped by \(F_{j}\) while forwarding the packet to the newly selected and nominated \(F_{j+1}\). Employing the same concept, the set of nodes in \(\{Neighbour_{F_{j}}\}\), including \(F_{j+1}\), recognizes the malicious packet-drop, as the neighbour nodes can overhear the session. Hence, all neighbour nodes \(\{Neighbour_{F_{j}}\}\) including \(F_{j+1}\) increments the \(PacketDropCount\) with respect to \(F_{j}\). If no malicious packet drop is recognized at \(F_{j}\), \(\{Neighbour_{F_{j}}\}\), including \(F_{j+1}\), increments \(PacketForwardCount\) when \(Enc_{R}\) reaches \(F_{j+1}\). * In the meantime, node \(S\) waits for \(ACK\) to identify the current status of the network. After the session times out due to packet drop or packet loss, \(S\) requests \(NetInfo\) from its neighbours and distant neighbours to identify the reason for the fault. * Node \(S\) aggregates and stores \(NetInfo\) in \(InTab\) to identify the cause of session timeout. Node \(S\) intelligently identifies and concludes that \(F_{j}\) (in this case) maliciously dropped the packet at a particular timestamp even though it had sufficient energy to forward the packet. These insights are identified using the \(NetInfo\) stored in

Figure 4: Selfish node—energy spoofing.