# Winternitz Signature Scheme Using Nonadjacent Forms

Authors: Dongyoung Roh; Sangim Jung; Daesung Kwon
Journal: Security and Communication Networks
 (2018)

---

## Abstract

Hash-based signatures are gaining attention as one of the alternatives that can replace current digital signatures that are not secure against an attack by quantum computers along with lattice-based signatures, multivariate signatures, and code-based signatures. Up to now, all hash-based signatures have used binary representations to generate signatures. In this paper, we propose using the nonadjacent form (NAF) when generating signatures in hash-based signatures. Concretely, we propose a hash-based signature scheme, WSS-N, which is obtained by applying nonadjacent forms (NAF) to the Winternitz signature scheme. We prove that WSS-N is existentially unforgeable under chosen message attacks in the standard model. And we show that WSS-N needs less hash function calls compared to the Winternitz signature scheme using the binary representation, WSS-B. For a specific parameter with a 256-bit security, we can see that WSS-N generates signatures faster than WSS-B by 8%. Finally, we implement both WSS-N and WSS-B and show that WSS-N generates signatures faster than WSS-B on a desktop computer.


---

## Body

## 1. Introduction

Recent research progress on quantum computers has brought postquantum cryptography to the forefront to protect against attacks by quantum computers. Once quantum computers are developed, most modern cryptographic systems will become insecure. Particularly, it would cause catastrophic damage to public key cryptography. Most modern public key cryptographic algorithms are secure under the assumption that the integer factorization and the discrete logarithm problem are computationally infeasible. However, quantum computers can solve these problems using Shor’s algorithm [1] in polynomial time. Therefore, the advent of quantum computers will make modern public key cryptographic systems insecure.In this situation, cryptographic society put spurs to develop postquantum cryptography. The NIST (National Institute of Standards and Technology) started a process to standardize postquantum cryptographic algorithms. Moreover, the NSA (National Security Agency) has announced preliminary plans for transitioning algorithms approved for protecting the classified and unclassified national security systems of the United States to quantum-resistant algorithms.The leading fields of postquantum cryptography are lattice-based cryptography, code-based cryptography, multivariate cryptography, and hash-based digital signatures. In this paper, we propose a new technique that could increase the efficiency of hash-based digital signatures. Hash-based digital signatures are slower than digital signatures that are based on a lattice, code, and multivariate polynomials. However, hash-based digital signatures provide stronger security guarantees than those of other categories because hash-based digital signatures are secure under only one assumption that the underlying hash functions are secure. Therefore, hash-based signatures are considered to be the most promising alternative in the short-term. Hash-based digital signatures have been researched continuously since the Lamport digital signature [2] such as LMS [3] and SPHINCS [4].All hash-based digital signatures use binary representations to generate signatures up to now. In this paper, we propose using the nonadjacent form (NAF) representation when generating signatures. Specifically, this paper proposes WSS-N by applying the NAF to W-OTS+ [5]. W-OTS+ is a Winternitz-type one-time signature scheme (the Winternitz signature is a one-time digital signature that can be used as a component of recent hash-based digital signatures that are capable of signing many messages. Particularly, the Winternitz signature is used as a building block of XMSS, SPHINCS, etc.) [6] that was proposed by Hülsing in 2013. It allows reducing the signature size more than previous Winternitz-type one-time signature schemes and is proven to be strongly unforgeable under chosen message attacks in the standard model.We prove that WSS-N is existentially unforgeable under adaptive chosen message attacks, if the used hash function family is second preimage-resistant, undetectable, and one-way. And we also analyze the performance of WSS-N and compare it with WSS-B.The NAF uses signed digits 0, 1, and −1 while the binary representation uses bits 0 and 1. While the binary representation has a uniform distribution, the NAF representation has a biased distribution. It makes the Winternitz signature scheme require less hash function calls when generating a signature. For a specific parameter with a 256-bit security, the Winternitz signature using the NAF requires 8% less hash function calls (thus generates signatures 8% faster) than that using the binary representation. However, the key generation and signature verification time of the Winternitz signature using the NAF become longer than that using the binary representation. We analyzed these trade-offs in detail.Figure1 gives the intuition of WSS-N showing better signature generation performance than WSS-B. Concretely, the graph shows the number of blocks by the number of hash function calls when WSS-B and WSS-N, each having a hashed message length of 256 bits and a block length of 4 bits, generate a signature. That is, the point (x,y) of the graph means that when WSS-B or WSS-N generates signatures for 2256 hashed messages, the total number of blocks that call the hash function x times is y. In addition, the blue and red vertical dotted lines of the graph represent the number of hash function evaluations that each block calls on average when WSS-B and WSS-N generate signatures, respectively. As can be seen from the graph, the maximum number of hash function calls of the WSS-N block is larger than that of WSS-B. However, in the case of WSS-N, since the number of blocks making a small number of hash function calls is larger than that of WSS-B, on average, WSS-N requires less hash function calls than WSS-B. So, WSS-N generates signatures faster than WSS-B on average.Figure 1
The number of blocks by the number of hash function calls when WSS-B and WSS-N, each having a hashed message length of 256 bits and a block length of 4 bits, generate a signature.Now let us look at the usage and the meaning of WSS-N. Basically, WSS-N can be used when signature generation time is more important than key generation time. Generally, the bottleneck of a one-time digital signature is not the signature generation time but the key generation time, but there will certainly be a situation where the signature generation time is more critical. Devices that sense data that do not happen frequently but need a quick response, such as seismic sensors, fire sensors, and so forth, should generate a signature as soon as possible if an event occurs. They can generate a key pair in the wait time. Also, in situations where we need to send measurement data on a regular basis (e.g., every 5 minutes), we will be able to generate a key pair between data measurements and wait for signature generation. Note that efforts to reduce signature generation time have been around for a long time [7, 8]. And the most important contribution of the paper is that it shows the possibility of a numeral system that can provide better performance than a binary representation.The rest of this paper is organized as follows. Section2 presents some preliminaries. In Section 3, the properties of the NAF that are required to analyze the efficiency of the Winternitz signature using the NAF are given and proven. In Section 4, we present WSS-N, the Winternitz signature using the NAF, and prove that it is existentially unforgeable under chosen message attacks in the standard model. We compare the efficiency of the Winternitz signatures using the NAF and the binary representation in Section 5. And we give implementation results comparing WSS-N and WSS-B in Section 6. Finally, we conclude the paper in Section 7.


