Method for protecting data and data processing device

US10354065B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10354065-B2
Application numberUS-201615333205-A
CountryUS
Kind codeB2
Filing dateOct 25, 2016
Priority dateOct 27, 2015
Publication dateJul 16, 2019
Grant dateJul 16, 2019

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.

According to one embodiment, a method for protecting data is provided comprising receiving a plurality of data symbols, determining a sequence of checksum symbols wherein the checksum symbols are determined to be equal to the checksum symbols of the last iteration of an iterative checksum symbol generation process, wherein the determining of the checksum symbols includes at least one of randomly generating the initial values, randomly determining an order of the data symbols in which the contributions of the data symbols to the checksum symbols are incorporated into the checksum symbols and masking each data symbol and using the masked data symbols as data symbols for determining the checksum symbols and which includes storing at least some of the checksum values as checksum for the data symbols.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for protecting data comprising: receiving a plurality of data symbols; determining a sequence of checksum symbols wherein the checksum symbols are determined to be equal to the checksum symbols of the last iteration of an iterative checksum symbol generation process in which for the first iteration, the value of the first checksum symbol is given by an initial value of the first checksum symbol plus the value of the first data symbol, the value of each following checksum symbol is given by an initial value for the checksum symbol plus the value of the previous checksum symbol for the first iteration, for each following iteration, the value of each checksum symbol is given by the value of the checksum symbol for the previous iteration plus the value of the previous checksum symbol for the current iteration; wherein the determining of the checksum symbols comprises at least one of randomly generating the initial values; randomly determining an order of the data symbols in which the contributions of the data symbols to the checksum symbols are incorporated into the checksum symbols; masking each data symbol and using the masked data symbols as data symbols for determining the checksum symbols; and storing at least some of the checksum values as checksum for the data symbols; wherein, if determining the checksum symbols comprises randomly determining an order of the data symbols in which the contributions of the data symbols to the checksum symbols are incorporated into the checksum symbols, determining at least one of the checksum symbols further comprises determining, for each data symbol, in the randomly determined order of the data symbols, the contribution of the data symbol to the checksum symbol and accumulating the contributions of the data symbols to the checksum symbol to generate the value of the checksum symbol. 2. The method of claim 1 , further comprising: independently determining individual masks for the data symbols. 3. The method of claim 1 , wherein the masks are at least partially different for different data symbols. 4. The method of claim 1 , wherein the mask is the same mask for all data symbols. 5. The method of claim 1 , further comprising: removing the contribution of the mask to the checksum values. 6. The method of claim 1 , further comprising: for each checksum value, determining the contribution of the mask and subtracting the contribution of the mask to the checksum value from the checksum value. 7. The method of claim 1 , wherein determining comprises removing the contribution of the initial values to the checksum values. 8. The method of claim 1 , further comprising: for each checksum value, determining the contribution of the initial values and subtracting the contribution of the values to the checksum value from the checksum value. 9. The method of claim 1 , wherein the addition operation is an integer addition modulo a predetermined modulus. 10. The method of claim 1 , wherein the addition operation is over elements in the Galois field GF(q) of q elements. 11. The method of claim 1 , wherein the addition operation is the multiplication of elements in the Galois field GF(q) of q elements. 12. The method of claim 1 , wherein the number of iterations is equal to the number of data symbols. 13. The method of claim 1 , wherein randomly generating the initial values comprises randomly generating an initial value for each checksum symbol. 14. The method of claim 1 , further comprising: storing the checksum together with the data symbols. 15. The method of claim 14 , further comprising: reading the stored checksum and the data symbols and checking whether the checksum read is valid for the data symbols read. 16. The method of claim 15 , further comprising: computing a further checksum of received data, during or after their transmission, receiving the checksum and checking whether the computed further checksum is valid for the data symbols using the checksum. 17. The method of claim 15 , further comprising: computing a further checksum of received data, during or after their transmission, comparing the computed further checksum with the stored checksum and checking whether the computed further checksum is valid. 18. A data processing device, comprising: a receiver configured to receive a plurality of data symbols; an encoder configured to determine a sequence of checksum symbols wherein the checksum symbols are determined to be equal to the checksum symbols of the last iteration of an iterative checksum symbol generation process in which for the first iteration, the value of the first checksum symbol is given by an initial value of the first checksum symbol plus the value of the first data symbol, the value of each following checksum symbol is given by an initial value for the checksum symbol plus the value of the previous checksum symbol for the first iteration, for each following iteration, the value of each checksum symbol is given by the value of the checksum symbol for the previous iteration plus the value of the previous checksum symbol for the current iteration; wherein the encoder is configured to at least one of randomly generate the initial values; randomly determine an order of the data symbols in which it incorporates the contributions of the data symbols to the checksum symbols into the checksum symbols; mask each data symbol and using the masked data symbols as data symbols for determining the checksum symbols; and a memory configured to store at least some of the checksum values as checksum for the data symbols; wherein, if the encoder's determining the sequence of checksum symbols comprises randomly determining an order of the data symbols in which the contributions of the data symbols to the checksum symbols are incorporated into the checksum symbols, a determination of at least one of the checksum symbols further comprises determining, for each data symbol, in the randomly determined order of the data symbols, the contribution of the data symbol to the checksum symbol and accumulating the contributions of the data symbols to the checksum symbol to generate the value of the checksum symbol. 19. A method for protecting data comprising: receiving a plurality of data symbols; determining a sequence of checksum symbols wherein the checksum symbols are determined to be equal to the checksum symbols of the last iteration of an iterative checksum symbol generation process in which for the first iteration, the value of the first checksum symbol is given by an initial value of the first checksum symbol plus the value of the first data symbol, the value of each following checksum symbol is given by an initial value for the checksum symbol plus the value of the previous checksum symbol for the first iteration, for each following iteration, the value of each checksum symbol is given by the value of the checksum symbol for the previous iteration plus the value of the previous checksum symbol for the current iteration; wherein the determining of the checksum symbols comprises at least one of randomly generating the initial values; randomly determining an order of the data symbols in which the contributions of the data symbols to the checksum symbols are incorporated into the checksum symbols; masking each data symbol and using the masked data symbols as data symbols for determining the checksum symbols; and storing at least some of the checksum values as checksum for the data symbols

Assignees

Inventors

Classifications

  • G06F21/556Primary

    involving covert channels, i.e. data leakage between processes (inhibiting the analysis of circuitry or operation with measures against power attack G06F21/755) · CPC title

  • of operations, operands or results of the operations · CPC title

  • for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA] · CPC title

  • Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage · 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 US10354065B2 cover?
According to one embodiment, a method for protecting data is provided comprising receiving a plurality of data symbols, determining a sequence of checksum symbols wherein the checksum symbols are determined to be equal to the checksum symbols of the last iteration of an iterative checksum symbol generation process, wherein the determining of the checksum symbols includes at least one of randoml…
Who is the assignee on this patent?
Infineon Technologies Ag
What technology area does this patent fall under?
Primary CPC classification G06F21/556. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 16 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).