Abstract
It is well known that conventional digital signature algorithms such as RSA and ECDSA are vulnerable to quantum computing attacks. Hash-based signature schemes are attractive as post-quantum signature schemes in that it is possible to calculate the quantitative security level and the security is proven. SPHINCS is a stateless hash-based signature scheme and introduces HORST few-time signature scheme which is an improvement of HORS. However, HORST as well as HORS suffers from pretty large signature sizes. HORSIC is proposed to reduce the signature size, yet does not provide in-depth security analysis. In this paper, we propose HORSIC+, which is an improvement of HORSIC. HORSIC+ differs from HORSIC in that HORSIC+ does not apply f as a plain function to the signature key, but uses a member of a function family. In addition, HORSIC+ uses the chaining function similar to W-OTS. These enable the strict security proof without the need for the used function family to be a permutation or collision resistant. HORSIC+ is existentially unforgeable under chosen message attacks, assuming a second-preimage resistant family of undetectable one-way functions and cryptographic hash functions in the random oracle model. HORSIC+ reduces the signature size by as much as 37.5% or 18.75% compared to HORS and by as much as 61.5% or 45.8% compared to HORST for the same security level.
1. Introduction
Nowadays, digital signatures are widely used in various security applications to provide authentication, integrity, and non-repudiation. RSA [] and ECDSA [] are two of the most widely used digital signature schemes. The security of RSA and ECDSA is based on the difficulty of factoring and computing discrete logarithms, respectively. However, in 1994, Shor proposed a polynomial-time quantum algorithm for integer factorization and discrete logarithm problems []. If a large-scale quantum computer is built, RSA and ECDSA cannot be used anymore. Thus, alternative digital signature schemes which are resilient to attacks by quantum computers are needed. They are called post-quantum cryptography [,].
Various post-quantum signature schemes such as lattice-based [], multivariate [], code-based [], and hash-based have been studied. Lattice-based signature schemes are relatively fast with a reasonably small signature size. However, it is difficult to calculate the quantitative security level and the security is not proven against quantum adversaries. Multivariate signature schemes are relatively fast with an extremely small signature size. However, it is also difficult to estimate the security of multivariate signature schemes against quantum attacks. Code-based signature schemes have a reasonably small signature size and it is possible to calculate the quantitative security level to some extent. However, code-based signature schemes need too large keys to be secure against quantum attacks. Hash-based signature schemes receive a lot of attention in that it is possible to calculate the quantitative security level and the security is also proven []. Moreover, hash-based signature schemes are considered to be a good candidate for the security of IoT devices due to their simplicity of implementation and customization [,].
The hash-based signature schemes XMSS (eXtended Merkle Signature Scheme) [] and SPHINCS [] were introduced in 2011 and 2015, respectively. XMSS is stateful, meaning that the signer and the verifier have to maintain their own state information, while SPHINCS is stateless. SPHINCS introduces a few-time signature scheme named HORST (HORS with Trees). HORST is an improvement of a few-time signature scheme HORS (Hash to Obtain Random Subset) []. In the context of SPHINCS, each full signature should contain not only a HORST signature but also a HORST public key. HORST uses a Merkle tree to reduce the public key size to a single hash value. However, HORST as well as HORS suffers from pretty large signature sizes.
HORSIC (Hash to Obtain Random Subset and Integer Composition) [] is a few-time signature scheme for broadcast authentication in wireless sensor networks. HORSIC reduces the signature size compared to HORS and HORST. Whereas HORS and HORST use only a cryptographic hash function H, making it infeasible to find two different messages that will produce the same k-element subset, HORSIC decreases the probability of forgery by using another cryptographic hash function G and a bijective function as well as H to make it infeasible to find two different messages that will produce the same k-part integer composition as well as the same k-element subset. The security analysis of HORSIC is performed on the unrealistic assumption that it is impossible for an adversary to invert the one-way permutation f. In fact, the probability of inverting f is not zero, but negligible. The security analysis should consider the probability of inverting f.
This paper proposes HORSIC+, an improvement of HORSIC. HORSIC+ differs from HORSIC in that HORSIC+ does not apply f as a plain function to the signature key, but uses a member of a function family which is second-preimage resistant, undetectable, and one-way. In addition, HORSIC+ uses the chaining function similar to W-OTS []. These enable the strict security proof without the need for the used function family to be a permutation or collision resistant. We prove HORSIC+ is existentially unforgeable under chosen message attacks, if the used function family is a second-preimage resistant family of undetectable one-way functions and H and G are cryptographic hash functions in the random oracle model. HORSIC+ reduces the signature size by as much as 37.5% or 18.75% compared to HORS and by as much as 61.5% or 45.8% compared to HORST for the same security level.
The rest of the paper is organized as follows. Section 2 introduces some preliminaries and presents two signature schemes that HORSIC+ is based on. Section 3 describes the details of the proposed scheme HORSIC+. Section 4 discusses the security of HORSIC+ including a comparison with HORS and HORST. Section 5 presents the conclusions.
2. Preliminaries and Related Works
In this section, we discuss two signature schemes that HORSIC+ is based on. One is the Winternitz one-time signature scheme (W-OTS) [], and the other is HORSIC []. We begin by introducing some preliminaries and then describe W-OTS and HORSIC.
2.1. Preliminaries
We start this subsection with several definitions and notions related to digital signature schemes and function families [,,]. From now on, we write if x is chosen randomly from the finite set S using a uniform distribution.
Definition 1.
Let be a message space. A digital signature scheme is a triple of probabilistic polynomial time algorithms:
- takes as input a security parameter and outputs a signature key X and a verification key Y;
- outputs a signature σ under the signature key X for message ;
- outputs 1 iff σ is a valid signature on M under the verification key Y;
such that : .
Let be a digital signature scheme with security parameter n. The standard definition of security for digital signature schemes is existential unforgeability under adaptive chosen message attack (EU-CMA). EU-CMA is defined using the following experiment.
Experiment
Let be the query-answer pairs of .
Return 1 iff and .
The success probability of an adversary in the above experiment can be written by:
Definition 2.
Let and . A digital signature scheme is EU-CMA secure if the success probability of any adversary running in time and making at most q queries to the oracle in the above experiment is negligible in n:
We then discuss several security properties for function families: preimage resistance (one-wayness, OW), second preimage resistance (SPR), collision resistance (CR), and undetectability (UD). Let be the security parameter and
be a family of functions. The elements of are called keys and each key specifies a particular function in the family .
A function is preimage resistant (or one-way) if it is easy to compute but difficult to invert. The success probability of an adversary against the preimage resistance of is
Definition 3.
We call preimage resistant (or one-way), if the success probability of any adversary running in time against the preimage resistance of is negligible in n:
A function is second preimage resistant if, given some x in the domain, it is difficult to find some unequal to x that maps the same value. The success probability of an adversary against the second preimage resistance of is
Definition 4.
We call second preimage resistant, if the success probability of any adversary running in time against the second preimage resistance of is negligible in n:
A function is collision resistant if it is hard to find any pair in the domain that maps to the same value. The success probability of an adversary against the collision resistance of is
Definition 5.
We call collision resistant, if the success probability of any adversary running in time against the collision resistance of is negligible in n:
To define the undetectability property, we need to define the (distinguishing) advantage of an adversary.
Definition 6.
Let and be two distributions. The advantage of an adversary in distinguishing between these two distributions is defined as
A function family is undetectable if no adversary can distinguish its outputs from uniformly random values. Consider two distributions and over . A sample from the first distribution is obtained in the following way: , . A sample from the second distribution is obtained in the following way: , , and then calculating . The advantage of an adversary against the undetectability of is defined as the distinguishing advantage for these two distributions:
Definition 7.
We call undetectable, if the advantage of any adversary running in time against the undetectability of is negligible in n:
Table 1 summarizes the best known generic attacks against different functions given different environments []. Using generic(brute-force) classical attacks, one requires evaluations of the function to compute preimages or second preimages. Because of the birthday paradox, one requires evaluations of the function to find a collision with probability greater than []. Using generic quantum attacks such as Grover’s algorithm [], one requires evaluations of the function to compute preimages or second preimages and evaluations of the function to find a collision [].