## 2. Preliminaries

This section gives some notation and formal definitions. We follow the notation of [5]. From now on, the notation x←$X means that x is randomly chosen from the set X using the uniform distribution. We will denote by Un the uniform distribution over {0,1}n. We follow the definition of a digital signatures scheme DSS=(Kg,Sign,Vf) in [5]. Let DSS1n denote a signature scheme with a security parameter 1n. We also adopt the definitions of the EU-CMA security of DSS1n and SuccDSS1nEU-CMAA in [5].Using this, we define EU-CMA in the following way.Definition 1 (EU-CMA [5]).
LetDSS1n be a digital signature scheme with a security parameter 1n. DSS1n is (t,q,ϵ)-existentially unforgeable under an adaptive chosen message attack if InSecEU-CMADSS1n;t,q, the maximum success probability of all possibly probabilistic t-time adversaries A making at most q queries toSign in the above experiment, is at most ϵ; (1)InSecEU-CMADSS1n;t,q=defmaxASuccDSS1nEU-CMAA≤ϵ.WSS-N uses a family of functionsFn:{fk:{0,1}n→{0,1}n∣k∈Kn} with a key space Kn. It can be viewed as a cryptographic hash function family that is noncompressing. Using Fn, we define the following chaining function.Forckix,r [5], for given a value x∈{0,1}n, an iteration counter i∈N, a key k∈Kn, and randomization elements r=r1,…,rj∈{0,1}n×j with j≥i, the chaining function works in the following way. In case i=0, c returns x  ck0x,r=x. For i>0, we define c recursively as (2)ckix,r=fkcki-1x,r⊕ri.The subset ra,…,rb of r will be denoted by ra,b. When b<a, we define ra,b to be the empty string. It is assumed that the function family Fn is publicly known.Throughout the paper, we measure all runtimes by counting the number of the evaluations of elements fromFn. In what follows, we use the (distinguishing) advantage of an adversary [5].Functions [5]. We use three properties for families of functions. The first two of them are the one-wayness and the second preimage resistance of the family Fn and the success probability of adversaries against them are defined as SuccFnOWA and SuccFnSPRA [5].To define the other property, undetectability, consider the two distributions,DUD,Un and DUD,Fn, over {0,1}n×Kn. A sample (u,k) from DUD,Un is obtained by sampling u←$Un and k←$Kn. A sample (u,k) from DUD,Fn is obtained by sampling k←$Kn and then evaluating fk on a uniformly random n-bit string, that is, u←fkUn. The advantage of an adversary A against the undetectability of Fn is as follows: (3)AdvFnUDA=AdvDUD,Un,DUD,FnA.Using this, we define the undetectability as follows.Definition 2 (undetectability (UD) [5]).
Letn∈N and Fn be a family of functions as described above. Fn is ϵ-undetectable if the advantage of any t-time adversary A against the undetectability of Fn is at most ϵ: (4)InSecUDFn;t=defmaxAAdvFnUDA≤ϵ.Now we provide some more notation and formal definitions regarding the NAF. First, we give the formal definition of the NAF and related definitions that are useful to describe our results.Definition 3.
Letc be an integer. A signed binary representation of c is an equation of the form c=∑i=0l-1ci2i, where ci∈{0,1,-1} for all i. A signed binary representation cl-1,…,c0 of an integer c is said to be in nonadjacent form provided that no two consecutive ci’s are nonzero. Such a representation is denoted as a NAF representation.Note that the NAF representation of an integer is unique.Definition 4.
LetPn be a set of all the NAFs, which consists of n signed digits and N(n)=|Pn| for n≥1. And let P0=∅ and N(0)=1. Furthermore, let N(-1)=1 and N(-2)=0.Proposition5 shows the explicit formula for N(n) and a recurrence relation of N(n).Proposition 5.
For an integern≥-2, N(n)=2n+2-(-1)n/3 and N(n+2)=N(n+1)+2N(n).The functions defined in the following definition give an order onPn.Definition 6.
We define five functions onPn which give orders on Pn. (1)
Leton:Pn→Z be an injective function such that (5)R=rn-1⋯r1r0⟼∑i=0n-13ri2-ri23i.(2)
Letun:Pn→ZN(n) be a bijective function such that unR1≤unR2 if onR1≤nonR2, where R1,R2∈Pn.(3)
Letvn:Pn→ZN(n) be a bijective function such that (6)vnR=Nn-1,ifunR=Nn-1-1Nn-1-1,ifunR=Nn-1unR,otherwisefor R∈Pn.(4)
Letun′:Pn→Z2n+1 be an injective function such that (7)un′R=2n+1-1,ifunR=2n-1unR,otherwisefor R∈Pn.(5)
Letvn′:Pn→ZN(n+1) be an injective function such that (8)vn′R=unR,ifunR<Nn-1-1Nn+1-1,ifunR=Nn-1-1unR-1,otherwisefor R∈Pn.


