CN102073477B - Implementation method of finite field multiplying unit with functions of detecting, correcting and locating error - Google Patents

Implementation method of finite field multiplying unit with functions of detecting, correcting and locating error Download PDF

Info

Publication number
CN102073477B
CN102073477B CN2010105637338A CN201010563733A CN102073477B CN 102073477 B CN102073477 B CN 102073477B CN 2010105637338 A CN2010105637338 A CN 2010105637338A CN 201010563733 A CN201010563733 A CN 201010563733A CN 102073477 B CN102073477 B CN 102073477B
Authority
CN
China
Prior art keywords
unit
error correction
finite field
field multiplier
error detection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2010105637338A
Other languages
Chinese (zh)
Other versions
CN102073477A (en
Inventor
郑志明
邱望洁
王文华
张筱
高莹
王钊
李洪革
唐绍婷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN2010105637338A priority Critical patent/CN102073477B/en
Publication of CN102073477A publication Critical patent/CN102073477A/en
Application granted granted Critical
Publication of CN102073477B publication Critical patent/CN102073477B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)

Abstract

The invention provides an implementation method of a finite field multiplying unit with functions of detecting, correcting and locating an error. The finite field multiplying unit comprises an error locating unit, an error correction unit based on a redundant base, a finite field multiplication unit and an error detecting unit based on norm; and the finite field multiplying unit has the functions of detecting, correcting and locating the error. The finite field multiplying unit generated by the method has the function of locating the error so as to be convenient for dealing with hardware failure, and has the function of error correction so as to effectively resist the failure attack of an opponent.

Description

