Nova Patents
AU625552B2

Finite field multiplication

Abstract

A Galois field multiplier (10) is used for obtaining a product (D), which is stored in an accumulating register (20), of two elements (B, C) which are stored in shift registers (12, 14). The product (D) is represented in normal basis form with each binary digit of the bit vector (the product, D) being determined by a sum of the product of the binary digits (bi, ci) representing the two elements. By grouping like ones of one of ordinary digits in the expression for the binary digit of the product and offsetting the suffixes of the binary digits, it is possible to accumulate grouped terms of each of the binary digits of the product simultaneously.

AU625552B2, drawing sheet 1
Sheet 1 of 35

Term

Term ended

Expired 16 December 2006, 19.8 years ago.

  1. Priority and filed
  2. Granted
  3. Expired
  4. Today

27 claims: 9 independent, 18 dependent

  1. 1
    WE CLAIM:1. A method of determining the. product D cf two elements B and C of the finite field GF(2m), where m is an integer greater than 1, the field having elements -! ' · , A (0 < i < m) that constitute a normal basis, comprising the steps of: (a) representing the element B as a vector of ' « . ' 2* * ' binary digits b,·, where b,· is the coefficient of A m the normal basis representation of B, (b) representing the element C as a vector of binary digits cf, where c,· is the coefficient of A in the normal basis representation of C, (c) representing the product D of elements 3 and I I C as a vector of binary digits diz where d,· is the · . , 2* · coefficient of A m the normal basis representation of D, each of said binary’’ digits d,· being expressed in the form of a sum of products of the binary digits bj and ck, (0 < j ,k < m) , (d) storing in m successive cells of a first recirculating shift register the binary digits, b,·, (e) storing in m successive cells of a second recirculating shift register the binary digits, cj, (f) selecting at least some of said products of the binary digits bj and ck (0 < j,k < m) expressing a binary digit d{ and grouping like ones of one of the binary digits b;or ck to provide grouped terms of the form: MOD' 2 MOD 2 ' T/V$ 86 /02 75 3 VJA/jggg (g) associating each of said grouped terms with a different one of m accumulating cells of an accumulating recirculating shift register, _ (h) establishing connections between the-^cells of said first and second recirculating shift registers and . a first of said accumulating cells to provide a first of said grouped terms in said accumulating cell, (i) establishing connections between the cells of said first and second recirculating shift registers and a second of said accumulating cells adjacent to said first of said accumulating cells to provide an expression equivalent to another of said grouped terms with the suffixes of the binary digits of said second grouped term II increased by 1 (Modulo m), ' (j) repeating step i for successive ones of the grouped terms with the increase in the suffix of each binary digit of said grouped terms accumulating by 1 (Modulo m) for each repetition whereby there is provided in each accumulating cell a grouped term of a respective ' one of the m binary digits d(, (k) generating a respective grouped term in at least (m-1) of said accumulating cells, (l) accumulating modulo 2 each generated grouped term with the previously generated grouped terms accumulated in an adjacent one of said accumulating cells wherein grouped terms of the same binary digit are accumulated in the same cell, (m) transferring the contents of each cell of the first and second recirculating shift registers to its next ' cell, and (n) repeating steps k, 1, and m, (m - 1) times whereby after (m - 1) repetitions, each of said accumulating cells contains the modulo 2 sum of said SUBSTITUTE SHEET IPEA/US selected ones of the grouped terms of a different one of the binary digits d,·.
  2. 2
    A method according to claim .1, wherein all of the products are selected for grouping into grouped terms.
  3. 3
    A method according to ci,%im 1 comprising the steps of pairing said products such that one term of each pair has the form bjck and the other of each pair has the form bkCj, and selecting one of each pair together with any product terms that cannot be paired to form said grouped terms .
  4. 6
    A method of determining the product D of two elements B and C cf the finite field GF(2m) , where m is an integer greater than 1, the field having elements A (0 < ι < m) that constitute a normal basis, comprising the steps of:(a) representing the element B as a vector of binary digits bs, where b5 is the coefficient of A2' in the normal basis representation of B, (b) representing the element C as a vector of binary digits cf, where c, is the coefficient of A2' in the normal basis representation of C, (c) representing the product D of elements B and C as a vector of binary digits d,·, where dj is the coefficient of A2 in the normal basis representation of D, each of said binary digits d,· being expressed in the form SUBSTITUTE SHEET IPEA/US L 26 Η., /02 75 1 °4 J A iM1989 of a sum of products of the binary digits bj and ck, (0 < j ,k < m) , (d) storing in m successive cells of a first recirculating shift register'the binary digits, byr^ (e) storing in m successive cells of a second recirculating shift register the binary digits, c,·, (f) selecting at least some of said products of a binary digit dj and grouping like ones of one of the binary digits bj or ck to provide grouped terms of the form: z m-1 I -O MOD 2 (g) establishing connections from respectivecells of said shift registers to each cell of a recirculating accumulating shift register to produce in each accumulating cell a grouped term of a binary digit representing the vector D, said connections being established such that a first grouped term of one of said binary digits is accumulated in a first of said cells of said accumulating shift register and, upon repeated transfer of the contents of said first accumulating cell through each of said accumulating cells accompanied by successive rotations of said recirculating shift register contents, successive grouped terms of said one binary digit will be generated and accumulated in successive accumulating cells, · (h) generating successive ones of said grouped terms of said one binary digit by rotating the vectors representing B and C in the first and second recirculating shift registers, (i) accumulating modulo 2 said other grouped term with the previously generated grouped terms accumulated in SUBSTITUTE SHEET IPEA/US r Li 86/02751 ..-04 JAN 1989 an adjacent one of said accumulating cells to· provide grouped terms of said one binary digit, and (j) repeating the accumulation (m - 1) times whereby grouped terms of each binary digit are accumulated simultaneously in successive accumulating cells to produce each of the m binary digits of the vector representing the product D simultaneously.
  5. 9
    A method according to claim S, wherein the other product terms of each pair are generated by interchanging the binary digits of said first and second recirculating shift registers upon completion of step j and repeating steps h through j.
  6. 15
    Apparatus for determining the product^ of two elements B and C of the finite field GF(qm) , where m is an integer greater than 1, the field having elements Aq' (0 < i < m) that constitute a normal basis comprising:(a) a first recirculating shift register having m successive cells, each of which receives a q-ary digit b,· of a vector representing the element B where b;is the coefficient of Aq' in the normal .basis representation of 3, if'ecirculab’i (b) a second^ rot at i-ng shift register having m successive cells, each of which receives a q-ary digit c{ of a vector representing the element C, where c,· is the coefficient of Aq in the noimal basis representation of C, (c) an accumulating recirculating shift register having m successive accumulating cells to accumulate successive grouped terns of each of the q-ary digits d,· of a vector representing the product D of elements B and C, where d,· is the coefficient of Aq' in the normal basis representation of D, (d) logic means establishing connections from respective cells of said recirculating shift registers to each of said accumulating cells to produce in each accumulating cell a grouped term of a q-ary digit d,· of a vector representing the product D, said connections being established such that a first grouped term of one of said I: Ιΐ - STfTUTE SHEET IPEA/US 86/02751 ' JAN 1989 q-ary digits is accumulated in a first of said accumulating cells and, upon repeated transfer of the contents of said first accumulating cell through each of said accumulating cells accompanied by successive rotations οΓ^ said recirculating shift register contents, successive grouped terms of said one q-ary digit will be generated in successive cells, (e) said accumulating cell having summing means to sum in GF(q) the output of said logic means and the previously generated grouped terms in an adjacent one of said accumulating cells, and thereby provide a further accumulation of grouped terms, ' (f) means to store said further-’accumu^. ..tion of ι ' ' grouped terms, and (g) means to rotate the contents of said recirculating shift registers through successive cells, whereby after m operations of said summing means, each of said store means contains q-ary digit dj of the vector representing the productD.
  7. 22
    A method of determining a product^of two elements 3 and C of the finite field GFiq1) , where m is an integer greater than 1, rhe field having elements Aq' (0 < i < m) that constitute a normal basis, comprising the steps of:(a) representing the element B as a vector of qary digits b5, where b,· is the coefficient of Aq' in the normal basis representation of B, (b) representing the element C as a vector of qary digits c5, where c{ is the coefficient of Aq‘ in the normal basis representation of C, (c) representing the product D of elements B and C as a vector of q-ary digits d,-, where dj is the coefficient of Aq in the normal basis representation of D, each of said q-ary digits dj being expressed in the form of a sum of products of the q-ary digits b;and ck, (0 < j,k < m) , (d) storing in m successive cells of a first recirculating shift register the q-ary digits, bif SUBSTITUTE SHEET IPEA/US I w 11 ~ ’ 26 yS. 86/02751 V' ' ' ' °4 JAN 1989 z/X-l . (e) storing in m successive cells of' a second recirculating shift register the q-ary digits, cf, (f) selecting at least some of said products of the q-ary digits bj and ck (0 < j,k < m) expressing aTj-ary digit d,· and grouping like ones of one of the q-ary digits bj or ck to provide grouped terms of the form: (/ ra-1 Σ _ j'O £,¾) i (g) associating each of said grouped terms with a different one of m accumulating cells of -an accumulating recirculating shift register, (h) establishing connections between the cells of said first and second recirculating shift registers and a first of said accumulating cells to provide a first of said grouped terms in said accumulating cell, (i) establishing connections between the cells of said first and second recirculating shift registers and a second of said accumulating cells adjacent to said first o'? Saia c\.c-c-utv·u.\c>.t\c-e-XXs -/e*&L to provide an expression equivalent to another of said grouped terms with the suffixes of the q-ary digits of· said second grouped term increased by 1 (Modulo m), (j) repeating step i for successive ones of the grouped terms with the increase in the suffix of each qary digit of said grouped terms accumulating by 1 (Modulo m) for each repetition whereby there is provided in each accumulating cell a grouped term of a respective one of the m q-ary digits d,·, (k) generating a respective grouped term in at least (m-1) of said accumulating cells, GvioJ iTUTE SHEET • P'TJS 86/02751 '' 26 Se,;:n. 46 ‘ °4 JAN se9 (l) accumulating inGF(q) the generated grouped term with the previously generated grouped terms accumulated in an adjacent one of said accumulating cells, wherein grouped terms of the same q-ary digits are accumulated in the same cell, (m) transferring contents of each cell' of the first and second recirculating shift registers to their next cell, and (n) repeating steps k, 1, and m, (m - 1) times whereby, after (m - 1) repetitions, each of said accumulating cells contains said selected ones of the grouped terms of a different one of the q-ary digits df.
  8. 26
    A method of determining the product D of two elements B and C of the finite field GF(2m) substantially as herein described with reference to and as illustrated in the accompanying drawings.
  9. 27
    An apparatus for determining the product D of two elements B and C of the finite field GFiq1), substantially as herein described with reference to and as illustrated in the accompanying drawings.