## 3. Properties of the NAF

In this section, we give some properties of the NAF. They will have a crucial role in analyzing the efficiency of WSS-N.Lets and w be positive integers such that w divides s. For r∈{0,1}s, let rs,…,r0 be the NAF of r. Here, we assume that r-1 is always equal to 0. And let(i)
Ai,pw-1,…,p0={r∈{0,1}s∣riw+j=pj for 0≤j<w and riw-1=0};(ii)
Bi,pw-1,…,p0={r∈{0,1}s∣riw+j=pj for 0≤j<w and riw-1≠0}forpw-1,…,p0∈Pw.We compute the numbers of the elements inAi,pw-1,…,p0 and Bi,pw-1,…,p0 for all 0≤i<s/w and pw-1,…,p0∈Pw. First, the numbers of the elements in As/w-1,pw-1,…,p0 and Bs/w-1,pw-1,…,p0 are as follows.Lemma 7.
For allpw-1,…,p0∈Pw, (1)
|As/w-1,pw-1,…,p0|=Ns-w-1,ifpw-1=0or1;0,otherwise.(2)
|Bs/w-1,pw-1,…,p0|=2Ns-w-2,ifpw-1=0or1;0,otherwise.Proof.
First, suppose thatpw-1≠-1. Because rs-w-1 should be 0 for r∈As/w-1,pw-1,…,p0, |As/w-1,pw-1,…,p0|=N(s-w-1). Additionally, because rs-w-1=±1 and rs-w-2=0 for r∈Bs/w-1,pw-1,…,p0, |Bs/w-1,pw-1,…,p0|=2N(s-w-2).
Next, suppose thatpw-1=-1. If there is an element r in As/w-1,-1,pw-2,…,p0, rs should be 0. Then r represents a negative integer. This contradicts our assumption. Hence, |As/w-1,-1,pw-2,…,p0|=0. In the same manner, we can see that |Bs/w-1,-1,pw-2,…,p0|=0.We are now in a position to calculate the numbers of the elements inAi,pw-1,…,p0 and Bi,pw-1,…,p0 for all 0≤i<s/w-1 and pw-1,…,p0∈Pw.Theorem 8.
For all0≤i<s/w-1 and pw-1,…,p0∈Pw, (1)
|Ai,pw-1,…,p0|=Niw-1·2s-i+1w,ifpw-1=0;Niw-1·2s-i+1w-1,otherwise.(2)
|Bi,pw-1,…,p0|=Niw-2·2s-i+1w+1,ifpw-1=0;Niw-2·2s-i+1w,otherwise.Proof.
See AppendixA.


