CN102131198B - Realizing method of elliptic curve cryptography arithmetic device in authentication system - Google Patents

Realizing method of elliptic curve cryptography arithmetic device in authentication system Download PDF

Info

Publication number
CN102131198B
CN102131198B CN201110049667.7A CN201110049667A CN102131198B CN 102131198 B CN102131198 B CN 102131198B CN 201110049667 A CN201110049667 A CN 201110049667A CN 102131198 B CN102131198 B CN 102131198B
Authority
CN
China
Prior art keywords
authentication request
parameter
group
eff
arithmetic element
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
CN201110049667.7A
Other languages
Chinese (zh)
Other versions
CN102131198A (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.)
GCI Science and Technology Co Ltd
Original Assignee
GCI Science and Technology Co Ltd
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 GCI Science and Technology Co Ltd filed Critical GCI Science and Technology Co Ltd
Priority to CN201110049667.7A priority Critical patent/CN102131198B/en
Publication of CN102131198A publication Critical patent/CN102131198A/en
Application granted granted Critical
Publication of CN102131198B publication Critical patent/CN102131198B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

The invention relates to the technical field of secure access of a wireless communication system, in particular relating to a realizing method of an elliptic curve cryptography arithmetic device in an authentication system, comprising the following steps: using a key algorithm on the basis of a predefined elliptic curve, and selecting a point P on the elliptic curve; generating a large-number random variable K with n bits for each authentication request; and completing a dot multiplication of the points P and k corresponding to each authentication request, wherein the dot multiplication is equivalently transformed into an algorithm form with a characteristic of concurrent execution; at least one set of arithmetical elements are determined according to a segment rule; an segmentation and recombination operation is executed to each set of arithmetic elements. Under the condition that the number of the subscriber authentication request is less, a system resource can be fully utilized to shorten the processing delay of a single authentication request to improve the subscriber experience; and under the condition that the number of the subscriber authentication request is more, the possibility that the subscriber authentication request processing is overtime can be reduced by adding concurrent processing number, so that the purpose of balancing a contradiction between the single authentication request processing delay and the concurrent processing number is achieved.

Description