Table 1.
Generic Security.
2.2. Winternitz One-Time Signature Scheme (W-OTS)
In this subsection, we discuss W-OTS and its two variants, W-OTS and W-OTS.
2.2.1. W-OTS
W-OTS produces much shorter signatures than Lamport-Diffie one-time signature scheme [] by iteratively applying a function on a secret key, whereas the number of iterations depends on the signed message []. W-OTS uses a one-way function
Key generation: A Winternitz parameter w, which is the number of bits to be signed simultaneously is chosen. In the following, we restrict the length of the message to be signed to m bits. It is straightforward to generalize to arbitrary sized messages by using a collision resistant hash function.
The signature key X consists of l bit strings of length n chosen uniformly at random,
where l is computed as follows.
The chaining function for W-OTS is defined as follows.
The verification key Y is calculated by applying the chaining function to each in the signature key times. Thus we have
Signature generation: A message M is split into bit strings of length w and each bit string is converted to an integer in base-w. So we have
where
Then the checksum C is calculated as follows.
The checksum C is converted to base w. The base w representation of the checksum C is . The signature of M is computed as
Signature verification: For the verification of the signature , the base-w strings and are calculated as described above. Then we check if
It is proved that W-OTS is strongly unforgeable under chosen message attacks if is a collision resistant family of undetectable one-way functions [].
2.2.2. W-OTS
W-OTS differs from W-OTS in that W-OTS uses a family of pseudo random functions instead of a one-way function []. The chaining function for W-OTS is defined as follows.
It is proved that W-OTS is existentially unforgeable under chosen message attacks if is a pseudorandom function family [].
2.2.3. W-OTS
W-OTS uses a second preimage resistant family of undetectable one-way functions []. It uses bitmasks to replace the collision resistant one-way function families. The idea of using bitmasks comes from the “XOR tree” []. The chaining function for W-OTS is defined as follows.
where the bitmasks consist of bit strings of length n chosen uniformly at random,
It is proved that W-OTS is strongly unforgeable under chosen message attacks if is a second preimage resistant family of undetectable one-way functions [].
2.3. HORSIC
HORSIC [] is basically an extension of HORS []. Whereas HORS uses only a cryptographic hash function H, making it infeasible to find two different messages that will produce the same k-element subset, HORSIC decreases the probability of forgery by using another cryptographic hash function G and a bijective function as well as H to make it infeasible to find two different messages that will produce the same k-part integer composition as well as the same k-element subset.
Let be a one-way permutation operating on n-bit strings. Let and be cryptographic hash functions in the random oracle model []. t, k, and z are security parameters. The public key size is linear in t, and the signature size is linear in k.
HORSIC uses a bijective function that, on input g, where , outputs the g-th solution of the following equation:
Note that the number of solutions to the above equation, which is the number of compositions of z into exactly k parts, is denoted by the binomial coefficient []. For example, suppose and . The equation has 6 solutions () : , , , , , and .
Algorithm 1 represents the key generation of HORSIC. If first generates t random n-bit numbers and then creates a one-way chain of length w for each n-bit number.
Algorithm 1: Key generation of HORSIC () |
System Parameters: Parameters n, t, k, z, and w Output: Signature key X and verification key Y 1: Choose 2: Compute 3: return |
Algorithm 2 represents the signing of HORSIC. HORSIC uses a bijective function and two cryptographic hash functions H and G. A cryptographic hash function H is used to map each message M to a k-element ordered subset of a t-element set . A counter is used to ensure that all are distinct. A cryptographic hash function G and a bijective function are used to map each message M to a k-part integer composition of z.
Algorithm 2: Signing of HORSIC () |
System Parameters: Parameters n, t, k, z, and w Input: Signature key X and message M Output: Signature 1: Compute 2: Compute 3: Set 4: Compute 5: Split h into k pieces of length bits each 6: Interpret each as an integer for all 7: if there exist p and q with such that and then 8: and go to Step 4 9: Compute for all 10: return |
Algorithm 3 represents the verification of HORSIC. Each is verified by applying the one-way permutation times and comparing it with the verification key.
Algorithm 3: Verification of HORSIC () |
System Parameters: Parameters n, t, k, z, and w Input: Verification key Y, message M, and signature Output: “accept” or “reject” 1: Compute 2: Compute 3: Compute 4: Split h into k pieces of length bits each 5: Interpret each as an integer for all 6: if there exist p and q with such that and then 7: return “reject” 8: if there exist such that then 9: return “reject” 10: return “accept” |
The probability of a forgery for HORSIC is []. Note that it does not depend on the security parameter n. The security analysis of HORSIC is performed on the unrealistic assumption that it is impossible for an adversary to invert the one-way permutation f. In fact, the probability of inverting f is not zero, but negligible. The security analysis should consider the probability of inverting f. Moreover, HORSIC requires f to be a one-way permutation. Whereas one-way functions can be based on various assumptions, candidate one-way permutation families are remarkably rare [].
3. The HORSIC+ Signature Scheme
In this section, we describe HORSIC+ focusing on the differences with HORSIC. Firstly, HORSIC+ does not apply f as a plain function to the signature key, but uses a member of a function family. Let be a family of functions which is second-preimage resistant, undetectable and one-way. The function key specifies a particular function in the family . The function key is chosen at random at key generation time and is the same for all function calls. In addition, HORSIC+ uses the chaining function similar to W-OTS []. It enables the strict security proof without the need for the used function family to be collision resistant.
where bitmasks is defined as
We denote as the substring of . We also define to be the empty string when .
Let and be cryptographic hash functions in the random oracle model. HORSIC+ uses a bijective function same as HORSIC. Algorithm 4 describes the implementation of the function . It is based on the following equation:
In Equation (29), , and are the number of solutions when is 1, 2 and , respectively. First, Algorithm 4 checks whether . If so, and . If not, Algorithm 4 checks whether . If so, and , and so on.
Algorithm 4: Implementation of the function |
System Parameters: Parameters k and z where Input: g where Output: 1: , 2: for to do 3: for to do 4: ifthen 5: , , 6: break 7: 8: , |
Algorithm 5 represents the key generation of HORSIC+. It first chooses t and wn-bit strings uniformly at random. The first t bit strings are used as the signature key and the remaining w bit strings are used as the bitmasks . Then it also chooses a function key . The function key specifies a particular function in the family . It is important to note that the verification key Y includes and thus known to everybody.
Algorithm 5: Key generation of HORSIC+ () |
System Parameters: Parameters n, t, k, z, and w Output: Signature key X and verification key Y 1: Choose 2: Choose 3: Choose 4: Compute 5: return |
Figure 1 and Algorithm 6 represent the signing of HORSIC+. HORSIC+ uses a bijective function and two cryptographic hash functions H and G. A cryptographic hash function H is used to map each message M to a k-element ordered subset of a t-element set . A counter is used to ensure that all are distinct. A cryptographic hash function G and a bijective function are used to map each message M to a k-part integer composition of z. Each is generated by applying the chaining function times on .
Algorithm 6: Signing of HORSIC+ () |
System Parameters: Parameters n, t, k, z, and w Input: Signature key X, message M, function key , and bitmasks Output: Signature 1: Compute 2: Compute 3: Set 4: Compute 5: Split h into k pieces of length bits each 6: Interpret each as an integer for all 7: if there exist p and q with such that and then 8: and go to Step 4 9: Compute for all 10: return |

