# US 2016/0366109 A1 · Method and Apparatus for Validating a Transaction between a Plurality of Machines

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2016/0366109 A1
- Document ID: US20160366109A1
- Status: Published application
- Kind: A1
- Application number: 15/244,985
- Filed: 2016-08-23
- Published: 2016-12-15
- Earliest claimed: 2010-06-01
- Assignees: Ternarylogic LLC
- Inventors: Peter Lablans
- Web page: https://patentgrep.com/patent/US20160366109A1

## CPC

- G06Q 20/34: using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06F 5/012: {in floating-point computations}
- G06F 7/4876: {Multiplying}
- G06F 7/724: {Finite field arithmetic (for error detection or correction in general H03M13/00, in computers G06F11/10)}
- G06Q 20/401: {Transaction verification}
- H03M 7/00: Conversion of a code where information is represented by a given sequence or number of digits to a code where the same {, similar or subset of} information is represented by a different sequence or number of digits
- H04L 9/0643: {Hash functions, e.g. MD5, SHA, HMAC or f9 MAC}
- H04L 63/0428: {wherein the data content is protected, e.g. by encrypting or encapsulating the payload}
- H04K 3/25: {based on characteristics of target signal or of transmission (as countermeasure against surveillance H04K3/827), e.g. using direct sequence spread spectrum or fast frequency hopping (spread spectrum techniques H04B1/69)}
- H04K 3/827: {using characteristics of target signal or of transmission (as countermeasure against jamming H04K3/25), e.g. using direct sequence spread spectrum or fast frequency hopping (spread spectrum techniques H04B1/69)}
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H03M: CODING; DECODING; CODE CONVERSION IN GENERAL (using fluidic means F15C4/00; optical analogue/digital converters G02F7/00; coding, decoding or code conversion, specially adapted for particular applications, see the relevant subclasses, e.g. G01D, G01R, G06F, G06T, G09G, G10L, G11B, G11C, H04B, H04L, H04M, H04N; ciphering or deciphering for cryptography or other purposes involving the need for secrecy G09C)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04K: SECRET COMMUNICATION; JAMMING OF COMMUNICATION

## Abstract

A first and a second device both have access to a series of data representing configurations of hash functions. The first device selects a first configuration and implements a hashing function from the selected configuration. A hash value is generated and transmitted to the second device. The second device has hashing configurations stored on a memory. A processor in the second device selects the first hashing configuration to implement the hash function from the first configuration and generates a hash value. The hash values generated on the first device and generated on the second device are compared to determine an action. The first configuration is disabled and a new configuration is retrieved. At least 4 and more preferably at least 5 different n-state functions with n>2 are used in a hash function.

## Claims

### Claim 1

A hashing method, comprising:
retrieving from a memory of a first computing device a first hashing configuration, the first hashing configuration being selected from a plurality of different hashing configurations stored on the memory, the plurality of different hashing configurations being specific to the first computing device and to a second computing device authorized to receive an instruction from the first computing device;
a processor on the first computing device generating a hash value based on message data and in accordance with the first hashing configuration;
transmitting the hash value to the second computing device by the first computing device; and
the first computing device disabling the first hashing configuration in the memory.

### Claim 2 (depends on 1)

The method of claim 1, wherein:
the message data includes an identification of the first hashing configuration.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
the first computing device transmitting the message data that includes the identification of the first hashing configuration to the second computing device, wherein the identification of the first hashing configuration provides no information of a structure of the first configuration.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
the second computing device retrieving the first hashing configuration from a memory of the second computing device based on the identification of the first hashing configuration received from the first computing device, the memory of the second computing device storing the plurality of different hashing configurations;
the second computing device generating a hash value from the message data in accordance with the first hashing configuration retrieved from the memory of the second computing device;
the second computing device comparing the hash value received from the first computing device with the hash value generated by the second computing device; and
the second computing device activating a mechanism based on the comparing of the hash value received from the first computing device with the hash value generated by the second computing device.

### Claim 5 (depends on 4)

The method of claim 4, further comprising:
the second computing device disabling the first hashing configuration in the memory of the second computing device.

### Claim 6 (depends on 5)