The implementation method of elliptic curve cryptography arithmetic device in Verification System
Technical field
The present invention relates to the technical field that wireless communication system accesses safely, relate in particular to the implementation method of elliptic curve cryptography arithmetic device in Verification System.
Background technology
Certificate server is the core network element of safe access technology in wireless communication system, is used for differentiating the identity of the network element (base station, terminal etc.) of other access network.Application number is that 200810027930.0 patent " a kind of safety access method of wireless MAN " provides the identity identification flow that a kind of wireless communication system accesses safely, wherein described certificate server and completed the basic procedure that identity is differentiated, comprised that acceptance certificate differentiates that digital certificate X.509, the structure certificate of request message, checking message signature, checking sign network element identity differentiate the steps such as response message.
Although certificate server is only completed management function, not carrying tool volume grid business transmission, but when network size is larger, and mobile terminal carrying out between base station under the scene such as fast switching, and the treatment effeciency of certificate server has been proposed harsh requirement.In the flow process that above-mentioned certificate server handling user identity is differentiated, the delay that message is processed is generally very little, can not form the bottleneck that certificate server is carried out efficient.Yet, because user certificate adopts X.509 certificate format, and carry out digital signature (with reference to national Password Management office file " ECDSA and ECDH cryptographic algorithm elliptic curve and parameter that Wireless LAN Equipments adopts ") based on the RSA arithmetic of elliptic curve cryptosystem (ECC), this means the ECDSA algorithm in needing to use elliptic curve cryptosystem (ECC) in the process of carrying out the user identity discriminating, the computation complexity of this algorithm is relatively high, especially under the larger condition of key length.
ECDSA signature and signature verification algorithm are based on the public key architecture signature algorithm that elliptic curve cryptosystem (ECC) designs, and international standard ISO/IEC 15946:2002 (E) has defined concrete algorithm flow and related request.The basic principle of elliptic curve cryptosystem (ECC) is execution point multiplication on a predefined elliptic curve
Figure BSA00000442511200021
Its mid point P is preset parameter, and k is the random large number that produces.In order to guarantee the fail safe of ECDSA algorithm self, requiring k is real physical random number.Point multiplication operation Q=kP can be decomposed into a little add, the basic operation such as times point, mould are taken advantage of, these basic operations all are based upon finite field F pFundamentals of Mathematics on.
Finite field F pOn the elliptic curve equation can have various ways, wherein typical elliptic curve equation shape such as y 2=x 3+ ax+b (4a 3+ 27b 2≠ 0 mod p), on this elliptic curve have a few and infinite point ∞ consists of elliptic curve point set E (F p)={ (x, y) | x, y ∈ F p, y 2=x 3+ ax+b} ∪ { ∞ }, elliptic curve point set E (F p) rank be n=#E (F p).Define point add operation on elliptic curve, elliptic curve point set E (F p) Abel group of formation.On the basis of point add operation, can derive point doubling, point multiplication operation, wherein point multiplication operation (kP) is its main operational of elliptic curve cryptosystem.Computing on elliptic curve can adopt different coordinate systems to express, and coordinate system commonly used is affine coordinate system and Jacobi projected coordinate system, below is introduced respectively.
Affine coordinate system: cross a fixed point O on the plane and make two crossing reference axis x and y, their angle of cut is ω.As initial point, defining long measure on every reference axis (is respectively OE with fixed point O 1, OE 2), so just set up in the plane an affine coordinate system.For any point M on the plane, cross the parallel lines that M makes two reference axis, meet at respectively M with reference axis 1, M 2, they are labeled as respectively x, y at the coordinate of diaxon, so some M is with regard to corresponding subordinate ordered array (x, y).
The Jacobi projected coordinate system: the point (X, Y, Z) under the Jacobi projected coordinate system is corresponding one by one with the point (x, y) under affine coordinate system.Coordinate (x, y) under given affine coordinate system, the coordinate that converts under the Jacobi projected coordinate system is (X, Y, Z), wherein X=x, Y=y, Z=1; Coordinate (X, Y, Z) under given Jacobi projected coordinate system, the coordinate that converts under affine coordinate system is (x, y), and satisfies x=X/Z 2, y=Y/Z 3Simultaneously, the infinite point ∞ under affine coordinate system and the point under the Jacobi projected coordinate system (1,1,0) correspondence.
Take up an official post at elliptic curve and get 2 P (x 1, y 1), Q (x 2, y 2), make O represent infinite point, definition point add operation R (x R, y R)=P+Q, its operation rule is as follows:
(1)P+O=O+P=P;
(2)-P=(x 1,-y 1),P+(-P)=O;
(3) if Q ≠-P, x R = λ 2 - x 1 - x 2 y R = λ ( x 1 - x R ) - y 1 ,
Wherein, work as x 1≠ x 2The time
Figure BSA00000442511200032
Work as x 1=x 2The time
Figure BSA00000442511200033
Take up an official post at elliptic curve and get a P (x, y), make O represent infinite point, definition point doubling R (x R, y R)=2P.Point doubling is equal to P=Q in point add operation, and its operation rule is as follows:
(1) if y=0, R=2P=O;
(2) if y ≠ 0, Wherein
Figure BSA00000442511200035
Above-mentioned point adds, the point doubling formula all is defined in finite field F pOn, the computing such as wherein include addition, the multiplication in confinement and invert.At finite field F pOn, addition, multiplication are mould p computing, for example any x, y ∈ F p, addition is defined as z=(x+y) mod p, z ∈ F pDescribed inversion operation refers to provide arbitrfary point x ∈ F p, find out another y ∈ F pMake condition xy=1 satisfy.At finite field F pOn, inversion operation is higher than multiplying complexity, converts Jacobi projection coordinate to and can avoid inversion operation, therefore adopts more the Jacobi projected coordinate system in engineering is used.
In the Jacobi projected coordinate system, take up an official post at elliptic curve and get 2 P (X 1, Y 1, Z 1), Q (X 2, Y 2, Z 2), point add operation R (X 3, Y 3, Z 3The operation rule of)=P+Q is:
X 3 = ( Y 2 Z 1 3 - Y 1 ) 2 - ( X 2 Z 1 2 + X 1 ) ( X 2 Z 1 2 - X 1 ) 2 Y 3 = ( Y 2 Z 1 3 - Y 1 ) [ X 1 ( X 2 Z 1 2 - X 1 ) 2 - X 3 ] - Y 1 ( X 2 Z 1 2 - X 1 ) 3 Z 3 = Z 1 ( X 2 Z 1 2 - X 1 )
In the Jacobi projected coordinate system, take up an official post at elliptic curve and get a P (X 1, Y 1, Z 1), point doubling R (X 3, Y 3, Z 3The operation rule of)=2P is:
X 3 = ( 3 X 1 2 + aZ 1 4 ) 2 - 8 X 1 Y 1 2 Y 3 = ( 3 X 1 2 + aZ 1 4 ) ( 4 X 1 Y 1 2 - X 3 ) - 8 Y 1 4 Z 3 = 2 Y 1 Z 1
On above-mentioned Fundamentals of Mathematics, can the execution point multiplication
Figure BSA00000442511200043
For arbitrary integer k=(k t-1..., k 1, k 0) 2, P ∈ E (F p), make O represent infinite point, kP calculates according to the following steps:
(1)Q←O;
(2)For?i?from?0?to?t-1?do
a)If?k i=1?then?Q←Q+P
b)P←2P
(3) output Q.
Can find out, the utilization point adds, point doubling can be completed point multiplication operation Q=kP.
Put add, in the process of times point, point multiplication operation, mould is taken advantage of as basic operation and is repeatedly called, and is the key that affects point multiplication operation efficient.Document " P.Montgomery.Modular multiplication without trial division.Mathematics of Computation, 44:519-521,1985. " the Montgomery modular multiplication algorithm proposed, this algorithm utilizes the character of complete residue system, avoid asking the division arithmetic of mould when calculating ab mod n, can effectively improve the speed of modular multiplication.The process of Montgomery modular multiplication algorithm can followingly be explained:
function
Figure BSA00000442511200051
Step1. t : = a ‾ · b ‾
Step2.u:=(t+(t·n′mod?r)·n)/r
Step3.if?u≥n?then?return?u-n?else?return?u
Hang down the r bit in the Montgomery modular multiplication algorithm in the result of calculation u of step 2 and must be null value, can adopt displacement to replace division, thereby having avoided divide operations consuming time.Yet the citation form of Montgomery modular multiplication algorithm still comprises the multiplication of large integer, therefore also needs to be further refined as the multiplication of small integer.Document " Kaya Koc C, Acar T, Kaliski BSJr.Analyzing and Comparing Montgomery Multiplication Algorithms[J] .IEEE Micro, 1996,16 (3): 26-33 " compared 5 kinds of implementation algorithms (FIOS, CIOS etc.) that the Montgomery mould is taken advantage of, the basic thought of each algorithm is that computing for some short integers is dissolved in the multiplying of lint-long integer.Wherein, the CIOS method is very suitable for realizing in general processor.
Although the anti-attack strength of elliptic curve cryptosystem (ECC) is higher, general 192 bit keys length can reach the intensity of RSA system 1024 bit keys length, and its amount of calculation of such key length is remained considerable.In order to improve the execution efficient of point multiplication operation, the most direct way is to improve its parallelization, point multiplication operation is decomposed into the arithmetic element of several concurrent execution, shortens its time of implementation by consuming more computational resource.At first, utilize equivalent transformation Q=kP=k m-1P+ ... + k 1P+k 0P can realize the parallelization of point multiplication operation.Secondly, because point multiplication operation has called modular multiplication in a large number, the parallelization that improves modular multiplication also can effectively improve the execution efficient of point multiplication operation.Document " J.Fan, K.Sakiyama, and I.Verbauwhede, " Montgomery Modular Multiplication Algorithm for Multi-Core Systems; " IEEE Workshop on Signal Processing Systems, pp.261-266,2007. " by analyzing in the FIOS algorithm interrelated between each time iteration, adopt special design to make the addition carry only in the inner generation of arithmetic element, proposed a kind of more satisfactory Montgomery modular multiplication Parallelization Scheme.In addition, pertinent literature has also proposed other point multiplication operation, the parallel method of modular multiplication.
In order further to improve the treatment effeciency of certificate server, general employing is based on the certificate server system of Clustering structure, and its typical system framework as shown in Figure 1.Front-end server is used for receiving the request of certificate authentication message that the network user sends, then according to predefined scheduling strategy, (as DNS, reverse proxy, NAT etc.) differentiate that with identity request message is forwarded to certain specific certificate server (AS by load-balancing technique i), work as AS iComplete that message is processed and Generate Certificate differentiates that response message sends to front-end server, front-end server was differentiated with certificate that response message sends to and was submitted the user of corresponding request of certificate authentication message with it to this moment.Wherein, the device of carrying out the ECC computing is and each certificate server node fully independently, is connected with each certificate server by certain communication link (as Ethernet).When the ECC arithmetic unit receives AS iThe computing request, carry out corresponding ECC arithmetic operation according to the parameter of request, then operation result is fed back to corresponding A S iIt is the performance bottleneck of certificate server group system due to the ECC arithmetic unit, can build based on hardware design technique such as special-purpose ECC compute chip, high-speed dsp processors, and a plurality of parallel ECC arithmetic elements will be provided, with the overall data throughput of elevator system.
Must particularly point out, there is very big-difference in the concurrent processing performance requirement of different scales network, and the authentication request business of same network also has burst characteristic, can great variety occur along with the different time periods, therefore the average user authentication request number within per second may change in time.Under the less condition of user authentication request number, the processing delay that shortens the single authentication request by taking full advantage of system resource can improve the user and experience; And under the more condition of user authentication request number, the overtime probability of can the reduce user authentication request processing by increasing the concurrent processing number.For above-mentioned typical certificate server group system, can be by other ECC arithmetic unit of the some different performance levels of configuration, perhaps configuring redundancy equipment is realized the overall performance adjustment, and with the burst characteristic of adaptive authentication requested service, and these measure meetings increase the lower deployment cost of system.
Summary of the invention
The present invention proposes the implementation method of elliptic curve cryptography arithmetic device in a kind of Verification System, with lower cost, makes the certificate server group system possess the ability of dynamically adapting authentication request business burst characteristic.
The technical solution used in the present invention is as follows:
The implementation method of elliptic curve cryptography arithmetic device in a kind of Verification System, described method is based on using public key algorithm on a predefined elliptic curve, being included in Verification System produces in the process of signing, select a some P on elliptic curve, each authentication request is generated the stochastic variable k with n bit, complete corresponding to the some P of each authentication request and the point multiplication operation of k
Figure BSA00000442511200071
It is characterized in that, concrete steps are as follows:
Determine at least one group of arithmetic element group according to chopping rule, every group of arithmetic element group comprises at least one concurrent arithmetic element;
For every group of arithmetic element group, carry out and decompose reorganization operation, be the algorithm pattern with a plurality of concurrent computings with point multiplication operation Q=kP equivalent transformation, each concurrent arithmetic element is carried out a concurrent computing, completes the point multiplication operation Q=kP corresponding to an authentication request.
As a kind of preferred version, described chopping rule is:
Design in advance at least one parameter group and form optimization set R, the number of each parameter group definition arithmetic element group, and the number of the concurrent arithmetic element that comprises of every group of arithmetic element group for each parameter group, are calculated
Figure BSA00000442511200072
Wherein L is the number of the arithmetic element group of this parameter group, m lThe number of the concurrent arithmetic element that comprises for l arithmetic element group in this parameter group, l=1,2 ..., L counts Q according to the average authentication request that the measurement period in design in advance receives avg, select to make c=τ (m eff) NormalP (m eff, nT, Q avgParameter group when σ) obtaining minimum value is carried out segmentation, wherein τ is the processing delay time of single authentication request, subscript n ormal represents normalized, nT is the length of authentication request formation, σ is that the authentication request in the designated statistics cycle is counted variance, characterizes authentication request sparse property or the uniformity of the time of advent, p (m eff, nT, Q avg, be σ) with m eff, nT, Q avg, the σ overtime probability that authentication request is processed during as independent variable.
As further preferred version, described chopping rule is specially:
Select successively first parameter group from optimization set R, execution in step 31;
Step 31 is obtained system parameters nT, and calculates m eff, carry out emulation by Monte Carlo method, respectively according to the Q of appointment avgAnd σ parameter generating authentication request input sample, then simulation trial unit group is processed the input sample, comes the overtime probable value p of access authentication request processing by statistics;
Step 32 changes Q avg, repeated execution of steps 31 obtains a plurality of overtime probable value p;
Step 33 is carried out multivariable fitting to a plurality of overtime probable value p that obtains, and sets up authentication request and processes overtime Probability p at m effUnder empirical equation
Figure BSA00000442511200081
Step 34 is selected next parameter group from optimization set, and execution in step 31~step 33, until in optimization set, all parameter group are all selected, thereby obtains the empirical equation under each parameter group
Figure BSA00000442511200082
Step 35 is set as follows system parameters: the authentication request of expectation is processed overtime probability limit value p th, authentication request quene threshold Q th, order
Figure BSA00000442511200083
Figure BSA00000442511200084
Figure BSA00000442511200085
Execution in step 36;
Step 36 records and calculates at the measurement period that designs in advance the authentication request that receives in the average per second of certificate server system and counts Q avg, then carry out following strategy and reselect m eff:
If a) Q avg>Q th, m eff=1 and implementation strategy g), otherwise implementation strategy b);
B) select all m from optimization set effEmpirical equation corresponding to value calculated
Figure BSA00000442511200086
Calculate again complex parameter c, then implementation strategy c);
C) if in parameter m effWhole alternative conditions under, M eff=1 and implementation strategy g), otherwise implementation strategy d);
D) remove the condition that makes from optimization set
Figure BSA00000442511200092
The m that satisfies effElement produces new optimization set
Figure BSA00000442511200093
, implementation strategy e then);
E) for optimization set R ', contrast its complex parameter c, the m in a situation of selection c minimum effValue, then implementation strategy f);
F) if there are a plurality of m effValue produces minimum c value, selects m effBe worth maximum one, then implementation strategy g).
G) output m effCorresponding parameter group.
As preferred version further, in described optimization set, the m of each parameter group effBe integer.
As preferred version further, described m effSatisfy constraints m eff∈ M, wherein M is the positive integer factor set of the wide n of large numerical digit.
As preferred version further, when the certificate server system works in the chopping rule of light-load conditions be:
Set K parameter constant q that increases successively k, k=1,2 ..., K, and all parameter constants are less than Q th, every adjacent two parameter constant q kForm constant section (q k-1, q k), q wherein 0=0;
Corresponding each constant section (q k-1, q k) set the segmentation parameter value m of a correspondence k, and m kIncrease progressively successively;
Record and calculate at the measurement period that designs in advance the authentication request that receives in the average per second of certificate server system and count Q avgIf, q k-1<Q avg<q k, m eff=m k, output m effCorresponding parameter group.
Described light-load conditions is, when the authentication request number of waiting for is less than predefined threshold value Q thThe time.
As preferred version further, when the certificate server system works in the chopping rule of heavy duty condition be:
Set H parameter constant σ that increases successively h, h=1,2 ..., H, every adjacent two parameter constant σ hForm constant section (σ h-1, σ h), σ wherein 0=0;
Corresponding each constant section (σ h-1, σ h) set the segmentation parameter value m of a correspondence h
Record and calculate at the measurement period that designs in advance the authentication request that receives in the average per second of certificate server system and count Q avg, and calculate authentication request and count variances sigma, if σ h-1<σ<σ h, m eff=m h, output m effCorresponding parameter group.
Described heavy duty condition is that processing overtime probability perseverance when authentication request has p>p thThe time.
As a kind of preferred version, described concurrent arithmetic element is the point multiplication operation unit, and every group of arithmetic element group comprises at least one point multiplication operation unit and a point add operation unit;
Described decomposition reorganization operation comprises:
Stochastic variable k is decomposed into m segmentation a i, i=0,1,2 ..., m-1, m is the number of the included point multiplication operation unit of this group arithmetic element group;
Calculate a in i point multiplication operation unit iThe dot product a of segmentation and P iP;
Use the point add operation unit to a of all point multiplication operations unit iP gathers:
Q = Σ i = 0 m - 1 a i P = a m - 1 P + . . . + a 1 P + a 0 P .
As further preferred version, the concrete steps of described decomposition reorganization operation are:
K decomposes to stochastic variable, as weights, k is expanded into m segmentation with U, k be unfolded into:
Figure BSA00000442511200102
Wherein each is segmented into a i=U ik i
In i point multiplication operation unit, calculate in advance and preserve respectively U iThe value of P;
Calculate respectively a in i point multiplication operation unit iP=(U ik i) P=k i(U iP);
The a of point add operation unit to all point multiplication operations unit iP gathers, and obtains:
Q = Σ i = 0 m - 1 a i P = k m - 1 ( U m - 1 P ) + . . . + k 1 ( UP ) + k 0 P .
As preferred version further, described parameter U is 2 integral number power, i.e. U=2 w, w is natural number.
Above-mentioned is olation decomposes restructuring pattern 1 point multiplication operation Q=kP is decomposed into several small integer point multiplication operations for decomposing restructuring pattern 1, and accompanying drawing 2 provides the schematic diagram of arithmetic element group, and wherein the arithmetic element of independent operating is used for carrying out the small integer point multiplication operation.
As another kind of preferred version, described decomposition reorganization operation can also adopt following decomposition restructuring pattern 2:
Adopt the FIOS algorithm to realize the Montgomery modular multiplication, the specific algorithm flow process is as follows:
Input: integer X=(X s-1..., X 0) r, Y=(Y s-1..., Y 0) r, M=(M s-1..., M 0) r, 0≤X wherein, Y≤M,
Figure BSA00000442511200112
R=2 wAnd satisfy gcd (M, r)=1, R=r s, M '=-M -1Mod r.
Output: XYR -1Mod M
Step:
1:Z=(Z s-1,…,Z 0)←0
2:for?i=0?to?s-1?do
3:T←(Z 0+X 0·Y i)·M′mod?r
4:Z←(Z+X·Y i+M·T)/r
5:end?for
6:if?Z>M?then
7:Z←Z-M
8:end?if
9:return?Z
The FIOS algorithm is decomposed into the s segmentation with integer Y, and wherein the bit wide of each segmentation is w, so comprises s iterative operation in algorithm.By modular multiplication is taked parallel method, with m DSP kernel formation modular multiplication unit, they cooperate to complete an iteration in the FIOS algorithm mutually, and there is exchanges data mutually in the DSP kernel therebetween.After through the several times iteration, each DSP kernel has been preserved respectively a segmentation of Output rusults, they is stitched together can obtains the result of Montgomery modular multiplication.Also need to configure one or more DSP kernels in system as main control unit, by repeatedly calling Montgomery modular multiplication unit, to realize the composition operations such as point adds, times point, dot product.
Decompose restructuring pattern 2 point multiplication operation Q=kP is decomposed into several FIOS modular multiplications unit, accompanying drawing 3 provides the schematic diagram of arithmetic element group, and wherein the arithmetic element of independent operating is used for carrying out a segmentation of FIOS modular multiplication.
The present invention has advantages of: the segmentation parameter m that decomposes by point multiplication operation in elliptic curve cryptosystem (ECC) carries out dynamic optimization, under the less condition of user authentication request number, shorten the processing delay of single authentication request experiences to improve the user by taking full advantage of system resource, and under the more condition of user authentication request number, the overtime probability of processing to reduce user authentication request by increasing the concurrent processing number, thus reach the target of weighing between the contradiction of single authentication request processing delay and concurrent processing number.
The beneficial effect that the present invention can bring: under the prerequisite that does not increase lower deployment cost, make the certificate server group system possess function according to the burst characteristic automatic adjustment system performance of authentication request business in network.
Description of drawings
Accompanying drawing 1 is typical certificate server group system framework.
Accompanying drawing 2 is to decompose the schematic diagram of restructuring pattern 1 in technical solution of the present invention.
Accompanying drawing 3 is to decompose the schematic diagram of restructuring pattern 2 in technical solution of the present invention.
Accompanying drawing 4 is the selection parameter group (L=1 of technical solution of the present invention; M=6) point multiplication operation decomposing schematic representation.
Accompanying drawing 5 is the selection parameter group (L=2 of technical solution of the present invention; M=3) point multiplication operation decomposing schematic representation.
Accompanying drawing 6 is the principle schematic of ECC arithmetic unit in embodiments of the invention 1.
Accompanying drawing 7 is the corresponding relation of parameter group and average per second authentication request number in embodiments of the invention 3.
Accompanying drawing 8 is the corresponding relation of parameter group and complex parameter in embodiments of the invention 4.
Embodiment
The present invention will be further described in detail below in conjunction with the drawings and specific embodiments.
Can prove from mathematical angle, the point multiplication operation Q=kP in elliptic curve cryptosystem (ECC) is a kind of linear transformation, satisfies commutative law of multiplication, distributive law.For any random number k of n bit, available power 2 wExpand into m segmentation, wherein
Figure BSA00000442511200131
Be natural number, the bit wide of each segmentation is the w bit:
k = Σ i = 0 m - 1 2 i · w k i = 2 ( m - 1 ) w k m - 1 + . . . + 2 w k 1 + k 0 ,
Here, when the aliquant w of n, need to k be expanded to n ' bit by the mode of high-order zero padding.Thereby point multiplication operation can be expressed as following form:
Q = Σ i = 0 m - 1 ( 2 i · w k i ) P = Σ i = 0 m - 1 k i ( 2 i · w P ) = k m - 1 ( 2 ( m - 1 ) w P ) + . . . + k 1 ( 2 w P ) + k 0 P .
After carrying out above-mentioned conversion, for given parameter m and w, can calculate in advance and store following intermediate object program:
{P,2 w?P,2 2w?P,…,2 (m-1)w?P},
Thereby point multiplication operation is decomposed into m separate point multiplication operation.According to above-mentioned mathematical principle, by the choose reasonable parameter m, point multiplication operation is decomposed.Although it is infinitely multiple that segments m exists, in Project Realization, the general specific collection M that selects is as its domain of definition.
For specific parameter m, as long as adopt several point multiplication operations unit generating portion long-pending, then carry out point add operation and can obtain final result.In the physics realization of point multiplication operation, can adopt many kernels DSP device that each arithmetic element is shone upon, typical many kernels DSP device comprises the Multi-core dsp chip etc. of picoArray array processor, the Tilera company of picoChip company.
Setup parameter group (L=h; M=M), M={m l| l=1,2 ..., h}, wherein L is the number of the arithmetic element group of this parameter group, m lThe number of the point multiplication operation unit that comprises for l arithmetic element group in this parameter group, M is m lThe set that consists of.Special agreement when L=1, is (L=1 with the parameter group brief note; M=m 1); Work as m 0=m 1=m 2=...=m hThe time, the parameter group brief note is (L=h; M=m 0).
As shown in Figure 4, will adopt parameter group (L=1; M=6) the 192 bit point multiplication operations that decompose are mapped to respectively 6 DSP kernels; Perhaps as shown in Figure 5, will adopt parameter group (L=2; M=3) the 192 bit point multiplication operations that decompose are mapped to respectively two groups of totally 6 DSP kernels, and first group has 3 DSP kernels, and second group has 3 DSP kernels.Be noted that the DSP kernel hardware mapping that provides in accompanying drawing only is illustrative nature.As configurable device, many kernels DSP provides design option fully flexibly to user's design, both can adopt a plurality of DSP kernels to realize an arithmetic element, also can adopt a DSP kernel to realize a plurality of arithmetic elements.Therefore, can use a plurality of DSP kernel system works to complete the computing of a w bit segments in design, thereby greatly improve arithmetic speed.
Due under specific system works clock frequency condition, the instruction number that the DSP kernel was carried out within the unit interval is invariable, that is to say, it possesses fixing operational capability.Defined parameters group (L=h; M=1) corresponding single point multiplication operation processing delay is τ 0, parameter group is for given arithmetic system and the realization of specific point multiplication operation, and this parameter is constant, can be by τ 0Expression formula characterize the DSP kernel at different parameters group (L=h; M=m 0) single point multiplication operation processing delay under condition.Be divided into m segmentation as point multiplication operation and come concurrent execution, single point multiplication operation processing delay is τ=τ 0/ m.
The kernel of supposing system adds up to C, according to the mode of one group of m kernel, it is divided into L=C/m arithmetic element group, and m the kernel that wherein comprises in each arithmetic element group be execution parameter group (L=h respectively; M=m 0) m Piecewise Operation dividing, the single point multiplication operation processing delay of each point multiplication operation unit is τ=τ 0/ m, its throughput are r=1/ τ=m/ τ 0, and the throughput of system is:
R = r × L = ( m τ 0 ) ( C m ) = C τ 0 .
From following formula as seen, due to parameters C and τ in specific dsp system 0Be constant, so throughput R is also constant, itself and segments m are irrelevant.That is to say, can shorten single point multiplication operation processing delay although point multiplication operation is decomposed, for DSP number of cores limited system, the throughput of system is changeless.
The below is illustrated above-mentioned principle with the example that is configured to of accompanying drawing 4, accompanying drawing 5.Without loss of generality, can suppose that the individual bit of processing input k in the execution point multiplication will consume T instruction cycle, will consume ST instruction cycle and process the w bit.Therefore, decompose for computing shown in accompanying drawing 4,6 DSP kernels should be processed 1 group of input data within 32T instruction cycle, process 2 groups of input data within 64T instruction cycle.Decompose for computing shown in accompanying drawing 5,3 DSP kernels should be processed 1 group of input data within 64T instruction cycle, because 6 DSP kernels are divided into two groups of concurrent operations, so 6 DSP kernels also will be processed 2 groups of input data within 64T instruction cycle.By above-mentioned analysis as seen, be 6 DSP kernels equally, consume 64T instruction cycle and can reach same treatment effect, the operational capability of system is not because the difference that point multiplication operation decomposes and difference to some extent.Yet under the condition that adopts 6 DSP kernels, when adopting computing shown in accompanying drawing 4 to decompose, two input data are processed according to time order and function; And adopt computing shown in accompanying drawing 5 to decompose, and two input data will be simultaneously processed, and its operation result can be exported simultaneously.
This shows, as the segments m that changes arithmetic element, the concurrent processing number that the DSP kernel can be realized changes thereupon, but the overall throughput of system is substantially constant.When the m minimizing, the hop count of executed in parallel reduces (taking DSP unit minimizing), and the processing delay of single authentication request increases, and the concurrent processing number also increases; When the m increase, the hop count of executed in parallel increases (taking DSP unit increase), and the processing delay of single authentication request shortens, and the concurrent processing number also reduces.The business of sending authentication request due to the user is a kind of random process, from the angle of statistics analysis, begins as soon as possible user authentication request is processed, and processes overtime probability and will reduce, and need to realize by increasing system concurrency processing number this moment.And under the less condition of authentication request number, process overtime probability itself just enough low within the unit interval, and process number by reducing system concurrency this moment, shorten the processing delay of single authentication request, be conducive to improve the user and experience.
Because the business of authentication request has burst characteristic, can not adopt a kind of fixing computing resolution parameter group (L=h; M=M) satisfy all business scenarios, only have the statistical property according to business, the concurrent processing number on suitable opportunity to system adjusts, and could realize self-reacting function.
The means that system is reconstructed exist multiple, as specify the operation code of DSP kernel by dynamic load, the Code Design of DSP kernel can also be become allow the form of dynamically adjusting.The bit wide w that different segments m causes single DSP kernel to calculate is different, this can embody by the cycle-index that the adjustment operation part is performed, need to increase corresponding collocation channel this moment for the DSP kernel, so that master control DSP kernel is notified parameter group the DSP kernel of appointment.
Automatically select parameter group (L=h according to the burst characteristic of authentication request business; M=M) technical scheme is described below:
The definition complex parameter:
c=τ(m) normal·p(m,nT,Q avg,σ),
Wherein, τ is the processing delay time (subscript n ormal represents normalized) of single authentication request, and p is the overtime probability that authentication request is processed, and m is the segments that point multiplication operation decomposes, and nT is the length of authentication request formation, Q avgAuthentication request number average value for designated statistics in the cycle, σ is that the authentication request in the designated statistics cycle is counted variance, characterizes authentication request sparse property or the uniformity of the time of advent.
Described complex parameter c has considered the processing delay time τ of single authentication request, these two most important system performance index of overtime Probability p that authentication request is processed, optimum design should be in the processing delay time τ that shortens as far as possible single authentication request, reduce the overtime Probability p that authentication request is processed, so the criterion of system optimization is by selecting suitable parameter group (L=h; M=M) make described complex parameter c minimum.
For above-mentioned point multiplication operation decomposition algorithm, in order to determine best computing segmentation parameter m, carry out following optimization:
arg min m ∈ M { c = τ ( m ) normal · p ( m , nT , Q avg , σ ) } .
When changing computing segmentation parameter m, the divided hop count of large several k changes thereupon, this means that the resource of arithmetic element group consumption is also different, and the single treatment of arithmetic element group postpones also difference thereupon.When the m minimizing, the hop count of executed in parallel reduces (taking DSP unit minimizing), and the single treatment of arithmetic element group postpones to increase; When the m increase, the hop count of executed in parallel increases (taking DSP unit increase), the single treatment delay reduction of arithmetic element group.Because DSP unit sum in single-chip immobilizes, and the system works clock frequency is constant, and when the more DSP of single arithmetic element group consumption unit, total concurrent processing number reduces; When single arithmetic element group consumes still less DSP unit, total concurrent processing number increases, although the overall throughput of system can not change, but postpone but can be along with parameter m is dynamically adjusted for the single treatment of arithmetic element group.
Suppose to have L arithmetic element group in system, these arithmetic element groups can be configured to mutual incoherent parameter m independently.Mix for the DSP kernel and use different parameters group (L=h; M=M) system, because the parameter m of these arithmetic element groups is uncorrelated mutually, their segments m may be identical, may be not identical yet, but so the set M of m value to satisfy repeated combination regular, its number of combinations is given by the following formula:
H n k = C n + k - 1 k = n + k - 1 k ,
For the technological system that the present invention describes, segments m chooses from set M, and the element number of note set M is C M=#M, n=C in formula M, k=L, so in L arithmetic element group, the number of combinations of different segments m is:
H C M L = C C M + L - 1 L = C M + L - 1 L .
When mixing, the DSP kernel uses different parameters group (L=h; M=M), for the optimizing application algorithm, need to introduce equivalent segments m effDefinition, its physical significance is: if each arithmetic element group has segments m eff, the overall throughput of system is used different parameters group (L=h with mixing; M=M) situation is equal to.
The segments of L arithmetic element group of note is m l(l=1,2 ..., L), their throughput is respectively r l=m l/ τ 0, this moment, the average throughput of system was characterized by its mathematic expectaion:
r avg = E ( r l ) = E ( m l τ 0 ) = E ( m l ) τ 0 .
On the other hand, according to processing delay τ and the equivalent segments m of authentication request effDefinition, average throughput can also be expressed as:
r avg = m eff τ 0 ,
Contrast two of fronts formula as can be known, equivalent segments m effAlso characterized by its mathematic expectaion:
m eff = E ( m l ) = Σ l m l / L ,
Introducing equivalent segments m effAfterwards, previously described optimization method just goes for DSP kernel mixing use different parameters group (L=h in system; M=M) situation, thus the control granularity of adaptive algorithm effectively improved, and can adjust flexibly by total number packets L.
Introduce equivalent segments m effOptimization can be expressed as:
arg min m eff { c = τ ( m eff ) normal · p ( m eff , nT , Q avg , σ ) } .
Also should particularly point out equivalent segments m effDiffer and be decided to be natural number.
Adopt the certificate server group system of technique scheme as shown in Figure 6, the segmentation parameter m that decomposes by point multiplication operation carries out dynamic optimization, can realize weighing between the contradiction of the processing delay of single authentication request and concurrent processing number, thereby adapt to the different requirements that propose under different burst service conditions.
Embodiment 1
Parameter group (L=h to the ECC arithmetic unit; M=M) technical scheme that is optimized can followingly design:
At first DSP kernel in system is divided into L arithmetic element group.Suppose that these arithmetic element groups can use different parameter m, wherein the segments of each point multiplication operation unit is labeled as m l, l=1,2 ..., L, they consist of set M={m l| l=1,2 ..., h}.
Defining equivalent segments is m lMathematic expectaion:
m eff = E ( m l ) = Σ l m l L ,
For L point multiplication operation unit, can consist of
Figure BSA00000442511200192
Plant combination, therefrom select equivalent segments m corresponding to several combination effConsist of set M '.
For given system parameters nT and the elaboration of other necessity, be the system made Mathematical Modeling, then for m effThe different condition of ∈ M ∪ M ' is carried out emulation by Monte Carlo method, respectively according to the Q of appointment avgAnd σ parameter generating authentication request input sample, then check concurrent processing process and the strategy thereof of inputting sample in analog D SP, obtain by statistics the overtime Probability p that the authentication request under predetermined condition is processed.Then the result that obtains is carried out multivariable fitting, set up the empirical equation of the overtime Probability p of authentication request processing
For example, for parameter group (L=2; M={3,4}), m eff=(3+4)/2=3.5, by setting up Mathematical Modeling, analog D SP realizes that two groups of arithmetic element groups are to the concurrent processing process of input sample, first group of arithmetic element group has 3 arithmetic elements, second group of arithmetic element group has 4 arithmetic elements, one of them arithmetic element both can adopt one or more DSP kernels to realize, also can adopt a DSP kernel to realize a plurality of arithmetic elements.Obtain by statistics the overtime Probability p that the authentication request under predetermined condition is processed.Then the result that obtains is carried out multivariable fitting, set up the empirical equation p of the overtime Probability p of authentication request processing 3.5(Q avg, σ), in order to be characterized in operation parameter group (L=2; M={3,4}) time, the empirical equation of the overtime Probability p that authentication request is processed.
Be set as follows system parameters: the authentication request of expectation is processed overtime probability limit value p th, authentication request quene threshold Q th, they satisfy as Q>Q thThe time p>p arranged th
For above-mentioned point multiplication operation decomposition algorithm, in order to determine best computing segmentation parameter m eff, carry out following optimization:
arg min m eff ∈ M { c = ( p th m eff ) · p meff ( Q avg , σ ) } .
Here utilized parameter p thParameter τ is carried out normalized, make it consistent with the parameter p span.
Concrete Optimization Steps is as follows:
Record and calculate at the measurement period that designs in advance (for example 60 minutes) authentication request that receives in the average per second of certificate server system and count Q avg, then carry out following strategy and reselect parameter m eff:
If a) Q avg>Q th, m eff=1 and implementation strategy g), otherwise implementation strategy b);
B) according to the optimization set of selecting in advance
Figure BSA00000442511200202
, with different m effEmpirical equation corresponding to ∈ R value calculated
Figure BSA00000442511200203
Calculate again complex parameter c, then implementation strategy c);
C) if in parameter m effWhole alternative conditions under,
Figure BSA00000442511200204
M eff=1 and implementation strategy g), otherwise implementation strategy d);
D) remove the condition that makes from optimization set R
Figure BSA00000442511200211
The m that satisfies effElement produces new optimization set
Figure BSA00000442511200212
, implementation strategy e then);
E) for optimization set R ', contrast its complex parameter c, the m in a kind of situation of selection c minimum effValue, then implementation strategy f);
F) if there are a plurality of m effValue produces minimum c value, selects m effBe worth a kind of of maximum, then implementation strategy g).
G) output m effCorresponding parameter group (L=h; M=M).
After carrying out above-mentioned strategy, one group of new parameter group (L=h; M=M) be determined, check the current parameter group that adopts of ECC arithmetic unit this moment, if consistent with new parameter group, any change need not made by system, otherwise system sends parameter replacement order to the ECC arithmetic unit, makes it work in optimum state.
Also should particularly point out, the value of measurement period should suitably be chosen by simulation analysis or according to engineering experience.May cause system frequently to be reset if measurement period is too short; May cause system in time not make response to the burst characteristic of business if measurement period is oversize, system works is increased in the duration of non-optimum state.
The implementation case uses by controlling the DSP kernel parameter group (L=h that mixes; M=M), effectively improve the control granularity of adaptive algorithm, and can adjust flexibly by total number packets L.
Embodiment 2
Embodiment 2 works as m to embodiment 1 effBe integer, namely for same parameter group, be divided into L arithmetic element group, the segments m of each arithmetic element group is all identical, according to a preconcerted arrangement can be parameter group (L=h; M=M) brief note is (L=h; M=m 0), m wherein 0=m 1=m 2=...=m L
Parameter group (L=h to the ECC arithmetic unit; M=m 0) technical scheme that is optimized can followingly design:
For given system parameters nT and the elaboration of other necessity, be the system made Mathematical Modeling, then for the different condition of m ∈ M, carry out emulation by Monte Carlo method, respectively according to the Q of appointment avgAnd σ parameter generating authentication request input sample, then check concurrent processing process and the strategy thereof of inputting sample in analog D SP, obtain by statistics the overtime Probability p that the authentication request under predetermined condition is processed.Then the result that obtains is carried out multivariable fitting, set up the empirical equation p that authentication request is processed overtime Probability p m(Q avg, σ).
For example, for parameter group (L=2; M={3,3}), m eff=(3+3)/2=3 can be parameter group (L=2; M={3,3}) brief note is for (L=2; M=3), by setting up Mathematical Modeling, analog D SP realizes that two groups of arithmetic element groups are to the concurrent processing process of input sample, first group of arithmetic element group has 3 arithmetic elements, second group of arithmetic element group has 3 arithmetic elements, one of them arithmetic element both can adopt one or more DSP kernels to realize, also can adopt a DSP kernel to realize a plurality of arithmetic elements.Obtain by statistics the overtime Probability p that the authentication request under predetermined condition is processed.Then the result that obtains is carried out multivariable fitting, set up the empirical equation p of the overtime Probability p of authentication request processing 3(Q avg, σ), in order to be characterized in operation parameter group (L=2; M=3) time, the empirical equation of the overtime Probability p that authentication request is processed.
Be set as follows system parameters: the authentication request of expectation is processed overtime probability limit value p again th, authentication request quene threshold Q th, they satisfy as Q>Q thThe time p>p arranged th
For above-mentioned point multiplication operation decomposition algorithm, in order to determine best computing segmentation parameter m, carry out following optimization:
arg min m ∈ M { c = ( p th m ) · p m ( Q avg , σ ) } .
Here utilized parameter p thParameter τ is carried out normalized, make it consistent with the parameter p span.
Concrete Optimization Steps is as follows:
Record and calculate at the measurement period that designs in advance (for example 60 minutes) authentication request that receives in the average per second of certificate server system and count Q avg, then carry out following strategy and reselect parameter group (L=h; M=m 0):
If a) Q avg>Q th, m=1 and implementation strategy g), otherwise implementation strategy b);
B) according to the optimization set of selecting in advance , calculate p with different empirical equation corresponding to m ∈ R value m(Q avg), then calculate complex parameter c, then implementation strategy c);
C) if under whole alternative conditions of parameter m, p m(Q avg)>p thM=1 and implementation strategy g), otherwise implementation strategy d);
D) remove from optimization set R and make condition p m(Q avg)>p thThe m element that satisfies produces new optimization set
Figure BSA00000442511200232
, implementation strategy e then);
E) for optimization set R ', contrast its complex parameter c, the m value in a kind of situation of selection c minimum, then implementation strategy f);
F) if exist a plurality of m values to produce minimum c value, select a kind of of m value maximum, then implementation strategy g).
G) output parameter group (L=h; M=m 0).
After carrying out above-mentioned strategy, one group of new parameter group (L=h; M=m 0) be determined, check the current parameter group that adopts of ECC arithmetic unit this moment, if consistent with new parameter group, any change need not made by system, otherwise system sends parameter replacement order to the ECC arithmetic unit, makes it work in optimum state.
Usually, in order to design conveniently, can make parameter m satisfy constraints m ∈ M when selecting parameter, wherein M is the positive integer factor set of n, like this can be so that the wide n of large numerical digit of point multiplication operation can be divided exactly the bit wide w of each segmentation.Such as n=192, m ∈ M={1,2,3,4,6,8,12,16,24,32,48,64,96}.When parameter m not being used restraint, must the bit wide n of large number be expanded, can guarantee that just the processing mode of all DSP cores is consistent.Also may choose the subset of M as the constraints of optimizing in the middle of Project Realization, such as M '={ 1,2,4,8, it is to go forward one by one by 2 times that efficient is carried out in this subset representative of 16}, and such design can reduce the difficulty that realizes of optimized algorithm, but has given up to a certain extent the control granularity of adaptive algorithm.
In order to obtain optimum, the DSP number of cores that each arithmetic element group comprises should suitably be chosen, and can divide exactly all elements in the set M of selected parameter m.Only in this way, at the parameter group (L=h of DSP kernel of certain grouping of change; M=m 0) afterwards, the whole DSP kernels of guarantee all are used effectively, have more than needed otherwise may exist to exist when distributing the DSP kernel, but DSP kernel more than needed is not enough to again consist of an arithmetic element group.
Embodiment 3
Embodiment 3 is a kind of special case to embodiment 2, and in light-load conditions, the authentication request number of for example waiting for is less than predefined threshold value Q when the certificate server system works th, can make reasonable assumption this moment: the overtime Probability p ≈ 0 that authentication request is processed.With this understanding, to the parameter group (L=h of ECC arithmetic unit; M=m 0) technical scheme that is optimized also can followingly design:
Determine following some parameter constants: q according to simulation analysis and incorporation engineering experience 1, q 2, q 3, q 4, its unit is authentication request number/second.These constants should satisfy condition: q 1<q 2<q 3<q 4<Q thRecord and calculate at the measurement period that designs in advance (for example 60 minutes) authentication request that receives in the average per second of certificate server system and count Q avg, then the parameter corresponding relation shown in 7 with reference to the accompanying drawings, carry out following strategy and reselect parameter group (L=h; M=m 0):
If a) Q avg<q 1, parameter m=16 and implementation strategy f), otherwise implementation strategy b);
B) if q 1<Q avg<q 2, parameter m=8 and implementation strategy f), otherwise implementation strategy c);
C) if q 2<Q avg<q 3, parameter m=4 and implementation strategy f), otherwise implementation strategy d);
D) if q 3<Q avg<q 4, parameter m=2 and implementation strategy f), otherwise implementation strategy e);
E) parameter m=1, and implementation strategy f);
F) parameter m of determining according to above-mentioned steps, and the wide n calculating parameter of the large numerical digit w=n/m of point multiplication operation.
After carrying out above-mentioned strategy, one group of new parameter group (L=h; M=m 0) be determined, check the current parameter group that adopts of ECC arithmetic unit this moment, if consistent with new parameter group, any change need not made by system, otherwise system sends parameter replacement order to the ECC arithmetic unit, makes it work in optimum state.
Embodiment 4
Embodiment 4 is a kind of special case to embodiment 2, and in the heavy duty condition, authentication request was processed and occured to be high-probability event, to suppose p>p overtime this moment when the certificate server system works thWith this understanding, to the parameter group (L=h of ECC arithmetic unit; M=m 0) technical scheme that is optimized also can followingly design:
Determine following some parameter constants: σ according to simulation analysis and incorporation engineering experience 1, σ 2, σ 3, σ 4, these constants should satisfy condition: σ 1<σ 2<σ 3<σ 4Record and calculate the authentication request of certificate server system at the measurement period (for example 60 minutes) of design in advance and count variances sigma, then the parameter corresponding relation shown in 8 with reference to the accompanying drawings, carry out following strategy and reselect parameter group (L=h; M=m 0):
If a) σ<σ 1, parameter m=16 and implementation strategy f), otherwise implementation strategy b);
B) if σ 1<σ<σ 2, parameter m=8 and implementation strategy f), otherwise implementation strategy c);
C) if σ 2<σ<σ 3, parameter m=4 and implementation strategy f), otherwise implementation strategy d);
D) if σ 3<σ<σ 4, parameter m=2 and implementation strategy f), otherwise implementation strategy e);
E) parameter m=1, and implementation strategy f);
F) parameter m of determining according to above-mentioned steps, and the wide n calculating parameter of the large numerical digit w=n/m of point multiplication operation.
After carrying out above-mentioned strategy, one group of new parameter group (L=h; M=m 0) be determined, check the current parameter group that adopts of ECC arithmetic unit this moment, if consistent with new parameter group, any change need not made by system, otherwise system sends parameter replacement order to the ECC arithmetic unit, makes it work in optimum state.
The above is only the preferred embodiment of the present invention; should be pointed out that for the person of ordinary skill of the art, under the prerequisite that does not break away from the principle of the invention; can also make some improvements and modifications, these improvements and modifications also should be considered as protection scope of the present invention.

