# ARIBC: Online Reporting Based on Identity-Based Cryptography
## 4 Implementation
### ARIBC Communication and Computation Overhead
#### 4.1.1 Authentication and Integrity Service  
For the authentication and integrity service, because the signature is the cryptographic tuple \((h,S)\in\mathbb{Z}_{p}\times\mathrm{G}_{1}\), the communication overhead is the sum of the length of \(h\) (in bits) plus the length of \(S\) (in bits). Table 2[45] depicts estimates of the length of \(h\) and \(S\), with \"point compression\" when using three different security options, namely Super Singular (SS) curves at 80-bit security (first column); MNT curves at 80-bit security (second column); or MNT curves at 128-bit security (column). In ARIBC, the signing process takes two scalar point multiplications, and the verification process takes one scalar point multiplication and one pairing evaluation. According to [47], back in 2008 these processes were taking 1.56 msec and 3.60 msec respectively, on an Athlon XP at 2 GHz under a supersingular-curve (SS) of embedding degree k = 6 over F397. Clearly, this overhead is negligible when modern smartphones and PCs are used. Indeed, the overhead of the BLMQ signature scheme under Windows, Android, and Linux was measured in [41] and was found to be as in Table 3 (values extracted from Figure 4 in [41]. The first column in this table lists the operations whose overhead was measured, and each one of the following columns lists the overhead time (in msec) corresponding to implementation in one of the three environments. \begin{table}
\begin{tabular}{c c c c} \hline \multirow{2}{*}{**Operation**} & **Super Singular** & **MNT at 80-bit** & **MNT at 128-bit** \\  & **(SS) Curves at** & **Security** & **Security** \\  & **80-bit Security** & & \\ \hline \(h\in\mathbb{Z}_{p}\) & 160 bits & 160 bits & 256 bits \\ \(S\in\mathrm{G}_{1}\) & 512 bits & 171 bits & 512 bits \\ Total overhead & 672 bits & 331 bits & 768 bits \\ \hline \end{tabular}
\end{table} 
Table 2: Signature operation communication overhead. When it comes to the computational overhead of the confidentiality service, the same arguments as for the signing and verification process stand, and the same methodology can be applied. The general computational overhead estimates presented here are based on the work in [3], where the indicative sizes with \"point compression\" optimizations for the \(G_{1}\), \(G_{2}\), \(G_{T}\) and \(\mathbb{Z}_{p}\) groups, for standard elliptic curve types are given. These values are for Super-Singular (SS) elliptic curve at 80-bit security as follows: \(\mathbb{Z}_{p}\) = 160 bits, \(G_{1}\) = 512 bits, \(G_{2}\) = 512 bits, \(G_{T}\) = 1024 bits. For MNT elliptic curve at 128-bit security: \(\mathbb{Z}_{p}\) = 256 bits, \(G_{1}\) = 512 bits, \(G_{2}\) = 3072 bits, \(G_{T}\) = 3072 bits. An \"indicative\" time unit as the time needed for point multiplication on a random 171-bit elliptic curve for a random 160-bit exponent is defined in [3]. Under the above settings, and for Super-Singular (SS) elliptic curve at 80-bit security: Secret (Private) key extraction costs 2 time units, encryption costs 6 time units and decryption costs 104 time units. For MNT elliptic curve at 128-bit security: Secret (Private) key extraction costs 100 time units, encryption costs 36 time units and decryption costs 1506 time units. Finally, the BLMQ Signcryption scheme, that has similar characteristics, needs 2.65 msec to Sign and Encrypt for one group exponentiation and two scalar point multiplications [5]. Therefore, the processing time for decryption and Verification is 6.09 msec for one group exponentiation and 2 pairing evaluations. As with the authenticity and integrity service, these overheads are negligible on modern technology computing devices.