CN109933305A - Quick Montgomery modular multiplier optimization component suitable for the close sm2p256v1 algorithm of state - Google Patents

Quick Montgomery modular multiplier optimization component suitable for the close sm2p256v1 algorithm of state Download PDF

Info

Publication number
CN109933305A
CN109933305A CN201910214681.4A CN201910214681A CN109933305A CN 109933305 A CN109933305 A CN 109933305A CN 201910214681 A CN201910214681 A CN 201910214681A CN 109933305 A CN109933305 A CN 109933305A
Authority
CN
China
Prior art keywords
carry
sm2p256v1
close
algorithm
quick
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.)
Pending
Application number
CN201910214681.4A
Other languages
Chinese (zh)
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.)
CHENGDU 30JAVEE MICROELECTRONICS Co.,Ltd.
Original Assignee
Sichuan Westone Information Safe Platform 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 Sichuan Westone Information Safe Platform Technology Co Ltd filed Critical Sichuan Westone Information Safe Platform Technology Co Ltd
Priority to CN201910214681.4A priority Critical patent/CN109933305A/en
Publication of CN109933305A publication Critical patent/CN109933305A/en
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

Quick Montgomery modular multiplier optimization component suitable for the close sm2p256v1 algorithm of state, including large number multiplication device, temporary variable produces device, end-around carry accumulator and big number subtracter, the big integer A and B that input bit wide is 256bit obtains the big integer Z that a bit wide is 512bit by large number multiplication device, by carrying out 8 carry accumulation operations with Z after Z generation temporary variable X1 and X2, the cumulative obtained result Z of each carry is re-used as the input of carry accumulator and temporary variable generator, after completing 8 carry accumulation operations, if Z is greater than or equal to big integer constant M, M is then subjected to primary big number subtraction in Z, otherwise the result of 8 end-around carry accumulators is directly exported.

Description