## 4. Winternitz Signature Scheme Using the NAF

In this section, we propose WSS-N, a Winternitz signature scheme that uses the NAF representation. WSS-N is parameterized by the security parametern∈N, the message length m, and the Winternitz parameter 1<w∈N. And let (9)tW=mw+log22w-1+m/w-1Nw-1w+1.Algorithms 1–3 describe the key generation, signature generation, and signature verification algorithms of WSS-N.Algorithm 1:WSS-N key generation algorithm Kg.
Input: security parameter 1n Output: secret key sk and public key pk 1. choosesk1,…,sktW←${0,1}n uniformly at random. 2. setsk=sk1,…,sktW. 3. chooser1,…,rN(w)-1←${0,1}n uniformly at random. 4. setr=r1,…,rN(w)-1. 5. choose a function keyk←$Kn uniformly at random. 6. setpk0=(r,k). 7. computepk1=ck2w-1sk1,r. 8. fori=2 to m/w, compute pki=ckN(w)-1ski,r. 9. fori=m/w+1 to tW, compute pki=ck2w-1ski,r. 10. setpk=pk0,pk1,…,pktW. 11.  return(sk,pk).Algorithm 2:WSS-N signature generation algorithm Sign.
Input: message M, secret key sk and randomization elements r Output: signature σ 1.  compute the NAF representationxm,xm-1,…,x0 of M. 2.  splitxm-1,…,x0 into m/w blocks c1,…,cm/w of length w, padding xm-1,…,x0 with zeros from the left if required. 3.  fori=1 to m/w, set di be a block of length (w-1) obtained by dropping the least significant signed digit ofci. 4.  compute b1=uwc1,ifthemostsignificantsigneddigitofc2is0;uw-1′d1,otherwise. 5.  fori=2 to i=m/w-1, compute bi=vwci,ifthemostsignificantsigneddigitofci+1is0;vw-1′di,otherwise. 6.  computebm/w=vwcm/w. 7.  compute the checksum C=2w-b1-1+∑i=2m/wN(w)-bi-1. 8. split the binary representation ofC into log22w-1+m/w-1(N(w)-1)/w+1 blockscm/w+1,…,ctW of length w, padding C with zeros from the left if required. 9.  fori=m/w+1 to i=tW, set bi be the integer encoded by the block ci. 10.  setB=(b1,…,btW). 11.  fori=1 to i=tW, compute σi=ckbiski,r. 12.  setσ=σ1,…,σtW. 13.  returnσ.Algorithm 3:WSS-N signature verification algorithm Vf.
Input: message M, signature σ and public key pk Output:  valid or invalid 1. computeB as in Sign. 2. ifpki=ck2w-bi-1σi,rbi+1,2w-1,foralli=1andm/w<i≤tW;pki=ckN(w)-bi-1σi,rbi+1,N(w)-1,forall1<i≤m/w then returnvalid, else return invalid.Note that distinct messages will yield distinctbi values and that the checksum guarantees that given B=b1,…,btW corresponding to a message, B′=b1′,…,btW′ corresponding to another message include at least one 1≤i≤tW such that bi′<bi.The following theorem shows that WSS-N is existentially unforgeable under chosen message attacks, provided that a second preimage-resistant and undetectable one-way function family is used.Theorem 9.
Letn,w,m∈N, w,m=poly(n), and Fn:{fk:{0,1}n→{0,1}n∣k∈Kn} be a second preimage-resistant and undetectable one-way function family. Then, InSecEU-CMAWSS-N1n,w,m;t,1, the insecurity of WSS-N against an EU-CMA attack, is bounded by (10)InSecEU-CMAWSS-N1n,w,m;t,1≤Nw-1InSecUDFn;t∗+tWNw-1·max⁡InSecOWFn;t′,Nw-1InSecSPRFn;t′with t′=t+3tW(N(w)-1) and t∗=t+3(tW+1)(N(w)-1).Proof.
It may be proven in much the same way as Theorem 1 in [5]. The only difference between them is that the heights of the chains to compute public keys of WSS-N and W-OTS+ [5] are different. Since the heights of the chains in WSS-N are not constant, the proof becomes a bit more complicated. However, the main idea of the proof does not change. For the detailed proof, we refer the reader to Appendix B.Remark 10.
The length of the signatures of the WSS-N can be reduced by using a secure pseudorandom generator. For example, a2n-bit seed of a secret key can be used to generate the ntW-bit secret key using the pseudorandom generator based on an AES counter mode. Naturally, the length of the signatures of the WSS-B can be reduced in a similar way.


