US2019005250A1PendingUtilityA1

Methods and apparatus for efficient computation of one-way chains in cryptographic applications

Assignee: CRYPTO RES LLCPriority: Apr 16, 2001Filed: Aug 23, 2018Published: Jan 3, 2019
Est. expiryApr 16, 2021(expired)· nominal 20-yr term from priority
G06F 21/602H04L 2209/38H04L 9/3236H04L 9/50
63
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Techniques are disclosed for efficient computation of consecutive values of one-way chains and other one-way graphs in cryptographic applications. The one-way chain or graph may be a chain of length shaving positions i=1, 2, . . . s each having a corresponding value vi associated therewith, wherein the value vi is given by vi=h(vi+1), for a given hash function or other one-way function h. An initial distribution of helper values may be stored for the one-way chain of length s, e.g., at positions given by i=2j for 0≤j≤log2 s. A given one of the output values vi at a current position in the one-way chain may be computed utilizing a first helper value previously stored for another position in the one-way chain between the current position and an endpoint of the chain. After computation of the given output value, the positions of the helper values are adjusted so as to facilitate computation of subsequent output values. Advantageously, a storage-computation product associated with generation of the output values of the one-way chain has a complexity O((log s)2).

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method implemented by a processor, the processor being coupled to a memory, the memory having a designated amount of storage available for storing values of a one-way chain, the designated amount of available storage being less than that required to store simultaneously all of the values of the one-way chain, the method comprising the steps of:
 storing in the memory a subset of the values of the one-way chain as helper values for facilitating computation of other values of the one-way chain not in the subset;   utilizing one of the values in the subset of values to compute one of the other values of the one-way chain not in the subset;   generating a cryptographic output determined by the computed value not in the subset; and   updating the stored subset of values of the one-way chain so as to replace at least one of the helper values with a new helper value not previously part of the subset.   
     
     
         2 . The method of  claim 1  wherein a storage-computation product associated with generation of the values of the one-way chain has a complexity O((log s) 2 ) where s denotes the length of the chain. 
     
     
         3 . The method of  claim 1  wherein an initial subset of values of the one-way chain stored as initial helper values comprises values at positions in the chain given by:
     i= 2 j  for 0≤ j ≤log 2    s,  
 
 
       where s is the length of the chain. 
     
     
         4 . The method of  claim 1  wherein the cryptographic output comprises at least one of a password, a cryptographic key, a digital signature and an authentication code. 
     
     
         5 . The method of  claim 1  wherein each of the helper values is stored in the form of a corresponding peg that includes, in addition to its associated helper value, additional information including a destination position in the chain, a priority, and a state. 
     
     
         6 . The method of  claim 1  wherein for a given position i in the one-way chain a corresponding value v i  can be computed and one or more new helper values determined within a specified computational budget. 
     
     
         7 . The method of  claim 5  wherein the number of pegs utilized to store respective helper values is given approximately by:
   σ+┌log 2 (σ+1)┐,
 
 
       where s=2 σ  is the length of the chain. 
     
     
         8 . The method of  claim 6  wherein the specified computational budget is given approximately by:
     b=└σ/ 2┘,
 
 
       where s=2 σ  is the length of the chain. 
     
     
         9 . The method of  claim 1  wherein the subset of values of the one-way chain comprises a plurality of designated non-consecutive values of the one-way chain. 
     
     
         10 . An apparatus comprising:
 a processor; and   a memory coupled to the processor and having a designated amount of storage available for storing values of a one-way chain, the designated amount of available storage being less than that required to store simultaneously all of the values of the one-way chain;   the processor being configured to store in the memory a subset of the values of the one-way chain as helper values for facilitating computation of other values of the one-way chain not in the subset; to utilize one of the values in the subset of values to compute one of the other values of the one-way chain not in the subset; to generate a cryptographic output determined by the computed value not in the subset; and to update the stored subset of values of the one-way chain so as to replace at least one of the helper values with a new helper value not previously part of the subset.   
     
     
         11 . The apparatus of  claim 10  wherein a storage-computation product associated with generation of the values of the one-way chain has a complexity O((log s) 2 ) where s denotes the length of the chain. 
     
     
         12 . The apparatus of  claim 10  wherein an initial subset of values of the one-way chain stored as initial helper values comprises values at positions in the chain given by:
     i= 2 j  for 0≤ j ≤log 2    s,  
 
 
       where s is the length of the chain. 
     
     
         13 . The apparatus of  claim 10  wherein the cryptographic output comprises at least one of a password, a cryptographic key, a digital signature and an authentication code. 
     
     
         14 . The apparatus of  claim 10  wherein each of the helper values is stored in the form of a corresponding peg that includes, in addition to its associated helper value, additional information including a destination position in the chain, a priority, and a state. 
     
     
         15 . The apparatus of  claim 10  wherein for a given position i in the one-way chain a corresponding value v i  can be computed and one or more new helper values determined within a specified computational budget. 
     
     
         16 . The apparatus of  claim 14  wherein the number of pegs utilized to store respective helper values is given approximately by:
   σ+┌log 2 (σ+1)┐,
 
 
       where s=2 σ  is the length of the chain. 
     
     
         17 . The apparatus of  claim 15  wherein the specified computational budget is given approximately by:
     b=└σ/ 2┘,
 
 
       where s=2 σ  is the length of the chain. 
     
     
         18 . The apparatus of  claim 10  wherein the subset of values of the one-way chain comprises a plurality of designated non-consecutive values of the one-way chain. 
     
     
         19 . A machine-readable medium for storing one or more programs for use by a processor in generating values of a one-way chain, the processor being coupled to a memory, the memory having a designated amount of storage available for storing values of a one-way chain, the designated amount of available storage being less than that required to store simultaneously all of the values of the one-way chain, the one or more programs when executed causing the processor to perform the steps of:
 storing in the memory a subset of the values of the one-way chain as helper values for facilitating computation of other values of the one-way chain not in the subset;   utilizing one of the values in the subset of values to compute one of the other values of the one-way chain not in the subset;   generating a cryptographic output determined by the computed value not in the subset; and   updating the stored subset of values of the one-way chain so as to replace at least one of the helper values with a new helper value not previously part of the subset.

Join the waitlist — get patent alerts

Track US2019005250A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.