Quick Montgomery modular multiplier optimization component suitable for the close sm2p256v1 algorithm of state
Technical field
The present invention relates to information security fields, more particularly to suitable for the quick Montgomery of the close sm2p256v1 algorithm of state Modular multiplier optimization component.
Background technique
In the close operation of information security chip progress state, Montgomery modular multiplier is the mould for calling frequency highest most time-consuming Block is directed to the close recommendation curve of state that frequency of use has comparative advantage although general-purpose algorithm can be adapted to any parameter of curve Sm2p256v1, using the calculation of nesting circulation, time complexity is high, and hardware design complexity is high, and power consumption is high.
Summary of the invention
It is an object of the present invention to substantially reduce multiplier resources, the design for reducing Montgomery modular multiplier is complicated Degree, reduces hardware power consumption, and design is suitable for the quick Montgomery modular multiplier optimization component of the close sm2p256v1 algorithm of state.
Goal of the invention of the invention is achieved through the following technical solutions:
Quick Montgomery modular multiplier optimization component suitable for the close sm2p256v1 algorithm of state, comprising: large number multiplication device, Temporary variable produces device, end-around carry accumulator and counts subtracter greatly, and the big integer A and B that input bit wide is 256bit passes through big Number multiplier obtains the big integer Z that a bit wide is 512bit, by carrying out 8 carries with Z after Z generation temporary variable X1 and X2 Accumulation operations, the cumulative obtained result Z of each carry is re-used as the input of carry accumulator and temporary variable generator, complete After 8 carry accumulation operations, if Z is greater than or equal to big integer constant M, M is subjected to primary big number subtraction in Z, Otherwise the result of 8 end-around carry accumulators is directly exported.
Further, the large number multiplication device operation mode are as follows: Z=(Z16,...,Z0)=A × B.
The further temporary variable produces device operation mode are as follows: passes through formula T=Zi、X1=T < < 32-T and X2 =X1- T calculates X1And X2, wherein X1And X2Data bit width be 64bit.
Further, the end-around carry accumulator operation mode are as follows: successively calculate according to the following steps
(Zi+8,...,Zi+0): S1:(C, Zi+0)=Zi+0+X1+C;
S2:(C,Zi+1)=Zi+1+X1+C;
S3:(C,Zi+2)=Zi+2+0+C;
S4:(C,Zi+3)=Zi+3+X1+C;
S5:(C,Zi+4)=Zi+4+X1+C;
S6:(C,Zi+5)=Zi+5+X1+C;
S7:(C,Zi+6)=Zi+6+X1+C;
S8:(C,Zi+7)=Zi+7+X2+C;
S9:(CARRY,Zi+8)=Zi+8+C+CAARY;
Such as (C, Z in S1i+0)=Zi+0+X1+ C, wherein Zi+0Data bit width be 32bit, X1Data bit width with C is 64bit, step S2~S9 and so on, ZiFor 32bit intermediate variable.
Further, big several subtracter operation modes are as follows: if (Z16,...,Z8) >=M, then R=(Z16,..., Z8)-M。
The utility model has the advantages that the quick Montgomery modular multiplier optimization component that the present invention is suitable for the close sm2p256v1 algorithm of state is big Amount reduces multiplier resources, reduces the design complexities of Montgomery modular multiplier, reduces hardware power consumption, and improve The operation efficiency of information security chip Montgomery modular multiplier in the close sm2p256v1 parameter of curve of operation state is reducing chip The internal structure of information security chip can be simplified accordingly on the basis of operation power consumption, thus reduce the manufacturing of chip at This.
Detailed description of the invention
Fig. 1 is Montgomery modular multiplier optimization component structure chart.
Specific embodiment
The present invention will be further described, but protection scope of the present invention be not limited to it is as described below.
As shown in Figure 1, being suitable for the quick Montgomery modular multiplier optimization component of the close sm2p256v1 algorithm of state, comprising: big Number multiplier, temporary variable production device, end-around carry accumulator and subtracters several greatly, the big integer A that input bit wide is 256bit With B by large number multiplication device obtain a bit wide be 512bit big integer Z, by Z generate temporary variable X1 and X2 after with Z into 8 carry accumulation operations of row, the cumulative obtained result Z of each carry are re-used as carry accumulator and temporary variable generator M, if Z is greater than or equal to big integer constant M, is carried out primary big number in Z after completing 8 carry accumulation operations by input Otherwise subtraction directly exports the result of 8 end-around carry accumulators.
Further, the large number multiplication device operation mode are as follows: Z=(Z16,...,Z0)=A × B.
The further temporary variable produces device operation mode are as follows: passes through formula T=Zi、X1=T < < 32-T and X2 =X1- T calculates X1And X2, wherein X1And X2Data bit width be 64bit.
Further, the end-around carry accumulator operation mode are as follows: successively calculate according to the following steps
(Zi+8,...,Zi+0):
S1:(C,Zi+0)=Zi+0+X1+C;
S2:(C,Zi+1)=Zi+1+X1+C;
S3:(C,Zi+2)=Zi+2+0+C;
S4:(C,Zi+3)=Zi+3+X1+C;
S5:(C,Zi+4)=Zi+4+X1+C;
S6:(C,Zi+5)=Zi+5+X1+C;
S7:(C,Zi+6)=Zi+6+X1+C;
S8:(C,Zi+7)=Zi+7+X2+C;
S9:(CARRY,Zi+8)=Zi+8+C+CAARY;
Such as (C, Z in S1i+0)=Zi+0+X1+ C, wherein Zi+0Data bit width be 32bit, X1Data bit width with C is 64bit, step S2~S9 and so on, ZiFor 32bit intermediate variable.
Further, big several subtracter operation modes are as follows: if (Z16,...,Z8) >=M, then R=(Z16,..., Z8)-M。
Further, the sm2p256v1 is 256 elliptic curve parameters of prime field of the close recommendation of state, elliptic curve Equation is y2=x3+ax+b.Parameter of curve is as follows:
Wherein parameter p is to need to fix in montgomery modulo multiplication to use parameter.
The utility model has the advantages that the quick Montgomery modular multiplier optimization component that the present invention is suitable for the close sm2p256v1 algorithm of state is big Amount reduces multiplier resources, reduces the design complexities of Montgomery modular multiplier, reduces hardware power consumption, and improve The operation efficiency of information security chip Montgomery modular multiplier in the close sm2p256v1 parameter of curve of operation state is reducing chip The internal structure of information security chip can be simplified accordingly on the basis of operation power consumption, thus reduce the manufacturing of chip at This.
The above shows and describes the basic principles and main features of the present invention and the advantages of the present invention.The technology of the industry Personnel are it should be appreciated that the present invention is not limited to the above embodiments, and the above embodiments and description only describe this The principle of invention, without departing from the spirit and scope of the present invention, various changes and improvements may be made to the invention, these changes Change and improvement all fall within the protetion scope of the claimed invention.The claimed scope of the invention by appended claims and its Equivalent thereof.

