CN107425974A - The Hardware Implementation of KP computings on a kind of FourQ elliptic curves - Google Patents
The Hardware Implementation of KP computings on a kind of FourQ elliptic curves Download PDFInfo
- Publication number
- CN107425974A CN107425974A CN201710351975.2A CN201710351975A CN107425974A CN 107425974 A CN107425974 A CN 107425974A CN 201710351975 A CN201710351975 A CN 201710351975A CN 107425974 A CN107425974 A CN 107425974A
- Authority
- CN
- China
- Prior art keywords
- mrow
- msup
- msub
- fourq
- elliptic curves
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Analysis (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Complex Calculations (AREA)
- Magnetic Resonance Imaging Apparatus (AREA)
- Other Investigation Or Analysis Of Materials By Electrical Means (AREA)
Abstract
The present invention proposes a kind of Hardware Implementation of KP computings on FourQ elliptic curves, for realizing the KP computings on FourQ elliptic curves, and reduces complexity of the KP computings of elliptic curve in hardware implementation process, realizes that step is:Select the basic point P (x, y) and KP computing scalars K on FourQ elliptic curves;Build homomorphism computing ψ (P), the φ (P) and ψ (φ (P)) on FourQ elliptic curves;Build and concordance list is pre-stored on FourQ elliptic curves;KP computing scalars K is decomposed;Build the point add operation and point doubling on FourQ elliptic curves;The hardware structure of KP computings is built on FourQ elliptic curves.The system resource of the present invention is unrestricted and safe, on the elliptic curve cryptosystems such as digital signature and encryption key distribution.
Description
Technical field
The invention belongs to field of information security technology, and in particular to a kind of hardware of KP computings on FourQ elliptic curves is real
Existing method.On the elliptic curve cryptosystems such as digital signature and encryption key distribution.
Background technology
Digital signature is a kind of important technology of information privacy, the method for differentiating digital information, and digital signature uses
The technology in public key encryption field realizes, with the development of information security, people to the security of signature algorithm, perform speed and
Resource consumption, there is higher requirement.The hardware realization of digital signature is the important implementation of information privacy, and elliptic curve
Digital signature in cipher system is most widely used one kind, and the KP computings of elliptic curve are the core of elliptic curve cryptosystem
Where the heart.
Elliptic curve is a kind of geometric object that property is extremely abundant in mathematics, and elliptic curve cryptosystem is that one kind is based on
The public-key cryptosystem of dispersed accumulation, traditional elliptic curve include the elliptic curve based on prime field, based on extension field
Elliptic curve and Koblitz elliptic curves.KP computings are that the important operation of private key, KP computings are generated in elliptic curve cryptosystem
Hardware Implementation, be elliptic curve cryptosystem Hardware Implementation core, the KP computings of conventional elliptical curve
Hardware Implementation usually require to build disassembly in the binary system algoritic module, build point processing module and build basic logic operations
Unit module, complexity is high in commission and has that system resource is limited and operational efficiency is held for the KP computings of conventional elliptical curve
, the drawbacks of certain be present in terms of hardware realization in the problems such as row environment influences.
FourQ elliptic curves are a new branches of elliptic curve, FourQ elliptic curves in Craig Costello and
Paper " the FourQ elliptic curves based on Q elliptic curves structure " (Springer, Heidelberg that Patrick Longa are delivered
(2015) vol.9452, pp.214-235) in be suggested.FourQ elliptic curves are that a kind of security and performance are very prominent
Elliptic curve, there is parameter the to float clear superiority such as small, safety, order of a curve be sufficiently large also have consumption on hardware realization
The advantages that resource is few, and execution efficiency is high.KP computings do not have specific Hardware Implementation on FourQ elliptic curves at present.
The content of the invention
The defects of it is an object of the invention to overcome above-mentioned prior art, it is proposed that KP is transported on a kind of FourQ elliptic curves
The Hardware Implementation of calculation, the hardware structure by building KP computings on FourQ elliptic curves are realized on FourQ elliptic curves
KP computings, and reduce complexity of the KP computings of elliptic curve in hardware implementation process.
The present invention technical thought be:Transported by homomorphism in the decomposition to KP computing scalars K and structure FourQ elliptic curves
Calculate, and give the specific execution flow of KP computings, then build logical operation module, build prestoring for FourQ elliptic curves
Concordance list module is stored up, build the logic processing module of FourQ elliptic curves and builds the point processing module of FourQ elliptic curves,
The Hardware Implementation of KP computings on FourQ elliptic curves is obtained according to above step.
According to above technical thought, realize that the technical scheme that the object of the invention is taken comprises the following steps:
(1) FourQ elliptic curves are selectedOn basic point P (x, y) and KP computing scalars K:
(1a) defines FourQ elliptic curvesAccording to FourQ elliptic curvesNormal equation, it is ellipse in FourQ
Circular curveUpper random selection basic point P (x, y), wherein, x represents FourQ elliptic curvesThe horizontal seat of place coordinate system
Mark, y represent FourQ elliptic curvesThe ordinate of place coordinate system;
(1b) selects one and is less than FourQ elliptic curvesThe value of normal equation rank, as KP computing scalars K;
(2) FourQ elliptic curves are builtOn homomorphism computing ψ (P):
(2a) defines three FourQ elliptic curves:ε/F andWherein, F is common finite field,It is flat
Square domain,For FourQ elliptic curvesImplicit representation, ε be FourQ elliptic curves ε/F implicit representation, εwIt is ellipse for FourQ
Circular curveImplicit representation;
(2b) defines three FourQ elliptic curvesε/F andMapping expression formula and FourQ elliptic curvesOn homomorphism computing ψw(P):Define from FourQ elliptic curvesUpper point is to FourQ elliptic curvesUpper point
Relationship map expression formula δ, from FourQ elliptic curvesUpper point is to FourQ elliptic curvesThe relation mapping table of upper point
Up to formula δ-1, from FourQ elliptic curves ε/F point to FourQ elliptic curvesThe relationship map expression formula τ of upper point, from FourQ
Elliptic curveUpper point expresses formula to the relationship map put on FourQ elliptic curves ε/FDefine FourQ elliptic curves simultaneouslyOn homomorphism computing ψw(P);
(2c) expresses formula δ, δ according to relationship map-1, τ andAnd homomorphism computing ψw(P) FourQ elliptic curves, are derived
On homomorphism computing ψ (P);
(3) FourQ elliptic curves are derivedOn homomorphism computing φ (P):According to FourQ elliptic curvesOn
Homomorphism computing ψ (P), derive homomorphism computing ψ (P) eigenvalue λψ', and according to homomorphism computing ψ (P) eigenvalue λψ', derive homomorphism fortune
Calculate φ (P) eigenvalue λφ', further according to homomorphism computing φ (P) eigenvalue λφ' derive FourQ elliptic curvesOn it is same
State computing φ (P);
(4) FourQ elliptic curves are builtOn homomorphism computing ψ (φ (P)):By the knot of homomorphism computing φ (P) computing
Input value of the fruit value as homomorphism computing ψ (P), obtains FourQ elliptic curvesOn homomorphism computing ψ (φ (P));
(5) FourQ elliptic curves are builtUpper pre-stored concordance list:
(5a) utilizes FourQ elliptic curvesOn homomorphism computing φ (P), homomorphism computing ψ (P) and homomorphism computing ψ
(φ (P)), build FourQ elliptic curvesUpper pre-stored T [u] expression formula:
T [u]=P+ [u0]φ(P)+[u1]ψ(P)+[u2]ψ(φ(P))
Wherein, u is integer and 0≤u≤7, u2,u1,u0For u binary representation;
(5b) utilizes FourQ elliptic curvesU=0, u=1, u=2, u are worked as in upper pre-stored T [u] expression formula, calculating
=3, the pre-stored T [u] when u=4, u=5 and u=6, obtains FourQ elliptic curvesOn pre-stored T [0], T [1], T
[2], T [3], T [4], T [5] and T [6];
(5c) utilizes FourQ elliptic curvesOn pre-stored T [0], T [1], T [2], T [3], T [4], T [5] and T
[6], FourQ elliptic curves are builtUpper pre-stored concordance list;
(6) KP computing scalars K is decomposed, obtains parameter vector (d64,.....,d0) and conceptual vector
(m64,.....,m0), wherein, d64And d0For the 65th and first parameter vector, m64And m065th and first
Bit flag vector;
(7) FourQ elliptic curves are builtOn point add operation and point doubling;
(8) in FourQ elliptic curvesOn build the hardware structures of KP computings:
(8a) is in FourQ elliptic curvesOn, build including add operation submodule, modular multiplication submodule and ask
The logical operation module of inverse operation submodule, for providing basic computing for pre-stored concordance list module and point processing module and patrolling
Volume;
(8b) utilizes FourQ elliptic curvesOn homomorphism computing φ (P), homomorphism computing ψ (P) and homomorphism computing ψ
(φ (P)), in FourQ elliptic curvesOn build pre-stored concordance list module, prestored for being provided for logic processing module
Stored Value;
(8c) utilizes parameter vector (d64,.....,d0) and conceptual vector (m64,.....,m0), in FourQ elliptic curvesOn build data processing module, for providing the data of logic judgment for logic processing module;
(8d) utilizes FourQ elliptic curvesOn point add operation and point doubling, in FourQ elliptic curves
On build point processing module, for providing point add operation and point doubling for logic processing module;
(8e) utilizes FourQ elliptic curvesUpper pre-stored concordance list, parameter vector (d64,.....,d0) and mark
Vector (m64,.....,m0) and FourQ elliptic curvesOn point add operation and point doubling, in FourQ elliptic curvesOn build logic processing module, for obtaining FourQ elliptic curvesThe end value of upper KP computings.
The present invention compared with prior art, has advantages below:
(1) present invention is by building logical operation module, pre-stored concordance list module, logic processing module, point processing mould
Block and logic processing module, realize a kind of Hardware Implementation of KP computings on FourQ elliptic curves.
(2) present invention improves the arithmetic speed of KP computings, by KP computings by establishing pre-stored concordance list module
Scalar K is decomposed and is utilized the computings such as montgomery modulo multiplication, is improved security, is reduced system resource occupancy.
Brief description of the drawings
Fig. 1 is the implementation process figure of the present invention;
Fig. 2 is to realize the hardware architecture structural representation that the present invention obtains;
Embodiment
Below in conjunction with the accompanying drawings and specific embodiment, the invention will be further described.
Reference picture 1, the Hardware Implementation of KP computings, comprises the following steps on a kind of FourQ elliptic curves:
Step 1, FourQ elliptic curves are selectedOn basic point P (x, y) and KP computing scalars K:
(1a) defines FourQ elliptic curvesAccording to normal equation in FourQ elliptic curvesUpper random selection
Basic point P (x, y), normal equation are:Wherein, x represents FourQ elliptic curvesInstitute
In the abscissa of coordinate system, y represents FourQ elliptic curvesThe ordinate of place coordinate system, d are plural number, and χ is that FourQ is ellipse
Circular curveImplicit representation,For a square domain, and d=
125317048443780598345676279555970305165*i+42058576488057 77768770, i indicate for plural number;
(1b) selects one and is less than FourQ elliptic curvesThe value of normal equation rank, as KP computing scalars K.
Step 2, FourQ elliptic curves are builtOn homomorphism computing ψ (P):
(2a) defines three FourQ elliptic curves:ε/F andFourQ elliptic curvesNormal equation
For:FourQ elliptic curves ε/F normal equation is:ε/F:-x2+y2=1+dx2y2,
FourQ elliptic curvesNormal equation be:
Wherein,For a square domain, F is common finite field,For FourQ elliptic curvesPlural d in normal equation
Conjugate complex number, εwFor FourQ elliptic curvesImplicit representation, ε be FourQ elliptic curves ε/F implicit representation,For
FourQ elliptic curvesImplicit representation;
(2b) defines three FourQ elliptic curvesε/F andMapping expression formula and FourQ elliptic curvesOn homomorphism computing ψw(P):Define respectively from FourQ elliptic curvesUpper point is to FourQ elliptic curvesOn
The relationship map expression formula of pointFrom FourQ elliptic curvesUpper point is oval bent to FourQ
LineThe relationship map expression formula δ of upper point-1:From FourQ elliptic curves ε/F
Point arrives FourQ elliptic curvesThe relationship map expression formula τ of upper point:From FourQ
Elliptic curveUpper point expresses formula to the relationship map put on FourQ elliptic curves ε/F Together
Shi Dingyi FourQ elliptic curvesOn homomorphism computing
Wherein, γ be constant andc0,2,0,1、c9,0,4,0For ci,j,k,lThe calculated value of expression formula, wherein,P=2127-1,
(2c), which is utilized, maps expression formula δ, δ-1And FourQ elliptic curvesOn homomorphism computing ψw(P) it is multiplied, obtains
To expression formula:
(2d) utilizes expression formulaψw(P) it is multiplied with τ, it can be deduced that FourQ elliptic curvesOn homomorphism computingWherein, c-2,3,-1,0、c-140,99,0,0、c-76,57,-36,24And c-9,-6,4,3For ci,j,k,lThe calculating of expression formula
Value.
Step 3, FourQ elliptic curves are derivedOn homomorphism computing φ (P):
(3a) is according to FourQ elliptic curvesOn homomorphism computing ψ (P), calculate its characteristic value
And λψ'=- λψmodN
Wherein, N is that the binary number of 256, r=15437785290780909242, and α=V/r ∈ Z, Z are integer, V=
49293975489306344711751403123270296814;
(3b) utilizes expression formula 40v2=4p2-tε 2Derive FourQ elliptic curvesOn homomorphism computing φ (P)
Characteristic value:
λφ'=- λφmodN
Wherein, tε=136368062447564341573735631776713817674;
(3c) derives FourQ elliptic curvesOn homomorphism computing φ (P):According to FourQ elliptic curvesOn
Homomorphism computing φ (P) eigenvalue λφ', calculate FourQ elliptic curvesOn homomorphism computing φ (P) abscissa
xφWith ordinate yφ:
Then FourQ elliptic curvesOn homomorphism computing φ (P) be:φ (P)=(xφ,yφ), wherein, c7,5,3,2、
c21,15,10,7And c3,2,1,1For ci,j,k,lThe calculated value of expression formula.
Step 4, FourQ elliptic curves are builtOn homomorphism computing ψ (φ (P)):By homomorphism computing φ (P) computing
Input value of the end value as homomorphism computing ψ (P), obtain FourQ elliptic curvesOn homomorphism computing ψ (φ (P)).
Step 5, FourQ elliptic curves are builtOn pre-stored concordance list:
(5a) utilizes FourQ elliptic curvesOn homomorphism computing φ (P), homomorphism computing ψ (P) and homomorphism computing ψ
(φ (P)), build FourQ elliptic curvesOn pre-stored T [u] expression formula:
T [u]=P+ [u0]φ(P)+[u1]ψ(P)+[u2]ψ(φ(P))
Wherein, u is integer and 0≤u≤7, u2,u1,u0For u binary representation;
(5b) utilizes FourQ elliptic curvesOn pre-stored T [u] expression formula, calculating work as u=0, u=1, u=2, u
=3, when u=4, u=5 and u=6, the value of T [u] expression formula is pre-stored, obtains FourQ elliptic curvesOn it is pre-stored:T
[0], T [1], T [2], T [3], T [4], T [5] and T [6];
(5c) utilizes FourQ elliptic curvesOn it is pre-stored:T [0], T [1], T [2], T [3], T [4], T [5] and T
[6] FourQ elliptic curves are builtOn pre-stored concordance list, can exchange KP computings for a small amount of storage performs effect
Rate;
Step 6, KP computing scalars K is decomposed, obtains parameter vector (d64,.....,d0) and conceptual vector
(m64,.....,m0), wherein, d64And d0For the 65th and first parameter vector, m64And m065th and first
Bit flag vector:
(6a) selects KP computings scalar K to be decomposed substrate B=(b1,b2,b3,b4),
Wherein, b1,b2,b3,b4For the subvector in substrate B, b1,b2,b3,b4Respectively:
224*b1:=(16 (- 60 α+13r-10), 4 (- 10 α -3r+12), 4 (- 15 α+5r-13), -13 α -6r+3)
8*b2:=(32 (5 α-r), 8,8,2 α+r)
224*b3:=(16 (80 α -15r+18), 4 (18 α -3r-16) 4 (- 15-9r+15), 15 α+8r+3 α)
448*b4:=(16 (- 360 α+77r+42), 4 (42 α+17r+72), 4 (85 α -21r-77), (- 77 α -36r-17))
(6b) definition conversion base
Wherein,To change the subvector in base A,Respectively:
(6c) is according to KP computing scalars K, substrate B and conversion base A, calculating KP computing scalars K decomposition value (a1,a2,a3,
a4):
Wherein,0≤ai≤264I=1,2,3,4, biFor substrate B coordinate;
Decomposition value (a of (6d) to KP computing scalars K1,a2,a3,a4) encoded, obtain parameter vector (d64,.....,
d0) and conceptual vector (m64,.....,m0):
(6d1) defines initial parameter m64And z, and carry out assignment:m64=1, z=0;
(6d2) is if z<64, then perform assignment:dz=0, mz=-a1[z+1], j=2, perform (6d3) and otherwise terminate;
(6d3) performs assignment if j≤4:
dz=dz+(aj[0]<<(j-2)), c=(az[z+1]|aj[0])^a1[z+1], aj=(aj>>1)+c, j++, otherwise
Perform (6d4);
(6d4) carries out add-one operation to z, performs (6d2);
(6d5) obtains parameter vector (d64,.....,d0) and conceptual vector (m64,.....,m0)。
Step 7, FourQ elliptic curves are builtOn point add operation and point doubling:
(7a) randomly chooses FourQ elliptic curvesOn point p (x1,y1)、q(x2,y2)、r(x4,y4), according to
Huseyin Hisi theory:
FourQ elliptic curvesPoint add operation on conventional coordinates (x, y) is:
FourQ elliptic curvesPoint doubling on conventional coordinates (x, y) is:
Wherein:A=-1, x1,x2,x3,x4,x5For the abscissa in coordinate system, y1,y2,y3,y4,y5Vertical seat in coordinate system
Mark;
(7b) is by FourQ elliptic curvesUpper (x, y) coordinate system is converted into FourQ elliptic curvesUpper (X, Y,
Z, T) coordinate system, conversion regime is:X=X, y=Y, T=XY/Z, Z are depending on actual conditions, according to FourQ elliptic curvesUpper (X, Y, Z, T) coordinate system, carries out the conversion of coordinate:
(i) by (x1,y1) it is converted into (X1, Y1, Z1, T1);
(ii) by (x2,y2) it is converted into (X2, Y2, Z2, T2);
(iii) by (x3,y3) it is converted into (X3, Y3, Z3, T3);
(iv) by (x4,y4) it is converted into (X4, Y4, Z4, T4);
(v) by (x5,y5) it is converted into (X5, Y5, Z5, T5);
(7c) is according to FourQ elliptic curves(X, Y, Z, T) coordinate system, FourQ elliptic curvesOn point
Add computing p+q=K (x3,y3) be converted into:
(X1, Y1, Z1, T1)+(X2, Y2, Z2, T2)=(X3, Y3, Z3, T3)
Specifically coordinate is respectively:
X3=(X1Y2-Y1X2)(T1Z2+Z1T2);
Y3=(Y1Y2+aX1X2)(T1Z2-Z1T2);
Z3=(Y1Y2+aX1X2)(X1Y2-Y1X2);
T3=(T1Z2+Z1T2)(T1Z2-Z1T2);
FourQ elliptic curves χ/Fp 2Upper point doubling W (x5,y5)=2r (x4,y4) be converted into:2(X4, Y4, Z4, T4)=
(X5, Y5, Z5, T5),
Specifically coordinate is respectively:
X5=2X4Y4(2Z4 2-Y4 2-aX4 2);
Y5=(Y4+aX4 2)(Y4 2-aX4 2);
Z5=(Y4 2+aX4 2)(2Z4 2-Y4 2-aX4 2);
T5=2X4Y4(Y4 2-aX4 2)。
Step 8, reference picture 2, FourQ elliptic curves are builtThe hardware structure of upper KP computings:
(8a) builds the logical operation mould including add operation submodule, modular multiplication submodule and inversion operation submodule
Block, logical operation submodule are respectively:
(i) add operation submodule is built:On square domain, add operation is XOR, is utilizedOn square domain
XOR build add operation module;
(ii) modular multiplication submodule is built:On square domain, from montgomery modulo multiplication as modular multiplication, modular multiplication
Operation expression is:C=a*bmod p are rightMiddle element a and b carry out Montgomery translation operation, obtain A=a*R mod p
With B=b*R mod p, by modular multiplication expression formula c=a*bmod p, C=A*B mod p are converted into, by Montgomery also
Former computing c=C*R-1Mod p obtain the result c of Montgomery modular multiplication, wherein,D=232, n is positive integer,
R=dnAnd p<R;
(iii) inversion operation submodule is built:On square domain, inverted from Montgomery as inversion operation,It is rightMiddle element v Montgomeries translation operation, obtains V=v*R mod p, is expressed using Montgomery inversion operation
Formula:U=V-1R2Mod p, computing u=U*R is reduced by Montgomery-1Mod p obtain the result u of Montgomery inversion operation.
(8b) utilizes FourQ elliptic curvesOn homomorphism computing φ (P), homomorphism computing ψ (P) and homomorphism computing ψ
(φ (P)), in FourQ elliptic curvesOn build pre-stored concordance list module, prestored for being provided for logic processing module
Stored Value;
(8c) utilizes parameter vector (d64,.....,d0) and conceptual vector (m64,.....,m0), in FourQ elliptic curvesOn build data processing module, for providing the data of logic judgment for logic processing module;
(8d) utilizes FourQ elliptic curvesOn point add operation and point doubling, in FourQ elliptic curves
On build point processing module, for providing point add operation and point doubling for logic processing module;
(8e) utilizes FourQ elliptic curvesUpper pre-stored concordance list, parameter vector (d64,.....,d0) and mark
Vector (m64,.....,m0) and FourQ elliptic curvesOn point add operation and point doubling, in FourQ elliptic curvesOn build logic processing module, for obtaining FourQ elliptic curvesThe end value of upper KP computings
Conceptual vector (the m that (8e1) decomposes to obtain using KP computing scalars K64,.....,m0), defconstant si, sentenced
It is disconnected, if mi=1, then si=1, otherwise si=-1, wherein, miFor (m64,.....,m0) in value, i is integer and 0≤i≤64;
(8e2) utilizes s64With FourQ elliptic curvesOn pre-stored concordance list in T [d64], perform computing s64T
[d64] obtain initial value Q, wherein s64For siMiddle i=64 value;
(8e3) performs circulate operations of the i from 63 to 0:
(i) FourQ elliptic curves are performed to initial value QUpper point doubling, result is assigned to Q again;
(ii) to FourQ elliptic curvesThe Q and s that upper point doubling obtainsiT[di] perform FourQ elliptic curvesUpper point add operation, result is assigned to Q again;
(8e4) obtains FourQ elliptic curvesUpper logic processing module.
Claims (10)
1. the Hardware Implementation of KP computings, comprises the following steps on a kind of FourQ elliptic curves:
(1) FourQ elliptic curves are selectedOn basic point P (x, y) and KP computing scalars K:
(1a) defines FourQ elliptic curvesAccording to FourQ elliptic curvesNormal equation, it is oval bent in FourQ
LineUpper random selection basic point P (x, y), wherein, x represents FourQ elliptic curvesThe abscissa of place coordinate system, y
Represent FourQ elliptic curvesThe ordinate of place coordinate system;
(1b) selects one and is less than FourQ elliptic curvesThe value of normal equation rank, as KP computing scalars K;
(2) FourQ elliptic curves are builtOn homomorphism computing ψ (P):
(2a) defines three FourQ elliptic curves:ε/F andWherein, F is common finite field,For a square domain,
For FourQ elliptic curvesImplicit representation, ε be FourQ elliptic curves ε/F implicit representation, εwFor FourQ elliptic curvesImplicit representation;
(2b) defines three FourQ elliptic curvesε/F andMapping expression formula and FourQ elliptic curves
On homomorphism computing ψw(P):Define from FourQ elliptic curvesUpper point is to FourQ elliptic curvesThe relation of upper point is reflected
Penetrate expression formula δ, from FourQ elliptic curvesUpper point is to FourQ elliptic curvesThe relationship map expression formula δ of upper point-1、
Put from FourQ elliptic curves ε/F to FourQ elliptic curvesIt is the relationship map expression formula τ of upper point, oval bent from FourQ
LineUpper point expresses formula to the relationship map put on FourQ elliptic curves ε/FDefine FourQ elliptic curves simultaneously
On homomorphism computing ψw(P);
(2c) expresses formula δ, δ according to relationship map-1, τ andAnd homomorphism computing ψw(P) FourQ elliptic curves, are derivedOn
Homomorphism computing ψ (P);
(3) FourQ elliptic curves are derivedOn homomorphism computing φ (P):According to FourQ elliptic curvesOn homomorphism
Computing ψ (P), derive homomorphism computing ψ (P) eigenvalue λψ', and according to homomorphism computing ψ (P) eigenvalue λψ', derive homomorphism computing φ
(P) eigenvalue λφ', further according to homomorphism computing φ (P) eigenvalue λφ' derive FourQ elliptic curvesOn homomorphism fortune
Calculate φ (P);
(4) FourQ elliptic curves are builtOn homomorphism computing ψ (φ (P)):By the end value of homomorphism computing φ (P) computing
As homomorphism computing ψ (P) input value, FourQ elliptic curves are obtainedOn homomorphism computing ψ (φ (P));
(5) FourQ elliptic curves are builtUpper pre-stored concordance list:
(5a) utilizes FourQ elliptic curvesOn homomorphism computing φ (P), homomorphism computing ψ (P) and homomorphism computing ψ (φ
(P) FourQ elliptic curves), are builtUpper pre-stored T [u] expression formula:
T [u]=P+ [u0]φ(P)+[u1]ψ(P)+[u2]ψ(φ(P))
Wherein, u is integer and 0≤u≤7, u2, u1, u0For u binary representation;
(5b) utilizes FourQ elliptic curvesUpper pre-stored T [u] expression formula, calculate when u=0, u=1, u=2, u=3,
Pre-stored T [u] when u=4, u=5 and u=6, obtains FourQ elliptic curvesOn pre-stored T [0], T [1], T [2],
T [3], T [4], T [5] and T [6];
(5c) utilizes FourQ elliptic curvesOn pre-stored T [0], T [1], T [2], T [3], T [4], T [5] and T [6], structure
Build FourQ elliptic curvesUpper pre-stored concordance list;
(6) KP computing scalars K is decomposed, obtains parameter vector (d64... .., d0) and conceptual vector (m64... ..,
m0), wherein, d64And d0For the 65th and first parameter vector, m64And m065th and the first bit flag vector;
(7) FourQ elliptic curves are builtOn point add operation and point doubling;
(8) in FourQ elliptic curvesOn build the hardware structures of KP computings:
(8a) is in FourQ elliptic curvesOn, build including add operation submodule, modular multiplication submodule and inversion operation
The logical operation module of submodule, for providing basic arithmetic logic for pre-stored concordance list module and point processing module;
(8b) utilizes FourQ elliptic curvesOn homomorphism computing φ (P), homomorphism computing ψ (P) and homomorphism computing ψ (φ
(P)), in FourQ elliptic curvesOn build pre-stored concordance list module, it is pre-stored for being provided for logic processing module
Value;
(8c) utilizes parameter vector (d64... .., d0) and conceptual vector (m64... .., m0), in FourQ elliptic curves
On build data processing module, for providing the data of logic judgment for logic processing module;
(8d) utilizes FourQ elliptic curvesOn point add operation and point doubling, in FourQ elliptic curvesOn take
Lay foundations computing module, for providing point add operation and point doubling for logic processing module;
(8e) utilizes FourQ elliptic curvesUpper pre-stored concordance list, parameter vector (d64... .., d0) and conceptual vector
(m64... .., m0) and FourQ elliptic curvesOn point add operation and point doubling, in FourQ elliptic curves
On build logic processing module, for obtaining FourQ elliptic curvesThe end value of upper KP computings.
2. the Hardware Implementation of KP computings on a kind of FourQ elliptic curves according to claim 1, it is characterised in that:
FourQ elliptic curves described in step (1a)Normal equation, its expression formula is:
<mrow>
<mi>&chi;</mi>
<mo>/</mo>
<msub>
<mi>F</mi>
<msup>
<mi>p</mi>
<mn>2</mn>
</msup>
</msub>
<mo>:</mo>
<mo>-</mo>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>=</mo>
<mn>1</mn>
<mo>+</mo>
<msup>
<mi>dx</mi>
<mn>2</mn>
</msup>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
</mrow>
Wherein, d is plural number, and χ is FourQ elliptic curvesImplicit representation,For a square domain, and d=
125317048443780598345676279555970305165*i+42058576488057 77768770, i indicate for plural number.
3. the Hardware Implementation of KP computings on a kind of FourQ elliptic curves according to claim 1, it is characterised in that:
Three FourQ elliptic curves described in step (2a)ε/F andIts normal equation is respectively:
(i) FourQ elliptic curvesNormal equation be:
<mrow>
<mover>
<mi>&epsiv;</mi>
<mo>~</mo>
</mover>
<mo>/</mo>
<mi>F</mi>
<mo>:</mo>
<mo>-</mo>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>=</mo>
<mn>1</mn>
<mo>+</mo>
<mover>
<mi>d</mi>
<mo>~</mo>
</mover>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
</mrow>
Wherein,For FourQ elliptic curvesPlural d conjugate complex number in normal equation;
(ii) FourQ elliptic curves ε/F normal equation is:
ε/F:-x2+y2=1+dx2y2
(iii) FourQ elliptic curvesNormal equation be:
<mrow>
<msub>
<mi>&epsiv;</mi>
<mi>w</mi>
</msub>
<mo>/</mo>
<msub>
<mi>F</mi>
<msup>
<mi>p</mi>
<mn>2</mn>
</msup>
</msub>
<mo>:</mo>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>=</mo>
<msup>
<mi>x</mi>
<mn>3</mn>
</msup>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mrow>
<mn>30</mn>
<mo>-</mo>
<mn>8</mn>
<msqrt>
<mn>5</mn>
</msqrt>
</mrow>
<mo>)</mo>
</mrow>
<mi>x</mi>
<mo>+</mo>
<mrow>
<mo>(</mo>
<mrow>
<mn>56</mn>
<mo>-</mo>
<mn>32</mn>
<msqrt>
<mn>5</mn>
</msqrt>
</mrow>
<mo>)</mo>
</mrow>
<mo>.</mo>
</mrow>
4. the Hardware Implementation of KP computings on a kind of FourQ elliptic curves according to claim 1, it is characterised in that:
Three FourQ elliptic curves described in step (2b)ε/F andMapping expression formula and FourQ elliptic curvesOn homomorphism computing ψw(P), its expression formula is respectively:
(i) FourQ elliptic curvesUpper point is to FourQ elliptic curvesThe relationship map expression formula δ of upper point:
<mrow>
<mi>&delta;</mi>
<mo>:</mo>
<mrow>
<mo>(</mo>
<mrow>
<mfrac>
<mrow>
<mi>&gamma;</mi>
<mrow>
<mo>(</mo>
<mrow>
<mi>x</mi>
<mo>-</mo>
<mn>4</mn>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mi>y</mi>
</mfrac>
<mo>,</mo>
<mfrac>
<mrow>
<mi>x</mi>
<mo>-</mo>
<mn>4</mn>
<mo>-</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>0</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mn>0</mn>
<mo>,</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
<mrow>
<mi>x</mi>
<mo>-</mo>
<mn>4</mn>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>0</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mn>0</mn>
<mo>,</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
</mfrac>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
Wherein, γ be constant andc0,2,0,1For cI, j, k, lThe calculated value of expression formula, I, j, k, lFor integer combinations;
(ii) FourQ elliptic curves are definedUpper point is to FourQ elliptic curvesThe relationship map expression formula δ of upper point-1:
<mrow>
<msup>
<mi>&delta;</mi>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<mo>:</mo>
<mrow>
<mo>(</mo>
<mrow>
<mfrac>
<mrow>
<msub>
<mi>c</mi>
<mrow>
<mn>0</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mn>0</mn>
<mo>,</mo>
<mn>1</mn>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mrow>
<mi>y</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mn>1</mn>
<mo>-</mo>
<mi>y</mi>
</mrow>
</mfrac>
<mo>+</mo>
<mn>4</mn>
<mo>,</mo>
<mfrac>
<mrow>
<msub>
<mi>c</mi>
<mrow>
<mn>0</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mn>0</mn>
<mo>,</mo>
<mn>1</mn>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mrow>
<mi>y</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mo>)</mo>
</mrow>
<mi>&gamma;</mi>
</mrow>
<mrow>
<mi>x</mi>
<mrow>
<mo>(</mo>
<mrow>
<mn>1</mn>
<mo>-</mo>
<mi>y</mi>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
</mfrac>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
(iii) define point on FourQ elliptic curves ε/F and arrive FourQ elliptic curvesThe relationship map expression formula τ of upper point:
<mrow>
<mi>&tau;</mi>
<mo>:</mo>
<mrow>
<mo>(</mo>
<mrow>
<mfrac>
<mrow>
<mn>2</mn>
<mi>x</mi>
<mi>y</mi>
</mrow>
<mrow>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
</mrow>
<mo>)</mo>
</mrow>
<msqrt>
<mover>
<mi>d</mi>
<mo>~</mo>
</mover>
</msqrt>
</mrow>
</mfrac>
<mo>,</mo>
<mfrac>
<mrow>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<mn>2</mn>
</mrow>
<mrow>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
</mrow>
</mfrac>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
(iv) FourQ elliptic curves are definedUpper point expresses formula to the relationship map put on FourQ elliptic curves ε/F
<mrow>
<mover>
<mi>&tau;</mi>
<mo>~</mo>
</mover>
<mo>:</mo>
<mrow>
<mo>(</mo>
<mrow>
<mfrac>
<mrow>
<mn>2</mn>
<mi>x</mi>
<mi>y</mi>
<msqrt>
<mover>
<mi>d</mi>
<mo>~</mo>
</mover>
</msqrt>
</mrow>
<mrow>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<mn>2</mn>
</mrow>
</mfrac>
<mo>,</mo>
<mfrac>
<mrow>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
</mrow>
<mrow>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
</mrow>
</mfrac>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
(v) FourQ elliptic curves are definedOn homomorphism computing ψw(P):
<mrow>
<msub>
<mi>&psi;</mi>
<mi>w</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>P</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mrow>
<mo>(</mo>
<mrow>
<mo>-</mo>
<mfrac>
<mi>x</mi>
<mn>2</mn>
</mfrac>
<mo>-</mo>
<mfrac>
<msub>
<mi>c</mi>
<mrow>
<mn>9</mn>
<mo>,</mo>
<mn>0</mn>
<mo>,</mo>
<mn>4</mn>
<mo>,</mo>
<mn>0</mn>
</mrow>
</msub>
<mrow>
<mi>x</mi>
<mo>-</mo>
<mn>4</mn>
</mrow>
</mfrac>
</mrow>
<mo>)</mo>
</mrow>
<mi>p</mi>
</msup>
<mo>,</mo>
<msup>
<mrow>
<mo>(</mo>
<mrow>
<mo>-</mo>
<mfrac>
<mi>y</mi>
<mrow>
<mi>i</mi>
<msqrt>
<mn>2</mn>
</msqrt>
</mrow>
</mfrac>
<mrow>
<mo>(</mo>
<mrow>
<mo>-</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<mo>+</mo>
<mfrac>
<msub>
<mi>c</mi>
<mrow>
<mn>9</mn>
<mo>,</mo>
<mn>0</mn>
<mo>,</mo>
<mn>4</mn>
<mo>,</mo>
<mn>0</mn>
</mrow>
</msub>
<msup>
<mrow>
<mo>(</mo>
<mrow>
<mi>x</mi>
<mo>-</mo>
<mn>4</mn>
</mrow>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mfrac>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mo>)</mo>
</mrow>
<mi>p</mi>
</msup>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
Wherein:P=2127- 1, c9,0,4,0For cI, j, k, lThe calculated value of expression formula,
5. the Hardware Implementation of KP computings on a kind of FourQ elliptic curves according to claim 1, it is characterised in that:
FourQ elliptic curves are derived described in step (2c)On homomorphism computing ψ (P), realize that step is:
(2c1), which is utilized, maps expression formula δ, δ-1And FourQ elliptic curvesOn homomorphism computing ψw(P) it is multiplied, obtains table
Up to formula:
<mrow>
<msub>
<mi>&delta;&psi;</mi>
<mi>w</mi>
</msub>
<msup>
<mi>&delta;</mi>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<mo>:</mo>
<mrow>
<mo>(</mo>
<mrow>
<mfrac>
<mrow>
<mn>2</mn>
<msup>
<mi>ix</mi>
<mi>p</mi>
</msup>
<mo>*</mo>
<msub>
<mi>c</mi>
<mrow>
<mo>-</mo>
<mn>2</mn>
<mo>,</mo>
<mn>3</mn>
<mo>,</mo>
<mo>-</mo>
<mn>1</mn>
<mo>,</mo>
<mn>0</mn>
</mrow>
</msub>
</mrow>
<mrow>
<msup>
<mi>y</mi>
<mi>p</mi>
</msup>
<mo>*</mo>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mrow>
<mo>(</mo>
<msup>
<mi>x</mi>
<mi>p</mi>
</msup>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>*</mo>
<msub>
<mi>c</mi>
<mrow>
<mo>-</mo>
<mn>140</mn>
<mo>,</mo>
<mn>99</mn>
<mo>,</mo>
<mn>0</mn>
<mo>,</mo>
<mn>0</mn>
</mrow>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mo>-</mo>
<mn>76</mn>
<mo>,</mo>
<mn>57</mn>
<mo>,</mo>
<mo>-</mo>
<mn>36</mn>
<mo>,</mo>
<mn>24</mn>
</mrow>
</msub>
</mrow>
</mfrac>
<mo>,</mo>
<mfrac>
<mrow>
<msub>
<mi>c</mi>
<mrow>
<mo>-</mo>
<mn>9</mn>
<mo>,</mo>
<mo>-</mo>
<mn>6</mn>
<mo>,</mo>
<mn>4</mn>
<mo>,</mo>
<mn>3</mn>
</mrow>
</msub>
<mo>-</mo>
<msup>
<mrow>
<mo>(</mo>
<msup>
<mi>x</mi>
<mi>p</mi>
</msup>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
<mrow>
<msub>
<mi>c</mi>
<mrow>
<mo>-</mo>
<mn>9</mn>
<mo>,</mo>
<mo>-</mo>
<mn>6</mn>
<mo>,</mo>
<mn>4</mn>
<mo>,</mo>
<mn>3</mn>
</mrow>
</msub>
<mo>+</mo>
<msup>
<mrow>
<mo>(</mo>
<msup>
<mi>x</mi>
<mi>p</mi>
</msup>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
</mfrac>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
(2c2) utilizes expression formulaψw(P) it is multiplied with τ, it can be deduced that FourQ elliptic curvesOn homomorphism computingWherein, c- 2,3, -1,0、c- 140,99,0,0、c- 76,57, -36,24And c- 9, -6,4,3For cI, j, k, lThe calculating of expression formula
Value.
6. the Hardware Implementation of KP computings on a kind of FourQ elliptic curves according to claim 1, it is characterised in that:
FourQ elliptic curves are derived described in step (3)On homomorphism computing φ (P), realize that step is:
(3a) is according to FourQ elliptic curvesOn homomorphism computing ψ (P), calculate its characteristic value
And λψ'=- λψ mod N
Wherein, N is that the binary number of 256, r=15437785290780909242, and α=V/r ∈ Z, Z are integer, V=
49293975489306344711751403123270296814;
(3b) utilizes expression formula 40v2=4p2-tε 2Derive FourQ elliptic curvesOn homomorphism computing φ (P) feature
Value:
<mrow>
<msub>
<mi>&lambda;</mi>
<mi>&phi;</mi>
</msub>
<mo>=</mo>
<mn>4</mn>
<mo>*</mo>
<mfrac>
<mrow>
<mrow>
<mo>(</mo>
<mrow>
<mi>p</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
<mo>)</mo>
</mrow>
<msup>
<mi>r</mi>
<mn>3</mn>
</msup>
</mrow>
<mrow>
<msup>
<mrow>
<mo>(</mo>
<mrow>
<mi>p</mi>
<mo>+</mo>
<mn>1</mn>
</mrow>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mi>v</mi>
</mrow>
</mfrac>
<mi>mod</mi>
<mi> </mi>
<mi>N</mi>
</mrow>
λφ'=- λφmodN
Wherein, tε=136368062447564341573735631776713817674;
(3c) derives FourQ elliptic curvesOn homomorphism computing φ (P):
According to FourQ elliptic curvesOn homomorphism computing φ (P) eigenvalue λφ', calculate FourQ elliptic curvesOn homomorphism computing φ (P) abscissa xφWith ordinate yφ:
<mrow>
<msub>
<mi>x</mi>
<mi>&phi;</mi>
</msub>
<mo>=</mo>
<msup>
<mrow>
<mo>(</mo>
<mfrac>
<mrow>
<msub>
<mi>c</mi>
<mrow>
<mn>9</mn>
<mo>,</mo>
<mo>-</mo>
<mn>6</mn>
<mo>,</mo>
<mn>4</mn>
<mo>,</mo>
<mo>-</mo>
<mn>3</mn>
</mrow>
</msub>
<mo>*</mo>
<mi>x</mi>
<mo>*</mo>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>7</mn>
<mo>,</mo>
<mn>5</mn>
<mo>,</mo>
<mn>3</mn>
<mo>,</mo>
<mn>2</mn>
</mrow>
</msub>
<mo>*</mo>
<mi>y</mi>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>21</mn>
<mo>,</mo>
<mn>15</mn>
<mo>,</mo>
<mn>10</mn>
<mo>,</mo>
<mn>7</mn>
</mrow>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>7</mn>
<mo>,</mo>
<mn>5</mn>
<mo>,</mo>
<mn>3</mn>
<mo>,</mo>
<mn>2</mn>
</mrow>
</msub>
<mo>*</mo>
<mi>y</mi>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>21</mn>
<mo>,</mo>
<mn>15</mn>
<mo>,</mo>
<mn>10</mn>
<mo>,</mo>
<mn>7</mn>
</mrow>
</msub>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>3</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mn>1</mn>
<mo>,</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>*</mo>
<mi>y</mi>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>3</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mn>1</mn>
<mo>,</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mo>*</mo>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>3</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mn>1</mn>
<mo>,</mo>
<mn>1</mn>
</mrow>
</msub>
<mo>*</mo>
<mi>y</mi>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>3</mn>
<mo>,</mo>
<mn>2</mn>
<mo>,</mo>
<mn>1</mn>
<mo>,</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
</mfrac>
<mo>)</mo>
</mrow>
<mi>p</mi>
</msup>
</mrow>
<mrow>
<msub>
<mi>y</mi>
<mi>&phi;</mi>
</msub>
<mo>=</mo>
<mo>(</mo>
<mfrac>
<mrow>
<msub>
<mi>c</mi>
<mrow>
<mn>15</mn>
<mo>,</mo>
<mn>10</mn>
<mo>,</mo>
<mn>6</mn>
<mo>,</mo>
<mn>4</mn>
</mrow>
</msub>
<mo>*</mo>
<mrow>
<mo>(</mo>
<mrow>
<mn>5</mn>
<msup>
<mi>y</mi>
<mn>4</mn>
</msup>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>120</mn>
<mo>,</mo>
<mn>90</mn>
<mo>,</mo>
<mn>60</mn>
<mo>,</mo>
<mn>40</mn>
</mrow>
</msub>
<mo>*</mo>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>175</mn>
<mo>,</mo>
<mn>120</mn>
<mo>,</mo>
<mn>74</mn>
<mo>,</mo>
<mn>54</mn>
</mrow>
</msub>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mn>5</mn>
<mi>y</mi>
<mo>*</mo>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mi>y</mi>
<mn>4</mn>
</msup>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>240</mn>
<mo>,</mo>
<mn>170</mn>
<mo>,</mo>
<mn>108</mn>
<mo>,</mo>
<mn>76</mn>
</mrow>
</msub>
<mo>*</mo>
<msup>
<mi>y</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<msub>
<mi>c</mi>
<mrow>
<mn>3055</mn>
<mo>,</mo>
<mn>2160</mn>
<mo>,</mo>
<mn>1366</mn>
<mo>,</mo>
<mn>966</mn>
</mrow>
</msub>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
</mfrac>
</mrow>
Then FourQ elliptic curvesOn homomorphism computing φ (P) be:φ (P)=(xφ, yφ)
Wherein, c7,5,3,2、c21,15,10,7And c3,2,1,1For cI, j, k, lThe calculated value of expression formula.
7. the Hardware Implementation of KP computings on a kind of FourQ elliptic curves according to claim 1, it is characterised in that:
Being decomposed to KP computing scalars K described in step (6), realizes that step is:
(6a) selects KP computings scalar K to be decomposed substrate B=(b1, b2, b3, b4),
Wherein, b1, b2, b3, b4For the subvector in substrate B, b1, b2, b3, b4Respectively:
224*b1:=(16 (- 60 α+13r-10), 4 (- 10 α -3r+12), 4 (- 15 α+5r-13), -13 α -6r+3)
8*b2:=(32 (5 α-r), 8,8,2 α+r)
224*b3:=(16 (80 α -15r+18), 4 (18 α -3r-16) 4 (- 15-9r+15), 15 α+8r+3 α)
448*b4:=(16 (- 360 α+77r+42), 4 (42 α+17r+72), 4 (85 α -21r-77), (- 77 α -36r-17))
(6b) definition conversion base
Wherein,To change the subvector in base A,Respectively:
<mrow>
<mn>6272</mn>
<msup>
<mi>r</mi>
<mn>3</mn>
</msup>
<mo>*</mo>
<msub>
<mover>
<mi>&alpha;</mi>
<mo>^</mo>
</mover>
<mn>1</mn>
</msub>
<mo>=</mo>
<msup>
<mn>540</mn>
<mn>3</mn>
</msup>
<mo>+</mo>
<mn>10</mn>
<mi>r</mi>
<mrow>
<mo>(</mo>
<mrow>
<mn>27</mn>
<mi>r</mi>
<mo>-</mo>
<mn>4</mn>
</mrow>
<mo>)</mo>
</mrow>
<msup>
<mi>V</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<mn>6</mn>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mrow>
<mo>(</mo>
<mrow>
<mn>9</mn>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<mn>2</mn>
<mi>r</mi>
<mo>+</mo>
<mn>18</mn>
</mrow>
<mo>)</mo>
</mrow>
<mi>V</mi>
<mo>+</mo>
<msup>
<mi>r</mi>
<mn>3</mn>
</msup>
<mrow>
<mo>(</mo>
<mrow>
<mn>27</mn>
<mi>r</mi>
<mo>+</mo>
<mn>4</mn>
</mrow>
<mo>)</mo>
</mrow>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<mn>2</mn>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mn>25088</mn>
<msup>
<mi>r</mi>
<mn>3</mn>
</msup>
<mo>*</mo>
<msub>
<mover>
<mi>&alpha;</mi>
<mo>^</mo>
</mover>
<mn>2</mn>
</msub>
<mo>=</mo>
<mn>1020</mn>
<msup>
<mi>V</mi>
<mn>3</mn>
</msup>
<mo>+</mo>
<mn>10</mn>
<mi>r</mi>
<mrow>
<mo>(</mo>
<mrow>
<mn>47</mn>
<mi>r</mi>
<mo>-</mo>
<mn>8</mn>
</mrow>
<mo>)</mo>
</mrow>
<msup>
<mi>V</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<mn>2</mn>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mrow>
<mo>(</mo>
<mrow>
<mn>51</mn>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<mn>26</mn>
<mi>r</mi>
<mo>+</mo>
<mn>102</mn>
</mrow>
<mo>)</mo>
</mrow>
<mi>V</mi>
<mo>+</mo>
<msup>
<mi>r</mi>
<mn>3</mn>
</msup>
<mrow>
<mo>(</mo>
<mrow>
<mn>47</mn>
<mi>r</mi>
<mo>+</mo>
<mn>8</mn>
</mrow>
<mo>)</mo>
</mrow>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<mn>2</mn>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mn>25088</mn>
<msup>
<mi>r</mi>
<mn>3</mn>
</msup>
<mo>*</mo>
<msub>
<mover>
<mi>&alpha;</mi>
<mo>^</mo>
</mover>
<mn>3</mn>
</msub>
<mo>=</mo>
<mn>220</mn>
<msup>
<mi>V</mi>
<mn>3</mn>
</msup>
<mo>+</mo>
<mn>10</mn>
<mi>r</mi>
<mrow>
<mo>(</mo>
<mrow>
<mn>11</mn>
<mi>r</mi>
<mo>+</mo>
<mn>16</mn>
</mrow>
<mo>)</mo>
</mrow>
<msup>
<mi>V</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<mn>2</mn>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mrow>
<mo>(</mo>
<mrow>
<mn>11</mn>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<mn>46</mn>
<mi>r</mi>
<mo>+</mo>
<mn>22</mn>
</mrow>
<mo>)</mo>
</mrow>
<mi>V</mi>
<mo>+</mo>
<msup>
<mi>r</mi>
<mn>3</mn>
</msup>
<mrow>
<mo>(</mo>
<mrow>
<mn>11</mn>
<mi>r</mi>
<mo>-</mo>
<mn>16</mn>
</mrow>
<mo>)</mo>
</mrow>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<mn>2</mn>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mn>1792</mn>
<msup>
<mi>r</mi>
<mn>3</mn>
</msup>
<mo>*</mo>
<msub>
<mover>
<mi>&alpha;</mi>
<mo>^</mo>
</mover>
<mn>4</mn>
</msub>
<mo>=</mo>
<mn>60</mn>
<msup>
<mi>V</mi>
<mn>3</mn>
</msup>
<mo>+</mo>
<mn>30</mn>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<msup>
<mi>V</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<mn>2</mn>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mrow>
<mo>(</mo>
<mrow>
<mn>3</mn>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mo>+</mo>
<mn>2</mn>
<mi>r</mi>
<mo>+</mo>
<mn>6</mn>
</mrow>
<mo>)</mo>
</mrow>
<mi>V</mi>
<mo>+</mo>
<mn>3</mn>
<msup>
<mi>r</mi>
<mn>4</mn>
</msup>
<mrow>
<mo>(</mo>
<mrow>
<msup>
<mi>r</mi>
<mn>2</mn>
</msup>
<mo>-</mo>
<mn>2</mn>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
(6c) is according to KP computing scalars K, substrate B and conversion base A, calculating KP computing scalars K decomposition value (a1, a2, a3, a4):
Wherein,0≤ai≤264I=1,2,3,4, biFor substrate B coordinate;
Decomposition value (a of (6d) to KP computing scalars K1, a2, a3, a4) encoded, obtain parameter vector (d64... .., d0) and
Conceptual vector (m64... .., m0):
(6d1) defines initial parameter m64And z, and carry out assignment:m64=1, z=0;
(6d2) performs assignment if z < 64:dz=0, mz=-a1[z+1], j=2, perform (6d3) and otherwise terminate;
(6d3) performs assignment if j≤4:
dz=dz+(aj[0] < < (j-2)), c=(az[z+1]|aj[0])∧a1[z+1], aj=(aj> > 1)+c, j++, otherwise
Perform (6d4);
(6d4) carries out add-one operation to z, performs (6d2);
(6d5) obtains parameter vector (d64... .., d0) and conceptual vector (m64... .., m0)。
8. the Hardware Implementation of KP computings on a kind of FourQ elliptic curves according to claim 1, it is characterised in that:
FourQ elliptic curves are built described in step (7)On point add operation and point doubling, realize that step is:
(7a) randomly chooses FourQ elliptic curvesOn point p (x1, y1)、q(x2, y2)、r(x4, y4), according to Huseyin
Hisi theory:
FourQ elliptic curvesPoint add operation on conventional coordinates (x, y) is:
<mrow>
<mi>K</mi>
<mrow>
<mo>(</mo>
<mrow>
<msub>
<mi>x</mi>
<mn>3</mn>
</msub>
<mo>,</mo>
<msub>
<mi>y</mi>
<mn>3</mn>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mi>p</mi>
<mrow>
<mo>(</mo>
<mrow>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
<mo>,</mo>
<msub>
<mi>y</mi>
<mn>1</mn>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mi>q</mi>
<mrow>
<mo>(</mo>
<mrow>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<mo>,</mo>
<msub>
<mi>y</mi>
<mn>2</mn>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mrow>
<mo>(</mo>
<mrow>
<mfrac>
<mrow>
<msub>
<mi>x</mi>
<mn>1</mn>
</msub>
<msub>
<mi>y</mi>
<mn>2</mn>
</msub>
<mo>+</mo>
<msub>
<mi>y</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
</mrow>
<mrow>
<mn>1</mn>
<mo>+</mo>
<msub>
<mi>dx</mi>
<mn>1</mn>
</msub>
<msub>
<mi>y</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<msub>
<mi>y</mi>
<mn>2</mn>
</msub>
</mrow>
</mfrac>
<mo>,</mo>
<mfrac>
<mrow>
<msub>
<mi>y</mi>
<mn>1</mn>
</msub>
<msub>
<mi>y</mi>
<mn>2</mn>
</msub>
<mo>-</mo>
<msub>
<mi>ax</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
</mrow>
<mrow>
<mn>1</mn>
<mo>-</mo>
<msub>
<mi>dx</mi>
<mn>1</mn>
</msub>
<msub>
<mi>y</mi>
<mn>1</mn>
</msub>
<msub>
<mi>x</mi>
<mn>2</mn>
</msub>
<msub>
<mi>y</mi>
<mn>2</mn>
</msub>
</mrow>
</mfrac>
</mrow>
<mo>)</mo>
</mrow>
<mo>,</mo>
</mrow>
FourQ elliptic curvesPoint doubling on conventional coordinates (x, y) is:
<mrow>
<mi>W</mi>
<mrow>
<mo>(</mo>
<mrow>
<msub>
<mi>x</mi>
<mn>5</mn>
</msub>
<mo>,</mo>
<msub>
<mi>y</mi>
<mn>5</mn>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mn>2</mn>
<mi>r</mi>
<mrow>
<mo>(</mo>
<mrow>
<msub>
<mi>x</mi>
<mn>4</mn>
</msub>
<mo>,</mo>
<msub>
<mi>y</mi>
<mn>4</mn>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mrow>
<mo>(</mo>
<mrow>
<mfrac>
<mrow>
<mn>2</mn>
<msub>
<mi>x</mi>
<mn>4</mn>
</msub>
<msub>
<mi>y</mi>
<mn>4</mn>
</msub>
</mrow>
<mrow>
<msup>
<msub>
<mi>y</mi>
<mn>4</mn>
</msub>
<mn>2</mn>
</msup>
<mo>+</mo>
<msup>
<msub>
<mi>ax</mi>
<mn>4</mn>
</msub>
<mn>2</mn>
</msup>
</mrow>
</mfrac>
<mo>,</mo>
<mfrac>
<mrow>
<msup>
<msub>
<mi>y</mi>
<mn>4</mn>
</msub>
<mn>2</mn>
</msup>
<mo>-</mo>
<msup>
<msub>
<mi>ax</mi>
<mn>4</mn>
</msub>
<mn>2</mn>
</msup>
</mrow>
<mrow>
<mn>2</mn>
<mo>-</mo>
<msup>
<msub>
<mi>y</mi>
<mn>4</mn>
</msub>
<mn>2</mn>
</msup>
<mo>-</mo>
<msup>
<msub>
<mi>ax</mi>
<mn>4</mn>
</msub>
<mn>2</mn>
</msup>
</mrow>
</mfrac>
</mrow>
<mo>)</mo>
</mrow>
<mo>,</mo>
</mrow>
Wherein:A=-1, x1, x2, x3, x4, x5For the abscissa in coordinate system, y1, y2, y3, y4, y5Ordinate in coordinate system;
(7b) is by FourQ elliptic curvesUpper (x, y) coordinate system is converted into FourQ elliptic curvesUpper (X, Y, Z, T) is sat
Mark system, conversion regime are:X=X, y=Y, T=XY/Z, Z are depending on actual conditions, according to FourQ elliptic curvesOn
(X, Y, Z, T) coordinate system, carries out the conversion of coordinate:
(i) by (x1, y1) it is converted into (X1, Y1, Z1, T1);
(ii) by (x2, y2) it is converted into (X2, Y2, Z2, T2);
(iii) by (x3, y3) it is converted into (X3, Y3, Z3, T3);
(iv) by (x4, y4) it is converted into (X4, Y4, Z4, T4);
(v) by (x5, y5) it is converted into (X5, Y5, Z5, T5);
(7c) is according to FourQ elliptic curves(X, Y, Z, T) coordinate system, FourQ elliptic curvesOn point add operation
P+q=K (x3, y3) be converted into:
(X1, Y1, Z1, T1)+(X2, Y2, Z2, T2)=(X3, Y3, Z3, T3)
Specifically coordinate is respectively:
X3=(X1Y2-Y1X2)(T1Z2+Z1T2);
Y3=(Y1Y2+aX1X2)(T1Z2-Z1T2);
Z3=(Y1Y2+aX1X2)(X1Y2-Y1X2);
T3=(T1Z2+Z1T2)(T1Z2-Z1T2);
FourQ elliptic curvesUpper point doubling W (x5, y5)=2r (x4, y4) be converted into:2(X4, Y4, Z4, T4)=(X5, Y5,
Z5, T5),
Specifically coordinate is respectively:
X5=2X4Y4(2Z4 2-Y4 2-aX4 2);
Y5=(Y4+aX4 2)(Y4 2-aX4 2);
Z5=(Y4 2+aX4 2)(2Z4 2-Y4 2-aX4 2);
T5=2X4Y4(Y4 2-aX4 2)。
9. the Hardware Implementation of KP computings on a kind of FourQ elliptic curves according to claim 1, it is characterised in that:
The logical operation for including add operation submodule, modular multiplication submodule and inversion operation submodule is built described in step (8a)
Module, logical operation submodule are respectively:
(i) add operation submodule is built:On square domain, add operation is XOR, is utilizedIt is different on square domain
Or add operation module is built in computing;
(ii) modular multiplication submodule is built:On square domain, from montgomery modulo multiplication as modular multiplication, modular multiplication
Expression formula is:C=a*bmod p are rightMiddle element a and b carry out Montgomery translation operation, obtain A=a*R mod p and B=
B*R mod p, by modular multiplication expression formula c=a*bmod p, C=A*B mod p are converted into, computing is reduced by Montgomery
C=C*R-1Mod p obtain the result c of Montgomery modular multiplication, wherein,N is positive integer, R=dn
And p < R;
(iii) inversion operation submodule is built:On square domain, inverted from Montgomery as inversion operation,
It is rightMiddle element v Montgomeries translation operation, obtains V=v*R mod p, utilizes Montgomery inversion operation expression formula:U=V-1R2Mod p, computing u=U*R is reduced by Montgomery-1Mod p obtain the result u of Montgomery inversion operation.
10. the Hardware Implementation of KP computings on a kind of FourQ elliptic curves according to claim 1, it is characterised in that:
FourQ elliptic curves are built described in step (8e)Upper logic processing module, realize that step is:
Conceptual vector (the m that (8e1) decomposes to obtain using KP computing scalars K64... .., m0), defconstant si, judged, if
mi=1, then si=1, otherwise si=-1, wherein, miFor (m64... .., m0) in value, i is integer and 0≤i≤64;
(8e2) utilizes s64With FourQ elliptic curvesOn pre-stored concordance list in T [d64], perform computing s64T[d64]
Obtain initial value Q, wherein s64For siMiddle i=64 value;
(8e3) performs circulate operations of the i from 63 to 0:
(i) FourQ elliptic curves are performed to initial value QUpper point doubling, result is assigned to Q again;
(ii) to FourQ elliptic curvesThe Q and s that upper point doubling obtainsiT[di] perform FourQ elliptic curvesOn
Point add operation, result is assigned to Q again;
(8e4) obtains FourQ elliptic curvesUpper logic processing module.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710351975.2A CN107425974B (en) | 2017-05-18 | 2017-05-18 | Hardware implementation method for KP operation on Fourier elliptic curve |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710351975.2A CN107425974B (en) | 2017-05-18 | 2017-05-18 | Hardware implementation method for KP operation on Fourier elliptic curve |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107425974A true CN107425974A (en) | 2017-12-01 |
CN107425974B CN107425974B (en) | 2021-03-23 |
Family
ID=60425236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710351975.2A Active CN107425974B (en) | 2017-05-18 | 2017-05-18 | Hardware implementation method for KP operation on Fourier elliptic curve |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107425974B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108875416A (en) * | 2018-06-22 | 2018-11-23 | 北京智芯微电子科技有限公司 | Elliptic curve multi point arithmetic method and apparatus |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102306091A (en) * | 2011-07-08 | 2012-01-04 | 西安电子科技大学 | Method for rapidly implementing elliptic curve point multiplication hardware |
US20120213359A1 (en) * | 2011-02-17 | 2012-08-23 | Gradiant | Method and apparatus for secure iterative processing |
CN103078732A (en) * | 2013-01-08 | 2013-05-01 | 武汉大学 | Prime field elliptic curve crypto dot product accelerating circuit |
CN103095450A (en) * | 2011-05-11 | 2013-05-08 | Nxp股份有限公司 | Finite Field Crytographic Arithmetic Resistant To Fault Attacks |
CN105959117A (en) * | 2016-07-19 | 2016-09-21 | 安徽大学 | Vehicle-mounted ad hoc network security authentication method based on Cuckoo filter |
-
2017
- 2017-05-18 CN CN201710351975.2A patent/CN107425974B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120213359A1 (en) * | 2011-02-17 | 2012-08-23 | Gradiant | Method and apparatus for secure iterative processing |
CN103095450A (en) * | 2011-05-11 | 2013-05-08 | Nxp股份有限公司 | Finite Field Crytographic Arithmetic Resistant To Fault Attacks |
CN102306091A (en) * | 2011-07-08 | 2012-01-04 | 西安电子科技大学 | Method for rapidly implementing elliptic curve point multiplication hardware |
CN103078732A (en) * | 2013-01-08 | 2013-05-01 | 武汉大学 | Prime field elliptic curve crypto dot product accelerating circuit |
CN105959117A (en) * | 2016-07-19 | 2016-09-21 | 安徽大学 | Vehicle-mounted ad hoc network security authentication method based on Cuckoo filter |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108875416A (en) * | 2018-06-22 | 2018-11-23 | 北京智芯微电子科技有限公司 | Elliptic curve multi point arithmetic method and apparatus |
CN108875416B (en) * | 2018-06-22 | 2020-05-19 | 北京智芯微电子科技有限公司 | Elliptic curve multiple point operation method and device |
US11003769B2 (en) | 2018-06-22 | 2021-05-11 | Beijing Smartchip Microelectronics Technology Comp | Elliptic curve point multiplication operation method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
CN107425974B (en) | 2021-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
De Feo | Mathematics of isogeny based cryptography | |
Habeeb et al. | Public key exchange using semidirect product of (semi) groups | |
CN111526002B (en) | Fully homomorphic encryption method for multiple identities based on lattice | |
US9948462B2 (en) | Hypersphere-based multivariable public key signature/verification system and method | |
CN109145616B (en) | SM2 encryption, signature and key exchange implementation method and system based on efficient modular multiplication | |
CN106712965A (en) | Digital signature method, device and cipher device | |
Sun et al. | Digital image encryption with chaotic map lattices | |
CN105376057A (en) | Method for solving large-scale linear equation set through cloud outsourcing | |
CN110958108A (en) | Asymmetric image encryption method based on RSA and fractional order chaotic system | |
CN107888385B (en) | RSA modulus generation method, RSA key generation method, computer device, and medium | |
CN107425974A (en) | The Hardware Implementation of KP computings on a kind of FourQ elliptic curves | |
Mittal et al. | A quantum secure ID-based cryptographic encryption based on group rings | |
CN102025489A (en) | Public key cryptography improvement method for hidden field ergodic matrices and signature scheme | |
CN112350827A (en) | Koblitz curve-based elliptic curve encryption and decryption method and system for acceleration scalar multiplication calculation | |
Zhang et al. | A novel verifiably encrypted signature scheme without random oracle | |
Ajeena | Integer sub-decomposition (ISD) method for elliptic curve scalar multiplication | |
CN111897578A (en) | Parallel processing method and device for scalar multiplication on elliptic curve with characteristic of 2 | |
CN110879894A (en) | Image encryption and decryption method based on lazy scale transformation and random layered fusion | |
CN104468100A (en) | Improved sliding window modular exponentiation computing method | |
CN107017987A (en) | The elliptic curve method of Bilinear map is selected in a kind of security password technology | |
US10805081B1 (en) | Processing batches of point evaluations in a supersingular isogeny-based cryptosystem | |
Feng et al. | Exterior algebras and two conjectures on finite abelian groups | |
Tea et al. | Identity-based encryption schemes–A review | |
Shah et al. | Development of | |
CN110838908A (en) | Image encryption and decryption method based on GF matrix transformation and random layered fusion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |