Document Type : Research Article

Authors

Cryptography and Data Security Laboratory, School of Mathematics, Iran University of Science & Technology, Narmak, Tehran, Iran.

Abstract

Digital signature schemes are used to guarantee for non-repudiation and authenticity of any kind of data like documents, messages or software. The Winternitz one-time signature (WOTS) scheme, which can be described using a certain number of so-called “function chains”, plays an important role in the design of both stateless and stateful many-time signature schemes. The main idea of WOTS scheme is the use of a limited number of function chains, all of which begin at some random values. This work introduces WOTS-GES, a new WOTS type signature scheme in which the need for computing all of the intermediate values of the chains is eliminated. More precisely, to compute each algorithm of the proposed scheme, we only need to calculate one intermediate value. This significantly reduces the number of required operations needed to calculate the algorithms of WOTS-GES. To achieve this results, we have used the concept of “leveled” multilinear maps which is also
referred to as graded encoding schemes. We expect these results to increase the efficiency of Winternitz based digital signature schemes.

Keywords

1 Introduction

Multilinear maps [ 1 ] that provide many applica- tions in cryptography, was proposed as an ex- tension of bilinear maps. Unlike bilinear maps, which are known to be constructed using pairing of elliptic curves, there was no method to construct a multilinear maps before the year 2013. This long-standing open problem was finally solved by Garg et al. [ 2 ]. They proposed the concept of graded encoding schemes, which is an approximate construction of multilinear maps. In their work, ideal lattices are used to build an instantiation of graded encoding schemes which is called GGH13.

Graded encoding schemes are one of the most im- portant cryptographic tools that provide many appli- cations in cryptography such as secret sharing scheme [ 3 ], witness encryption [ 4 ], multipartite key exchange [ 2 ], functional encryption [ 5 ], obfuscation [ 6 , 7 ], aggre- gate signature scheme [ 8 ] and so on. In this paper, we offer another application of graded encoding schemes in signature schemes.

Digital signature schemes [ 911 ] are useful crypto- graphic primitives in practice. They provide many uses for data security in a variety of applications, in- cluding authenticity and non-repudiation, securing software updates, the use in secure communication protocols SSL/TLS and more. In one-time digital sig- nature schemes the signer is limited to sign a single message [ 12 ]. These schemes are important crypto- graphic primitives that used as the core of the design of many-time digital signature schemes. One-time sig- nature schemes have other important applications like digital signatures with forward security property [ 13 , 14 ], network routing protocols [ 15 ] and so on.

So far, several techniques have been presented for constructing one-time digital signature schemes, one of the most interesting of which is the Winternitz one-time signature (WOTS) scheme [ 16 ]. One-time signature schemes designed using this technique play important roles in the design of both stateless and stateful many-time signature schemes [ 1719 ]. For example, if a Merkle signature scheme is built using a WOTS type signature scheme, there is no need to put the public verification key of WOTS scheme in the signature [ 14 ]. In addition, in WOTS type signature schemes, it is possible to make a trade-off between the runtime and the size of signature [ 2022 ].

Using the concept of “function chain”, we can give a good description of WOTS scheme. A function chain, using a function (family), produces a chain of values starting from a given point. The main idea of WOTS scheme is the use of a limited number of function chains, that are all calculated starting from random values. These values are in fact the private signing key of WOTS scheme. The public verification key is also the final values of each function chain. Finally, to calculate the signature, the message is mapped to one intermediate value of each chain.

1.1 Related Work

Along the years, several different versions of WOTS scheme have been presented for various purposes. The main idea of the WOTS scheme was first presented in [ 16 ]. Using this basic idea, the one-time digital signature schemes [ 23 , 24 ] were designed using an undetectable, collision resistant hash function. Af- terwards, a WOTS type signature scheme was intro- duced that achieve existential unforgeability under adaptive chosen message attacks (EU-CMA) security using a pseudorandom function family [ 25 ].

Under the name WOTS+, Hu¨lsing [ 26 ] later intro- duced a WOTS type signature scheme based on min- imal security requirements i.e. undetectable, second- preimage resistant, one-way hash functions. In this scheme, using the bitmasks, the need for collision re- sistant hash functions has been resolved. The security proof of WOTS+ is tight, which allows the signature size to be reduced compared to the previous WOTS type signature schemes. Therefore, WOTS+ has been given more attention than previous WOTS type sig- nature schemes. For example, the one-time signature which is used in the structure of stateless many-time signature schemes SPHINCS [ 19 ] and SPHINCS+ [ 22 ] is WOTS+. The variations of WOTS scheme that have been described so far are all vulnerable to multi- target attacks. More precisely, if an adversary has several targets to attack them, then the probability of being able to attack at least one of them is more than he can attack exactly one. There is another WOTS type signature scheme which is referred to as WOTS- T [ 20 ]. This scheme is considered as an improved version of WOTS+ that resists against multi-target attacks. The major difference between WOTS-T and WOTS+, which makes WOTS-T resistant to multi- target attacks, is that it uses an addressing scheme. Using this, a new bitmask is produced every time the used hash function is called.

