# ARIBC: Online Reporting Based on Identity-Based Cryptography
## 3 Structure of the ARIBC
### ARIBC Setup Phase
#### 3.3.1 Definition of Public Parameters  
The security level of the ARIBC instance is determined by the chosen size of its security parameter (\(t\)). This is defined as the size (in bits) of a prime number \(p\), that defines the order of the bilinear map cyclic groups \(G_{1}\), \(G_{2}\), \(G_{T(target)}\) that will be generated in subsequent steps. The security level of each ARIBC instance is proportional to the size of \(t\), but its efficiency is inversely proportional to it. Thus, the value of this parameter needs to be selected carefully, to achieve the right balance between efficiency and level of security of each ARIBC instance. Therefore, the value of the security parameter should be defined by a methodical investigation of the special needs and characteristics of the Authority in which the ARIBC instance is to be established. In this work we describe a generic ARIBC instance, following the general guidelines and suggestions in the IEEE 1363.3-2013 standard [42].  
We then find a prime number \(p>2^{t}\) and we generate three bilinear map cyclic groups \(G_{1}\), \(G_{2}\), \(G_{T}\)(target) of prime order \(p\), by following the guidelines in [5, 44, 45].  
Next, we establish a random number generator \(R\) by following the RFC5091, FIPS186-2 or X9.62 standards. To this end, we choose \(P_{G_{2}}\in G_{2}\) as a random generator of \(G_{2}\) and we find the appropriate random generator \(P_{G_{1}}\in G_{1}\) of \(G_{1}\), so that an efficient isomorphism \(\phi:G_{2}\to G_{1}\) such that \(P_{G_{1}}=\phi(P_{G_{2}})\) exists. We denote by \(e\) the bilinear pairing mapping \(e:G_{1}\times G_{2}\to G_{T(target)}\). To improve the efficiency of the ARIBC implementation, we pre-calculate and store the constant pairing value \(e(P_{G_{1}},P_{G_{2}})\in G_{T(target)}\).  
\begin{table}
\begin{tabular}{c c} \hline
**Symbol** & **Meaning** \\ \hline \(GF_{p}\) & The _(prime) finite field of \(p\)_ elements \\ \(E/FG_{q}\) & The _elliptic curve_ defined over the field \(GF_{q}\) \\ \(E(GF_{q})\) & The additive group of points on the elliptic curve \(E/FG_{q}\) \\ \(G_{x}\) & Cyclic group \(x\) \\ \(P_{G_{x}}\) & A _generator_ of \(G_{x}\) \\ \(e(P,Q)\) & The _pairing_: an efficient computable, bilinear mapping. \\ \(Z_{x}\) & set of integers modulo \(x\) \\ \(t\) & Security parameter; size (in bits) of \(p\) (\(p>2\)), where \(p\) the order of the bilinear map cyclic groups \(G_{x}\) \\ \(\phi\) & Isomorphism \(\phi:G_{Y}\to G_{X}\) such that \(P_{G_{X}}=\phi(P_{G_{x}})\) exists, where \(P_{G_{X}}\) A random generator of \(G_{Y}\) \\ _KMS_ & The Key Management Server is the entity that extracts the Private keys \\ _KSAK_ & The KMS Secret Authentication Key is the Master (Server) Secret key; it is a random long integer \\ _KPAK_ & The KMS Public Authentication Key is the public key of the KMS; it is a point on an elliptic curve \\ _ID\({}_{x}\)_ & The Public Identifier of \(x\) \\ _PVT\({}_{x}\)_ & The Public Validation Token that is extracted from \(ID_{x}\) \\ \(SSK_{x}\) & The Secret Signing Key (Private key) that is extracted from \(ID_{x}\) \\ _PP_ & The Public Parameters of the specific ID implementation \\ \(X\oplus Y\) & The bitwise exclusive-or (XOR) of strings X and Y of the same length. \\ \(R\) & Random number generator \\ \(r\) & Random integer \\ _Plaintext_ & An unencrypted message \\ _Ciphertext_(\(c\)) & The result of encrypting a message. \\ \hline \end{tabular}
\end{table}
Table 1: ARIBC notations.