Claims (9)

1. the implementation method of elliptic curve cryptography arithmetic device in a Verification System, described method is based on using public key algorithm on a predefined elliptic curve, being included in Verification System produces in the process of signing, select a some P on elliptic curve, each authentication request is generated the stochastic variable k with n bit, complete some P and k point multiplication operation corresponding to each authentication request
Figure FDA00003574476700011
It is characterized in that, concrete steps are as follows:
Determine at least one group of arithmetic element group according to chopping rule, every group of arithmetic element group comprises at least one concurrent arithmetic element;
For every group of arithmetic element group, carry out and decompose reorganization operation, be the algorithm pattern with a plurality of concurrent computings with point multiplication operation Q=kP equivalent transformation, each concurrent arithmetic element is carried out a concurrent computing, completes the point multiplication operation Q=kP corresponding to an authentication request;
Described concurrent arithmetic element is the point multiplication operation unit, and every group of arithmetic element group comprises at least one point multiplication operation unit and a point add operation unit;
Described decomposition reorganization operation comprises:
Stochastic variable k is decomposed into m segmentation a i, i=0,1,2 ..., m-1, m is the number of the included point multiplication operation unit of this group arithmetic element group;
Calculate a in i point multiplication operation unit iThe dot product a of segmentation and P iP;
Use the point add operation unit to a of all point multiplication operations unit iP gathers;
Figure FDA00003574476700012
2. implementation method according to claim 1, is characterized in that, described chopping rule is:
Design in advance at least one parameter group and form optimization set R, the number of each parameter group definition arithmetic element group, and the number of the arithmetic element that comprises of every group of arithmetic element group for each parameter group, are calculated
Figure FDA00003574476700013
Wherein L is the number of the arithmetic element group of this parameter group, m 1The number of the concurrent arithmetic element that comprises for l arithmetic element group in this parameter group, l=1,2 ..., L counts Q according to the average authentication request that the measurement period in design in advance receives avg, select order
Figure FDA00003574476700014
Parameter group when obtaining minimum value, wherein τ is the processing delay time of single authentication request, subscript n ormal represents normalized, nT is the length of authentication request formation, σ is that the authentication request in the designated statistics cycle is counted variance, characterize authentication request sparse property or the uniformity of the time of advent, p (m eff, nT, Q avg, be σ) at m eff, nT, Q avg, the σ overtime probability that authentication request is processed during as independent variable.
3. implementation method according to claim 2, is characterized in that, described chopping rule is:
Select successively the first parameter group from optimization set R, execution in step 31:
Step 31 is obtained system parameters nT, and calculates m eff, carry out emulation by Monte Carlo method, respectively according to the Q of appointment avgAnd σ parameter generating authentication request input sample, then simulation trial unit group is processed the input sample, comes the overtime probable value p of access authentication request processing by statistics;
Step 32 changes Q avg, repeated execution of steps 31 obtains a plurality of overtime probable value p;
Step 33 is carried out multivariable fitting to a plurality of overtime probable value p that obtains, and sets up authentication request and processes overtime Probability p at m effUnder empirical equation
Step 34 is selected next parameter group from optimization set, and execution in step 31~step 33, until in optimization set, all parameter group are all selected, thereby obtains the empirical equation under each parameter group
Figure FDA00003574476700028
Step 35 is set as follows system parameters: the authentication request of expectation is processed overtime probability limit value P th, authentication request quene threshold Q th, order
Figure FDA00003574476700021
Figure FDA00003574476700022
Execution in step 36;
Step 36 records and calculates at the measurement period that designs in advance the authentication request that receives in the average per second of certificate server system and counts Q avg, then carry out following strategy and reselect m eff:
If a) Q avgQ th, m eff=1 and implementation strategy g), otherwise implementation strategy b);
B) select all m from optimization set effEmpirical equation corresponding to value calculated
Figure FDA00003574476700024
Calculate again complex parameter c, then implementation strategy c);
C) if in parameter m effWhole alternative conditions under,
Figure FDA00003574476700025
M eff=1 and implementation strategy g), otherwise implementation strategy d);
D) remove the condition that makes from optimization set The m that satisfies effElement produces new optimization set
Figure FDA00003574476700029
Then implementation strategy e);
E) for optimization set R', contrast its complex parameter c, the m in a situation of selection c minimum effValue, then implementation strategy f);
F) if there are a plurality of m effValue produces minimum c value, selects m effBe worth maximum one, then implementation strategy g);
G) output m effCorresponding parameter group.
4. implementation method according to claim 3, is characterized in that, in described optimization set, and the m of each parameter group effBe integer.
5. implementation method according to claim 4, is characterized in that, described m effSatisfy constraints m eff∈ M, wherein M is the positive integer factor set of the wide n of large numerical digit.
6. implementation method according to claim 4, is characterized in that, when the certificate server system works in the chopping rule of light-load conditions is:
Set K parameter constant q that increases progressively successively k, k=1,2 ..., K, and all parameter constant q kLess than Q th, every adjacent two parameter constant q kForm constant section (q k-1, q k), q wherein 0=0;
Corresponding each constant section (q k-1, q k) set the segmentation parameter value m of a correspondence k, and m kIncrease progressively successively;
Record and calculate at the measurement period that designs in advance the authentication request that receives in the average per second of certificate server system and count Q avgIf, q k-1<Q avg<q k, m eff=m k, output m effCorresponding parameter group;
Described light-load conditions is, when the authentication request number of waiting for is less than predefined threshold value Q thThe time.
7. implementation method according to claim 4, is characterized in that, when the certificate server system works in the chopping rule of heavy duty condition is:
Set H parameter constant σ that increases progressively successively h, h=1,2 ..., H, every adjacent two parameter constant σ hForm constant section (σ h-1, σ h), σ wherein 0=0;
Corresponding each constant section (σ h-1, σ h) set the segmentation parameter value m of a correspondence h
Record and calculate at the measurement period that designs in advance the authentication request that receives in the average per second of certificate server system and count Q avg, calculate authentication request and count variances sigma, if σ h-1<σ<σ h, m eff=m h, output m effCorresponding parameter group;
Described heavy duty condition is that processing overtime probability perseverance when authentication request has P〉P thThe time.
8. implementation method according to claim 1, is characterized in that, the concrete steps of described decomposition reorganization operation are:
K decomposes to stochastic variable, as weights, k is expanded into m segmentation with U, k be unfolded into:
Figure FDA00003574476700041
Wherein each is segmented into a i=U ik i
In i point multiplication operation unit, calculate in advance and preserve respectively U iThe value of P;
Calculate respectively a in i point multiplication operation unit iP=(U ik i) P=k i(U iP);
The a of point add operation unit to all point multiplication operations unit iP gathers, and obtains;
Figure FDA00003574476700042
9. implementation method according to claim 8, is characterized in that, described parameter U is 2 integral number power, i.e. U=2 w, w is natural number.
CN201110049667.7A 2011-03-01 2011-03-01 Realizing method of elliptic curve cryptography arithmetic device in authentication system Expired - Fee Related CN102131198B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110049667.7A CN102131198B (en) 2011-03-01 2011-03-01 Realizing method of elliptic curve cryptography arithmetic device in authentication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110049667.7A CN102131198B (en) 2011-03-01 2011-03-01 Realizing method of elliptic curve cryptography arithmetic device in authentication system