As discussed above, using the concept of func- tion chain, there exists a good description of WOTS scheme. Considering this fact, the difference between all WOTS type signature schemes is in the method that the used function chain is constructed. In the function chain used in each of the WOTS type signa- ture schemes, a function has been used that must be repeated a certain number of times in order to gener- ate the intermediate values of the chains. The total number of production of each intermediate value in the key generation, signature and verification algo- rithms of this signature schemes is two. Thus, reduc- ing the number of required intermediate values, can reduce the number of operations required for these algorithms.

In this work, we propose WOTS-GES, a new vari- ant of the Winternitz one time signature scheme in which the need for computing all of the intermediate values of the chains is eliminated. More precisely, in each key generation, signature and verification algo- rithms of the proposed signature scheme, it is neces- sary to calculate only one intermediate value in each function chain. This significantly reduces the number of required operations needed to calculate these al- gorithms. To achieve this results, we have used the concept of “leveled” multilinear maps which is also referred to as graded encoding schemes. We also show how the used graded encoding scheme can be instan- tiated using GGH13.

The rest of the paper is as follows. In Section 2, we review the required concepts. In Section 3, we give description of the generic WOTS scheme. Sec- tion 4, describes WOTS-GES based on graded en- coding schemes. The security of WOTS-GES is pro- posed in Section 5. In Section 6, the instantiation of WOTS-GES using GGH13 is discussed and finally in Section 7, conclusions are provided.

2 Preliminaries

This section reviews some required concepts which are used throughout this paper. Most of the content in this section is devoted to graded encoding schemes. But first of all, we provide a simple definition of multilinear maps [ 1 ].

Definition 2.1. Suppose G1, . . . , Gk and GT be groups of prime order q. Then, a k-multilinear map e : G1 × . . . × Gk → GT is a map with the following properties:

(1) Multilinear: For a1, . . . , akZ*q and arbitrary elements g1∈G1, . . . , gkGk, it is hold that e(g1a1, ... ,gkak)=e(g1, ... ,gk)a1, ... ,ak.

(2) Non-degenerate: If giGi, 1 ≤ ik be a generator of Gi, then e(g1, . . . , gk) is also a generator of GT .

(3) Computable: For arbitrary elements g1G1 , . . . , gkGk , the resulting e(g1 , . . . , gk) can be computed efficiently.

2.1 Graded Encoding Schemes

Garg et al. [ 2 ] proposed the concept of graded encod- ing schemes, which is an approximate construction of multilinear maps as follows:

Definition 2.2. For the family of sets S={Si(α){0,1}*|0ik,αR} in which R is a ring, assume that for each constant 0 ≤ ik, {Si(α)αR} the sets be disjoint. Using this assumption, a k-graded encoding scheme GES(R; S) can be defined with the following procedures:

InstGen(1λ, k) : The inputs of randomized "instance-generation" procedure are a security parameter λ and also multilinearity parameter k. The corresponding output is (params; Pzt) in which Pzt and params are a zero-test parameter and description of the k-graded encoding scheme, respectively.

Samp(params) : The input of randomized "ring sampler" procedure is params. The output of this procedure is aS0(α) that is a "level-zero encoding" (Here α ∈ R is a random and nearly uniform element).

Enc(params, i, a) : The inputs of (possibly randomized) "encoding" procedure are params, an index ik and also a "level-zero" encoding aS0(α). The corresponding output is uSi(α) that is a "level-i" encoding for the same element α ∈ R.

Obviously for 1 ≤ ik, in order to obtain a level-i encoding, we first get a level-0 encoding of α using the ring sampler procedure and then get a level-i encoding of α using the encoding procedure.

Add(params, i, u1, u2) : The inputs of "addition" procedure are params, an index ik and two level-i encodings u1Si(α1) and u2Si(α2) . This procedure computes Add(params, i, u1, u2) = u1 + u2Si(α1+α2) in which α1 + α2 is addition in the ring R.

More generally, for a collection of encodings ujSi(αj) where j = 1, ... , h, it is hold that u1 + ... + uhSi(α1+...+αh).

Neg(params, i, u1) : The inputs of "negation" procedure are params, an index ik and a level-i encodings u1Si(α1). This procedure computes Neg(params, i, u1) = -u1-u1Si(1) in which -α1 is negation in the ring R.

Mul(params, i1, u1, i2, u2) : The inputs of "multiplication" procedure are params, indices i1, i2 with i1 + i2k, a level-i1 encoding u1Si1(α1) and also a level-i2 encoding u2Si2(α2) . The output of this procedure is Mul(params, i1, u1, i2, u2) = u1 × u2Si1+i2(α1.α2) in which α1 . α2 is multiplication in the ring R and i1 + i2 is integer addition.

More generally, for a collection of h encodings ujSij(αj) with Ph j=1hijk , it is hold that u1×u2Si1+ ... +ih(Πj=1hαj).

