Methods for constructing secure hash functions from bit-mixers

US2019109715A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2019109715-A1
Application numberUS-201715726608-A
CountryUS
Kind codeA1
Filing dateOct 6, 2017
Priority dateOct 6, 2017
Publication dateApr 11, 2019
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Provided is a method and system for producing message authentication tags and a method and system for producing hash values using bit-mixers. The methods include producing a message authentication or hash value by obtaining a message; segmenting, padding by an electronic processor, the message into a number of equal sized message blocks comprising a first message block, one or more subsequent message blocks, and a final message block; performing, by the electronic processor, a first bit-mixing operation on the first message block with an initialization value; performing, by the electronic processor, subsequent bit-mixing operations on the one or more subsequent message blocks and the final message block with a previous message block; and producing, by the electronic processor, the message authentication tag based on the first bit-mixing operation and the subsequent bit-mixing operations, employing a secret key material.

First claim

Opening claim text (preview).

What is claimed is: 1 . A computer-implemented method for producing a message authentication tag, the method comprising: obtaining a message; segmenting, by an electronic processor, the message into a number of equal sized message blocks comprising a first message block, one or more subsequent message blocks, and a final message block; performing, by the electronic processor, a first bit-mixing operation on the first message block with an initialization value; performing, by the electronic processor, subsequent bit-mixing operations on the one or more subsequent message blocks and the final message block with a previous message block; and producing, by the electronic processor, the message authentication tag based on the first bit-mixing operation and the subsequent bit-mixing operations. 2 . The method of claim 1 , wherein the message is a plaintext message or an encrypted message. 3 . The method of claim 1 , further comprising encrypting each of the equal sized message blocks with a block encryption algorithm to produce a number of encrypted message blocks. 4 . The method of claim 1 , wherein the first message block, the one or more subsequent message blocks, and the final message block are encrypted message blocks. 5 . The method of claim 1 , further comprising sending the message authentication tag with the message to a receiver, wherein the message is in plain text. 6 . The method of claim 1 , further comprising sending the message authentication tag with the message to a receiver, wherein the message is encrypted. 7 . The method of claim 1 , wherein the first bit-mixing operation and the subsequent bit-mixing operations are performed by a bit-mixer construction based on a double-mix Feistel network, a substitution-permutation network, an exclusive OR (XOR) tree, or a parallel combination of two or more bit-mixer constructions. 8 . The method of claim 1 , wherein the first bit-mixing operation and the subsequent bit-mixing operations are performed using a key material. 9 . The method of claim 8 , wherein the key material is kept secret and the message authentication tag is a message authentication code. 10 . The method of claim 1 , further comprising: performing a final bit-mixing operation with an output of based on the final message block and a concatenation of a length of authentication data and a length of encrypted text blocks; and performing an exclusive OR operation with an output of the final bit-mixing operation and an encrypted null counter that is encrypted using a block encryption algorithm, under a secret key. 11 . The method of claim 1 , further comprising padding the final message block to make the message blocks of equal size. 12 . A computer-implemented method for producing a hash value for a message, the method comprising: obtaining the message; segmenting, by an electronic processor, the message into a number of equal sized message blocks comprising a first message block, one or more subsequent message blocks, and a final message block; performing, by the electronic processor, a first bit-mixing operation on the first message block with an initialization value; performing, by the electronic processor, subsequent bit-mixing operations on the one or more subsequent message blocks and the final message block with a previous message block; and producing, by the electronic processor, the hash value based on the first bit-mixing operation and the subsequent bit-mixing operations. 13 . The method of claim 12 , wherein the message is a plaintext message, an encrypted message, or arbitrary other type of data in electronic format. 14 . The method of claim 12 , wherein the first bit-mixing operation and the subsequent bit-mixing operations use key material that is public. 15 . The method of claim 12 , further comprising performing a final bit-mixing operation on the final message block, the final bit-mixing operation being different from the first bit-mixing operation and the subsequent bit-mixing operations performed in computing the hash value, wherein a difference is a construction of a bit-mixer used in the first bit-mixing operation and the subsequent bit-mixing operations, a key material, or both. 16 . The method of claim 12 , further comprising encrypting each of the equal sized message blocks with a block encryption algorithm to produce a number of encrypted message blocks. 17 . The method of claim 12 , wherein the first message block, the one or more subsequent message blocks, and the final message block are encrypted message blocks. 18 . The method of claim 12 , wherein the first bit-mixing operation and the subsequent bit-mixing operations are performed by a bit-mixer construction based on double-mix Feistel network, a substitution-permutation network, an XOR tree, or a parallel combination of two or more bit-mixer constructions. 19 . A computer system comprising: an electronic processor; a non-transitory computer readable medium storing instructions that when executed by the electronic processor, perform a method for producing a message authentication tag, the method comprising: obtaining a message; segmenting the message into a number of equal sized message blocks comprising a first message block, one or more subsequent message blocks, and a final message block; performing a first bit-mixing operation on the first message block with an initialization value; performing subsequent bit-mixing operations on the one or more subsequent message blocks and the final message block with a previous message block; and producing the message authentication tag based on the first bit-mixing operation and the subsequent bit-mixing operations. 20 . The computer system of claim 19 , wherein the first bit-mixing operation and the subsequent bit-mixing operations are performed by a bit-mixer construction based on double-mix Feistel network, a substitution-permutation network, an XOR tree, or a parallel combination of two or more bit-mixer constructions. 21 . The computer system of claim 19 , wherein the electronic processor is further operable to perform the method comprising: performing a final bit-mixing operation with an output of based on the final message block and a concatenation of a length of authentication data and a length of encrypted text blocks; and performing an exclusive OR operation with an output of the final bit-mixing operation and an encrypted null counter that is encrypted using a block encryption algorithm. 22 . A computer system comprising: an electronic processor; a non-transitory computer readable medium storing instructions that when executed by the electronic processor, perform a method for producing a hash value, the method comprising: obtaining a message; segmenting the message into a number of equal sized message blocks comprising a first message block, one or more subsequent message blocks, and a final message block; performing a first bit-mixing operation on the first message block with an initialization value; performing subsequent bit-mixing operations on the one or more subsequent message blocks and the final message block with processed previous message block; and producing the hash value based on the first bit-mixing operation and the subsequent bit-mixing operations. 23 . The computer system of claim 22 , wherein the first bit-mixing operation and the subsequent bit-mixing operations are performed by a bit-mixer construction based on d

Assignees

Inventors

Classifications

  • Hash functions, e.g. MD5, SHA, HMAC or f9 MAC · CPC title

  • received data contents, e.g. message integrity · CPC title

  • H04L9/3242Primary

    involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC · CPC title

  • Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM] · CPC title

  • Generation of secret information including derivation or calculation of cryptographic keys or passwords · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2019109715A1 cover?
Provided is a method and system for producing message authentication tags and a method and system for producing hash values using bit-mixers. The methods include producing a message authentication or hash value by obtaining a message; segmenting, padding by an electronic processor, the message into a number of equal sized message blocks comprising a first message block, one or more subsequent m…
Who is the assignee on this patent?
Boeing Co
What technology area does this patent fall under?
Primary CPC classification H04L9/3242. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Apr 11 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).