## 6 Security Solutions
### Communication Security
#### 6.2.2 End-to-End Network Security
**Distributed HIP (D-HIP):** D-HIP [118] proposes a collaborative scheme to reduce the computation cost for modular exponentiations. D-HIP delegates the DH operations to resource-rich proxy nodes co-located with the Initiator and Responder nodes in an IoT network. The Initiator selects a set of proxies and delegates the computation load for key exchange to them. After the exchange of the I1 and R1 messages, the Initiator splits its secret exponent \(a\) into multiple blocks \(a_{1},a_{2},...,a_{n}\) such that \(\sum\limits_{1}^{n}a_{i}=a\). The Initiator sends the blocks to the proxies. Each proxy receives a unique block \(a_{i}\), computes its part of the Initiator's public DH key \(A_{i}=g^{a_{i}}\pmod{p}\), and sends it to the Responder. The Responder receives all the parts from the proxies and computes the Initiator's public DH key (\(A\)) as:  
\[A=\prod\limits_{1}^{n}A_{i}=g^{\sum\limits_{1}^{n}a_{i}}\pmod{p}=g^{a} \pmod{p}\]  
Afterward, the Responder sends its secret exponent \(b\) to the proxies. Each proxy computes its part of the DH key \(g^{a_{i}b}\pmod{p}\) and sends to the Initiator. The Initiator computes the session key \(K_{DH}\) as:  
\[\vec{\prod\limits_{1}}g^{a_{i}b}\pmod{p}=g^{\sum\limits_{1}^{n}a_{i}b}\pmod {p}=g^{\sum\limits_{1}^{n}a_{i}b}\pmod{p}=g^{ab}\pmod{p}\]  
Although the collaborative scheme for key establishment reduces computation overhead, it has the following disadvantages:  
* The time to set up a session key increases significantly because the Initiator and Responder have to exchange a considerable number of messages with the proxy nodes. * The proposed scheme assumes that the Initiator is resource constrained. Therefore, the proxy nodes compute the Initiator's DH public key and session key. However, the Responder can also be resource constrained and can delegate DH public and session key computation tasks to the proxy nodes. As a result, the collaborative scheme will contribute more to the communication overheads for exchanging protocol messages and will increase the key establishment time. * If a single proxy fails to compute its part of the DH key correctly the D-HIP returns to the states where it selects proxy nodes and distributes blocks of its secret key. A malicious proxy can exploit this property to perform DoS attacks. The malicious proxy can avoid DH key computation and provide a false DH key to the Initiator. Hence, the malicious proxy can force the Initiator to perform proxy node selection and key distribution repeatedly. **HIP Tiny Exchange (HIP-TEX):** HIP-TEX [119] proposes a distributed key exchange scheme to reduce the cryptographic overheads for HIP-BEX. HIP-TEX replaces the DH key agreement with a method that encrypts a session key using the public key cryptography. Additionally, HIP-TEX enables IoT devices to offload cryptographic computations to a set of proxy nodes in a collaborative scheme. The proxy nodes are resource-rich devices compared to IoT devices. HIP-TEX has less computation cost compared to HIP-BEX and D-HIP due to the new design decisions. However, HIP-TEX has similar disadvantages as D-HIP because both of the methods are based on a distributed collaboration scheme. As such, the HIP-TEX increases communication overhead and secret key setup time and is vulnerable to DoS attacks. **HIP-Diet Exchange (HIP-DEX):** HIP-DEX [121] utilizes ECC to reduce the computation costs involved in HIP-BEX. HIP-DEX uses a long-term Elliptic Curve Diffie Hellman(ECDH) public value as a Host Identifier. Thus, HIP-DEX avoids the cost of computing an ephemeral DH public key, unlike HIP-BEX. HIP-DEX also eliminates the computation cost of the modular exponentiation operations involved in the DH key agreement by adopting the ECDH key establishment method; therefore, HIP-DEX can be suitable for resource-limited devices. Moreover, HIP-DEX can be applicable to lossy networks, as it provides an aggressive retransmission scheme to cope with a higher packet loss.