In our previous post, we presented a modified Schnorr protocol compatible with the Instant Digital Signature (IDS) mode and also announced the design of other protocols with this feature. In this post we describe such protocols based on the pairing function.
Introduction
The following text is dedicated to the description of two digital signature (DS) schemes based on the pairing function (Appendix A). These schemes are then transformed into IDS-compatible identification protocols. We specified and investigated the problem of impersonation, that is, the substitution of one party involved in protocol, with another one. The achieved result consists in the design and analysis of a new IDS-compatible identification protocol, with impersonation presumably impossible for it.
We will use the abbreviation v.s.p. to denote a vanishingly small probability. This means that for some and distributed uniformly and independently on the interval otherwise and for large this probability is vanishingly small. For example, for A similar argument applies to where is a generator of (Appendix A).
When describing DS schemes and identification protocols, we will proceed from the assumption that there is a pair of linked keys where is a secret key, and is a public one for which a certificate is issued. In this certificate, is the personal data of the owner of is the DS of the trusted party (the certification authority responsible for issuing and maintaining certificates).
Let's call the functions of signing and verifying the digital signature as and respectively. Let's denote the cryptographic hash function by (Appendix B). Then where is the secret key of the trusted party consigned for signing.
Before use, is checked for authenticity, integrity, and relevance. The latter task is done by checking a list of revoked certificates. is computed, where is the public key of trusted party If is valid, then the boolean variable and this means integrity, authenticity of and otherwise The trusted party can use any DS scheme, for example, one of those described below.
For the sake of simplicity, let's assume that different DS schemes and identification protocols use the same public key
It should be noted that most of the known DS schemes use simple equations. This is important, because this simplifies their understanding and analysis. We will be guided by the same when design identification protocols.
DS schemes based on pairing
Hereinafter let's call the one who sign the message as the Below there are descriptions of two DS schemes based on pairing (Appendix A).
In the DS scheme [Zhang_Safavi-Naini_Susilo_2004] for a given message the witness performs the following actions:
Computes
Generates the signature
Let there be some signature and a message The verifier performs the following actions:
Computes
Checks the authenticity, integrity and relevance of if the relevance is not confirmed or then it completes the verification of the DS.
Computes
Checks
Then if If then with v.s.p.
It is clear that is computed only once and stored in the local long-term memory. Authenticity and integrity of needs to be guaranteed. For example, it can be stored in secure memory along with the secret key
Let's look at another DS scheme from [Boneh_Shacham_Lynn_2004]. There is a given hash function (Appendix B). The witness performs the following steps:
Computes
Generates the signature
There is a message and signature The verifier does the following steps:
Computes
Checks the authenticity, integrity and relevance of if the relevance is not confirmed or then it completes the verification of the DS.
Checks
If and then, due to the bilinearity, If and/or then with v.s.p.
Both above-mentioned DS schemes use the pairing function, but differ in computational complexity of check. In the [Zhang_Safavi-Naini_Susilo_2004] scheme, when checking the DS, only one pairing is computed, while in [Boneh_Shacham_Lynn_2004] it is necessary to compute two pairings.
IDS-compatible identification protocols based on pairing
According to the Fiat-Shamir heuristic [Fiat_Shamir_1987], each DS scheme has its own identification protocol. However, we will be interested in IDS-compatible versions of such protocols.
Below there is a description of the IDS-compatible identification protocol for the DS scheme from [Zhang_Safavi-Naini_Susilo_2004].
Protocol 1
Protocol messages.
Actions of the parties.
proves to that it owns (knows) To do this, the following steps are performed:
selects computes checks If then selects a new re-executes the necessary computations and checks.
reads the current certificate and checks the DS of the trusted party If then the session ends. If then it chooses and computes If then it chooses a new and re-executes the necessary computations and checks.
checks if it is true, it computes otherwise the session ends.
computes Then it checks If equal, then the proof is accepted, and rejected otherwise.
Now let's see what IDS-compatible protocol can be proposed for the DS scheme from [Boneh_Shacham_Lynn_2004].
Protocol 2
Protocol messages.
Actions of the parties.
proves to that it owns (knows) To do this, the following steps are performed:
As in Protocol 1.
As in Protocol 1.
checks if it is true, it computes otherwise the session ends.
computes Then it checks If equal, then the proof is accepted, and rejected otherwise.
For Protocols 1 and 2, in case of successful completion of the identification stage, the parties independently compute a shared session secret key in accordance with the following rules:
computes
computes
Obviously, due to commutativity.
Impersonation of the verifier
An active attack includes a set of measures taken to replace the information that the parties exchange with each other during the identification protocol. Protocol 1 and Protocol 2 are reliable provided that the probability of an active attack is negligible. For example, when data exchange between and is carried out using NFC (Near-Field Communication) technology or similar.
If the parties interact through other insecure communication channels, including the Internet, then an active attack aimed at impersonating the verifier is possible. Let's call the bogus verifier as The attacker tries to replace with
Let's choose Protocol 2 as the object of attack. Using the interception and blocking technique, the attacker is able to impose instead of such that with v.s.p. The computes as
computes and checks computes and computes It is obvious that
The above mentioned reasoning is equally valid for Protocol 1. In addition, the attack is also applicable to modified Schnorr protocol.
In the next section, we will demonstrate a protocol where impersonation is not presumably possible.
Protocol resistant to impersonation
Let's assume that, for and own key pairs and respectively. There are certificates and issued for and
Let us consider an IDS-compatible and at the same time impersonation-resistant protocol.
Protocol 3
Protocol messages.
Actions of the parties.
proves to that it owns (knows) To do this, the following steps are performed:
reads the current certificate and verifies the DS of the trusted party If then the session ends. If then it selects computes checks If then it chooses a new and re-executes the necessary computations and checks.
reads the current certificate and verifies the DS of the trusted party If then the session ends. If then it chooses and computes If then it chooses a new and re-executes the necessary computations and checks.
checks if it is true, it computes otherwise the session ends.
computes Then it checks If equal, then the proof is accepted, and rejected otherwise.
If accepted the proof provided by then the parties independently compute a shared session secret:
computes
computes
It is clear that due to commutativity.
Preliminary analysis
Let bogus verifier owns the key pair with v.s.p.
We restrict ourselves to the analysis of Protocol 3, in which it is necessary to impose instead of in order to impersonate the verifier (replace with ). However, the attacker does not know the ephemeris. To reveal one need to solve an ECDLP/DLP given or
Another strategy is to solve ECDLP/DLP given or Then The relationship between ECDLP and DLP is explained in Appendix A.
The attacker has access to and is able to impose instead of and instead of while and being with v.s.p. computes as
computes Obviously, with v.s.p. In addition, the attacker can choose arbitrary and Let but with v.s.p.
It is easy to show that replacement of does not lead to the desired result. To do this, when computing we set However, with v.s.p.
If we assume that the attacker imposes instead of but there is no replacement of then the impersonation of is also impossible, since with v.s.p.
Note that or Therefore, with v.s.p.
When computing replacing with some seems to be counterproductive. If such a replacement is allowed, then with v.s.p., there will be a discrepancy in Let Then with v.s.p.
The amount of information transmitted
If compact representation is used, then one needs to transfer bits in Protocol 1 and Protocol 2 in order to deliver and in total.
In Protocol 3, must inform of the serial number of Let's suppose that bits need to be allocated to store this number in long-term memory. Then one needs to send bits in order to deliver and in total.
Other overheads are allowed. The amount of information transmitted satisfies the asymptotic estimate
Computational complexity
In addition to the scalar multiplication, whose computation features are described here, in the Protocol 3 parties and compute and respectively.
In this case, and are computed only once. and store the computed values in secured long-term memory. As a result, and store and respectively.
computes in every single session. If on the side the performance of the platform exceeds the bandwidth of the communication channel between and then with known, it is appropriate to initiate the computation of ahead of time, until This method minimizes the computational delay, since it is plausible to assume that will be known by the time is needed to be computed.
Since due to the bilinearity, then optimization is possible when computing (Table 1).
Let the affine points and represented compactly, then it will be necessary to restore the coordinates of and with using the Tonelli-Shanks algorithm of asymptotic complexity [Cohen_etc._2006] (section 11.1.5) for subsequent computations. However, this is not necessary if point arithmetic is based on the Montgomery elliptic curve [Montgomery_1987]. It is possible to use birational equivalents, for example, twisted Edwards curves [Bernstein_2008].
Methods for multiplicative inversion in are described in [Cohen_etc._2006] (section 11.1).
For the software implementation of the considered protocols, it is advisable to use the primitives of the PBC library.
The problem of hardware implementation of pairings is comprehensively considered in a number of publications [Rodriguez-Henriquez_etc._2006, Beuchat_etc._Nov_2008, Beuchat_etc._2008, Kammler_etc._2009, Ghosh_etc._2010, Estibals_2010, Ghosh_etc._2011, Beuchat_etc._2011, Cheung_etc._2011, Adikari_etc._2012].
Summary
Protocol 1 and Protocol 2, as well as modified Schnorr protocol, have a limited scope due to the risk of impersonation.
Preliminary analysis shows that impersonation is presumably impossible in Protocol 3. Everyone can use the keys and but only can provide conclusive evidence because it owns the long-term secret key and knows the ephemeris Only can verify the proof because it knows the ephemeris
In addition, only and can independently compute and such that since they own the secret keys and
Conclusion
IDS-compatible identification protocols based on the pairing function have been presented and studied. The problem of impersonification is formulated. A new impersonation-resistant IDS-compatible identification protocol has been designed.
The text of the article in pdf format can be downloaded here.
Bibliography
[Boneh_Shacham_Lynn_2004] Boneh, D., Shacham, H. and Lynn B. "Short Signatures from the Weil Pairing." Vol. 17, No. 4, (2004) 297–319.
[Zhang_Safavi-Naini_Susilo_2004] Zhang, F., Safavi-Naini, R. and Susilo, W. "An efficient signature scheme from bilinear pairing and its applications.” LNCS 2947, (2004) 277–290.
[Fiat_Shamir_1987] Fiat, A. and Shamir, "How to prove yourself: Practical solutions to identification and signature problems.” LNCS 263, (1987) 186–194.
[Cohen_etc._2006] Cohen, H., Frey, G., Roberto Avanzi, R., Doche C., Lange, T., Nguyen, K. and Vercauteren, F. Chapman and Hall/CRC, 2006.
[Montgomery_1987] Montgomery, Peter L. "Speeding the Pollard and Elliptic Curve Methods of Factorization.” (1987) 48 (177): 243–264.
[Bernstein_2008] Bernstein, Daniel J., Birkner, Peter, Joye, Marc, Lange, Tanja, Peters, Christiane. In Vaudenay, Serge (ed.). "Twisted Edwards Curves.” LNCS 5023, (2008) 389–405.
[Rodriguez-Henriquez_etc._2006] Rodríguez-Henríquez, F., Díaz-Pérez, A., Saqib, N. A. and Koč, Č. K. Signals and Communication Technology. Boston, MA: Springer US, 2006.
[Beuchat_etc._Nov_2008] Beuchat, J.-L., Brisebarre, N., Detrey, J., Okamoto, E., Shirase, M. and Takagi, T. "Algorithms and Arithmetic Operators for Computing the Pairing in Characteristic Three.” vol. 57, no. 11, (Nov. 2008) 1454–1468.
[Beuchat_etc._2008] Beuchat, J.-L., Brisebarre, N., Detrey, J., Okamoto, E. and Rodriguez-Henriquez, F. "A Comparison Between Hardware Accelerators for the Modified Tate Pairing over and ” (2008) 297–315.
[Kammler_etc._2009] Kammler, D., Zhang, D., Schwabe, P., Scharwaechter, H., Langenberg, M., Auras, D., Ascheid, G. and Mathar, R. "Designing an ASIP for Cryptographic Pairings over Barreto-Naehrig Curves.” Springer Berlin/Heidelberg, (2009) 254–271.
[Ghosh_etc._2010] Ghosh, S., Mukhopadhyay, D. and Roychowdhury, D. "High Speed Flexible Pairing Cryptoprocessor on FPGA Platform.” vol. 6487, (2010) 450–466.
[Estibals_2010] Estibals, N. "Compact Hardware for Computing the Tate Pairing over 128-Bit Security Supersingular Curves.” vol. 6487, (2010) 397–416.
[Ghosh_etc._2011] Ghosh, S., Roychowdhury, D. and Das, A. "High Speed Cryptoprocessor for Pairing on 128-bit Secure Supersingular Elliptic Curves over Characteristic Two Fields.” (2011) 442–458.
[Beuchat_etc._2011] Beuchat, J.-L., Detrey, J., Estibals, N., Okamoto, E. and Rodriguez-Henriquez, F. "Fast Architectures for the Pairing over Small-Characteristic Supersingular Elliptic Curves.” vol. 60, no. 2, (Feb. 2011) 266–281.
[Cheung_etc._2011] Cheung, R. C. C., Duquesne, S., Fan, J., Guillermin, N., Verbauwhede, I. and Yao, G. X. "FPGA Implementation of Pairings Using Residue Number System and Lazy Reduction.” no. 07, (2011) 421–441.
[Adikari_etc._2012] Adikari, J., Hasan, M. A. and Negre, C. "Towards Faster and Greener Cryptoprocessor for Eta Pairing on Supersingular Elliptic Curve over ” (2012) 166–183.