Publications (2)

Publication Number Publication Date
CN102131198A CN102131198A (en) 2011-07-20
CN102131198B true CN102131198B (en) 2013-11-06

Family

ID=44269064

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110049667.7A Expired - Fee Related CN102131198B (en) 2011-03-01 2011-03-01 Realizing method of elliptic curve cryptography arithmetic device in authentication system

Country Status (1)

Country Link
CN (1) CN102131198B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521211B (en) * 2011-11-17 2014-09-10 华南理工大学 Parallel device for solving linear equation set on finite field
CN102929705B (en) * 2012-10-31 2015-06-17 飞天诚信科技股份有限公司 Method for quickly generating coordinate points in embedded system
CN104579651B (en) * 2013-10-28 2018-08-24 上海复旦微电子集团股份有限公司 The method and apparatus of elliptic curve cipher point multiplication operation
CN105610583B (en) * 2014-11-04 2018-10-26 上海华虹集成电路有限责任公司 ECDSA methods for resisting error curve attack
CN104461469A (en) * 2014-11-14 2015-03-25 成都卫士通信息产业股份有限公司 Method for achieving SM2 algorithm through GPU in parallelization mode
CN105357010B (en) * 2015-10-08 2019-04-02 武汉理工大学 A kind of crypto-operation method for computing resource constrained devices
CN106385318B (en) * 2016-09-06 2019-06-14 北京叮叮关爱科技有限公司 SDK verification method based on elliptic equation
CN109710308B (en) * 2017-10-25 2023-03-31 阿里巴巴集团控股有限公司 Task processing method, device and system
CN109698751A (en) * 2018-11-09 2019-04-30 北京中宇万通科技股份有限公司 Digital signature generates and sign test method, computer equipment and storage medium
CN110233727B (en) * 2019-06-12 2023-06-13 湖南国科微电子股份有限公司 SM2 operation method, system, equipment and computer storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101296075A (en) * 2007-04-29 2008-10-29 四川虹微技术有限公司 Identity authentication system based on elliptic curve
CN101626291A (en) * 2008-07-07 2010-01-13 谈剑锋 ECC algorithm-based identity authentication system and identity authentication method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8117447B2 (en) * 2008-01-10 2012-02-14 Industrial Technology Research Institute Authentication method employing elliptic curve cryptography

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101296075A (en) * 2007-04-29 2008-10-29 四川虹微技术有限公司 Identity authentication system based on elliptic curve
CN101626291A (en) * 2008-07-07 2010-01-13 谈剑锋 ECC algorithm-based identity authentication system and identity authentication method

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Fan etc.Montgomery Modular Multiplication Algorithm on Multi-Core Systems.《Signal Processing Systems
Montgomery Modular Multiplication Algorithm on Multi-Core Systems;Fan, etc;《Signal Processing Systems, 2007 IEEE Workshop on》;20071017;全文 *
冯飞,等.基于椭圆曲线密码体制的系统设计.《计算机时代》.2005,(第12期),全文. *
秦媛媛,等.有限域GF(2m)上椭圆曲线密码体制的快速实现.《计算机工程与设计》.2006,第27卷(第21期),全文. *