isZero(params, Pzt, u) : The inputs of "zero-test" procedure are params, Pzt and u. The output of this procedure is 1 if uSk(0) and 0 otherwise.

Ext(params, Pzt, u) : The inputs of "extraction" procedure are params, Pzt and uSk(α) , The output of this procedure is s ∈ {0,1}λ with the following properties:

a)For every α ∈ R and two level-k encodings u1, u2Sk(α) , it is hold that

Ext(params, Pzt, u1) = Ext(params, Pzt, u2) (1)

b) The following distribution over {0,1}λ is nearly uniform (λ is the security parameter):

{Ext(params,Pzt,u)|uSk(α),αR}

Garg et al. proposed GGH13 which is a k-graded encoding scheme that is parameterized by λ and the multilinearity parameter k ≤ poly(λ). GGH13 is a realization of a k-graded encoding scheme with several changes to the above definition. The important change relevant to our signature scheme is in the extraction procedure: the probability that the output of the extraction procedure of GGH13 is the same for two different level-k encodings of α is not 1. Thus, the property a) of the extraction procedure is replaced by a weaker requirement:

a') Suppose that aSamp(params) with aS0(α) . Then, if the (randomized) encoding procedure is run twice on a to obtain two level-k encodings u1,u2Sk(α) :

Pr[Ext(params, Pzt, u1) = Ext(params, Pzt, u2)] ≥ 1 - negl(λ)

In this paper, we work with the Definition 2.2, in which the probability that the output of the extraction procedure is the same λ bit string for two different level-k encodings of α is 1. If we want to use the extraction procedure of GGH13, we must consider the negligible probability that Ext(params, Pzt, u1) 6= Ext(params, Pzt, u2). Thus, for every α ∈ R, we can use Ext(params, Pzt, Sk(α) ) to denote this λ bit string.

Remark 2.1. We can assume that a level 1 encoding of 1 ∈ R is published as part of the instancegeneration procedure, namely an element yS1(1) [27].

2.1.1 Graded Discrete-Logarithm (GDL) Problem

The analog of discrete logarithm problem in a k-graded encoding scheme GES(R, S) can be defined as the following: consider a level-i encoding uiSi(α) in which 1 ≤ ik and α ∈ R, it must be hard to output a level-j encoding ujujSj(α) , where j < i. Here, the value i is chosen uniformly at random from the interval [1, k].

More formally, the following experiment can be defined between a challenger C and an adversary B:

ExperimentExpGESGDL (B, λ):

(1) Using λ and also the multilinearity parameter k, the challenger C runs (params, Pzt) ← InstGen(1λ, k) to get description of a k-graded encoding scheme.

(2) Now, C firstly runs aS0(α)Samp(params) to get a level-zero encoding of a random and nearly uniform element α ∈ R. The challenger C also runs uiEnc(params, i, a) to get a level-i encoding uiSi(α) . Next, C sends (params, Pzt, ui) to the adversary B.

(3) Finally, B outputs a value uj.

(4) The output is defined to be 1 iff ujSj(α) and j < i.