Claims (5)

1. being suitable for the quick Montgomery modular multiplier optimization component of the close sm2p256v1 algorithm of state characterized by comprising big Number multiplier, temporary variable production device, end-around carry accumulator and subtracters several greatly, the big integer A that input bit wide is 256bit With B by large number multiplication device obtain a bit wide be 512bit big integer Z, by Z generate temporary variable X1 and X2 after with Z into 8 carry accumulation operations of row, the cumulative obtained result Z of each carry are re-used as carry accumulator and temporary variable generator M, if Z is greater than or equal to big integer constant M, is carried out primary big number in Z after completing 8 carry accumulation operations by input Otherwise subtraction directly exports the result of 8 end-around carry accumulators.
2. it is suitable for the quick Montgomery modular multiplier optimization component of the close sm2p256v1 algorithm of state as described in claim 1, It is characterized in that, the large number multiplication device operation mode are as follows: Z=(Z16,...,Z0)=A × B.
3. it is suitable for the quick Montgomery modular multiplier optimization component of the close sm2p256v1 algorithm of state as described in claim 1, It is characterized in that, the temporary variable produces device operation mode are as follows: passes through formula T=Zi、X1=T < < 32-T and X2=X1-T Calculate X1And X2, wherein X1And X2Data bit width be 64bit.
4. it is suitable for the quick Montgomery modular multiplier optimization component of the close sm2p256v1 algorithm of state as described in claim 1, It is characterized in that, the end-around carry accumulator operation mode are as follows: successively calculate (Z according to the following stepsi+8,...,Zi+0): S1:(C,Zi+0)=Zi+0+X1+C;
S2:(C,Zi+1)=Zi+1+X1+C;
S3:(C,Zi+2)=Zi+2+0+C;
S4:(C,Zi+3)=Zi+3+X1+C;
S5:(C,Zi+4)=Zi+4+X1+C;
S6:(C,Zi+5)=Zi+5+X1+C;
S7:(C,Zi+6)=Zi+6+X1+C;
S8:(C,Zi+7)=Zi+7+X2+C;
S9:(CARRY,Zi+8)=Zi+8+C+CAARY;
Such as (C, Z in S1i+0)=Zi+0+X1+ C, wherein Zi+0Data bit width be 32bit, X1Data bit width with C is 64bit, Step S2~S9 and so on, ZiFor 32bit intermediate variable.
5. it is suitable for the quick Montgomery modular multiplier optimization component of the close sm2p256v1 algorithm of state as described in claim 1, It is characterized in that, big several subtracter operation modes are as follows: if (Z16,...,Z8) >=M, then R=(Z16,...,Z8)-M。
CN201910214681.4A 2019-03-20 2019-03-20 Quick Montgomery modular multiplier optimization component suitable for the close sm2p256v1 algorithm of state Pending CN109933305A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910214681.4A CN109933305A (en) 2019-03-20 2019-03-20 Quick Montgomery modular multiplier optimization component suitable for the close sm2p256v1 algorithm of state

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910214681.4A CN109933305A (en) 2019-03-20 2019-03-20 Quick Montgomery modular multiplier optimization component suitable for the close sm2p256v1 algorithm of state

Publications (1)

