摘要:
Beschrieben wird ein Verfahren zum Multiplizieren zweier Faktoren aus dem Galois-Feld GF (2 m*p ), wobei jeder der Faktoren als ein Vektor von p Teilblöcken mit einer Breite von m Bit darstellbar ist und p, m positive, ganze Zahlen größer als 1 sind, mit den Schritten:
a) Wahl eines Reduktionspolynoms, umfassend ein führendes, von Null verschiedenes Bit sowie p folgende Teilblöcke zu je m Bits, von denen die r niedrigstwertigen Teilblöcke zu je m Bits beliebig ungleich dem Nullvektor und die übrigen Teilblöcke zu Null gewählt werden und r eine positive, ganze Zahl kleiner als p ist, sowie Bereitstellen der r niedritigen Teilblöcke des Reduktionspolynoms in einem ersten Register, b) multiplikative Verknüpfung eines Teilblockes des ersten Faktors, beginnend mit dem höchstwertigen Teilblock des ersten Faktors, mit nacheinander allen Teilblöcken des zweiten Faktors, beginnend mit dem höchstwertigen Teilblock des zweiten Faktors, c) stellenrichtiges Aufakkumulieren aller Zwischenergebnisse der multiplikativen Verknüpfungen der Teilblöcke des ersten und des zweiten Faktors gemäß einer Exklusiv-Oder-Funktion ohne Übertrag, d) dabei nach jeder multiplikativen Verknüpfung eines Teilblockes des ersten Faktors mit einem Teilblock des zweiten Faktors, spätestens nach dem Aufakkumulieren der Zwischenergebnisse der multiplikativen Verknüpfungen eines Teilblocks des ersten Faktors mit allen Teilblöcken des zweiten Faktors, Durchführen einer Reduktion des ggf. aufakkumulierten Zwischenergebnisses auf eine Breite von m Bit mit Hilfe des Reduktionspolynoms unter Anwendung folgender Schritte:
d1) Bereitstellen des zu reduzierenden Zwischenergebnisses, d2) Bereitstellen wenigstens eines Teilblocks des Reduktionspolynoms, d3) Multiplizieren des Reduktionspolynoms mit den höchstwertigen m Bits des ggf. aufakkumulierten zu reduzierenden Zwischenergebnisses, wodurch ein zu subtrahierendes Polynom erhalten wird, bei dem die Wertigkeit des höchstwertigen Bits mit der Wertigkeit des höchstwertigen Bits des zu reduzierenden Zwischenergebnisses übereinstimmt, d4) Subtrahieren des zu subtrahierenden Polynoms vom zu reduzierenden Zwischenergebnis und Bereitstellen des Ergebnisses dieser Subtraktion als neues, zu reduzierendes Zwischenergebnis, d5) wiederholtes Durchrühren der Schritte d1) bis d4), bis das zu reduzierende Zwischenergebnis eine Breite von m aufweist.
Beschrieben wird ferner ein Multiplizierer zur Durchführung des Verfahrens. Damit lassen sich Einsparungen in Stromverbrauch, Kristalloberfläche und Rechenzeit erzielen.
摘要:
A data converter (1) capable of reducing a size of the total implementation in a device is a processing apparatus that performs secret converting processing predetermined to input data with 64 bits, the data converter including a finite field polynomial cubing unit (10), data integrating units (11a) to (11d), (12) and (13), a first converter (14), a second converter (15), a data splitting unit (16), and a data integrating unit (17). The finite field polynomial cubing unit (10) performs cubing, on the 32 bits data, in the polynomial residue class ring with a value in the finite field GF (28) as a coefficient and respectively outputs data with 32 bits.
摘要:
A finite field multiplier in GF2 mn is formed from a pair of m celled shift registers and an m celled accumulating cell. Logical connections are established to generate grouped terms in respective cells of the accumulating cell upon retention of the vector of the subfield elements in each shift register. Each cell contains a subfield element in the form of an n-tuple and the logical connections perform arithmetic operations in accordance with the inherent subfield arithmetic to provide an n-tuple in each cell of the accumulating register. A product of two vectors can be obtained in m clock cycles. By mapping between registers, squaring of a vector can be obtained in one clock cycle.
摘要:
La présente invention concerne un circuit d'inversion d'un nombre (x) de n bits d'un corps de Galois de 2 n = N+1 éléments, comprenant un élévateur (10) à la puissance t = 2 n/2 recevant le nombre à inverser (x). Un premier multiplieur complet (12) reçoit le nombre à inverser et la sortie de l'élévateur à la puissance t. Un circuit (14, 16) fournit le produit de la sortie de l'élévateur à la puissance t et de l'inverse de la sortie du premier multiplieur complet.
摘要:
Embodiments of the invention provide a method and a device for manipulating data provided in a GF(22s) representation, e.g., for implementing at least some AES encryption and/or decryption operations on data provided in a GF(22s) representation, by converting the GF(22s) into a GF((2s)2) representation (102) and performing GF(22s) equivalent operations in the GF((2s)2) representation (104).
摘要:
The invention is an apparatus and/or method which enables one to divide two elements, A and B, of GF(2 2M ), that is, perform the operation B/A, by finding the multiplicative inverse of the divisor A, and then multiplying the inverse by the numerator, B. The multiplicative inverse, A⁻¹, of A if found by computing a conversion factor, D, (100) and then multi plying A by D to convert it to an element C, (102) where C is also an element of a smaller Galois Field, GF(2 M ), which is a subfield of GF(2 2M ). Specifically, C is equal to A² ⁺¹, or A 2*A , in the field GF(2 2M ). Next the multiplicative inverse, C⁻¹, of C in GF(2 M ) is found by appropriately entering a stored look-up table containing the 2 M elements of GF(2 M ), (104). The multiplicative inverse, C⁻¹, of C is thereafter converted, by multiplying it by the conversion factor D calculated above, to the element of GF(2 2M ) which is the multiplicative inverse, A⁻¹, of the original divisor, A, (106). The multiplicative in verse, A⁻¹, of A is then multiplied by B to calculate the quotient, B/A, (108).