Abstract
The vulnerable part of communications between user and server is the poor authentication level at the user’s side. For example, in e-banking systems for user authentication are used passwords that can be lost or swindled by a person maliciously impersonating bank.
To increase the security of e-banking system users should be supplied by the elements of public key infrastructure (PKI) but not necessary to the extent of standard requirements which are too complicated for ordinary users.
In this paper, we propose two versions of authenticated key agreement protocol (AKAP) which can be simply realized on the user’s side. AKAP is a collection of cryptographic functions having provable security properties.
It is proved that AKAP1 is secure against active adversary under discrete logarithm assumption when formulated certain conditions hold. AKAP2 provides user’s anonymity against eavesdropping adversary. The partial security of AKAP2 is investigated which relies on the security of asymmetric encryption function.
Introduction
The vulnerable part of communications between user and server is the poor authentication level on the user’s side. For example, in e-banking systems for user authentication are used passwords that can be lost or swindled by a person maliciously impersonating bank.
Nowadays appeared Smart-Id identification using smart phones has some advantages compared with the bank’s supplied passwords table to the user, but nevertheless it is a temporary measure to mitigate the increasing number of attacks to e-banking system.
Despite the fact that public key infrastructure (PKI) and certificates based identification exists for the 5-10 years, newly appeared Smart-Id identification becomes more popular. The reason is the complexity of PKI in traditional public key settings and the key escrow problem in ID-based public key settings. In this connection the alternative certificate-based signature is proposed as an attractive public key setting, which reduces the complexity of PKI and resolves the key escrow problem (Tseng et al., 2019).
Authors proposed a new and efficient certificate-based signature (CBS) scheme from lattices. Under the short integer solution (SIS) assumption from lattices, the proposed CBS scheme is shown to be existential unforgeability against adaptive chosen message attacks.
The other alternative is certificateless signature that has become a widely studied paradigm. This paradigm has a lack of key escrow problem and certificate management problem. But the problem of this primitive was non-resistance to catastrophic damage caused by key exposure. New results in this field are presented in (Mei et al., 2019).
Oulined above perspective solutions are in the investigation and developing stage so far.
The one of currently available solutions can be the cryptographic chip implemented in the user’s smartphone or in his credit card. This cryptographic chip could be supplied by the bank to the user with public key cryptosystem (PKC) parameters and supporting software. This software can be used to more secure authentication and communication session creation using authenticated key agreement protocol (AKAP).
In this case smart phone can provide much more functions to the customer. For example, it can be used as e-purse for off-line payments (Muleravicius et al., 2019).
Then user may not communicate with bank for any money transfer. It is enough to communicate with bank for withdrawal and deposit money to and from e-purse respectively using AKAP.
Moreover, AKAP can be combined together with biometric identification methods which popularity is growing nowadays but not so rapid as desirable.
In general, the user has significantly less computing power than server and therefore AKAP realization should need as small computation resources as possible.
We will consider two legal parties communication with each other, namely user Alice and Bank and an adversary. We assume that in all cases adversary has public keys of both parties and system parameters (SP) of a used cryptographic system. We consider the following type of attacks:
Eavesdropping attacks: the adversary can eavesdrop on the legal communications between parties and can obtain the transcript of several interactions between them. As a consequence, the adversary can decrypt secret messages or compromise the secret key.
Active attacks: the adversary uses the interaction to try and learn something that will let it impersonate Alice to the Bank and the Bank to Alice. Suppose Alice runs an identification protocol with the Bank over the internet. An active adversary controls the channel and can block or inject messages at will. The adversary waits for Alice to run the identification protocol with the Bank and relays all protocol messages from one side to the other. Once the identification protocol completes successfully, the adversary sends requests to the Bank that appear to be originating from Alice. The bank honors these requests, thinking that they came from Alice. In effect, the adversary uses Alice to authenticate to the Bank and then “hijacks” the session to send his own messages to the Bank. As a consequence of these attacks, the adversary can decrypt secret messages exchanged between parties or compromise their secret keys.
Active attacks are more powerful than eavesdropping attacks. They come up when Alice tries to login from a local infected computer. The malware infecting the computer could display a fake login screen and fool Alice into interacting with it, thus mounting an active attack.
One of the very “popular” kinds of attack is a Man-in-the-Middle (MiM) attack. The HTTPS protocol is vulnerable to this kind of attack (Callegati et al., 2009). An attacker capable of eavesdropping on traffic is also able to inject its own messages. The protocol completely falls apart in the presence of an active adversary who controls the network. The main reason is the lack of authentication. Alice sets up a shared secret, but she has no idea with whom the secret is shared. The same holds for the Bank. An active attacker can abuse this to expose all traffic between Alice and the Bank. This attack works against any key exchange protocol that does not include authentication. Moreover, neither KAP, nor identification protocols alone are secure against the MiM attack (Boneh and Shoup, 2020).
In 2015.03.17 Euronews made a report that on-line banking might be full of holes like Swiss Emmental cheese, http://www.euronews.com/2015/03/17/internet-banking-a-hacker-s-ideal-target/.
The reasons of this situation which has not significantly changed so far are outlined above, therefore, the measures must be implemented to protect the user especially against active adversary attacks.
To realize secure AKAP it is required to have a combination of several cryptographic primitives: key agreement protocol, identification protocol, digital signature, and asymmetric encryption.
To provide secure communications between Alice and the Bank it is required that Alice prove to the Bank her identity and that the Bank prove to Alice its identity. One party proving one’s identity is named a Prover – P and the other party verifying this proof is a Verifier – V. Hence, to create secure communications both parties should be both P and V to each other. This kind of identification is called mutual identification.
Secure identification protocols are based on the interaction between the P and V. They use a technique called challenge-response identification (Just, 2011) together with other protocols including key agreement protocol (KAP) thus yielding authenticated key agreement protocol (AKAP).
The aim of this paper is to present integrated AKAP between two parties: user Alice and the Bank using well known cryptographic primitives with provable security. AKAP should have the following properties:
Secure mutual authentication between Alice and the Bank and session key agreement.
Effective realization especially on the user’s side.
Alice’s anonymity against eavesdropping and active adversary.
Security analysis of proposed AKAP is presented referencing to security assumptions of cryptographic primitives used in our construction.
Effective realization means that computations and communications should be minimized. It is also desirable that the number of system parameters should be minimized as well. The number of these parameters depends on the selection of suitable cryptographic protocols. Several cryptographic protocols and schemes are having the same system parameters such as ElGamal cryptosystem (ElGamal, 1985) together with the same private and public keys:
Diffie–Hellman key Agreement protocol (DH-KAP),
ElGamal encryption (ElG-Enc),
ElGamal signature (ElG-Sig),
Schnorr identification protocol (S-Id),
Schnorr signature (S-Sig).
These protocols are realized using the same discrete exponent functions dexp() in multiplicative cyclic groups of finite order. Some of them can be realized in elliptic curve groups. We will consider numerical groups, where operations are performed modulo large prime number p.
Two protocols AKAP1 and AKAP2 are considered. AKAP1 is a simpler protocol that does not provide user’s anonymity. AKAP2 provides user’s anonymity by adding additional encryption in the first communication round.
In the list above we have two signature schemes, namely ElGamal and Schnorr. We present here some analyses allowing us to choose a unique scheme better matching our requirements. The signature scheme we use as an additional authentication means from the Bank’s side. It is an optional measure since the Bank has a qualified e-signature certificate and can be authenticated by the user’s browser and during the execution of SSL/TLS protocol.
ElGamal signature scheme (ElGamal, 1985) is based on the discrete exponent function.
The original paper did not include a hash function as a system parameter. The message m was used directly in the algorithm instead of H
ElGamal signature scheme (ElGamal, 1985) is vulnerable to the Bleichenbacher attack (Bleichenbacher, 1996).
This attack is avoided by using groups
Due to these considerations, we choose the Schnorr signature in our construction. It is a new variant of the ElGamal signature which overcomes the drawbacks, namely: a long signature size and Bleichenbacher attack.
Schnorr identification and signatures (Schnorr, 1990, 1991) constitute one of the most fundamental public-key cryptosystems.
Pointcheval and Stern (1996, 2000) have shown that it is provably secure, assuming the hardness of the discrete logarithm (DL) problem in the Random Oracle Model (Bellare and Rogaway, 1993; Neven et al., 2009; Seurin, 2012).
Schnorr identification protocol is based on the exchange of challenge-response conversations between prover P and verifier V when P is seeking to prove to V some parameters associated with his/her identity. In our case the prover is Alice and the verifier is the Bank. The process of proof is based on the exchange of messages between P and V and is called conversation. In Schnorr identification protocol conversation consists of three rounds:
P computes a commitment and sends it to V.
V generates a challenge and sends it to P.
P computes a response and sends it to V.
Both P and V are actively involved in the conversation, and the timing and ordering of the messages are critical. The active adversary playing the role of a prover must generate the first message before it sees the challenge generated by V.
To achieve the security of the AKE protocol against the active adversary, one must carefully intertwine the processes of identification and anonymous key exchange. The adversary actively impersonates a legitimate verifier. For example, the adversary may clone a banking site and wait for a user being a prover P to visit the site. When it occurs P runs the identification protocol with the adversary. As a result, the adversary repeatedly interacts with P on the behalf of verifier V and sends the prover arbitrary messages of its choice. After several such interactions, the adversary turns around and attempts to authenticate himself as the prover to a legitimate verifier V. Identification protocol is secure against active attacks if the adversary still cannot fool the legitimate verifier V.
In this paper we define security assumptions and provide security proof of AKAP1 against an active adversary. Security proof is based on transforming S-Id to AKAP1 which represents the so called sigma protocol (Boneh and Shoup, 2020). Unfortunately, the similar security proof for AKAP2 is not possible since AKAP2, being a more complex protocol, does not satisfy sigma protocol’s conditions. But nevertheless, AKAP2 seems to be more secure than AKAP1. Hence, so far the security of AKAP2 can be based only on the security of its cryptographic components listed above.
The other objective of this paper is to try to extend these results to the other conjectured one-way functions (OWF) having some similarity with used here dexp() function. For example, new conjectured OWF based on so called matrix power function (MPF) was proposed earlier in our papers (Sakalauskas et al., 2008, 2017; Sakalauskas and Mihalkovich, 2014, 2017; Sakalauskas, 2018). In Sakalauskas and Mihalkovich (2018) it is proved that inversion of MPF corresponds to NP-complete problem. This proof was based on the result presented in Sakalauskas (2012).
The structure of the paper is the following. To be self-contained, in Section 2 we present some mathematical background and describe cryptographic protocols and functions used in our construction. In Section 3 we present AKAP1 and AKAP2 description. Section 3 is dedicated to security analysis. In Section 4 conclusions and a look to the future work are presented.
We are dealing with a cyclic group
Since q is a prime factor of
This identity allows checking if number
Let
The inverse function to dexp() is a discrete logarithm function
If g is a generator in
The necessary but not sufficient security assumption for all protocols presented above is discrete logarithm assumption and associated discrete logarithm problem (DLP).
Discrete Logarithm Problem – DLP is to find x in (2.2) when g, p and a are given.
Discrete logarithm assumption. We say that the discrete logarithm (DL) assumption holds for
We will need a notion of one-way function (OWF) which we define in the following non-formal way.
Let
The discrete exponent function is a candidate OWF.
Indeed, the computation of
For example, when p and q are sufficiently large and suitably chosen primes the discrete logarithm problem in the group
All cryptographic primitives presented in the introduction are using the same system parameters
To generate random and uniformly distributed parameters for cryptographic protocols we use a special notation. For example, if we uniformly choose a random element r from the set S then we write:
We assume that SP are generated by the Bank. The Bank generates a prime number p of at least 2048 bits length, i.e.
According to ElGamal cryptosystem, the Bank randomly generates its private key
Then corresponding to its private key the public key
System parameters
When user Alice opens her account in the Bank, then during the registration phase she receives
In addition, there are two opportunities for Alice to complete the registration operation. Either she receives the Bank’s generated public and private key pair
In both cases all parameters mentioned above are kept in certain storage devices (e.g. USB token, SIM card, Smart phone apps, etc.) together with the certified application program.
Every user including Alice has system parameters
In our model the Adversary can know two alternative sorts of information: either system parameters
To be self-contained we present here a description of protocols and functions used for AKAP construction.
Let Alice be the initiator of the DH-KAP protocol with the Bank. It is executed in two communications between Alice and the Bank:
Alice generates a random secret number
After receiving Alice’s message, the Bank generates a random secret number
After this open data exchange, Alice and the Bank compute their common agreed secret key
So Alice and the Bank can create a secure channel for encrypted communications between each other.
If
Unfortunately, the discrete logarithm assumption by itself is not enough to ensure that the Diffie–Hellman protocol is secure. The following definition and assumption of Computation Diffie–Hellman (CDH) problems are required.
CDH problem in
CDH assumption in
To compromise DH-KAP the eavesdropper has to solve the CDH problem which is stronger than DLP. Some evidence still suggests that this is a reasonable assumption in groups where the DL assumption holds but CDH does not. In DH-KAP, an eavesdropper observes
The stronger assumption for the non-ephemeral agreed key is decisional DH, (DDH) assumption (Boneh, 1998).
The DDH assumption states that given
We assume that the agreed key in DH-KAP is not ephemeral and is different from session to session. Therefore it is not required to provide forward secrecy of this key. Moreover, in the case of challenge-response protocols parties are communicating in a very restricted time interval. Hence, according to these restrictions security of DH-KAP does not require DDH assumption.
But nevertheless, in AKAP2 we use ElGamal encryption where DDH assumption is required to provide user’s anonymity.
DH-KAP is realized in SSL/TLS protocols included in the HTTPS protocol. DH-KAP is vulnerable to an active adversary attack known as a Man-in-the-Middle (MiM) attack (Callegati et al., 2009). This attack is executed in the following way:
Alice randomly generates a secret number u in the interval
Then Adversary intercepts
Alice presuming that message
Adversary computes the same secret key
The Bank presuming that
Adversary computes the same secret key
Evidently,
This attack can be prevented using AKAP.
Let m be a message to be encrypted by Alice and sent to the Bank. To obtain unambiguous encryption m must satisfy the following inequality
Alice chooses at random k,
The ciphertext is
For decryption the Bank uses the same system parameters
To be short we omit the validity proof of this identity. Further we use the following symbolic notation for encryption Enc() and decryption Dec() functions
This cipher we denote by the pair (Enc, Dec). The semantic security of ElGamal cipher is based on the following theorem (Tsiounis and Yung, 2006).
The semantic security of the ElGamal encryption is actually equivalent to the decision Diffie–Hellman (DDH) problem.
We assume that the Bank has Alice’s
Alice generates a random secret number
The Bank generates a random
After receiving h Alice computes her
After the third communication the Bank verifies if the following identity holds
If it is the case, the Bank trusts that Alice proved the knowledge that she possesses a private key
To be short we omit the validity proof of (2.18) identity.
In general, Alice is prover P proving that she knows a secret, namely her private key x, not revealing it and the Bank as a verifier V is either accepting this proof if (2.18) identity holds, or rejecting it otherwise. So SID is called
Proof-of-knowledge must satisfy three properties:
An interaction between P and V is performed when P knows
If the challenge space was small then Schnorr’s identification protocol is insecure.
Let cardinality of challenge space
For further security considerations of our AKAP, the following notions should be introduced.
Let Gen be a key generation algorithm with input of certain system parameters SP and outputting private and public key pair (PrK, PuK). Then arbitrary identification protocol Id can be represented by the following triplet: Id = (Gen, P, V).
For example, in S-Id described above input to Gen is
The followingtheorem we present without proof (Boneh and Shoup, 2020).
Under the one-wayness assumption for Gen, and assuming
In S-Id the one-wayness assumption for Gen means that the DL assumption is valid.
It is an open question as to whether Schnorr’s identification protocol is secure against active attacks. So far there are no known effective, active attacks, but there is also no proof that rules out such an attack under the DL assumption.
Later we present a modification of S-Id, that is proven secure against active attacks under the DL assumption. Some introduction of the following notions is needed to provide this proof (Boneh and Shoup, 2020).
Let Id = (Gen, P, V) be an identification protocol. We say that Id is honest verifier zero knowledge, or HVZK for short, if there exists an efficient probabilistic algorithm Sim called a simulator such that for all possible outputs (PrK, PuK) of Gen, the output distribution of Sim on input PuK is identical to the distribution of a transcript of a conversation between P on input (PrK, PuK) and V on input (PuK).
The term “honest verifier” conveys the fact this simulation only works for conversations between P and the actual, “honest” verifier V, and not some arbitrary, “dishonest” verifier, such as may arise in an active attack on the identification protocol.
In our construction we propose mutual identification between Alice and the Bank. When the Bank is taking the role of Verifier we assume that the Bank is Honest Verifier due to the following assumptions. Firstly, we can assume that the Bank can prove its identity to the user more easily since the Bank has a public key certificate which can be recognizable by the user’s browser. Secondly, during the identification protocol the Bank is using encrypt and sign procedures to confirm its identity.
Schnorr’s identification protocol is HVZK.
Simulator Sim in generating a conversation
Let m be a message in
The Bank chooses at random z,
The Bank computes H-value h and second component s of his signature:
The Bank’s signature on h is
After receiving m and
Symbolically we denote this verification function by
This function yields True if (2.22) is valid.
Referencing to Seurin (2012), Boneh and Shoup (2020) the following theorem can be formulated.
If H is modelled as a random oracle and Schnorr’s identification scheme is secure against eavesdropping attacks, then Schnorr’s signature scheme is also secure against eavesdropping attacks.
We present here two modifications of AKAP, namely AKAP1 and AKAP2 taking three communications between Alice and the Bank. AKAP1 is partially disclosing the user’s anonymity by openly sending her PuK
AKAP2 is providing user’s anonymity without disclosing any user’s personal information by realizing randomized encryption of the user’s PuK during every session.
All parties including the adversary share the common information, namely system parameters
When Alice is a prover P then she uses protocol P
Alice and the Bank shares system parameters
Alice chooses a random number
After receiving
The Bank chooses a random number
Alice verifies the validity of signature σ on challenge h with the Bank’s
At this stage AKAP1 communications are finished.
After receiving r the Bank verifies if Alice knows her private key x corresponding to her public key a, which is registered in the Bank’s database. The verification equation is the following:
If the last equation is valid, then the identification procedure is passed successfully. The Bank computes the common session secret key
Obviously at this moment parties agreed on their common session key
The difference between convenient Schnorr identification protocol and AKAP1 is that there is an additional variable
The second protocol is AKAP2 providing Alice’s anonymity against an eavesdropping adversary. In this case, Alice’s Puk = a is encrypted and the adversary cannot distinguish if either the same person or two different persons are communicating with the Bank when he is eavesdropping and analysing any two different communications.
Alice chooses a random secret number
To reduce computations Alice uses
The ciphertext
After receiving
The Bank chooses a random secret number
To confirm its identity the Bank signs component e by choosing a random secret number
Alice verifies the validity of signature σ on value e with the Bank’s
If it is the case, then Alice decrypts c using her
At this stage AKAP2 communications are finished.
After receiving r the Bank verifies if Alice is the correct prover. He verifies if the following identity holds
If it is the case, then the Bank computes the common session secret key
At this stage parties agreed on the common secret key
We show that AKAP1 is secure against active attack under the DL assumption by transforming the Schnorr identification protocol to Schnorr Sigma we denoted as AKAP1 protocol. A brief introduction to Sigma protocols is needed. Let X and A be finite sets and R is a binary relation
Binary relation
Let
Binary relation defined by
Deciding that x is in
However, we have to find the witness x such that
AKAP1 is realizing a conversation
A Sigma protocol for effective relation P is an interactive protocol algorithm called the prover, which takes as input a witness-statement pair V is an interactive protocol algorithm called the verifier, which takes as input a statement
P and V interactions are carried out in a similar way as they are presented in Section 2.
To start the protocol, P computes commitment l and sends it to V;
Upon receiving P’s commitment l, V chooses a challenge h at random from a finite super-poly challenge space C, and sends h to P;
Upon receiving V’s challenge h, P computes a response r, and sends r to V;
Upon receiving P’s response r, V outputs either accept or reject, which must be computed strictly as a function of the statement a and the conversation
To transform S-Id to AKAP1 we include an input a witness-statement pair
We will prove that the AKAP1 protocol satisfies Sigma protocol’s conditions. Notice that the prover P in S-IP takes as an input just the witness x, rather than the witness/statement pair
Sigma protocol must satisfy the following conditions:
V
guarantees that no prover P that doesn’t know the witness x can succeed in convincing the verifier V.
The following theorem is presented without a proof (Boneh and Shoup, 2020).
S-SP provides knowledge soundness.
To proceed we must transform Definition 2.17 of HVZK to the definition of special HVZK (Boneh and Shoup, 2020).
Let (P, V) be a Sigma protocol for for all inputs for all
The differences between HVZK and special HVZK are the following: first, the simulator takes the challenge h as an additional input; second, it is required that the simulator produce an accepting conversation even when the statement a does not have a witness x. These two properties are the reason for the introduction of the notion of special HVZK.
AKAP1 is a special HVZK.
Let input to the simulator Sim be
The following theorem we present without proof is required (Boneh and Shoup, 2020).
Let (P, V) be a Sigma identification protocol for an effective relation R with super-poly challenge space. Assume that (P, V) provides knowledge soundness and is special HVZK. Furthermore, assume that the key generation algorithm Gen for R is one-way. Then Sigma identification protocol with parameters (Gen, P, V) is secure against active attacks.
Referencing to our considerations above and Theorem 4.6. We can prove the following result.
AKAP1 is secure against active attacks.
In Lemma 4.1 we proved that relation R in (4.1) is an effective binary relation. The challenge space C is super-poly since
Unfortunately, the similar result can not be proved for the AKAP2 protocol. The main reason is that it is not a Sigma protocol since the user’s
The security of AKAP2 we consider in the context of security of its components.
The user’s anonymity protection is based on the security of the ElGamal encryption scheme. According to Theorem 2.12, the compromising of anonymity is equivalent to DDH problem solution. If SP has secure values then DDH assumption holds and anonymity is not compromised. In this case an eavesdropping adversary cannot distinguish any two conversations either they are originated from the same user or from the two different users.
The other characteristic of AKAP2 is that challenge h in AKAP1 is encrypted and signed. This encrypt and sign paradigm avoids the chosen-ciphertext attack and is CCA-secure encryption (Boneh and Shoup, 2020).
Two authenticated key agreement protocols AKAP1 and AKAP2 based on Diffie–Hellman KAP, Schnorr identification, Schnorr signature, and ElGamal encryption are presented.
It is proved that AKAP1 is secure against an active adversary under the discrete logarithm (DL) assumption.
To increase the security of AKAP1 the modified AKAP2 is proposed. Since this protocol does not satisfy sigma protocols conditions, the security proof of AKAP2 is restricted to only two components providing user’s anonymity and CCA-secure encryption of verifiers (Bank’s) challenge which is used also to agree on the common secret key.
Referencing to these results it is an intriguing idea to construct AKAP based on other similar assumptions instead of classical DL assumption, namely based on NP-complete problems. New conjectured one-way-function based on so called matrix power function (MPF) was proposed earlier in our papers (Sakalauskas et al., 2008, 2017; Sakalauskas and Mihalkovich, 2014, 2017; Sakalauskas, 2018). MPF has some similarities with discrete exponent function. In Sakalauskas and Mihalkovich (2018) it is proved that inversion of MPF corresponds to a NP-complete problem. This proof was based on the result presented in Sakalauskas (2012). So far, the only key agreement protocol and asymmetric encryption scheme were realized using MPF but we think that the other protocols suitable for AKAP construction can be realized as well. Hence we expect that referencing to the results presented in this paper we could construct new AKAP based on MPF and prove its security using a similar methodology to the one presented in this paper.