The method of claim 5, wherein the hashing configurations in the plurality of different hashing configurations are stored in an ordered manner in the memories of the first and second computing devices and wherein unused hashing configurations in a position preceding the first hashing configuration are disabled.

### Claim 7 (depends on 4)

The method of claim 4, wherein the mechanism is a lock.

### Claim 8 (depends on 1)

The method of claim 1, wherein the first hashing configuration includes a use of an n-state 2-input/one output switching function with n an integer greater than 2 and symbols on the inputs of the n-state switching function being 0 will generate an output symbol that is not 0.

### Claim 9 (depends on 1)

The method of claim 1, wherein the first hashing configuration includes a use of four different n-state 2-input/one output switching functions with n an integer greater than 2.

### Claim 10 (depends on 1)

The method of claim 1, wherein the message data include a financial transaction.

### Claim 11 (depends on 10)

The method of claim 10, further comprising:
the first computing device determining a second hash value based on the message data in accordance with a second hashing configuration retrieved from the memory of the first computing device;
the first computing device transmitting the message data with the hash value to the second computing device;
the first computing device storing the second hash value in the memory of the first computing device;
the second computing device retrieving a first and a second hashing configuration and generating a first and a second hash value with the first and second configuration, respectively and based on the received message data;
the second computing device transmitting the second hash value to the first computing device; and
the financial transaction is terminated when the second hash value sent by the second computing device is different from the second hash value generated by the first computing device and stored in the memory of the first computing device.

### Claim 12 (depends on 1)

The method of claim 1, wherein the first computing device is selected from the group consisting of a fob, a door opener, a smartphone, a tablet, a credit card, an ATM (automatic teller machine) card, a SIM (subscriber identification module) card and a chip card.

### Claim 13

An apparatus, comprising:
a memory to store data including instructions;
a processor enabled to retrieve data from the memory including the instructions and to execute the instructions retrieved from the memory to perform the steps:
retrieving from the memory a first hashing configuration, the first hashing configuration being selected from a plurality of different hashing configurations stored on the memory;
generating a hash value based on message data in accordance with the first hashing configuration;
transmitting the hash value to a computing device by the first apparatus; and
disabling the first hashing configuration in the memory.

### Claim 14 (depends on 13)

The apparatus of claim 13, further comprising the processor enabled to perform the step:
transmitting the message data that includes an identification of the first hashing configuration to the computing device.

### Claim 15 (depends on 14)

The apparatus of claim 14, further comprising:
the computing device retrieving the first hashing configuration stored on a memory of the computing device based on the identification of the first hashing configuration received from the apparatus, the memory of the computing device storing the plurality of different hashing configurations;
the computing device generating a hash value in accordance with the first hashing configuration retrieved from the memory of the computing device;
the computing device comparing the hash value received from the apparatus with the hash value generated by the computing device; and
the computing activating a mechanism based on the comparing the hash value received from the apparatus with the hash value generated by the computing device.

### Claim 16 (depends on 15)

The apparatus of claim 15, wherein the hashing configurations in the plurality of different hashing configurations are stored in an ordered manner in the memories of the apparatus and the computing device and wherein unused hashing configurations in a position preceding the first configuration are disabled.

### Claim 17 (depends on 16)

The apparatus of claim 16, wherein the mechanism is a lock.

### Claim 18 (depends on 13)

The apparatus of claim 13, wherein the first hashing configuration includes four different n-state 2-input/one output switching functions with n an integer greater than 2.

### Claim 19 (depends on 13)

The apparatus of claim 13, wherein the apparatus is selected from the group consisting of a fob, a door opener, a smartphone, a tablet, a credit card, an ATM (automatic teller machine) card, a SIM (subscriber identification module) card and a chip card.

### Claim 20

A method of performing a cryptographic operation, comprising:
retrieving by a processor of a first hashing configuration from a memory that stores a plurality of different hashing configurations;
the processor hashing message data in accordance with the first hashing configuration and generating a hash value from the message data, wherein the first hashing configuration includes at least 4 different n-state 2-input/one output switching functions, each determined by a unique n-by-n switching table with n an integer greater than 2; and
the processor disabling the first hashing configuration after generating the hash value.
