## 5 Analysis of HWMP Security Protocols
### The Comparison of Complexity.  
In terms of computation time comparison, we cannot tell the exact time of each algorithm in Table 13. It includes variety of cryptographic algorithms such as hash evaluation, symmetric encryption, operation over finite field, and operation over elliptic curve. Some algorithms such as integer multiplication over a finite field and scalar multiplication of elliptic curve might have operand dependent execution time. But we can compare the computation complexity of the algorithms. Among pairing (P), elliptic curve point exponentiation (E), a scalar multiplication of elliptic curve (M), elliptic curve point addition (A), integer multiplication over integer finite field (MI), symmetric encryption/decryption (Ec), and hashing (H), pairing has the most complex operation and hashing has the least complex operation. We can sort the computational complexity of the algorithms as follows: P \(>\) E \(>\) M \(>\) A \(>\) MI \(>\) Ec \(>\) H.  
Here are some considerations which make the complexity comparison simple. CCMP and BIP are not used at the as time because BIP is only for data integrity and CCMP is for data integrity and  
confidentiality. MAC computation time in SHWMP was approximated to hash evaluation time. For the computation complexity of SHWMP, refer to [10]. Because IBC-HWMP requires paring operations much heavier than hashing, we do not take hash evaluation into account. Pre-computation (offline computation) time is also not taken into account. Hash evaluation and off-line computation was also not taken into account for ECDSA-HWMP. IBC-HWMP is the heaviest protocol and the next is ECDSA. SHWMP is less complex than CCMP/IBC because SHWMP encrypts only mutable fields but CCMP encrypts the whole frame body.  
To compare the communication overhead of the protocols, the extra amount of data per one frame compared to HWMP was counted for each protocol. To setup the equal security level, 128 bits symmetric encryption, 128 bits hash, and 256 bits elliptic curve were assumed [37]. The communication overhead of CCMP/BIP is 128 bit (\(|\)CCMP-HDR\(|\)+\(|\)MIC\(|\)=64 bit\(+\)64 bit). SHWMP and IBC-HWMP have 1,152 bits (\(|\)MAC\(|\)+8\(|\)H\(|\)=9\(|\)H\(|\)=128*9) and 512 bits (\(|\)G\(|\)+\(|\)V\(|\) = 256*2) overhead, respectively. The overhead of ECDSA is 512 bits (\(|\)Z\(|\) = 2*256).  
In terms of extra storage requirements compared to HWMP, CCMP and IBC-HWMP require the same amount of storage corresponding to its communication overhead. IBC-HWMP and ECDSA require extra storage to save the pre-computed items. IBC-HWMP and ECDSA require 2048 bits (\(|\)G\(|\)+\(|\)V\(|\)+6\(|\)Z\(|\) \(\approx\)8\(|\)Z\(|\) = 246*8) [38] and 1184 bit (4\(|\)Z\(|\) + \(|\)n\(|\) = 4*256 +160) [39], respectively. Each node running Watchdog-WHMP has a neighbor monitoring table and keeps track of the packet sent. The monitoring table contains:  
* The packet ID (4 bytes)
* The address of the next hop to which the PREQ was forwarded (6 bytes)
* The address of the destination node (6 bytes)
* The expire time (4 bytes)
* TTL (1 byte)
* Hop count (1 byte)
* Metric (4 bytes)  
Therefore, Watchdog-WHMP requires (No. of neighbors)*26 bytes of extra storage per node.