The success probability of an adversary B in the experiment ExpGESGDL (B, λ can be defined as follows.

SuccGESGDL(B,λ)=Pr[ExpGESGDL(B,λ)=1]

We say that the GDL problem is hard, if for each polynomial time adversary B running in time ≤ t, SuccGESGDL(B,λ) is a negligible function of λ. In other words,

InSecGDL(GES,t,λ):=maxB{SuccGESGDL(B,λ)} (2)

= negl(λ). (3)

Note that according to the Remark 2.1, the adversary B can simply get a level-j´ encoding uS(α) in the above experiment, by running the multiplication procedure

u:=ui×y×...×y-i timesS(α), where i < j´

2.2 Digital Signature Schemes

Here, we give some required preliminaries about digital signature schemes and also security of these schemes. In the remainder of the paper, we fix some notation in order to simplify the explanation: We denote by x$X, if x is chosen randomly from the set X. We also write log for log2.

Definition 2.3. Considering a message space M, a digital signature scheme Dss can be defined using the probabilistic polynomial time (PPT) algorithms (Kg, Sign, Vf):

(1) Key generation algorithm Kg(1n) takes n as the security parameter and outputs a private signing key sk and a public verification key pk.

(2) Signature algorithm Sign(sk,M) takes as input a message M and also the private signing key sk. Then, if MM, the algorithm outputs a signature σ for M under sk.

(3) Verification algorithm Vf(pk, σ,M) takes as input the message M, the signature σ and the public verification key pk. The algorithm outputs 1 iff σ is a valid signature on M under pk.

In a Dss = (Kg, Sign, Vf), for every sk; pk which are outputs of Kg(1n) and every MM, the following correctness condition must be satisfied:

Vf(M, Sign(sk,M), pk) = 1

2.2.1 EU-CMA Security

We now define "existential unforgeability under adaptive chosen message attacks (EU-CMA)" which is the standard security notion for any digital signature scheme Dss = (Kg, Sign, Vf). EU-CMA security can be defined using the following experiment between a challenger C and an adversary A. In the following, we use the notation Dss(1n) for a Dss = (Kg, Sign, Vf) with the security parameter n.

Experiment ExpDss(1n)EU-CMA (A):

(1) C runs the key generation algorithm Kg(1n) to generate a key pair (sk, pk) and sends the public verification key pk to A.

(2) Suppose that Sign(sk, .) be an oracle which for every message MM, returns the signature Sign(sk,M). Here, we denote by ASign(sk,.) the oracle access to Sign(sk, .) for A. Let also that {(Mi,σi)}i=1q be the query-answer pairs of Sign(sk, .).

(3) The adversary then outputs (M*, σ*).

(4) The output of ExpEU-CMADss(1n)(A) is defined to be 1 iff Vf(M*, σ*, pk) = 1 and (M*{Mi}i=1q.

We define the success probability of A in the experiment ExpEU-CMADss(1n)(A) as

SuccEU-CMADss(1n)(A)Pr[ExpEU-CMADss(1n)(A)=1] .

Now, we give the definition of EU-CMA security as follows.

Definition 2.4. Let n, t, q ∈ N and t, q = Poly(n). We say that a signature scheme Dss = (Kg, Sign, Vf) is EU-CMA-secure, if for all PPT adversaries ASign(sk,.) running in time at most t and making at most q queries, the maximum success probability InSecEU-CMA(Dss(1n); t, q) is a negligible function of n:

InSecEU-CMA(Dss(1n);t, q):=maxA{SuccEU-CMADss(1n)(A)} (4)

=negl(n) . (5)

Note that for any one-time signature (OTS) scheme, the number of oracle queries of A in the above experiment is restricted to one, i.e. q = 1.

3 Description of the Generic WOTS

Here, we give description of the generic WOTS scheme. Before defining WOTS, we first recall the definition of function chain.

Definition 3.1. Let nN, D and K be the security parameter, domain and key space, respectively such that the length of every XD and ck ∈ K be polynomial in n. A function chain C = (I, ε) consists of the following PPT algorithms:

• The initialization algorithm I(1n, λ) takes as input a chain length parameter λ ∈ N and also the security parameter n and outputs a public value ck ∈ K which is called "chain key".

• The evaluation algorithm εcki,j(X) takes as input a public chain key ck, an interval i, jN, 0 ≤ i < j ≤ λ, and a value XD which is the ith value of the chain and outputs YD, the jth value of the chain.

For every n, λ ∈ N, every ck ∈ K which is output of I(1n, λ), every i, j, mN such that 0 ≤ ijm ≤ λ and every XD, it must hold that

εckj,m(εcki,j(X))=εcki,m(X)

We now describe the generic W-OTS using a function chain C = (I, ε). This digital signature is parameterized by

m : the binary message length.

n : the security parameter.

w > 1 : the Winternitz parameter. This parameter determines the time-memory trade-off.

l: the number of elements in aW-OTS signature, public verification key and private signing key, which is computed as

l1=mlog(w), l2=log(l1(.w-1))log(w)+1, l = l1 + l2

Key Generation Algorithm (Kg(1n)): On input of the security parameter n, this algorithm chooses the private signing key sk = (sk1, . . . , skl) $Dl. Next, a public chain key ck is obtained using the initialization algorithm I(1n, λ) of the function chain. Finally, the public verification key pk can be computed as

pk=(pk0,pk1, . . . ,pkl)=(ck,εck0,w-1(skl), . . . ,εck0,w-1(skl))

Signature Algorithm (Sign(sk,M)): This algorithm takes as input a message M ∈ {0, 1}n and the private signing key sk. Firstly, the base w representation of M is computed, i.e. M = (b1, . . . , bl1 ) such that bi ∈ {0, . . . , w - 1}. Next, the checksum

C=Σi=1l1(w-1-bi)

and also its base w representation C = (bl1+1, . . . , bl) such that bi ∈ {0, . . . , w - 1}, is computed (Note that C ≤ l1(w - 1)). Now, the signature is computed as

σ=(σ1, . . . ,σl)=(εck0,b1(skl), . . . ,εck0,bl(skl))

Verification Algorithm (Vf(pk, σ,M)): This algorithm takes as input the message M, the signature σ and also the public verification key pk. Firstly, the bi, 1 ≤ il are computed as above. Next, if the following comparison holds, the verification algorithm returns true and false otherwise:

(pk1, . . . ,pkl)=?(εckb1 , w-1(σ1), . . . ,εckbl , w-1(σl))

4 WOTS-GES

Here, we propose our digital signature scheme WOTS-GES(k,m) based on a k-graded encoding scheme GES(R, S) with the security parameter λ. As mentioned before, this signature scheme is a new variant of WOTS scheme. Like other versions of WOTS, WOTS-GES(k,m) is parameterized by

m : the binary message length.

w > 1 : the Winternitz parameter. Here we suppose that w-1 is equal to the multilinearity parameter k of the k-graded encoding scheme, i.e. w-11 = k.

l: This parameter is calculated using the parameters m and w, as described in the previous section.

Please note that according to the Remark 2.1, we can consider that there is a level 1 encoding of 1, i.e. 11Si(1) . It is assumed that in the pre-computation phase, the encoding procedure Enc(params, i, 11) is run to obtain the level-i encoding 1iSi(1), where 2 ≤ ik.

Key Generation Algorithm (Kg(GES(R, S))): This algorithm takes as input the description of the k-graded encoding scheme GES(R, S). Then, the randomized ring sampler procedure Samp(params) is run to obtain l level-zero encodings ajS0(αj), where α1, . . . , αlR are random and nearly uniform elements and 1 ≤ jl. The private signing key sk = (a1, . . . , al) consists of this level-zero encodings.

Next for 1 ≤ jl, the key generation algorithm runs the encoding procedure Enc(params, k, aj) to get l level-k encodings ujkSk(αj). Finally, the extraction procedure is run to obtain pkj = Ext(params, Pzt, ujk). Now, the public verification key pk is defined as pk = (pk1, . . . , pkl). The key generation algorithm is shown in Figure 1.

Figure 1. A schematic representation of key generation algorithm

Signature Algorithm (Sign(sk,M)): This algorithm takes as input a message M ∈ {0,1}n and also the private signing key sk = (a1, . . . , al). Firstly, the base w representation of M is computed, i.e. M = (b1; : : : ; bl1 ) such that bi ∈ {0, . . . ,w-1}. Next, the checksum

C=Σi=1l1(w-1-bi)

and also its base w representation C = (bl1+1, . . . , bl) such that bi ∈ {0, . . . ,w-1}, is computed. Afterwards for 1 ≤ jl, the signature algorithm runs the encoding procedure Enc(params, bi , ai) to get the level-bi encodings ujbjSbj(αj). Now, the signature σ is defined as

σ=(σ1, ... ,σl)=(u1b1, ... ,ulbl)

The signature algorithm is shown in Figure 2. Let B = M||C, then we can conclude from the checksum that if M´ ≠ M be any other message, the corresponding B´ consists of at least one b´j < bj , where 1 ≤ jl.

Figure 2. A schematic representation of signature algorithm

Verification Algorithm (Vf(pk, σ, M)): This algorithm which is shown in Figure 3, takes as input the message M, the signature σ and also the public verification key pk. In this algorithm for 1 ≤ jl.

(1) Firstly, the bjs are computed as described above.

(2) Then, the verification algorithm runs the multiplication procedure Mul(params, bj , ujbj , k - bj, 1k-bj ) to compute the level-k encoding jkSk(αj).

(3) Finally, the extraction procedure is run to obtain pk´j = Ext(params, Pzt, u´jk).

Now, if the following comparison holds, the verification algorithm returns true and false otherwise:

(pk1, ... ,pkl)=?(pk´1, ... ,pk´l)

Figure 3. A schematic representation of verification algorithm

5 Security of WOTS-GES

Here, we prove the security of WOTS-GES. We explain how an adversary for WOTS-GES can be used to construct an adversary to solve the GDL problem. More formally, the GDL problem is reduced to the EU-CMA security of WOTS-GES.

Lemma 1.Let k,m ∈ N. Then, if there is any PPT adversary A who can break the proposed digital sig- nature scheme WOTS-GES(k,m), then there exists a PPT adversary B that is a solver for the GDL prob- lem such that

SuccDss(1n)EU-CMA(A)kl.SuccDssEU-CMA(B, λ)kl. (6)

Proof. Consider a PPT adversary A which acts according to the Experiment ExpDss(1n)EU-CMA(A) against the security of WOTS-GES(k,m), such that his success probability SuccDss(1n)EU-CMA(A)=εA is non-negligible. In the rest of the proof, we will define an adversary B which acts according to the Experiment ExpGESGDL(B, λ) to solve the GDL problem in polynomial time with a non-negligible success probability SuccGDL SuccGESGDL(B, λ)=εB and uses A as a sub-routine (Note that we have n = λ):

(1) Based on λ and the multilinearity parameter k, the challenger of the Experiment ExpGESGDL(B, λ) (that is C) runs (params, Pzt) InstGen(1λ, k) to get an explanation of a k-graded encoding scheme GES(R, S). Now, the challenger C firstly runs a ← Samp(params) to obtain a level-zero encoding aS0(α), where α ∈ R is a random and nearly uniform element. Then, C runs ui Enc(params, i, a) to get a level-i encoding uiSi(α). Next, C sends (params, Pzt, uzi) to the adversary B.

(2) Now, B is used as a challenger for A in the Experiment ExpDss(1n)EU-CMA(A). So, B executes the WOTS-GES key generation algorithm Kg(GES(R, S)) to obtain a private signing key sk = (a1, . . . , al), where ajS0(αj) are l level-zero encodings and α1, . . . , αlR are random and nearly uniform elements and also a public verification key pk = (pk1, . . . , pkl). Suppose that (M, α) be the query-answer pair of Sign(sk, .) in the Step 2 of the experiment ExpDss(1n)EU-CMA(A)and B = MC = (b1, . . . , bl). Let also that (M*, σ*) be the output of the adversary A in the Step 3 of this experiment and B* = M*C* = (b1*, . . . , bl*). Because of the checksum, the corresponding B* of the successful forgery (M*, σ*) must contain at least one bγ* < bγ, where 1 ≤ γ ≤ l. More precisely, the γ-th components of σ = (σ1, . . . , σl) and σ* = (σ1*, . . . , σl*) i.e. σγ and σγ* are a level-bγ encoding σγSbγ(αγ) and a level-bγ* encoding σ*γSb*γ(αγ), respectively, where 1 ≤ γ ≤ l. In the following, the adversary B tries to conjecture the location of σγ and place the level-i encoding uiSi(α) there. Hence, he will reply the signature query and finally extract a level-j encoding ujSj(α) using the successful forgery σ*, where 0 ≤ j < i:

(a) The adversary B selects the position of a component of the private signing key sk = (a1, . . . , al) choosing the index 1 ≤ 0 ≤ l uniformly at random.

(b) B considers the level-i encoding uiSi(α) challenge as the level-i encoding of an unknown level-zero encoding γ´=a. Next, B runs the multiplication procedure Mul(params, i, ui, k-i , 1k-i) to compute the level-k encoding ukSk(α). Afterwards, B runs the extraction procedure to compute pk´γ´ = Ext(params, Pzt, uk) Consequently, the manipulated public verification key pk´ is obtained as pk´ = (pk1, . . . , pk´γ´ , . . . , pkl). Note that the private signing key is also changed as sk = (a1, . . . , a´γ´ , . . . , al), where a´γ´ is unknown. Now, B sends the manipulated public verification key pk´ to A (the start of the Experiment ExpDss(1n)EU-CMA(A)).

(c) Note that B only knows the level- encodings uS(α), where i ≤ j´ ≤ k as he can run the multiplication procedure Mul(params, i, ui, j´ - i , 1j´ - i) to compute the level- encoding uS(α). So, B can only answer the A's query M, if ibγ´ .

(d) Also, the successful forgery (M*, σ*) is only helpful if b*γ´ < i. In this case, the adversary B announces the level-b*γ´ encoding ub*γ´Sb*γ´(α) as its output (Step 3 of the Experiment ExpGESGDL(B, λ).

In the following, the success probability of the adversary B is calculated: As we saw in Step 2c, B can only answer the A's query M, if ibγ´. To make computation of the success probability easier, we only consider a certain success case, i.e. i = bγ´ . As i was selected randomly with uniform distribution from the interval [1, k], the case happens with probability k-1.

We also pointed out that the corresponding B* of the successful forgery (M*, σ*) must contain at least one b*γ < bγ , where 1 ≤ γ ≤ l. This happens for γ = γ´ with probability l-1 . Thus we have b*γ´ < bγ´ . Consequently, we conclude that b*γ´ < i with probability (kl)-1 and therefore the condition in Step 2d is fulfilled. Hence, the success probability of the adversary A can be bounded as follows:

εAkl.εB

Note that because of the Equation 1 of the extraction procedure, changing the public verification key generation method to place our challenge, does not change the public verification key. More precisely, if we choose either the key generation algorithm of WOTS-GES(k,m) or the method which is used in the proof to produce public verification key, we obtain an equal value for this key. Thus, the proof is completed.

We now conclude the following theorem using Lemma 1:

Theorem 1.Suppose that k,m ∈ N. Then, we can bound the insecurity of WOTS-GES against an EU-CMA attack by

InSecEU-CMA(WOTS-GES(k, m); t, 1)kl.InSecGDL(GES; t´, λ) . (7)

with = t + 5l.

Proof. Firstly note that the Equation 7 can be simply derived from Equation 6 and also from Definitions 2 and 5. The time = t + 5l is also the maximum runtime required by the adversary A (which behaves according to the Definition 2.4) plus the time required to execute the three algorithms of WOTS-GES once (follow the proof of Lemma 1).

6 Instantiation using GGH13

To use WOTS-GES, graded encoding scheme GES(R, S) must be instantiated. In this section, we discuss how GES(R, S) can be instantiated using GGH13.

The graded encoding scheme GGH13 is parameterized by λ and also multilinearity parameter k ≤ poly(λ). Using these parameters, consider the cyclotomic ring R=Z<Xn+1>, in which n = O~ (kλ2) is a power of 2. Also, let that the modulus q = 2kλ defines the quotient ring Rq=RqR. Finally, consider the quotient ring QR=RI in which I =< g > is a principal prime ideal and g is a secret short vector drawn from the discrete Gaussian distribution qDZn, σ in which σ=O~(n). There is also another secret vector zRq, that selected uniformly at random.

In the graded encoding scheme GGH13, the quotient ring QR=RI plays the role of ring R in Definition 2.2. More precisely, elements of QR are what are encoded.

A level-zero encoding of an arbitrary cost r+IQR is a short vector of r + I. It can be proved that the size of level-zero encodings is bounded by λn2 (with high probability) [27]. On the other hand, the private signing key sk = (a1, . . . , al) of the signature scheme WOTS-GES consists of l level-zero encodings. Consequently, the size of private signing key sk is bounded by lλn2.

Also, a level-i encoding of a cost r+IQR, where 1 ≤ ik, is a vector of the form cziRq in which cr + I and c<q18. Thus, the size of cziRq is bounded by qn. On the other hand, we know that the signature σ = (σ1, . . . , σl) of a given message M using WOTS-GES, consists of l level-i encodings, where 0 ≤ ik. Therefore, signature σ consists of l level-i encodings which size of each is at most either λn2 or qn.

Finally, as described in Definition 2.2, the output of the extraction procedure is a λ bit string. On the other hand, the public verification key pk = (pk1, . . . , pkl) is made up of l extraction procedure outputs. Thus, the size of the public verification key is lλ bits.

In [28], GGHLite, an efficient version of GGH13 is presented in which the size of some parameters has been improved. Thus, instantiating the used graded encoding scheme of WOTS-GES using GGHLite can improve the efficiency of WOTS-GES.

7 Conclusion

Here, we provide a comparison for the number of operations required by the key generation, signature and verification algorithms of WOTS-GES scheme and other WOTS scheme variants in the literature [16, 20, 23-26]. We have summarized the results in Table 1.

Table 1. Comparison of the computational complexities

StepWOTS schemes [16, 20, 23-26]proposed schemePublic verification key generationlk.Tfcl.(Tenc+Text)Signature algorithm(Σi=1lbi).Tfcl.TencVerification algorithm(Σi=1l(k-bi)).Tfcl.(Tmul+Text)

In this table, we have assumed that the Winternitz parameter minus one is equal to the multilinearity parameter k of the used k-graded encoding scheme, i.e. w-1 = k. We have also used the following notations to analyze the complexities of the proposed scheme:

• Tfc: The time required to execute one iteration of the used function chain.

• Tenc: The time required to execute the encoding procedure of the used k-graded encoding scheme.

• Text: The time required to execute the extraction procedure of the used k-graded encoding scheme.

• Tmul: The time required to execute the multiplication procedure of the used k-graded encoding scheme.

From the comparison in the table, we can see that the number of operations required by the three algorithms of WOTS-GES is less than that of other WOTS scheme variants. In [29], the first practical implementation of graded encoding schemes is presented in which the efficiency of GGHLite has also been improved. Using our results along with the practical implementations of graded encoding schemes, we can obtain an efficient one-time digital signature scheme for various applications [13-15].

References

  1. Dan Boneh and Alice Silverberg. Applications of multilinear forms to cryptography. Contem- porary Mathematics, 324(1):71–90, 2003.
  2. Sanjam Garg, Craig Gentry, and Shai Halevi. Candidate multilinear maps from ideal lattices. In Annual International Conference on the The- ory and Applications of Cryptographic Tech-niques, pages 1–17. Springer, 2013.
  3. Massoud Hadian Dehkordi and Hossein Oraei. How to construct a verifiable multi-secret sharing scheme based on graded encoding schemes. IET Information Security, 13(4):343–351, 2019..
  4. Sanjam Garg, Craig Gentry, Shai Halevi, and Daniel Wichs. On the implausibility of differing-inputs obfuscation and extractable witness en- cryption with auxiliary input. Algorithmica, 79(4):1353–1373, 2017.
  5. Huijia Lin and Stefano Tessaro. Indistinguisha- bility obfuscation from trilinear maps and block- wise local prgs. In Annual International Cryptol- ogy Conference, pages 630–660. Springer, 2017.
  6. Sanjam Garg, Craig Gentry, Shai Halevi, Mar- iana Raykova, Amit Sahai, and Brent Waters. Candidate indistinguishability obfuscation and functional encryption for all circuits. SIAM Jour- nal on Computing, 45(3):882–929, 2016.
  7. Prabhanjan Ananth, Aayush Jain, and Amit Sa- hai. Robust transforming combiners from indis- tinguishability obfuscation to functional encryp- tion. In Annual International Conference on the Theory and Applications of Cryptographic Tech- niques, pages 91–121. Springer, 2017.
  8. Susan Hohenberger, Amit Sahai, and Brent Wa- ters. Full domain hash from (leveled) multilinear maps and identity-based aggregate signatures. In Annual Cryptology Conference, pages 494–512. Springer, 2013.
  9. Jia Yu, Hui Xia, Huawei Zhao, Rong Hao, Zhangjie Fu, and Xiangguo Cheng. Forward- secure identity-based signature scheme in un-trusted update environments. Wireless Personal Communications, 86(3):1467–1491, 2016.
  10. O¨ zgu¨r Dagdelen, David Galindo, Pascal V´eron, Sidi Mohamed El Yousfi Alaoui, and Pierre-Louis Cayrel. Extended security arguments for signa- ture schemes. Designs, Codes and Cryptography, 78(2):441–461, 2016.
  11. Daofeng Li, Haiqiang Chen, Cheng Zhong, Taoshen Li, and Feng Wang. A new self-certified signature scheme based on ntrus ing for smart mobile communications. Wireless Personal Com- munications, 96(3):4263–4278, 2017.
  12. Leslie Lamport. Constructing digital signatures from a one-way function. Technical report, Cite- seer, 1979.
  13. Tal Malkin, Daniele Micciancio, and Sara Miner. Efficient generic forward-secure signatures with an unbounded number of time periods. In In- ternational Conference on the Theory and Appli- cations of Cryptographic Techniques, pages 400–417. Springer, 2002.
  14. Johannes Buchmann, Erik Dahmen, and An- dreas Hu¨lsing. Xmss-a practical forward secure signature scheme based on minimal security as- sumptions. In International Workshop on Post- Quantum Cryptography, pages 117–129. Springer, 2011.
  15. Ralf Hauser, Tony Przygienda, and Gene Tsudik. Reducing the cost of security in link-state rout- ing. In Proceedings of SNDSS’97: Internet Soci- ety 1997 Symposium on Network and Distributed System Security, pages 93–99. IEEE, 1997.
  16. Ralph C Merkle. A certified digital signature. In Conference on the Theory and Application of Cryptology, pages 218–238. Springer, 1989.
  17. Andreas Hu¨lsing, Christoph Busold, and Jo- hannes Buchmann. Forward secure signatures on smart cards. In International Conference on Selected Areas in Cryptography, pages 66–80. Springer, 2012.
  18. Andreas Hu¨lsing, Lea Rausch, and Johannes Buchmann. Optimal parameters for xmss mt. In International Conference on Availability, Re- liability, and Security, pages 194–208. Springer, 2013.
  19. Daniel J Bernstein, Daira Hopwood, Andreas Hu¨lsing, Tanja Lange, Ruben Niederhagen, Louiza Papachristodoulou, Michael Schneider, Peter Schwabe, and Zooko Wilcox-O’Hearn. Sphincs: practical stateless hash-based signa- tures. In Annual international conference on the theory and applications of cryptographic tech- niques, pages 368–397. Springer, 2015.
  20. Andreas Hu¨lsing, Joost Rijneveld, and Fang Song. Mitigating multi-target attacks in hash- based signatures. In Public-Key Cryptography–PKC 2016, pages 387–416. Springer, 2016.
  21. Jean-Philippe Aumasson and Guillaume Endig- noux. Improving stateless hash-based signatures. In Cryptographers’ Track at the RSA Conference, pages 219–242. Springer, 2018.
  22. Jean-Philippe Aumasson, Daniel J Bernstein, Christoph Dobraunig, Maria Eichlseder, Scott Fluhrer, Stefan-Lukas Gazdag, Andreas Hu¨lsing, Panos Kampanakis, Stefan K¨olbl, Tanja Lange, et al. Sphincs+. 2019.
  23. Alejandro Hevia and Daniele Micciancio. The provable security of graph-based one-time sig- natures and extensions to algebraic signature schemes. In International Conference on the Theory and Application of Cryptology and Infor- mation Security, pages 379–396. Springer, 2002.
  24. Chris Dods, Nigel P Smart, and Martijn Stam. Hash based digital signature schemes. In IMA International Conference on Cryptography and Coding, pages 96–115. Springer, 2005.
  25. Johannes Buchmann, Erik Dahmen, Sarah Ereth, Andreas Hu¨lsing, and Markus Ru¨ckert. On the security of the winternitz one-time signature scheme. In International conference on cryptol- ogy in Africa, pages 363–378. Springer, 2011.
  26. Andreas Hu¨lsing. W-ots+–shorter signatures for hash-based signature schemes. In International Conference on Cryptology in Africa, pages 173–188. Springer, 2013.
  27. Sanjam Garg. Candidate Multilinear Maps. PhD thesis, University of California Los Angeles, 2013.
  28. Adeline Langlois, Damien Stehl´e, and Ron Ste- infeld. Gghlite: More efficient multilinear maps from ideal lattices. In Annual International Con-ference on the Theory and Applications of Cryp- tographic Techniques, pages 239–256. Springer, 2014.
  29. Martin R Albrecht, Catalin Cocis, Fabien Laguil- laumie, and Adeline Langlois. Implementing can- didate graded encoding schemes from ideal lat- tices. In International Conference on the Theory and Application of Cryptology and Information Security, pages 752–775. Springer, 2015.