Abstract: The invention provides implementations of the block cipher in resource-constrained ARM devices that may be applied to both 32-bit and 64-bit versions of side-channel resistant and vectorized code and provides improves both efficiency and compactness by using of algorithmic techniques and features specific to a target platform. Specifically, an unprotected 32-bit implementation improves speed while reducing code size and a vectorized implementation improves performance and speed the implementation of block cipher.
Type:
Grant
Filed:
May 12, 2017
Date of Patent:
April 27, 2021
Assignees:
LG Electronics, Inc., UNICAMP
Inventors:
Rafael Junio Da Cruz, Diego F. Aranha, Julio cesar Lopez Hernandez
Abstract: A method for encrypting data with a provided key. The method includes generating a plurality of keys; processing the data in a plurality of rounds, with each round including: performing a first logical combination of the data with a first key; first permuting the first logically combined data based on a first defined permutation; performing a first substitution on the first permuted data; second permuting the first substituted data based on a second defined permutation; performing a second logical combination of the second permuted data with a permuted second key; and performing a second substitution on the second logically combined data. Further, performing a penultimate logical combination of the second substituted data with a penultimate key, permuting the penultimate logically combined data, performing a final substitution of the permuted data, and performing a final logical combination of the final substituted data with a last key.
Type:
Grant
Filed:
September 29, 2017
Date of Patent:
February 2, 2021
Assignees:
LG ELECTRONICS INC., UNICAMP
Inventors:
Julio Cesar Lopez Hernandez, Tiago Bruno Silva Dos Reis
Abstract: The present invention provides a method for performing Elliptic Curve Cryptography (ECC) on data, the ECC implemented on multiple arithmetic layers. By performing multi-precision multiplication by implementing product-scanning to process columns of intermediary results in order to obtain a multiplication result by computing unsigned multiplication of data, accumulating a result of the multiplication and preserving a generated carry flag such that propagation of the carry flag is delayed, the present invention improves performance.
Abstract: A method for encrypting data with a provided key. The method includes generating a plurality of keys; processing the data in a plurality of rounds, with each round including: performing a first logical combination of the data with a first key; first permuting the first logically combined data based on a first defined permutation; performing a first substitution on the first permuted data; second permuting the first substituted data based on a second defined permutation; performing a second logical combination of the second permuted data with a permuted second key; and performing a second substitution on the second logically combined data. Further, performing a penultimate logical combination of the second substituted data with a penultimate key, permuting the penultimate logically combined data, performing a final substitution of the permuted data, and performing a final logical combination of the final substituted data with a last key.
Type:
Application
Filed:
September 29, 2017
Publication date:
February 6, 2020
Applicants:
LG ELECTRONICS INC., UNICAMP
Inventors:
Julio Cesar LOPEZ HERNANDEZ, Tiago Bruno Silva Dos REIS