# US 11,121,861 B2 · Method and device to produce a secure hash value

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

- Number: US 11,121,861 B2
- Document ID: US11121861B2
- Status: Granted
- Kind: B2
- Application number: 16/485,803
- Filed: 2018-02-13
- Published: 2020-04-30
- Granted: 2021-09-14
- Earliest claimed: 2017-02-14
- Assignees: Nagravision S.A.
- Applicants: Nagravision S.A.
- Inventors: Hervé Pelletier
- Web page: https://patentgrep.com/patent/US11121861B2

## CPC

- H04L 9/0643: {Hash functions, e.g. MD5, SHA, HMAC or f9 MAC}
- G06F 7/544: for evaluating functions by calculation {(G06F7/4824 takes precedence)}
- G06F 21/44: Program or device authentication
- G06F 21/64: Protecting data integrity, e.g. using checksums, certificates or signatures
- G06F 7/548: Trigonometric functions; Co-ordinate transformations
- G06F 7/556: Logarithmic or exponential functions
- H04L 9/3236: {using cryptographic hash functions}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

The generation of hash values become popular with the storage of pin code by an authentication server, since the authentication server knows only the result of the hash function and not the pin code itself. Each time an authentication is requested, a hash function is executed on the received pin code and then compared with the stored reference hash value of the initial pin code. In order to improve the security of the hash value, it is proposed a method to produce a secure hash value (R) from a plaintext (P), said method comprising: —producing a first result (H) using an hash function of the plaintext (P), —obtaining an initial floating value (U0) by converting the first result (H) into a floating number representation of the first value (H), —updating a floating value (Un) by executing at least once a Transcendental function (TF) on the initial floating value (Un−1), —obtaining the secure hash value (R) by mixing the first result (H) with the updated floating value (Un).

## Claims

### Claim 1

A method to produce a secure hash value (R) from a plaintext (P), characterised in that said method comprising:
producing a first result (H) using an hash function of the plaintext (P),
obtaining an initial floating value (UO) by converting the first result (H) into a floating number representation of the first value (H),
updating a floating value (Un) by executing at least once a Transcendental function (TF) on the Initial floating value (Un−1),
obtaining the secure hash value (R) by mixing the first result (H) with the updated floating value (Un).

### Claim 2 (depends on 1)

The method of claim 1, characterised in that the updating further comprises the execution of at least one Transcendental function of a first type (TF1) and at least one Transcendental function of a second type (TF2).

### Claim 3 (depends on 2)

The method of claim 2, characterised in that the at least one Transcendental function of a first type (TF1) and the at least one Transcendental function of a second type (TF2) are executed in series, the result of the Transcendental function of the first type (TF1) being applied to the Transcendental function of the second type (TF2).

### Claim 4 (depends on 2)

The method of claim 2, characterised in that the at least one Transcendental function of a first type (TF1) and the at least one Transcendental function of a second type (TF2) are executed In parallel, the result of the Transcendental function of a first type (TF1) being mixed with the result of the Transcendental function of a second type (TF2) to obtain the updated floating value (Un).

### Claim 5 (depends on 1)

The method of claim 1, characterised in that the secure hash value (R) Is produced on a multi-cores processor, each core producing a single core floating value by executing at least once a Transcendental function (F) on the Initial floating value (UO), further comprising the step of mixing the first result (H) and the results obtained on each core to obtain the secured hash value (R).

### Claim 6 (depends on 1)

The method of claim 1, characterised in that the Transcendental function is an exponential function, a logarithm function or a trigonometric function.

### Claim 7 (depends on 1)

A Computing Device (400) comprising a processor (402) and a memory (404), said memory comprising an executable program, that, while executed by the processor (402), carries out the method of claim 1.

### Claim 8 (depends on 7)

The Computing Device (400) of the claim 7, wherein the processor (402) comprises a plurality of cores (Core 1 . . . Core 4), each core being configured to produce a single core floating value by executing at least once a Transcendental function (F) on the Initial floating value (U0), and further configured to mix the first result (H) and the results obtained on each core to obtain the secured hash value (R).