Figure 1.
Signing of HORSIC+.
Algorithm 7 represents the verification of HORSIC+. Each is verified by applying the chaining function times and comparing it with the verification key.
Algorithm 7: Verification of HORSIC+ () |
System Parameters: Parameters n, t, k, z, and w Input: Verification key Y, message M, and signature Output: “accept” or “reject” 1: Compute 2: Compute 3: Compute 4: Split h into k pieces of length bits each 5: Interpret each as an integer for all 6: if there exist p and q with such that and then 7: return “reject” 8: if there exist such that then 9: return “reject” 10: return “accept” |
4. Analysis
In this section, we analyze the security of HORSIC+ and calculate its security level. We also compare HORSIC+ with HORS and HORST for the same security levels.
4.1. Security Analysis
In this subsection, we analyze the security of HORSIC+. We prove HORSIC+ is existentially unforgeable under chosen message attacks, if the used function family is a second-preimage resistant family of undetectable one-way functions and H and G are cryptographic hash functions in the random oracle model.
Theorem 1.
Suppose is a second-preimage resistant, undetectable one-way function family and H and G are cryptographic hash functions in the random oracle model. Then the insecurity of HORSIC+ against an EU-CMA attack is bounded by
with the time and .
Proof of Theorem 1.
The proof is provided in Appendix A. □
4.2. Security Level
In this subsection, we calculate the security level of HORSIC+ using Theorem 1. According to [], HORSIC+ has security level b if a successful attack on HORSIC+ is expected to require evaluations of functions from on average. The security level of HORSIC+ can be calculated by finding a lower bound for T such that .
From now on, we assume , since and are negligible when compared to the value T. We calculate the lower bound on T.
Solving this for T gives us
So, we can obtain the security level b for HORSIC+:
4.3. Comparison with HORS and HORST
In this subsection, we compare HORSIC+ with HORS and HORST for the same security levels. Since the security level of HORS is the same as that of HORST with the same parameters, we refer to HORS and HORST together as HORS/HORST.
4.3.1. Security Parameters for HORSIC+
In this sub-subsection, we choose security parameters for HORSIC+ having the same security levels as HORS/HORST. Figure 2 shows the security level of HORSIC+ for various choices of k and HORS/HORST for signing a single message. In this case, we set for HORSIC+. The X-axis represents the parameter w, which affects the computational cost. The Y-axis corresponds to the security level.