Implementation method with Galois field multiplier of error-detection error-correction and location of mistake function
Technical field
The present invention relates to a kind of Galois field multiplier, be specifically related to a kind of implementation method of the Galois field multiplier system based on systolic arrays with error-detection error-correction and location of mistake function.This multiplier implementation method is applicable on FPGA (field programmable gate array) and the chip, is the basis that block cipher is realized the restructural function.
Background technology
Along with computer technology, the develop rapidly of the communication technology, information security issue receives people's extensive attention, and various new encryption technologies and attack technology continue to bring out.It is very effective when fault attacks is analyzed symmetry and asymmetric cryptographic algorithm as a kind of side-channel attack.Therefore, the mistake of stopping to occur in the computation process becomes particularly important when preventing side-channel attack.The most simple a kind of method of stopping miscount is carried out EDC error detection and correction to result of calculation exactly.Finite field operations extensively uses at password and coding field; In all Galois field operations; Finite field multiplier is most important and the most complicated; The following problem of current Galois field multiplier ubiquity both domestic and external: 1. the means of main employing parity checking are carried out error detection, can ignore for the mistake of even bit, and the coverage rate that leads to errors is lower slightly; 2. do not have the location of mistake module, make when the Galois field multiplier is received fault attacks, can not carry out the processing hardware problem of the very first time.
Summary of the invention
The implementation method that the purpose of this invention is to provide a kind of Galois field multiplier based on systolic arrays with error detection, error correction and location of mistake function.
Error detection function of the present invention realizes that through the finite field multiplier unit with based on the error detection unit of norm concrete steps are following:
Step 1: the binary representation D that accepts two Galois field elements based on the error detection unit of norm In
Step 2: the error detection unit based on norm calculates
Figure GDA0000100342150000011
Norm, be designated as N A
Step 3: the error detection unit based on norm calculates
Figure GDA0000100342150000012
Norm, be designated as N B
Step 4: the error detection unit based on norm receives the D as a result from the finite field multiplier unit 10
Step 5: the error detection unit based on norm calculates D 10Norm, be designated as N C
Step 6: the error detection unit based on norm compares N CWith N A* N BWhether identical; If identical, explain that the finite field multiplier computing is correct, then define the error detection of exporting D as a result based on the error detection unit of norm 20Be 1; If inequality, the finite field multiplier operation mistake be described, then define the error detection of exporting D as a result based on the error detection unit of norm 20Be 0.
Step 7: error detection finishes.
Error correction of the present invention realizes that through the finite field multiplier unit with based on the error correction unit of redundant operation concrete steps are following:
Step 1: the finite field multiplier unit receives the binary representation D of Galois field element In
Step 2: the finite field multiplier unit carries out the finite field multiplier computing under polynomial basis ψ, with product D 10-1Send to error correction unit based on redundant base.
Step 3: the finite field multiplier unit is at polynomial basis ψ 1Under carry out the finite field multiplier computing, with product D 10-1Send to error correction unit based on redundant base.
Step 4: the finite field multiplier unit is at polynomial basis ψ 2Under carry out the finite field multiplier computing, with product D 10-1Send to error correction unit based on redundant base.
Step 5: based on the error correction unit of redundant base with the product in the step 2,3,4 according to coefficient c i,
Figure GDA0000100342150000021
Conversion relation change into the product D under polynomial basis ψ 30-1, D 30-2, D 30-3, get in the lump based on the ballot device in the error correction unit of redundant base.
Step 6: if three products are all identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective; If have in three products two identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective, and the subscript n of the coefficient component that the result is made a mistake sends to the location of mistake unit; If three products are different, then the result after the error correction is changed to 0, and the duty indicator signal is changed to 0, the result after the sign error correction is invalid.
Step 7: error correction finishes.
Location of mistake function of the present invention realizes that by error correction unit and location of mistake unit based on redundant base concrete steps are following:
Step 1: the location of mistake unit receives the erroneous results position n based on the error correction unit of redundant base, the coefficient component c of characterization result nMade mistakes.
Step 2: the location of mistake unit confirms that the unit that makes a mistake is positioned at the position of systolic arrays, and promptly the unit of dislocation appears at U in the following scope P, q, p+q≤m+n-1 is at D 40(p q), is characterized in the subelement that might make a mistake in the systolic arrays to export all arrays that satisfy p+q≤m+n-1.
Step 3: location of mistake finishes.
Advantage of the present invention:
1. the Galois field multiplier error detecing capability is strong.
2. Galois field multiplier has the location of mistake function, is convenient to the processing hardware fault.
3. Galois field multiplier has error correction, can resist opponent's fault attacks.
4. the Galois field multiplier PDR is high.
Description of drawings
Fig. 1 is an entire system framework synoptic diagram
Fig. 2 is the systolic arrays electrical block diagram
Fig. 3 is a systolic arrays subelement electrical block diagram
Fig. 4 is based on the electricity of the ballot device in the error correction unit of redundant base structural representation
Fig. 5 is based on the electricity of the ballot device in the error correction unit of redundant operation structural representation
Embodiment
In the present invention, the mathematical expression formal specification is as follows:
Figure GDA0000100342150000031
The expression generator polynomial is the finite field gf (2 of P (x) m) in an element;
Figure GDA0000100342150000032
The expression generator polynomial is the finite field gf (2 of P (x) m) in another element;
C (x) expression A (x) and B (x) are at finite field gf (2 m) in product;
The generator polynomial of P (x) expression Galois field,
Figure GDA0000100342150000033
p iCoefficient component for P (x);
Mod P (x) expression deconv is with the residue of P (x);
(n, number of times m) are the coding polynomial expression of n-m in g (x) the expression liner code;
X representes arbitrary uncertainty element;
x iNumber of times is the element of i in the expression polynomial basis;
M representes the dimension of Galois field under polynomial basis;
a iExpression A (x) x under polynomial basis iCoefficient;
b iExpression B (x) x under polynomial basis iCoefficient;
c iExpression C (x) x under polynomial basis iCoefficient;
To combine accompanying drawing that the present invention is done further detailed description below.
Referring to shown in Figure 1; The Galois field multiplier that is a kind of based on systolic arrays of the present invention with error-detection error-correction and location of mistake function; This multiplier is realized carrier through fpga chip (field programmable gate array) conduct; Adopt top-down design proposal, so this system includes the confinement multiplication unit, based on the error detection unit of norm, based on the error correction unit and the location of mistake unit of redundant operation.
Error detection function of the present invention realizes that through the finite field multiplier unit with based on the error detection unit of norm concrete steps are following:
Step 1: the binary representation D that accepts two Galois field elements based on the error detection unit of norm In
Step 2: the error detection unit based on norm calculates
Figure GDA0000100342150000041
Norm, be designated as N A
Step 3: the error detection unit based on norm calculates
Figure GDA0000100342150000042
Norm, be designated as N B
Step 4: the error detection unit based on norm receives the D as a result from the finite field multiplier unit 10
Step 5: the error detection unit based on norm calculates D 10Norm, be designated as N C
Step 6: the error detection unit based on norm compares N CWith N A* N BWhether identical; If identical, explain that the finite field multiplier computing is correct, then define the error detection of exporting D as a result based on the error detection unit of norm 20Be 1; If inequality, the finite field multiplier operation mistake be described, then define the error detection of exporting D as a result based on the error detection unit of norm 20Be 0.
Step 7: error detection finishes.
Error correction of the present invention realizes that through the finite field multiplier unit with based on the error correction unit of redundant operation concrete steps are following:
Step 1: the finite field multiplier unit receives the binary representation D of Galois field element In
Step 2: the finite field multiplier unit carries out the finite field multiplier computing under polynomial basis ψ, with product D 10-1Send to error correction unit based on redundant base.
Step 3: the finite field multiplier unit is at polynomial basis ψ 1Under carry out the finite field multiplier computing, with product D 10-1Send to error correction unit based on redundant base.
Step 4: the finite field multiplier unit is at polynomial basis ψ 2Under carry out the finite field multiplier computing, with product D 10-1Send to error correction unit based on redundant base.
Step 5: based on the error correction unit of redundant base with the product in the step 2,3,4 according to coefficient c i,
Figure GDA0000100342150000043
Conversion relation change into the product D under polynomial basis ψ 30-1, D 30-2, D 30-3, get in the lump based on the ballot device in the error correction unit of redundant base (the ballot device is promptly exported the input value that occupies the majority).
Step 6: if three products are all identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective; If have in three products two identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective, and the subscript n of the coefficient component that the result is made a mistake sends to the location of mistake unit; If three products are different, then the result after the error correction is changed to 0, and the duty indicator signal is changed to 0, the result after the sign error correction is invalid.
Step 7: error correction finishes.
Location of mistake function of the present invention realizes that by error correction unit and location of mistake unit based on redundant base concrete steps are following:
Step 1: the location of mistake unit receives the erroneous results position n based on the error correction unit of redundant base, the coefficient component c of characterization result nMade mistakes.
Step 2: the location of mistake unit confirms that the unit that makes a mistake is positioned at the position of systolic arrays, and promptly the unit of dislocation appears at U in the following scope P, q, p+q≤m+n-1 is at D 40(p q), is characterized in the subelement that might make a mistake in the systolic arrays to export all arrays that satisfy p+q≤m+n-1.
Step 3: location of mistake finishes.
One, finite field multiplier unit
The process object of finite field multiplier unit is two elements A (x) and the B (x) on the Galois field, wherein
Figure GDA0000100342150000051
Its binary form is shown a M-1a M-2A 1a 0,
Figure GDA0000100342150000052
Its binary form is shown b M-1b M-2B 1b 0, the product of A (x) and B (x) is C (x),
Figure GDA0000100342150000053
Its binary form is shown c M-1c M-2C 1c 0The input data of finite field multiplier unit are D In={ a M-1a M-2A 1a 0, b M-1b M-2B 1b 0, according to the finite field multiplier algorithm, obtain finite field multiplier D as a result 10, D 10={ c M-1c M-2C 1c 0.
According to following formula, define the implementation method of confinement multiplication unit.
C ( x ) = A ( x ) B ( x ) mod P ( x )
= Σ i = 0 m - 1 b i A ( x ) mod P ( x )
= ( . . . ( ( b m - 1 A ( x ) mod F ( x ) ) x + b m - 2 A ( x ) mod F ( x ) ) x + . . . b 1 A ( x ) mod F ( x ) ) x + b 0 A ( x ) mod P ( x ) )
The concrete manner of execution of above-mentioned formula is following:
Input: A (x), B (x)
Output: C (x)
1.T 0=0
2.for?i=1?to?m?do?begin
2.1?T i=T i-1x?mod?x m+b m-iA(x)
2.2?T i=T i+t i-1,m-1P(x)
T i=T I-1X mod x m+ b M-iVector (the z that the output of A (x) through the capable subelement of array i obtains I, m-1, z I, m-2..., z I, 0) be T i
endfor
3.return?T m
Here T mBe finant product C (x)
The present invention realizes above-mentioned algorithm through systolic arrays, particular circuit configurations such as Fig. 2.Here each subelement of systolic arrays is formed its circuit structure such as Fig. 3 by one 2 input with door, 2 input XOR gates and a signal exchange unit.Systolic arrays is according to external clock work, at subelement U I, jIn, at the odd number clock, receive from subelement U I-1, j+1Output signal z I-1, j+1, from subelement U I-1, jOutput signal a jWith from subelement U I, j+1Output signal b i, data v 1And v 2Intercourse, through calculating b with door iA j, calculate b through XOR gate iA j+ c I-1, j, and the result is stored among the register Reg1, will be through data v 3And v 4Intercourse the data storage that originally is stored among the register Reg1 in register Reg2, as the output z of subelement I, jAt the even number clock, receive from subelement U I-1, jOutput signal p jWith from subelement U I, j+1Output signal d i, data v 2And v 4Intercourse, through calculating b with door and XOR gate iA j+ c I-1, j+ d iZ I-1, j+1And it is stored among the register Reg1.For finite field multiplier unit based on systolic arrays, the odd number clock switch dial to above, dial downwards at the even number clock switch, m-j clock is to subelement U 0, jInput a j, clockwise subelement U in the time of m-j+1 0, jInput p j3m-j clock, subelement U M-1, jOutput z M-1, j, composition of vector (z M-1, m-1, z M-1, m-2..., z M-1,0) as final multiplication result.
Two, based on the error detection unit of norm
In the present invention, import data D based on the error detection unit of norm In={ a M-1a M-2A 1a 0, b M-1b M-2B 1b 0And finite field multiplier D as a result 10Carry out handling, thereby obtain error detection D as a result based on the error detection strategy of norm 20
Described error detection strategy based on norm is:
Step 1: the binary representation D that accepts two Galois field elements based on the error detection unit of norm In
Step 2: the error detection unit based on norm calculates
Figure GDA0000100342150000071
Norm, be designated as N A
Step 3: the error detection unit based on norm calculates Norm, be designated as N B
Step 4: the error detection unit based on norm receives the D as a result from the finite field multiplier unit 10
Step 5: based on the error detection computing unit D of norm 10Norm, be designated as N C
Step 6: the error detection unit based on norm compares N CWith N A* N BWhether identical; If identical, explain that the finite field multiplier computing is correct, then define the error detection of exporting D as a result based on the error detection unit of norm 20Be 1; If inequality, the finite field multiplier operation mistake be described, then define the error detection of exporting D as a result based on the error detection unit of norm 20Be 0.
Step 7: error detection finishes.
In the present invention, GF (2 m) be a Galois field, K is GF (2 m) subdomain, α is a finite field gf (2 m) in any element (mathematical expression is α ∈ GF (2 m)), then the norm of α is defined as
N GF ( 2 m ) / K ( α ) = α × α 2 × α 2 2 . . . × α 2 m - 1 = α 2 m - 1 .
In the present invention, the error detection unit further based on norm replaces through the error detection module based on liner code.
Described error detection strategy based on liner code is:
Step 1: two Galois field elements A (x) and B (x) are accepted in the error detection unit based on liner code.
Step 2:A (x) carries out that (n, m) liner code L obtains A *(x), A *(x)=A (x) g (x).
Step 3: calculate C through the finite field multiplier unit *(x)=A *(x) B (x) mod F (x) g (x).
Step 4: judge whether g (x) divides exactly C *(x), be then to go to step 5, otherwise go to step 6.
Step 5: output C (x)=C *(x)/g (x), with it as final multiplication result and export multiplier and calculate correct prompting.
Step 6: the prompting of output multiplier miscount.
Step 7: error detection finishes.
Three, based on redundant basic error correction unit
The finite field multiplier unit under three groups of redundant bases to D InCarry out 3 multiplyings, three times the result is designated as D respectively 10-1, D 10-2, D 10-3, subsequently based on the error correction unit of redundant base with D 10-1, D 10-2, D 10-3Carry out the equivalent substitution computing, obtain the replacement result 3 times, be designated as D respectively 30-1, D 30-2, D 30-3Then the ballot device in to D 30-1, D 30-2And D 30-3In put to the vote, if three products are all identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective; If have in three products two identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective, and the subscript n of the coefficient component that the result is made a mistake sends to the location of mistake unit; If three products are different, then the result after the error correction is changed to 0, and the duty indicator signal is changed to 0, the result after the sign error correction is invalid.
At GF (2 m) on, 1, x, x 2, x 3..., x M-1Be one group of polynomial basis, be designated as ψ, two elements of any two elements on it
Figure GDA0000100342150000081
Figure GDA0000100342150000082
Obviously, and 1, x, x 2, x 3..., x M-1, x mAlso be one group of polynomial basis, be designated as ψ 1, 1, x, x 2, x 3..., x M-1, x m, x M+1Be one group of polynomial basis equally, be designated as ψ 2At ψ 1Down
Figure GDA0000100342150000084
A wherein m=b m=0; At ψ 2Down
Figure GDA0000100342150000085
Figure GDA0000100342150000086
A wherein m=b m=a M+1=b M+1=0.
Under ψ, C ( x ) = Σ i = 0 m - 1 c i x i = A ( x ) × B ( x ) = ( Σ i = 0 m - 1 a i x i ) B ( x )
= a 0 B ( x ) + a 1 xB ( x ) + a 2 x 2 B ( x ) + . . . + a m - 1 x m - 1 B ( x )
In order to represent conveniently to introduce among the intermediate variable D [i, j], D [i, j] satisfies following relational expression:
D[i,0]=b i?for?0≤i≤m-1;
D[0,j+1]=D[m-1,j]for?0≤j≤m-2;
D[i+1,j+1]=D[i,j]+p i+1D[m-1,j]for?0≤i,j≤m-2
Through calculating c i = Σ j = 0 m - 1 a j D [ i , j ] .
At ψ 1Down, C = Σ i = 0 m c i 1 x i = AB = ( Σ i = 0 m a i x i ) B
= a 0 B + a 1 xB + a 2 x 2 B + . . . + a m - 1 x m - 1 B + a m x m B
Through calculating c i 1 = Σ j = 0 m a j D [ i , j ] .
At ψ 2Down, C = Σ i = 0 m + 1 c i 2 x i = AB = ( Σ i = 0 m + 1 a i x i ) B
= a 0 B + a 1 xB + a 2 x 2 B + . . . + a m - 1 x m - 1 B + a m x m B + a m + 1 x m + 1 B
Through calculating c i 2 = Σ j = 0 m + 1 a j D [ i , j ] .
For c i, Satisfy following conversion relation
c i = c i 1 + p i c m 1 for?0≤i≤m-1
c i = c i 2 + c m 2 p i - 1 + c m 2 p i + c m + 1 2 p m - 1 p i for?1≤i≤m-1
c 0 = c 0 2 + c m 2 p 0 + c m + 1 2 p m - 1 p 0
The basic error correction strategies of described redundancy is:
Step 1: the finite field multiplier unit receives the binary representation D of Galois field element In
Step 2: the finite field multiplier unit calculates under polynomial basis ψ and carries out the finite field multiplier computing, with product D 10-1Send to error correction unit based on redundant base.
Step 3: the finite field multiplier unit is at polynomial basis ψ 1The finite field multiplier computing is carried out in following calculating, with product D 10-1Send to error correction unit based on redundant base.
Step 4: the finite field multiplier unit is at polynomial basis ψ 2The finite field multiplier computing is carried out in following calculating, with product D 10-1Send to error correction unit based on redundant base.
Step 5: based on the error correction unit of redundant base with the product in the step 2 and 3 and 4 according to coefficient c i,
Figure GDA00001003421500000912
Conversion relation change into the product D under polynomial basis ψ 30-1, D 30-2, D 30-3, get in the lump based on the ballot device in the error correction unit of redundant base, like Fig. 4.
Step 6: if three products are all identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective; If have in three products two identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective, and the subscript n of the coefficient component that the result is made a mistake sends to the location of mistake unit; If three products are different, then the result after the error correction is changed to 0, and the duty indicator signal is changed to 0, the result after the sign error correction is invalid.
Step 7: error correction finishes.
In the present invention, can be based on the error correction unit of redundant base through error correction unit replacement based on redundant operation.
Described redundant operation error correction strategies is:
Step 1: the finite field multiplier unit receives the binary representation D of Galois field element In
Step 2: the finite field multiplier unit calculates under polynomial basis ψ and carries out the finite field multiplier computing, with product D 10-1Send to error correction unit based on redundant base.
Step 3: the finite field multiplier unit calculates under polynomial basis ψ and carries out the finite field multiplier computing, with product D 10-2Send to error correction unit based on redundant base.
Step 4: the finite field multiplier unit calculates under polynomial basis ψ and carries out the finite field multiplier computing, with product D 10-3Send to error correction unit based on redundant base.
Step 5: based on the error correction unit of redundant base with the product D in the step 2 and 3 and 4 10-1, D 10-2, D 10-3Get in the lump based on the ballot device in the error correction unit of redundant base, like Fig. 5.
Step 6: if three products are all identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective; If have in three products two identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective, and the subscript n of the coefficient component that the result is made a mistake sends to the location of mistake unit; If three products are different, then the result after the error correction is changed to 0, and the duty indicator signal is changed to 0, the result after the sign error correction is invalid.
Step 7: error correction finishes.
Four, location of mistake unit
The location of mistake function of hardware system has been realized in location of mistake of the present invention unit.
Described location of mistake strategy is:
Step 1: the location of mistake unit receives the erroneous results position n based on the error correction unit of redundant base, the coefficient component c of characterization result nMade mistakes.
Step 2: the location of mistake unit confirms that the unit that makes a mistake is positioned at the position of systolic arrays, and promptly the unit of dislocation appears at U in the following scope P, q, p+q≤m+n-1 is at D 40(p q), is characterized in the subelement that might make a mistake in the systolic arrays to export all arrays that satisfy p+q≤m+n-1.
Step 3: location of mistake finishes.

Claims (4)

1. implementation method based on the Galois field multiplier of systolic arrays, said Galois field multiplier comprises: location of mistake unit, the error correction unit based on redundant base, finite field multiplier unit, based on the error detection unit of norm; This Galois field multiplier has error detection, error correction and location of mistake function, it is characterized in that,
The performing step of-said error detection function is following:
1) accepts the binary representation D of two Galois field elements based on the error detection unit of norm In
2) the error detection unit based on norm calculates
Figure FDA0000100342140000011
Norm, be designated as N A
3) the error detection unit based on norm calculates
Figure FDA0000100342140000012
Norm, be designated as N B
4) the error detection unit based on norm receives the D as a result from the finite field multiplier unit 10
5) the error detection unit based on norm calculates D 10Norm, be designated as N C
6) the error detection unit based on norm compares N CWith N A* N BWhether identical; If identical, explain that the finite field multiplier computing is correct, then define the error detection of exporting D as a result based on the error detection unit of norm 20Be 1; If inequality, the finite field multiplier operation mistake be described, then define the error detection of exporting D as a result based on the error detection unit of norm 20Be 0;
7) error detection finishes;
The performing step of-said error correction is following:
1) the finite field multiplier unit receives the binary representation D of Galois field element In
2) the finite field multiplier unit carries out the finite field multiplier computing under polynomial basis ψ, with product D 10-1Send to error correction unit based on redundant base;
3) the finite field multiplier unit is at polynomial basis ψ 1Under carry out the finite field multiplier computing, with product D 10-1Send to error correction unit based on redundant base;
4) the finite field multiplier unit is at polynomial basis ψ 2Under carry out the finite field multiplier computing, with product D 10-1Send to error correction unit based on redundant base;
5) based on the error correction unit of redundant base with step 2), 3), 4) in product according to coefficient c i,
Figure FDA0000100342140000013
Conversion relation change into the product D under polynomial basis ψ 30-1, D 30-2, D 30-3, get in the lump based on the ballot device in the error correction unit of redundant base;
6) if three products are all identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective; If have in three products two identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective, and the subscript n of the coefficient component that the result is made a mistake sends to the location of mistake unit; If three products are different, then the result after the error correction is changed to 0, and the duty indicator signal is changed to 0, the result after the sign error correction is invalid;
7) step 7: error correction finishes;
The performing step of-said location of mistake function is following:
1) the location of mistake unit receives the erroneous results position n based on the error correction unit of redundant base, the coefficient component c of characterization result nMade mistakes;
2) the location of mistake unit confirms that the unit that makes a mistake is positioned at the position of systolic arrays, and promptly the unit of dislocation appears at U in the following scope P, q, p+q≤m+n-1 is at D 40(p q), is characterized in the subelement that might make a mistake in the systolic arrays to export all arrays that satisfy p+q≤m+n-1;
3) location of mistake finishes.
2. the method for claim 1 is characterized in that, said finite field multiplier unit is realized according to following formula:
C ( x ) = A ( x ) B ( x ) mod P ( x )
= Σ i = 0 m - 1 b i A ( x ) mod P ( x )
= ( . . . ( ( b m - 1 A ( x ) mod F ( x ) ) x + b m - 2 A ( x ) mod F ( x ) ) x + . . . b 1 A ( x ) mod F ( x ) ) x + b 0 A ( x ) mod P ( x ) ) .
3. the method for claim 1 is characterized in that, uses the error detection module based on liner code to replace the error detection unit based on norm, and corresponding error detection function performing step is:
1) accepts two Galois field elements A (x) and B (x) based on the error detection unit of liner code;
2) A (x) carries out that (n, m) liner code L obtains A *(x), A *(x)=A (x) g (x);
3) calculate C through the finite field multiplier unit *(x)=A *(x) B (x) mod F (x) g (x);
4) judge whether g (x) divides exactly C *(x), be then to go to step 5), otherwise go to step 6);
5) output C (x)=C *(x)/g (x), with it as final multiplication result and export multiplier and calculate correct prompting;
6) prompting of output multiplier miscount;
7) error detection finishes.
4. like claim 1 or 3 described methods, it is characterized in that use based on the error correction unit of redundant operation and replace the error correction unit based on redundant base, corresponding error correction performing step is:
1) the finite field multiplier unit receives the binary representation D of Galois field element In
2) the finite field multiplier unit calculates under polynomial basis ψ and carries out the finite field multiplier computing, with product D 10-1Send to error correction unit based on redundant base;
3) the finite field multiplier unit calculates under polynomial basis ψ and carries out the finite field multiplier computing, with product D 10-2Send to error correction unit based on redundant base;
4) the finite field multiplier unit calculates under polynomial basis ψ and carries out the finite field multiplier computing, with product D 10-3Send to error correction unit based on redundant base;
5) based on the error correction unit of redundant base with step 2), 3), 4) in product D 10-1, D 10-2, D 10-3Get in the lump based on the ballot device in the error correction unit of redundant base;
6) if three products are all identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective; If have in three products two identical, this identical product D of the device of then voting output 30, and the duty indicator signal being changed to 1, the result who characterizes after the error correction is effective, and the subscript n of the coefficient component that the result is made a mistake sends to the location of mistake unit; If three products are different, then the result after the error correction is changed to 0, and the duty indicator signal is changed to 0, the result after the sign error correction is invalid;
7) error correction finishes.
CN2010105637338A 2010-11-29 2010-11-29 Implementation method of finite field multiplying unit with functions of detecting, correcting and locating error Expired - Fee Related CN102073477B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010105637338A CN102073477B (en) 2010-11-29 2010-11-29 Implementation method of finite field multiplying unit with functions of detecting, correcting and locating error

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010105637338A CN102073477B (en) 2010-11-29 2010-11-29 Implementation method of finite field multiplying unit with functions of detecting, correcting and locating error

