# US 10,313,125 B2 · Generating cryptographic checksums

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

- Number: US 10,313,125 B2
- Document ID: US10313125B2
- Status: Granted
- Kind: B2
- Application number: 15/319,465
- Filed: 2014-06-27
- Published: 2017-05-18
- Granted: 2019-06-04
- Earliest claimed: 2014-06-27
- Assignees: Telefonaktiebolaget LM Ericsson (publ)
- Applicants: Telefonaktiebolaget LM Ericsson (publ)
- Inventors: Elena Dubrova; Fredrik Lindqvist; Mats Näslund; Göran Selander
- Web page: https://patentgrep.com/patent/US10313125B2

## CPC

- H04L 1/0061: {Error detection codes}
- H04L 9/0643: {Hash functions, e.g. MD5, SHA, HMAC or f9 MAC}
- H04L 9/14: using a plurality of keys or algorithms
- H04L 9/3093: {involving Lattices or polynomial equations, e.g. NTRU scheme}
- H04L 9/3242: {involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC}
- H04L 63/06: {for supporting key management in a packet data network (cryptographic mechanisms or cryptographic arrangements for key management H04L9/08)}
- H04W 12/0433: Key management protocols
- H04L 2209/34: Encoding or coding, e.g. Huffman coding or error correction
- H04L 2209/80: Wireless
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

A method (500) of generating a cryptographic checksum for a message M(x) is provided. The method comprises pseudo-randomly selecting (502) a generator polynomial p(x) from the set of polynomials of degree n over a Galois Field and calculating (504) the cryptographic checksum as a first function g of a division of a second function of M(x), ƒ(M(x)), modulo p(x), g(ƒ(M(x))mod p(x)). The generator polynomial p(x) is pseudo-randomly selected based on a first cryptographic key. By replacing a standard checksum, such as a Cyclic Redundancy Check (CRC), with a cryptographic checksum, an efficient message authentication is provided. The proposed cryptographic checksum may be used for providing integrity assurance on the message, i.e., for detecting random and intentional message changes, with a known level of security. Further, a corresponding computer program, a corresponding computer program product, and a checksum generator for generating a cryptographic checksum, are provided.

## Claims

### Claim 1

A method comprising:
pseudo-randomly selecting, based on a first cryptographic key, a generator polynomial p(x) from the set of polynomials of degree n over a Galois Field, wherein the generator polynomial p(x) is a reducible polynomial; and
generating a cryptographic checksum for a message M(x), wherein
generating the cryptographic checksum for message M(x) comprises calculating:
g(ƒ(M(x))mod p(x)),
g a first function, and
ƒ is a second function.

### Claim 2 (depends on 1)

The method of claim 1, wherein the generator polynomial p(x) comprises a non-zero constant term.

### Claim 3 (depends on 1)

The method of claim 1, further comprising pseudo-randomly generating a pad s of length n, wherein the first function g comprises an addition with the pad s.

### Claim 4 (depends on 3)

The method of claim 3, wherein the pad s is generated based on a second cryptographic key.

### Claim 5 (depends on 3)

The method of claim 3, wherein the pad s is dependent on information which is specific for the message.

### Claim 6 (depends on 1)

The method of claim 1, wherein the generator polynomial p(x) is dependent on information which is specific for the message.

### Claim 7 (depends on 6)

The method of claim 6, wherein the information which is specific for the message comprises a message sequence number.

### Claim 8 (depends on 1)

The method of claim 1, wherein the second function ƒ comprises a multiplication with a fixed polynomial xn.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
appending the generated cryptographic checksum to the message, and
transmitting the message and the appended cryptographic checksum.

### Claim 10 (depends on 1)

The method of claim 1 further comprising:
receiving the message and cryptographic checksum appended to the message,
verifying if the generated cryptographic checksum is identical to the cryptographic checksum appended to the message.

### Claim 11

A computer program product comprising a non-transitory computer readable medium storing a computer program comprising:
instructions for pseudo-randomly selecting, based on a first cryptographic key, a generator polynomial p(x) from the set of polynomials of degree n over a Galois Field, wherein the generator polynomial p(x) is a reducible polynomial; and
instructions for generating a cryptographic checksum for a message M(x), wherein
the instructions for generating the cryptographic checksum for message M(x) comprises instructions for calculating: g(ƒ(M(x))mod p(x)), wherein g is a first function, and ƒ is a second function.

### Claim 12

An apparatus, the apparatus being configured to:
pseudo-randomly select, based on a first cryptographic key, a generator polynomial p(x) from the set of polynomials of degree n over a Galois Field, wherein the generator polynomial p(x) is a reducible polynomial; and
generate a cryptographic checksum for a message M(x) by performing a process comprising calculating:
g(ƒ(M(x))mod p(x)), wherein
g a first function, and
ƒ is a second function.

### Claim 13 (depends on 12)

The apparatus of claim 12, wherein the generator polynomial p(x) comprises a non-zero constant term.

### Claim 14 (depends on 12)

The apparatus of claim 12, being further configured for pseudo-randomly generating a pad s of length n, wherein the first function g comprises an addition with the pad s.

### Claim 15 (depends on 14)

The apparatus of claim 14, being further configured for generating the pad s based on a second cryptographic key.

### Claim 16 (depends on 14)

The apparatus of claim 14, wherein the pad s is dependent on information which is specific for the message.

### Claim 17 (depends on 12)

The apparatus of claim 12, wherein the generator polynomial p(x) is dependent on information which is specific for the message.

### Claim 18 (depends on 17)

The apparatus of claim 17, wherein the information which is specific for the message comprises a message sequence number.

### Claim 19 (depends on 12)

The apparatus of claim 12, wherein the second function ƒ comprises a multiplication with a fixed polynomial xn.

### Claim 20 (depends on 12)

The apparatus of claim 12, wherein the apparatus is further adapted to: transmit the message together with the generated cryptographic checksum.

### Claim 21 (depends on 12)

The apparatus of claim 12, wherein the apparatus is further adapted to: verify if the generated cryptographic checksum is identical to a cryptographic checksum received with the message.

### Claim 22 (depends on 12)

The apparatus of claim 12, wherein the apparatus is a mobile terminal.

### Claim 23 (depends on 12)

The apparatus of claim 12, wherein the apparatus is radio access node.