Figure 2.
Security level of HORSIC+ for various choices of k and HORS/HORST for signing a single message. The parameters are chosen from (a) HORS and (b) HORST as used in SPHINCS.
The parameters for HORS/HORST in Figure 2 are chosen from (a) HORS [] and (b) HORST as used in SPHINCS []. The original HORS scheme recommends to use SHA-1 [] or RIPEMD-160 [] as a cryptographic hash function H which has an output length of 160 bits []. Thus, the original HORS scheme uses and (). The parameters for SPHINCS-256 (, ) are selected to provide long-term security against attackers with access to quantum computers.
The security level of HORS/HORST can be obtained from the following equation [,]:
When using the parameters in Figure 2a,b, the security levels of HORS/HORST are 96 and 352, respectively.
In Figure 2, ‘HORSIC+ 1st’ refers to the first argument of the min function in Equation (34) (i.e., ). ‘HORSIC+ 2nd’ refers to the second argument of the min function in Equation (34) (i.e., ). ‘HORSIC+ 1st’ corresponds to the case where the adversary succeeds in forging only with already revealed secret values. As the number of signatures using the same HORSIC+ key increases, the number of revealed secret values also increases. Thus, the security level of ‘HORSIC+ 1st’ decreases more rapidly than that of ‘HORSIC+ 2nd’. So it is more appropriate to compare the security level of ‘HORSIC+ 1st’ with that of HORS/HORST.
To get a security level of 96 bits for HORSIC+, w should be 3, 6, 13, 28, and 72, when k is 12, 11, 10, 9, and 8, respectively. See the diamond marker in Figure 2a. To get a security level of 352 bits for HORSIC+, w should be 2, 5, 10, 17, and 29, when k is 28, 27, 26, 25, and 24, respectively. See the diamond marker in Figure 2b.
In HORSIC+, as the parameter k decreases, the signature size also decreases, but the parameter w should increase to offer the same security level. Figure 2 shows that increased w results in increased security level of ‘HORSIC+ 1st’. However, it also results in increased overhead in key generation, signing, and verification. We choose two sets of parameters taking into account the relative importance of speed and signature size. The first is , , , and , implying which offers 96-bit security level. The second is , , , and , implying which offers 352-bit security level. Based on these two sets of parameters, a comparison of HORSIC+ with HORS/HORST will be presented in Section 4.3.3.
4.3.2. Security for Multiple Messages
HORSIC+ can be used as a few-time signature scheme in two ways. The first is for the signer and the verifier to maintain their own state information as in [,]. It is a good strategy when HORSIC+ is used in broadcast authentication in wireless sensor networks. However, it is not appropriate when used as a general signature scheme because maintaining the state information means it is stateful. If the state information update fails, then HORSIC+ cannot be used anymore. The second is to use HORSIC+ many times without state information as HORST in []. In this case, the security level decreases as the number of signatures using the same key increases.
To investigate how rapidly the security level decreases as the number of signatures using the same key (r) increases, we normalize the security level for to 1 and compare the normalized security level of HORSIC+ and HORS/HORST. For simplicity, we compute the normalized security level of HORSIC+ by solving the subset-resilience problem.
Figure 3 shows the normalized security level of HORSIC+ and HORS/HORST for multiple messages. The x-axis shows the number of signatures using the same key (r). We can see that the normalized security level of HORSIC+ decreases more slowly than that of HORS/HORST. It is because HORSIC+ uses smaller k than HORS/HORST for the same security level.

