US2010304805A1PendingUtilityA1

Hash function using a cue sports game process

Assignee: APPLE INCPriority: May 29, 2009Filed: May 29, 2009Published: Dec 2, 2010
Est. expiryMay 29, 2029(~2.8 yrs left)· nominal 20-yr term from priority
G06F 21/64
49
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

In the computer data security field, a cryptographic hash function process embodied in a computer system and which is typically keyless, but is highly secure. The process is based on the type of randomness exhibited by well known table “cue sports” games such as billiards, snooker, and pool played on a billiards table involving the players striking one of a plurality of balls with a cue, the struck ball then hitting other balls, the raised sides of the table, and in some cases one or more balls going into pockets in the corners and/or sides of the table. Computation of the hash value (digest) is the result of providing a model (such as expressed in computer code) of such a game algorithm and using the message as an input to the game algorithm, then executing the game algorithm. A state of the game after a “shot” gives the hash digest value.

Claims

exact text as granted — not AI-modified
1 . A hashing method performed by a computing apparatus and comprising the acts of:
 (a) receiving a message at an input port;   (b) storing the received message as a table having a plurality of entries in a first computer readable storage medium coupled to the input port;   (c) a processor coupled to the first storage medium selecting a first of the entries of the stored message as a current position;   (d) the processor selecting a second of the entries as a target;   (e) the processor determining and storing an energy value in a second computer readable storage medium coupled to the processor;   (f) the processor computing, according to a cue sports algorithm, entries for the table as a function of the first and second entries and the energy value;   (g) updating the table according to act (f);   (h) using the updated table resulting from act (g) to provide a hash value of the message; and   (i) the processor storing the hash value in a third computer readable storage medium.   
     
     
         2 . The method of  claim 1 , wherein act (e) includes determining the energy value as a function of the table. 
     
     
         3 . The method of  claim 1 , wherein the energy value is decreased as a function of the first entry. 
     
     
         4 . The method of  claim 1 , wherein act (b) further includes partitioning the message into the entries. 
     
     
         5 . The method of  claim 1 , wherein the cue sports algorithm includes a model of interaction of a set of balls on a surface. 
     
     
         6 . The method of  claim 5 , wherein the first entry represents a first ball of the set being shot and the second entry represents a second ball of the set being struck by the first ball. 
     
     
         7 . The method of  claim 1 , further comprising the acts of:
 receiving a hash value associated with the message at the processor;   comparing the received hash value to the stored hash value of act (g); and   authenticating the message if the comparison indicates a match.   
     
     
         8 . The method of  claim 1 , wherein the message is one of a digital signature or document, a digital message, a secret key or an identifier. 
     
     
         9 . The method of  claim 1 , further comprising the acts of:
 providing a security parameter; and   repeating the method a number of times equal to the security parameter.   
     
     
         10 . The method of  claim 1 , wherein each entry in the table is one bit of data, one byte of data, one 16-bit word, one 32-bit word, or one 128-bit word. 
     
     
         11 . The method of  claim 1 , wherein the cue sports algorithm includes a first function determining the energy value, a second function determining interactions between the entries, and a third function determining an order of the interactions. 
     
     
         12 . The method of  claim 11 , wherein the interactions represent collisions between balls in the cue sports algorithm. 
     
     
         13 . A computer readable medium storing computer code instructions for executing the method of  claim 1  on the computing apparatus. 
     
     
         14 . An apparatus for computing a hash, comprising:
 (a) an input port for receiving a message;   (b) a first computer readable storage medium coupled to the input port for storing the received message as a table having plurality of entries; and   (c) a processor coupled to the first storage medium and which selects a first of the entries as a current position;   (d) wherein the processor selects a second of the entries as a target;   (e) wherein the processor determines and stores an energy value stores in a second computer readable storage medium coupled to the processor;   (f) wherein the processor, according to a cue sports algorithm, computes entries for the table as a function of the first and second entries and energy value;   (g) wherein the processor updates the table according to (f);   (h) wherein the processor uses the updated table to provide a hash value of the message; and   (i) wherein the processor stores the hash value in a third computer readable storage medium coupled to the processor.   
     
     
         15 . The apparatus of  claim 14 , wherein (e) includes determining the energy value as a function of the table. 
     
     
         16 . The apparatus of  claim 14 , wherein the energy value is decreased as a function of the first entry. 
     
     
         17 . The apparatus of  claim 14 , wherein (b) further includes partitioning the message into the entries. 
     
     
         18 . The apparatus of  claim 14 , wherein the cue sports algorithm includes a model of interaction of a set of balls on a surface. 
     
     
         19 . The apparatus of  claim 18 , wherein the first entry represents a first ball of the set being shot and the second entry represents a second ball of the set being struck by the first ball. 
     
     
         20 . The apparatus of  claim 14 , further comprising:
 receiving at the processor from the port a hash value associated with the message;   comparing at the processor the received hash value to the stored hash value of (g); and   authenticating the message if the comparison indicates a match.   
     
     
         21 . The apparatus of  claim 14 , wherein the message is one of a digital signature or document, a digital message, a secret key or an identifier. 
     
     
         22 . The apparatus of  claim 14 , further comprising:
 providing a security parameter; and   repeating the method a number of times equal to the security parameter.   
     
     
         23 . The apparatus of  claim 14 , wherein each value in the table is one bit of data, one byte of data, one 16-bit word, one 32-bit word, or one 128-bit word. 
     
     
         24 . The apparatus of  claim 14 , wherein the cue sports algorithm includes a first function determining the energy value, a second function determining interactions between the entries, and a third function determining an order of the interactions. 
     
     
         25 . The apparatus of  claim 24 , wherein the interactions represent collisions between balls in the cue sports algorithm.

Join the waitlist — get patent alerts

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

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