Publications (2)

Publication Number Publication Date
CN102073477A CN102073477A (en) 2011-05-25
CN102073477B true CN102073477B (en) 2012-05-30

Family

ID=44032028

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010105637338A Expired - Fee Related CN102073477B (en) 2010-11-29 2010-11-29 Implementation method of finite field multiplying unit with functions of detecting, correcting and locating error

Country Status (1)

Country Link
CN (1) CN102073477B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103186360B (en) * 2013-04-03 2016-08-03 哈尔滨工业大学深圳研究生院 Binary system Galois field multiplier at the bottom of rapid computations many bits series connection pulsation double-basis
CN114064331B (en) * 2020-07-29 2023-01-03 中国科学院深圳先进技术研究院 Fault-tolerant computing method, fault-tolerant computing device, storage medium, and computer apparatus

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6772385B2 (en) * 2000-01-31 2004-08-03 Sanyo Electric Co., Ltd. Error-correcting device and decoder enabling fast error correction with reduced circuit scale
CN101207455B (en) * 2006-12-20 2010-12-15 华为技术有限公司 Method and apparatus for error detection and error correction of synchronizing frame

Also Published As

Publication number Publication date
CN102073477A (en) 2011-05-25

Similar Documents

Publication Publication Date Title
Wang et al. Algebraic manipulation detection codes and their applications for design of secure cryptographic devices
Fan et al. Overlap-free Karatsuba–Ofman polynomial multiplication algorithms
Reyhani-Masoleh et al. Fault detection architectures for field multiplication using polynomial bases
Mozaffari-Kermani et al. A high-performance fault diagnosis approach for the AES SubBytes utilizing mixed bases
Karpovsky et al. Design of strongly secure communication and computation channels by nonlinear error detecting codes
Cintas-Canto et al. Reliable architectures for finite field multipliers using cyclic codes on FPGA utilized in classic and post-quantum cryptography
Rao Joint encryption and error correction schemes
Hariri et al. Concurrent error detection in montgomery multiplication over binary extension fields
Tomashevich et al. Protecting cryptographic hardware against malicious attacks by nonlinear robust codes
CN108632038A (en) Information processing unit
Chiou et al. Concurrent error detection and correction in Gaussian normal basis multiplier over GF (2^ m)
Bayat-Sarmadi et al. Concurrent error detection in finite-field arithmetic operations using pipelined and systolic architectures
CN102073477B (en) Implementation method of finite field multiplying unit with functions of detecting, correcting and locating error
Wang et al. Reliable and secure memories based on algebraic manipulation correction codes
US20140013181A1 (en) Error Correction Coding Using Large Fields
Karp et al. Detection and Correction of Malicious and Natural Faults in Cryptographic Modules.
US9191029B2 (en) Additional error correction apparatus and method
Chuang et al. Fault-tolerant Gaussian normal basis multiplier over GF (2m)
Mathew et al. Multiple bit error detection and correction in GF arithmetic circuits
Hariri et al. Fault detection structures for the Montgomery multiplication over binary extension fields
Chiou et al. Concurrent error detection and correction in dual basis multiplier over GF (2m)
Saffar et al. Fault tolerant non-linear techniques for scalar multiplication in ECC
Chiou et al. Concurrent error detection in semi-systolic dual basis multiplier over GF (2m) using self-checking alternating logic
Lee Concurrent error detection in digit-serial normal basis multiplication over GF (2m)
Geran et al. A CRC-based concurrent fault detection architecture for Galois/Counter Mode (GCM)

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120530

Termination date: 20151129

CF01 Termination of patent right due to non-payment of annual fee