Publication Number Publication Date
CN109933305A true CN109933305A (en) 2019-06-25

Family

ID=66987836

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910214681.4A Pending CN109933305A (en) 2019-03-20 2019-03-20 Quick Montgomery modular multiplier optimization component suitable for the close sm2p256v1 algorithm of state

Country Status (1)

Country Link
CN (1) CN109933305A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040225702A1 (en) * 2003-05-09 2004-11-11 Hee-Kwan Son Montgomery modular multiplier and method thereof
CN104951279A (en) * 2015-05-27 2015-09-30 四川卫士通信息安全平台技术有限公司 Vectorized Montgomery modular multiplier design method based on NEON engine
CN109145616A (en) * 2018-08-01 2019-01-04 上海交通大学 The realization method and system of SM2 encryption, signature and key exchange based on efficient modular multiplication

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040225702A1 (en) * 2003-05-09 2004-11-11 Hee-Kwan Son Montgomery modular multiplier and method thereof
CN104951279A (en) * 2015-05-27 2015-09-30 四川卫士通信息安全平台技术有限公司 Vectorized Montgomery modular multiplier design method based on NEON engine
CN109145616A (en) * 2018-08-01 2019-01-04 上海交通大学 The realization method and system of SM2 encryption, signature and key exchange based on efficient modular multiplication

Similar Documents

Publication Publication Date Title
CN113628094B (en) High-throughput SM2 digital signature computing system and method based on GPU
CN106445471A (en) Processor and method for executing matrix multiplication on processor
Gu et al. A novel weight design in multi-objective evolutionary algorithm
CN110351087A (en) The montgomery modulo multiplication operation method and computing device of pipeline-type
Hu et al. Design of recurrent neural networks for solving constrained least absolute deviation problems
CN109933304B (en) Rapid Montgomery modular multiplier operation optimization method suitable for national secret sm2p256v1 algorithm
CN108390393A (en) Power distribution network multi-objective reactive optimization method and terminal device
Zhang et al. Efficient prime-field arithmetic for elliptic curve cryptography on wireless sensor nodes
CN103236819B (en) A kind of memory system chaotic signal generator
CN115577603A (en) Simulation method and system for reducing unit matrix dimension and related equipment
CN108256638A (en) Microprocessor circuit and the method for performing neural network computing
CN108256644A (en) Microprocessor circuit and the method for performing neural network computing
CN107547201A (en) A kind of method of scalar multiplication computational efficiency in raising elliptic curve cryptosystem
Park et al. Optimal tuning of a confined Brownian information engine
CN109933305A (en) Quick Montgomery modular multiplier optimization component suitable for the close sm2p256v1 algorithm of state
CN113467754A (en) Lattice encryption modular multiplication operation method and framework based on decomposition reduction
Sanchez et al. A novel 1d-convolution accelerator for low-power real-time cnn processing on the edge
CN104750455A (en) Method and device for processing data on basis of Montgomery modular multiplication
Shi et al. Some limit properties of random transition probability for second-order nonhomogeneous Markov chains indexed by a tree
CN104598199B (en) The data processing method and system of a kind of Montgomery modular multipliers for smart card
Rakanovic et al. Reducing off-chip memory traffic in deep CNNs using stick buffer cache
CN112668183A (en) Rain flow counting processing method for long-time history vibration signal
CN110619104A (en) Near-field dynamics serial and parallel numerical calculation method based on cubic lattice integration method
CN110619928A (en) Parallel cubic lattice integration method of bond-based near-field dynamics
CN104680174B (en) The frame clustering method of Grid-oriented animation progressive transmission

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20211012

Address after: Floor 12 and 13, building 3, 333 Yunhua Road, high tech Zone, Chengdu, Sichuan 610000

Applicant after: CHENGDU 30JAVEE MICROELECTRONICS Co.,Ltd.

Address before: Building 2, 333 Yunhua Road, high tech Zone, Chengdu, Sichuan 610000

Applicant before: SICHUAN WEISHITONG INFORMATION SECURITY PLATFORM TECHNOLOGY Co.,Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190625