Figure 3.
Normalized security level of HORSIC+ and HORS/HORST for multiple messages.
4.3.3. Comparison
Table 2 compares HORSIC+ with HORS and HORST for the same security levels (96 bit, 352 bit). For simplicity, we assume that HORST does not apply any optimizations in []. The table shows that a HORSIC+ signature size is smaller than a HORS and HORST signature size with a comparable security level. With parameters , HORSIC+ signatures are 37.5% shorter than HORS signatures and 61.5% shorter than HORST signatures to offer a 96-bit security level. With parameters , HORSIC+ signatures are 18.75% shorter than HORS signatures and 45.8% shorter than HORST signatures to offer a 352-bit security level. HORSIC+ reduces the signature size at the cost of increased overhead in key generation, signing, and verification. The key generation overhead and the signing overhead of HORSIC+ are larger than those of HORS and HORST. However, it does not affect the usability of HORSIC+, since the key generation has to be performed only once and the signing overhead is still tolerable. Since asymmetric key algorithms are typically hundreds to thousands of times slower than symmetric key algorithms and hash algorithms [], the costs of signing HORSIC+ (130 with 96-bit security level and 260 with 352-bit security level) are relatively low.

Table 2.
Comparison of HORS, HORST, and HORSIC+.
5. Conclusions
In this paper, we proposed HORSIC+, an efficient post-quantum few-time signature scheme. HORSIC+ differs from HORSIC in that HORSIC+ does not apply f as a plain function to the signature key, but uses a member of a function family which is second-preimage resistant, undetectable, and one-way. Moreover, HORSIC+ uses the chaining function similar to W-OTS. These enable the strict security proof without the need for the used function family to be a permutation or collision resistant. We proved HORSIC+ is existentially unforgeable under chosen message attacks, if the used function family is a second-preimage resistant family of undetectable one-way functions and H and G are cryptographic hash functions in the random oracle model. HORSIC+ reduces the signature size by as much as 37.5% or 18.75% compared to HORS and by as much as 61.5% or 45.8% compared to HORST for the same security level. Future work includes further analysis of HORSIC+ and integration of HORSIC+ in SPHINCS.
Author Contributions
Conceptualization, J.L.; methodology, J.L.; validation, J.L. and Y.P.; investigation, J.L.; Writing—Original draft preparation, J.L.; Writing—Review and editing, J.L. and Y.P.; funding acquisition, Y.P. Both authors have read and agreed to the published version of the manuscript.
Funding
This research was funded by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT), grant number 2020R1F1A1048443. This research was also supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government(MSIT) (No. NRF-2017R1C1B5076925).
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
Not applicable.
Conflicts of Interest
The authors declare no conflict of interest.
Appendix A
In this appendix, we give the proof of Theorem 1. The proof follows similar lines of the proof of Theorem 1 in []. Since each HORSIC+ signature have to reveal z secret values, forging a signature can be accomplished in two mutually exclusive cases.
Case 1: The adversary is able to forge a signature to any of the permutations of . For example, the adversary can create a valid signature for its own message where and . In this case, the adversary is able to forge a signature by using only already revealed secret values by the signature to the signature query.
Case 2: The adversary is able to forge a signature that contains at least one secret value which has not been revealed by the signature to the signature query. In this case, we try to guess the position of the revealed secret value and place the preimage challenge there. So we can respond to the signature query and hopefully get a preimage of . We also place a second preimage challenge in the same chain to manipulate the randomization elements.
We slightly modify the distribution of the public key to manipulate our challenges. It is proved that this does not significantly change the adversary’s success probability if is undetectable [].
Proof of Theorem 1.
We’ll prove by contradiction. Suppose there exists an adversary that can produce existential forgeries for HORSIC+ by mounting an adaptive chosen message attack in time with success probability . Then we can construct an oracle machine that either breaks the OW or SPR of using the adversary . Algorithm A1 shows the pseudo-code description of and Figure A1 shows its key structure.
The oracle machine first generates a pair of HORSIC+ keys (Line 1). Then, randomly selects the positions to place the OW and the SPR challenges in the key chain. The index of the key chain is , the positions of the OW and the SPR challenges are and , respectively (Line 2, 6). places the OW challenge in the position . also places the SPR challenge at the input of the th evaluation of the chain, replacing (Line 7). The modified public key is computed using the manipulated randomization elements (Line 8, Figure A1). Then runs on input (Line 9).
The adversary can ask to provide the signature on a message M of the adversary’s choice (Line 10). knows the secret key values for all except for , and only knows the th intermediate value for the chain with the index . Thus, can answer the query for the j where , only when (Line 12). Otherwise, returns “fail” (Line 13). generates signature of message M as described in the signature algorithm (Line 14).
If the adversary returns an existential forgery (Line 16), first checks whether the forged signature is generated by using only already revealed secret values by the signature to the signature query (Line 18). If it is, returns “fail” (Line 19). Then, looks for where . The forgery is only useful if such j exists and (Line 20).
If , the forgery contains a preimage of . In this case, is an intermediate value of the chain with the index that ends in . So calculates the preimage and returns it (Line 23).
Otherwise, the chain continuing at either has or does not have as the th intermediate value. In the first case, we can compute the preimage again (Line 25). In the second case, the chains continued from and must collide somewhere between and w according to the pigeonhole principle. If they collide at position for the first time, a second preimage for can be calculated (Line 27). Otherwise, returns “fail” (Line 28).
To easily calculate the success probability of , we only calculate the probability for a certain success case. If there exists such that obtained from ’s query, we assume . If not, we assume . Since is randomly chosen from a uniform distribution, the probability of and are both equal to .
Modification of the verification key Y might lead to changing the input distribution of , so we denote the probability that returns a valid forgery in line 16 of the Algorithm A1 as . In case where the forged signature is generated by using only already revealed secret values, the probability that returns a valid forgery is []. If not, the forged signature contains at least one secret value which has not been revealed yet. The probability of the newly revealed secret value being in the chain with the index is at least . At this point there are two mutually exclusive cases, one of which occurs with probability p and the other with probability .
Case 1: Either or the chain continuing at has as the th intermediate value. In this case, returns a preimage for with probability 1.
Case 2: and the chain continuing at does not have as the th intermediate value. In this case, returns a second preimage for if the chains continued from and collide for the first time at position . This occurs with a greater probability of as was randomly and uniformly chosen within the interval .
Using the assumptions about the one-wayness and second preimage resistance of we can bound the success probability of if called by :
where the time is an upper bound obtained as the runtime of plus the time needed to run each algorithm of HORSIC+ once; , , and used in require at most , , and calculations of , respectively.
As a second step, we bound the difference between the success probability of when called by and its probabillity of success in the original experiment. It can be directly obtained from [], so we omit this proof. Finally, we can get a bound on which leads to the required contradiction:
where the time and . □