## 5. Comparisons

In this section, we compare the Winternitz signature using the NAF with that using the binary representation. Whenn∈N is the security parameter, m∈N is the message length and 1<w∈N is the Winternitz parameter; let WSS-N(1n,w,m) and WSS-B(1n,w,m) denote the Winternitz signatures using the NAF and the binary representation, respectively. We compare WSS-N with WSS-B in terms of efficiency.First, we compare the number of hash function calls that are needed to generate a WSS-N signature and a WSS-B signature. We show that WSS-N(1n,w,m) needs less hash function calls than WSS-B(1n,w,m) to generate a signature when m≥15w and w≥2. For the ease of the analysis, we only consider the case where w divides m in this section.Before counting the numbers of the hash function calls that are needed in the signature generation steps, we give a lemma concerning the lengths of the count fields.Lemma 11.
Letn be the security parameter, let m be the message length, and let w be the bit length of the block, the Winternitz parameter. And suppose that w divides m. The difference between the block length of the count field of WSS-B(1n,w,m) and that of WSS-N(1n,w,m) is less than or equal to 1 when w≥2.Proof.
The block length of the count field of WSS-B(1n,w,m) is (11)log2m2w-1/ww+1.And the block length of the count field of WSS-N(1n,w,m) is (12)log22w-1+m/w-1Nw-1w+1.
Thus, it is enough to show that(13)log22w-1+mw-1Nw-1≤log2m2w-1w+1.It is equivalent to (14)mw-1Nw-1≤2mw-12w-1.
BecauseN(w)-1=2w+2-(-1)w/3≤2w+1-2 when w≥2, we can see that (15)mw-1Nw-1≤2mw-12w-1,when w≥2. This completes the proof.Now we count the numbers of hash function calls that are needed in the signature generation steps of the Winternitz signature schemes using the binary representation and the NAF representation.Theorem 12.
Letβ(1n,w,m) and ν(1n,w,m) be the numbers of hash function calls that are needed to generate a WSS-B(1n,w,m) signature and a WSS-N(1n,w,m) signature on average, respectively, where n is the security parameter, w is the Winternitz parameter, and m is the message length. And suppose that w divides m. Then ν(1n,w,m)≤β(1n,w,m) when m≥15w and w≥2.Proof.
First, we computeβ(1n,w,m). (16)β1n,w,m=mw2w2w-12+12w2w-12log2m2w-1/ww+1The first and second terms correspond to the numbers of the hash function calls that are needed for the message and count fields, respectively.
Next, we computeν(1n,w,m). (17)2m·ν1n,w,m=2w-12Nm-w-1+2w-1-12Nm-w-2+Nw-1-12∑i=0m/w-2Niw-12m-i+1w+Nw-12-Nw-1-12∑i=0m/w-2Niw-12m-i+1w-1+Nw-2-12∑i=0m/w-2Niw-22m-i+1w+1+Nw-1-12-Nw-2-12∑i=0m/w-2Niw-22m-i+1w+2m2w2w-12log22w-1+m/w-1Nw-1w+1 The first six and the last terms correspond to the numbers of hash calls that are needed for the message and count fields, respectively.
Applying Lemma11 yields(18)108w2m2w2w--1wβ1n,w,m-ν1n,w,m≥4m2m23w+44m2m-1w-48m2m2w+100w2m-1w-58w2m2w-36w-1m2w-59w2m23w-w2m-1w22w-2w-1m-1w22w+w-1m-1w24w+w-1m23w+54w2m-1w22w-162w2m-1w2w+162w2m22w.
We shall have established the theorem if we prove that the right-hand side of the above inequality is greater than or equal to 0 whenm≥15w and w≥2. The right-hand side can be rewritten as (19)4·2mm-15w23w+11-1w-12·2w+w2m-215w23w+162·22w+53-1w22w-778·2w-162-1w2w+760-1w+w2w217w+162·216w+53-1w216w-778·215w-162-1w215w+760-1w214w+-1m-1w23w+-1m22w-2-1m-1w2w-36-1m. Because m≥15w and w≥2, we can show that the right-hand side is greater than or equal to 0. This finishes the proof, and the detailed verification of the right-hand side being greater than or equal to 0 is left to the reader.The above theorem states that WSS-N(1n,w,m) needs less hash function calls to generate a signature than WSS-B(1n,w,m) on average when m≥15w and w≥2. Note that β(1n,w,m)=ν(1n,w,m) when m=w.We proceed to show the numbers of hash function calls that are needed in the key generation steps of WSS-B(1n,w,m) and WSS-N(1n,w,m). It is easily seen that (20)2w-1mw+log2m2w-1/ww+1hash function calls are needed to generate a WSS-B(1n,w,m) key pair. Similarly, we see that(21)Nw-1mw-1+2w-1log22w-1+Nw-1m/w-1w+2hash function calls are needed to generate a WSS-N(1n,w,m) key pair.What is left is to count the numbers of hash function calls that are required to verify a WSS-B(1n,w,m) signature and a WSS-N(1n,w,m) signature. An analysis similar to that in the proof of Theorem 12 shows that (22)122w-1mw+log2m2w-1/ww+1+1hash function calls are needed to verify a WSS-B(1n,w,m) signature. Similarly, we obtain that (23)12m2w2Nm-w-1+22w2-2w-1+12Nm-w-2+Nw2-Nw-Nw-1+12∑i=0m/w-2Niw-12m-i+1w+Nw-Nw-1+12∑i=0m/w-2Niw-12m-i+1w-1+Nw2-Nw-Nw-2+12∑i=0m/w-2Niw-22m-i+1w+1+Nw-Nw-2+12+Nw-12∑i=0m/w-2Niw-22m-i+1w+122w-1log22w-1+m/w-1Nw-1w+1+1hash function calls are needed to verify a WSS-N(1n,w,m) signature.Now, we give the concrete result of the efficiency analysis (Table1) that compares WSS-N(1256,4,256) and WSS-B(1256,4,256). The numbers in the public key, secret key, and signature columns are byte lengths and those in the key generation, signature generation, and signature verification columns are the number of hash function calls. Additionally, the numbers with the dagger mark are average values. Table 1 shows that the number of hash function calls to generate a Winternitz signature is reduced by about 8% when using the NAF representation compared to that with the binary representation. However, generating a key pair and verifying a signature need more hash function calls when using the NAF compared to the binary representation.Table 1
Efficiency analyses of the Winternitz signatures.
Algorithm pk sk Sig Kg Sign Vf WSS-B 2,656 2,144 2,144 1,005 440.7† 503.5† WSS-N 2,816 2,144 2,144 1,320 402.8† 810.6†Remark 13.
WSS-N needs less hash function calls when generating a signature than that of WSS-B. By giving the other orders onPw, one can make the Winternitz signature scheme need less hash function calls when verifying a signature. However, we will not cover this feature in this paper.


