Consider a real-time stock quote broadcasting system. The main requirement is a low authentication delay for the real-time data, hence buffering on either the sender or receiver side is not an option. Another requirement is the robustness to packet loss, so receivers can instantly and efficiently authenticate each message they receive, despite previously lost packets. To the best of our knowledge, no previous protocol satisfactorily addresses these requirements.
We assume the following system requirements. Receivers are time synchronized with the sender, with a maximum time synchronization error of ten seconds (s). The sending rate is approximately packets per second ( p/s). The sender has SEAL chains. We set the security parameter (the attacker needs to perform hash function computations within time to forge a signature). We set , so the adversary can know up to active SEALs.
For this example, we set . We then compute to get close to and compute the corresponding assuming that the adversary knows SEALs. From Table 1 we pick , and the resulting forging probability is . The signature size is about bytes.
Each signature discloses SEALs, hence after packets an attacker knows at most SEALs. Each row of the SEAL chains is active for ms ( packets/s and packets sent per row). Because is the maximum time synchronization error, we cannot disclose any SEALs of the next row for seconds. Otherwise we would disclose more SEALs of the previous rows which the adversary could use to forge a signature. This requires that we use instances of the BiBa scheme in parallel in a round-robin fashion.
The sender overhead to generate a signature is approximately . On a MHz Pentium III the sender can compute MD5 hash function evaluations per second [19] (uniprocessor, software-based implementation of MD5). On this architecture, generating one BiBa signature takes approximately ms, about times faster than to generate a -bit RSA signature using the OpenSSL library. BiBa enjoys a linear speedup for multiple processors, which a hardware implementation can easily exploit. With maximum parallelization, generating a BiBa signature only requires two sequential hash function computations.
Signature verification (excluding the verification of the authenticity of the SEALs) only requires hash function evaluations. However, the SEAL verification is about PRF evaluations on average. This is because the active SEALs of one time period are amortized only by packets. On a MHz Pentium III the sender can compute RC5 function evaluations per second [20] (uniprocessor, software-based implementation of RC5). On this architecture, verification takes on the order of s, which is about times faster than verifying a -bit RSA signature.
Decreasing the security requirement and increasing the number of disclosed SEALs would greatly diminish this number (e.g. If we allow the adversary to know SEALs which would result in , then the verifier only needs to perform PRF evaluations on average to authenticate the SEALs). Using either extension A or B would reduce the verification overhead to hash function and PRF computations, however with the tradeoffs we describe in Section 4.