Figure A1.
The basic construction of the modified public key.
Algorithm A1: |
Input: Parameters n, t, k, z, w, one-way challenge , and second preimage resistance challenge Output: A value x that is either a preimage of or a second preimage for under or “fail” 1: Generate HORSIC+ key pair : 2: Choose indices and uniformly at random 3: if then 4: Set 5: else 6: Choose index uniformly at random 7: Obtain by setting for all and 8: Obtain by setting , for all , and 9: Run 10: if queries with message M then 11: Compute , , and which corresponds to M 12: if there exist such that and then 13: return “fail” 14: Generate signature of M:
15: Reply to the query string 16: if returns valid then 17: Compute , , and which corresponds to 18: if is a permutation of then 19: return “fail” 20: else if there exists no such that and then 21: return “fail” 22: else if then 23: return preimage 24: else if then 25: return preimage 26: else if and then 27: return second preimage 28: return “fail” |
References
- Rivest, R.L.; Shamir, A.; Adleman, L. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. Commun. ACM 1978, 21, 120–126. [Google Scholar] [CrossRef]
- Johnson, D.; Menezes, A.; Vanstone, S. The Elliptic Curve Digital Signature Algorithm (ECDSA). Int. J. Inf. Secur. 2001, 1, 36–63. [Google Scholar] [CrossRef]
- Shor, P.W. Algorithms for quantum computation: Discrete logarithms and factoring. In Proceedings of the 35th Annual Symposium on Foundations of Computer Science, Santa Fe, NM, USA, 20–22 November 1994; pp. 124–134. [Google Scholar] [CrossRef]
- Cambou, B.; Gowanlock, M.; Yildiz, B.; Ghanaimiandoab, D.; Lee, K.; Nelson, S.; Philabaum, C.; Stenberg, A.; Wright, J. Post Quantum Cryptographic Keys Generated with Physical Unclonable Functions. Appl. Sci. 2021, 11, 2801. [Google Scholar] [CrossRef]
- Ghosh, S.; Zaman, M.; Sakauye, G.; Sampalli, S. An Intrusion Resistant SCADA Framework Based on Quantum and Post-Quantum Scheme. Appl. Sci. 2021, 11, 2082. [Google Scholar] [CrossRef]
- Hoffstein, J.; Howgrave-Graham, N.; Pipher, J.; Silverman, J.H.; Whyte, W. NTRUSign: Digital signatures using the NTRU lattice. In Proceedings of the Cryptographers’ Track at the RSA Conference, San Francisco, CA, USA, 13–17 April 2003; Volume 2612, pp. 122–140. [Google Scholar] [CrossRef]
- Porras, J.; Baena, J.; Ding, J. ZHFE, a new multivariate public key encryption scheme. In Proceedings of the International Workshop on Post-Quantum Cryptography, Waterloo, ON, Canada, 1–3 October 2014; Volume 8772, pp. 229–245. [Google Scholar] [CrossRef]
- McEliece, R.J. A Public-Key Cryptosystem Based On Algebraic Coding Theory. Coding THV 1978, 4244, 114–116. [Google Scholar]
- Grover, L.K. A fast quantum mechanical algorithm for database search. In Proceedings of the Annual ACM Symposium on Theory of Computing, Philadelphia, PA, USA, 22–24 May 1996; Association for Computing Machinery: New York, NY, USA, 1996; pp. 212–219. Available online: https://arxiv.org/pdf/quant-ph/9605043.pdf (accessed on 10 August 2021).
- Palmieri, P. Hash-based signatures for the internet of things: Position paper. In Proceedings of the 15th ACM International Conference on Computing Frontiers, Ischia, Italy, 8–10 May 2018; Association for Computing Machinery: New York, NY, USA, 2018; pp. 332–335. [Google Scholar] [CrossRef]
- Suhail, S.; Hussain, R.; Khan, A.; Hong, C.S. On the Role of Hash-Based Signatures in Quantum-Safe Internet of Things: Current Solutions and Future Directions. IEEE Internet Things J. 2021, 8, 1–17. [Google Scholar] [CrossRef]
- Buchmann, J.; Dahmen, E.; Hülsing, A. XMSS—A practical forward secure signature scheme based on minimal security assumptions. In Proceedings of the International Workshop on Post-Quantum Cryptography, Taipei, Taiwan, 29 November–2 December 2011; Volume 7071, pp. 117–129. [Google Scholar] [CrossRef] [Green Version]
- Bernstein, D.J.; Hopwood, D.; Hülsing, A.; Lange, T.; Niederhagen, R.; Papachristodoulou, L.; Schneider, M.; Schwabe, P.; Wilcox-O’hearn, Z. SPHINCS: Practical stateless hash-based signatures. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, Sofia, Bulgaria, 26–30 April 2015; Volume 9056, pp. 368–397. [Google Scholar] [CrossRef] [Green Version]
- Reyzin, L.; Reyzin, N. Better than BiBa: Short one-time signatures with fast signing and verifying. In Proceedings of the Australasian Conference on Information Security and Privacy, Perth, WA, Australia, 3–5 July 2002; Volume 2384, pp. 144–153. [Google Scholar] [CrossRef]
- Lee, J.; Kim, S.; Cho, Y.; Chung, Y.; Park, Y. HORSIC: An efficient one-time signature scheme for wireless sensor networks. Inf. Process. Lett. 2012, 112, 783–787. [Google Scholar] [CrossRef]
- Hülsing, A. W-OTS+—Shorter signatures for hash-based signature schemes. In Proceedings of the International Conference on Cryptology in Africa, Cairo, Egypt, 22–24 June 2013; Volume 7918, pp. 173–188. [Google Scholar] [CrossRef]
- Merkle, R.C. A certified digital signature. In Advances in Cryptology—CRYPTO’ 89 Proceedings; Brassard, G., Ed.; Springer: New York, NY, USA, 1989; pp. 218–238. [Google Scholar]
- Katz, J.; Lindell, Y. Introduction to Modern Cryptography, 3rd ed.; Chapman & Hall/CRC: London, UK, 2020. [Google Scholar]
- Kudinov, M.A.; Kiktenko, E.O.; Fedorov, A.K. Security analysis of the W-OTS+ signature scheme: Updating security bounds. arXiv 2020, arXiv:2002.07419. [Google Scholar]
- Dods, C.; Smart, N.P.; Stam, M. Hash based digital signature schemes. In Cryptography and Coding; Smart, N.P., Ed.; Springer: Berlin/Heidelberg, Germany, 2005; pp. 96–115. [Google Scholar]
- Dahmen, E.; Okeya, K.; Takagi, T.; Vuillaume, C. Digital signatures out of second-preimage resistant hash functions. In Proceedings of the 2nd International Workshop on Post-Quantum Cryptography, Cincinnati, OH, USA, 17–19 October 2020; Springer: Berlin/Heidelberg, Germany, 2008; pp. 109–123. [Google Scholar] [CrossRef]
- Brassard, G.; HØyer, P.; Tapp, A. Quantum cryptanalysis of hash and claw-free functions. In Latin American Symposium on Theoretical Informatics; Springer: Berlin/Heidelberg, Germany, 1998; pp. 163–169. [Google Scholar] [CrossRef] [Green Version]
- Lamport, L. Constructing Digital Signatures from a One Way Function; Technical Report CSL-98; SRI International Computer Science Laboratory: Menlo Park, CA, USA, 1979. [Google Scholar]
- Buchmann, J.; Dahmen, E.; Ereth, S.; Hülsing, A.; Rückert, M. On the security of the Winternitz one-time signature scheme. Int. J. Appl. Cryptogr. 2013, 3, 84–96. [Google Scholar] [CrossRef]
- Bellare, M.; Rogaway, P. Collision-resistant hashing: Towards making UOWHFs practical. In Advances in Cryptology—CRYPTO ’97; Kaliski, B.S., Ed.; Springer: Berlin/Heidelberg, Germany, 1997; pp. 470–484. [Google Scholar]
- Bellare, M.; Rogaway, P. Random oracles are practical: A paradigm for designing efficient protocols. In Proceedings of the 1st ACM Conference on Computer and Communications Security, Fairfax, VA, USA, 3–5 November 1993; Association for Computing Machinery: New York, NY, USA, 1993; pp. 62–73. [Google Scholar] [CrossRef]
- Andrews, G.E. The Theory of Partitions; Encyclopedia of Mathematics and Its Applications, Cambridge University Press: Cambridge, UK, 1984. [Google Scholar] [CrossRef]
- Asharov, G.; Segev, G. On constructing one-way permutations from indistinguishability obfuscation. In TCC (A2); Springer: Berlin/Heidelberg, Germany, 2016; pp. 512–541. [Google Scholar] [CrossRef]
- Lenstra, A.K. Key Length. Contribution to The Handbook of Information Security. 2004. Available online: https://infoscience.epfl.ch/record/164539/files/NPDF-32.pdf (accessed on 10 August 2021).
- FIPS Publication 180-1, Secure Hash Standard. 1995. National Institute of Standards and Technology (NIST). Available online: https://nvlpubs.nist.gov/nistpubs/Legacy/FIPS/fipspub180-1.pdf (accessed on 10 August 2021).
- Dobbertin, H.; Bosselaers, A.; Preneel, B. RIPEMD-160: A strengthened version of RIPEMD. In Fast Software Encryption; Gollmann, D., Ed.; Springer: Berlin/Heidelberg, Germany, 1996; pp. 71–82. [Google Scholar]
- Aumasson, J.P.; Endignoux, G. Clarifying the Subset-Resilience Problem; Report 2017/909; Cryptology ePrint Archive: Lyon, France, 2017. [Google Scholar]
- Perrig, A. The BiBa one-time signature and broadcast authentication protocol. In Proceedings of the 8th ACM Conference on Computer and Communications Security—CCS ’01, Philadelphia, PA, USA, 5–8 November 2001; Association for Computing Machinery (ACM): New York, NY, USA, 2001; p. 28. [Google Scholar] [CrossRef]
- Crypto++ 5.6.0 Benchmarks. Available online: https://www.cryptopp.com/benchmarks.html (accessed on 6 August 2021).
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).