## 6. Benchmarks and Comparison

In this section, we provide benchmarking results of WSS-N and WSS-B. Concretely, we implement WSS-N(1256,4,256) and WSS-B(1256,4,256) and compare their software performances. The specific parameters and functions are summarized in Table 2. We use SHA-256 in OpenSSL [9].Table 2
Implementation parameters and functions.
Parameter n w m K n f k ( x ) Value 128 4 256 { 0,1 } 256 SHA-256(k∥x)Table3 shows implementation results of WSS-N and WSS-B. It gives the average clock cycle counts of 1,000,000 runs for key generation, signing, and verification. All results in Table 3 were obtained on an Intel Core i7-6700 running at 3.40 GHz. We used the compiler gcc-5.4.0 with the options "-O3," "-march=broadwell," and "-mtune=generic" to compile our C program.Table 3
Benchmarking on a desktop computer.
Algorithm Kg Sign Vf WSS-B 2,039,698 937,302 969,455 WSS-N 2,612,287 863,875 1,550,179We can see that WSS-N generates signatures faster than WSS-B by about 8% on a general desktop computer. However, the key generation and the signature verification of WSS-N are slower than those of WSS-B as expected. The source code that benchmarks WSS-N and WSS-B can be found in the supplementary materials (availablehere).


## 7. Conclusions

In this paper, we proposed a hash-based signature using the NAF, WSS-N. It is existentially unforgeable under chosen message attacks in the standard model. And we proved that WSS-N requires less hash function calls than WSS-B when generating a signature on average. In a concrete example, WSS-N(1256,4,256) makes the signature generation time 8% shorter than that of the WSS-B(1256,4,256). And we also gave benchmarking results on a regular desktop computer and it could be seen that the signature generation of WSS-N can be implemented faster than that of WSS-B. However, it takes longer to generate the keys and verify the signatures.WSS-N is the first hash-based signature that uses a numeral system other than the binary representation. Applying the NAF to hash-based signatures has trade-offs between the key generation time, the signature generation time, and the signature verification time. It would be interesting to determine what other trade-offs occur when applying numeral systems other than the binary representation and the NAF.



---

*Source: 1452457-2018-06-21.xml*