Also Published As

Publication number Publication date
CN102131198A (en) 2011-07-20

Similar Documents

Publication Publication Date Title
CN102131198B (en) Realizing method of elliptic curve cryptography arithmetic device in authentication system
Ozfatura et al. Speeding up distributed gradient descent by utilizing non-persistent stragglers
Kuang et al. Secure tensor decomposition using fully homomorphic encryption scheme
CN100583769C (en) Time point system for ellipse curve password system
CN110247753B (en) Block output method and device based on block chain node point network
CN101221491B (en) Point addition system of elliptic curve cipher system
Heindl Decomposition of general queueing networks with MMPP inputs and customer losses
Riis et al. Capacitated network design with uncertain demand
Dudin et al. Priority retrial queueing model operating in random environment with varying number and reservation of servers
CN113783702A (en) Hardware implementation method and system for elliptic curve digital signature and signature verification
Sarmasarkar et al. On gradient coding with partial recovery
Jain et al. Optimal policy for bulk queue with multiple types of server breakdown
Moon et al. Fast VLSI arithmetic algorithms for high-security elliptic curve cryptographic applications
CN111970112B (en) Ether house deployment method and system based on ZYNQ heterogeneous computing platform
Klimenok et al. On the stationary distribution of tandem queue consisting of a finite number of stations
Huang et al. Fast algorithm in ECC for wireless sensor network
Vollala et al. Efficient modular exponential algorithms compatible with hardware implementation of public‐key cryptography
CN110417545A (en) Finite field discrete logarithm quantum solves line optimization building method
Samanta et al. Analysis of GI [X]/D-MSP/1/∞ queue using RG-factorization.
CN109241784A (en) A kind of close SM2 signature verification method of the state of SSD and system
Zymnis et al. An interior-point method for large scale network utility maximization
CN110224813B (en) Block discharging method and device based on block chain
Jewajinda et al. Cellular compact genetic algorithm for evolvable hardware
Huang et al. Fuzzy controlling window for elliptic curve cryptography in wireless sensor networks
CN110245950B (en) Block discharging method and device related to block chain

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: 20131106

Termination date: 20200301

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