High-speed operation processing method and device of elliptic curve cryptography algorithm

By employing optimized point addition operations in the Chudnovsky projective coordinate system in elliptic curve cryptography algorithms, the problem of low efficiency in point multiplication calculations is solved, achieving faster computation speed and higher security. This approach is suitable for applications such as digital signatures and key exchange in elliptic curve cryptography systems.

CN119519973BActive Publication Date: 2026-07-21WUHAN SHIP COMM RES INST (NO 722 RES INST OF CHINA STATE SHIPBUILDING CORP)
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
WUHAN SHIP COMM RES INST (NO 722 RES INST OF CHINA STATE SHIPBUILDING CORP)
Filing Date
2024-11-30
Publication Date
2026-07-21

AI Technical Summary

Technical Problem

Existing elliptic curve cryptography algorithms suffer from high computational time complexity in dot product operations, especially in the dot multiplication and dot addition operations, which are inefficient and affect the overall system performance.

Method used

An optimized point addition method under the Chudnovsky projective coordinate system is adopted. By obtaining a second coordinate point with normalization properties, the point addition operation is transformed into an optimized point addition operation after doubling the point, including the first point addition operation and the second point addition operation. The point addition operation formula of the Chudnovsky projective coordinate system is used for algebraic transformation to simplify the point addition operation.

Benefits of technology

It reduces the number of multiplication operations, improves the efficiency of dot product calculations, reduces time and space costs, and enhances the overall performance of elliptic curve cryptography systems, especially in scenarios such as digital signatures and key exchange, improving computational speed and security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119519973B_ABST
    Figure CN119519973B_ABST
Patent Text Reader

Abstract

The application discloses a high-speed operation processing method and device of an elliptic curve cryptography algorithm, and belongs to the field of elliptic curve cryptography calculation, and comprises the following steps: obtaining a first coordinate point and a second coordinate point of an elliptic curve to be calculated in a Chudnovsky projective coordinate system; judging whether point multiplication operation of the elliptic curve to be calculated exists after point addition operation of a multiple point, and converting the point addition operation of the multiple point into optimized point addition operation in the case that the point addition operation of the multiple point exists; the optimized point addition operation is an operation based on a point addition operation formula in the Chudnovsky projective coordinate system; and the optimized point addition operation is carried out based on the first coordinate point and the second coordinate point. The application introduces the Chudnovsky projective coordinate system, and specially simplifies a point addition operation formula based on the Chudnovsky projective coordinate system, so that the formula of the point addition operation in the projective coordinate system can be simplified, temporary variables in the process are reduced, and the calculation efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of elliptic curve cryptography, and more specifically, to a high-speed computational processing method and apparatus for elliptic curve cryptography algorithms. Background Technology

[0002] Elliptic Curve Cryptography (ECC) is an asymmetric cryptosystem characterized by short key lengths and fast encryption / decryption speeds. In recent years, ECC has been widely used in commercial cryptography. Similar to ECC, the SM2 cryptographic standard, proposed by my country in 2010, is a public-key cryptography standard and an important component of the national cryptographic system. SM2 is an asymmetric cryptosystem based on ECC, widely used in banks, securities firms, and other locations requiring digital encryption technology. Therefore, researching and improving the computational efficiency of ECC and SM2 is of practical significance.

[0003] When the prime number p > 3, the equation of the elliptic curve over the finite field is expressed in affine coordinates as:

[0004] E : y2 = x3 + ax + b.(1)

[0005] Where a, b ∈ Fp and Δ = 4a³ + 27b², 6 ≠ 0. The set of points on the elliptic curve is denoted as where O is the point at infinity. All points in this group form an abelian group.

[0006] The simplest representation of a point on an elliptic curve E with two coordinates (x, y) is the affine coordinate system. However, considering that calculations involving point multiplication and addition require inversion operations in Fp for affine coordinates, and inversion is the most costly computation, it should be avoided. In practice, projective coordinate systems are often used, with the Chudnovsky projective coordinate system being widely adopted. When z ≠ 0, the point (x, y, z2, z3) in the Chudnovsky projective coordinate system corresponds to the point (x / z2, y / z3) in the affine coordinate system; when z = 0, the point (1, 1, 0) corresponds to the point O at infinity in the affine coordinate system.

[0007] The main operation in elliptic curves is called dot product, denoted by Q = kP, where P and Q are points in E(Fp), and k is a scalar.

[0008] Double: If the current bit of k is 0, then double the current point. The doubling operation means transforming point P(x, y) into 2P(x', y'), where (x', y') can be calculated using the point addition formula on an elliptic curve.

[0009] 2. Add: If the current bit of k is 1, then add point P to the current point. The addition operation involves merging two points P1 and P2 into a new point P3, which can also be done using the point addition formula on an elliptic curve.

[0010] This process iterates through each bit of k from the most significant bit to the least significant bit, determining whether to perform a doubling or addition operation based on the value of each bit. Ultimately, through this series of doubling and addition operations, the result kP can be obtained. It is evident that doubling and addition are crucial steps in calculating the dot product in elliptic curve cryptography, determining the performance of the entire algorithm system. Therefore, in the practical application of elliptic curve cryptography algorithms, how to reduce the computational time complexity of the dot product algorithm, and thus reduce the overall computation, remains a pressing technical problem to be solved. Summary of the Invention

[0011] To address at least one deficiency or improvement requirement in the prior art, this invention provides a high-speed computational processing method and apparatus for elliptic curve cryptography, thereby optimizing the speed of doubling and addition calculations, optimizing the key dot multiplication calculation in elliptic curve cryptography, and effectively improving the overall system's computational performance.

[0012] To achieve the above objectives, according to a first aspect of the present invention, a high-speed computational processing method for elliptic curve cryptography is provided, the method comprising obtaining a first coordinate point and a second coordinate point of the elliptic curve to be computed in the Chudnovsky projective coordinate system in an arithmetic logic unit, wherein the second coordinate point is a point with normalization properties.

[0013] Determine whether the dot product operation of the elliptic curve to be calculated has a dot addition operation after doubling the dot. If the dot addition operation after doubling the dot exists, convert the dot addition operation after doubling the dot into an optimized dot addition operation. The optimized dot addition operation includes a first dot addition operation and a second dot addition operation.

[0014] Based on the first and second coordinate points, perform optimized point addition operations to complete the point multiplication calculation.

[0015] The high-speed computation processing method of the elliptic curve cryptography algorithm described above, wherein the optimized point addition operation based on the first coordinate point and the second coordinate point is used to complete the point multiplication calculation, includes:

[0016] Based on the first coordinate point and the second coordinate point, perform the first point addition operation to obtain the first operation result and the set of intermediate variables;

[0017] Based on the set of intermediate variables, the coordinate components of the first coordinate point are algebraically transformed to obtain the target first coordinate point;

[0018] Based on the first calculation result and the target first coordinate point, a second point addition operation is performed to obtain the second calculation result, thus completing the dot product calculation.

[0019] In the high-speed computational processing method of the elliptic curve cryptography algorithm described above, the algebraic transformation is an operational transformation that replaces the coordinate components based on the Z-related auxiliary coordinate components using the point addition operation formula of the Chudnovsky projective coordinate system.

[0020] In the high-speed computation method of the elliptic curve cryptography algorithm described above, the Z-related auxiliary coordinate components of the first coordinate point and the second coordinate point are the same.

[0021] In the high-speed computation processing method of the elliptic curve cryptography algorithm described above, the Z-related auxiliary coordinate component of the first and second coordinate points is 1.

[0022] According to a second aspect of the present invention, a high-speed processing apparatus for elliptic curve cryptography is also provided, comprising:

[0023] The processing unit is used to obtain the first coordinate point and the second coordinate point of the elliptic curve to be calculated in the Chudnovsky projective coordinate system in the arithmetic logic unit, wherein the second coordinate point is a point with normalization properties.

[0024] An optimization unit is used to determine whether the dot product operation of the elliptic curve to be calculated has a dot addition operation after doubling the dot. If the dot addition operation after doubling the dot exists, the dot addition operation after doubling the dot is converted into an optimized dot addition operation. The optimized dot addition operation includes a first dot addition operation and a second dot addition operation.

[0025] The calculation unit is used to perform optimized point addition operations based on the first coordinate point and the second coordinate point to complete the point multiplication calculation.

[0026] According to a third aspect of the invention, an electronic device is also provided, comprising at least one processing unit and at least one storage unit, wherein the storage unit stores a computer program that, when executed by the processing unit, causes the processing unit to perform the steps of any of the methods described above.

[0027] According to a fourth aspect of the invention, a storage medium is also provided that stores a computer program, which, when executed by a processing unit, implements the steps of any of the methods described above.

[0028] In summary, compared with the prior art, the above-described technical solutions conceived by this invention can achieve the following beneficial effects:

[0029] This invention provides a high-speed computation method for elliptic curve cryptography algorithms. It obtains the first and second coordinate points of the elliptic curve to be computed in the Chudnovsky projective coordinate system, where the second coordinate point is a point with normalized properties. It determines whether the dot product operation of the elliptic curve to be computed involves a dot addition operation after doubling the points. If such an operation exists, it converts it into an optimized dot addition operation. The optimized dot addition operation is performed based on the dot addition formula in the Chudnovsky projective coordinate system. The optimized dot addition operation is then performed based on the first and second coordinate points to complete the dot product calculation. This application introduces the Chudnovsky projective coordinate system and simplifies the dot addition formula based on it. This simplifies the dot addition formula in the projective coordinate system and reduces temporary variables in the process. This achieves underlying hardware and software optimization of the integer dot product algorithm on encryption and decryption devices implementing the elliptic curve dot product algorithm, reducing time and space costs. Attached Figure Description

[0030] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0031] Figure 1 A flowchart illustrating an optional high-speed computation method for elliptic curve cryptography provided in this application embodiment;

[0032] Figure 2 A schematic diagram of the logical operation structure of an optional dot product calculation method provided in this application embodiment;

[0033] Figure 3 A schematic diagram of the structure of a high-speed computing device for an optional elliptic curve cryptography algorithm provided in an embodiment of this application;

[0034] Figure 4 This is a schematic diagram of an optional electronic device provided in an embodiment of this application. Detailed Implementation

[0035] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention. Furthermore, the technical features involved in the various embodiments of this invention described below can be combined with each other as long as they do not conflict with each other.

[0036] The terms "first," "second," "third," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or apparatuses.

[0037] In one embodiment, the elliptic curve cryptography system employs a CPU to perform elliptic curve cryptography algorithms via software programming. Algorithm code based on elliptic curve mathematical principles is written and computed using the CPU's arithmetic logic unit (ALU). However, because CPUs are designed for general-purpose computing, their processing efficiency is relatively low for large-scale elliptic curve cryptography operations.

[0038] According to one aspect of the embodiments of this application, a high-speed computation method for elliptic curve cryptography is provided. The following is in conjunction with... Figure 1 This application describes a high-speed computation method for elliptic curve cryptography algorithms provided in its embodiments.

[0039] Figure 1 This is a flowchart illustrating an optional high-speed computation method for elliptic curve cryptography provided in an embodiment of this application, as shown below. Figure 1 As shown, the process includes the following steps:

[0040] S101, obtain the first and second coordinate points of the elliptic curve to be calculated in the Chudnovsky projective coordinate system in the arithmetic logic unit.

[0041] The second coordinate point is a point with normalization properties.

[0042] S102, determine whether the dot product operation of the elliptic curve to be calculated has a dot addition operation after doubling the dot. If the dot addition operation after doubling the dot exists, convert the dot addition operation after doubling the dot into an optimized dot addition operation.

[0043] The optimized point addition operation includes the first point addition operation and the second point addition operation;

[0044] S103 optimizes the point addition operation based on the first coordinate point and the second coordinate point to complete the point multiplication calculation.

[0045] In the Chudnovsky projective coordinate system, points on an elliptic curve are typically represented as... .when At that time, the point corresponds to a point in the affine coordinate system. ;when At time, point Corresponding to the point at infinity in the affine coordinate system This representation allows for the conversion of complex point operations into relatively simple calculations in the projective coordinate system, which can then be converted back to the affine coordinate system when needed to obtain the final result.

[0046] In this embodiment, the first and second coordinate points of the elliptic curve to be calculated in the Chudnovsky projective coordinate system are obtained in the arithmetic logic unit. For example, the first coordinate point is set as follows: Second coordinate point It is an elliptic curve Two points in different Chudnovsky projective coordinate systems. The second point... A point is a point with normalization properties, meaning that a certain coordinate component of its coordinates in the projective coordinate system has a specific value, thus placing it in a normalized state.

[0047] in, and For points Related auxiliary coordinate components, and These are the coordinate components of the point.

[0048] The doubling-point addition algorithm combines a doubling-point operation with a point addition operation in the Chudnovsky projective coordinate system, for example... This invention replaces the doubling-point addition operation with an optimized point addition operation, i.e. Q is often the point of normalization, that is... Therefore, P+Q+P can be calculated using special points with the same z-coordinate.

[0049] This invention performs a doubling-point addition operation. Through clever transformation The optimization is achieved by refining the dot addition operation, which includes a first dot addition operation and a second dot addition operation. In this embodiment, the first dot addition operation is, for example... The second point is an addition operation, for example. .

[0050] Based on the content disclosed in the above embodiments, the high-speed computation processing method for elliptic curve cryptography provided by the present invention performs optimized point addition operations based on the first coordinate point and the second coordinate point to complete the point multiplication calculation, including:

[0051] Perform a first point addition operation based on the first coordinate point and the second coordinate point to obtain the first operation result and the set of intermediate variables;

[0052] The target first coordinate point is obtained by performing algebraic transformations on the coordinate components of the first coordinate point based on the set of intermediate variables.

[0053] Based on the first calculation result and the target first coordinate point, a second point addition operation is performed to obtain the second calculation result, thus completing the dot product calculation.

[0054] Specifically, The coordinate components can be replaced using the point addition formula of the Chudnovsky projective coordinate system, for example, the following formula:

[0055] ;

[0056]

[0057]

[0058] The first calculation result is obtained. and the set of intermediate variables for the operation, including and .

[0059] Furthermore, based on the set of intermediate variables used in the operation for the first coordinate point By performing algebraic transformations on the coordinate components, the first coordinate point of the target is obtained. For example, the following formula:

[0060]

[0061] It is worth noting that the calculations for these transformations are all intermediate variables in the first point addition operation, so these transformations can be obtained without additional calculations.

[0062] and For point and points We can know that their z-coordinates remain equal, and for point addition operations with equal z coordinates, there is a fast point addition operation.

[0063] Calculations revealed that in the Chudnovsky projective coordinate system, The operation requires 8 multiplication operations and 2 squaring operations, while the 2P operation requires 7 multiplication operations and 2 squaring operations.

[0064] So under normal circumstances, It requires 15 multiplication operations and 4 squaring operations. Considering that squaring can be performed with a single multiplication operation, then the usual... A total of 19 multiplications are required.

[0065] The optimized point addition operation can be divided into two steps: the first step is to calculate... This step requires 8 multiplication operations and 2 squaring operations, while the second step... Because of the special point addition operation characteristics of the same z coordinate, only 6 multiplication operations and 2 squaring operations are needed, that is, 18 multiplications are required.

[0066] This optimized dot product operation reduces one multiplication step compared to the usual algorithm, thus improving the computational efficiency of dot product calculation.

[0067] In one embodiment, the Z-related auxiliary coordinate components of the first and second coordinate points are the same, for example... It equals 1. Figure 2 A schematic diagram of the logical operation structure of an optional dot product calculation method provided in this application embodiment is shown below. Figure 2 As shown, the logical operation of the dot product calculation method is performed.

[0068] The following is an example of optimizing point addition operations:

[0069] set up and It is an elliptic curve Two points in different Chudnovsky projective coordinate systems, where ,but It can be obtained from the following formula:

[0070] U2 =* ZZ1

[0071] S2 =* ZZZ1

[0072] P = U2 - X1

[0073] R = S2 - Y1

[0074] PP = P * P

[0075] PPP = P * PP

[0076] X1PP = * PP

[0077] RR = R * R

[0078] x2 = RR - PPP - 2 * X1PP) % p

[0079] QX = X1PP - x2

[0080] QRX =R * QX

[0081] Y1PPP =* PPP

[0082] y2 = QRX - Y1PPP

[0083] ZZ2 = ZZ1 * PP

[0084] ZZZ2 = ZZZ1 * PPP

[0085] The above calculation completes R=P+Q, where the coordinates of R are (x2, y2, ZZ2, ZZZ2).

[0086] w = y2 - Y1PPP

[0087] w2 = w ** 2

[0088] m = x2 - X1PP

[0089] m2 = m ** 2

[0090] m3 = m2 * m

[0091] v = X1PP * m2

[0092] =w2 - m3 - 2 * v

[0093] =w * (v - newx) - Y1PPP * m3) % p

[0094] =ZZ2 * m2

[0095] = ZZZ2 * m3

[0096] Complete the entire calculation and output S = 2P + Q, where the coordinates of S are... .

[0097] It should be noted that the above calculation steps are conventional point addition operations that are known to those skilled in the art, so they will not be described in detail in this embodiment.

[0098] In summary, compared to the traditional method of directly performing doubling-point addition, this optimized dot addition method reduces the computational cost of multiplication. In elliptic curve cryptography, multiplication is typically a computationally expensive operation; reducing its computational cost significantly improves the overall computational efficiency in scenarios involving doubling-point addition, thereby enhancing the performance of the entire elliptic curve cryptography system. This allows for faster completion of computational tasks in practical applications such as digital signatures and key exchange, improving system response speed and security.

[0099] According to another aspect of the embodiments of this application, a monitoring device for implementing the high-speed computation processing method of the above-described elliptic curve cryptography algorithm is also provided. Figure 3 This is a schematic diagram of the structure of a high-speed processing device for an optional elliptic curve cryptography algorithm according to an embodiment of this application, as shown below. Figure 3 As shown, the device may include:

[0100] Processing unit 302 obtains the first and second coordinate points of the elliptic curve to be calculated in the Chudnovsky projective coordinate system from the arithmetic logic unit, wherein the second coordinate point is a point with normalization properties.

[0101] The optimization calculation unit 304 determines whether the dot product operation of the elliptic curve to be calculated has a dot addition operation after doubling the dot. If the dot addition operation after doubling the dot exists, the dot addition operation after doubling the dot is converted into an optimized dot addition operation. The optimized dot addition operation includes a first dot addition operation and a second dot addition operation.

[0102] The calculation unit 306 is used to perform optimized point addition operations based on the first coordinate point and the second coordinate point to complete the point multiplication calculation.

[0103] It should be noted that the processing unit 302 in this embodiment can be used to execute the above step S101, the optimization calculation unit 304 in this embodiment can be used to execute the above step S102, and the calculation unit 306 in this embodiment can be used to execute the above step S103.

[0104] Through the above modules, the first and second coordinate points of the elliptic curve to be calculated in the Chudnovsky projective coordinate system are obtained, where the second coordinate point is a point with normalized properties. It is determined whether the dot product operation of the elliptic curve to be calculated involves a dot addition operation after doubling the points. If such an operation exists, it is converted into an optimized dot addition operation. The optimized dot addition operation is performed based on the dot addition formula in the Chudnovsky projective coordinate system. The optimized dot addition operation is then performed based on the first and second coordinate points to complete the dot product calculation. This application introduces the Chudnovsky projective coordinate system and simplifies the dot addition formula based on it. This simplifies the dot addition formula in the projective coordinate system and reduces temporary variables in the process. This allows for underlying hardware and software optimization of the integer dot product algorithm on the encryption / decryption device implementing the elliptic curve dot product algorithm, reducing time and space costs.

[0105] It should be noted that the examples and scenarios implemented by the above modules and corresponding steps are the same, but are not limited to the content disclosed in the above embodiments. It should be noted that the above modules, as part of the device, can run in a hardware environment and can be implemented by software or hardware. The hardware environment includes a network environment.

[0106] According to another aspect of the embodiments of this application, a storage medium is also provided. Optionally, in this embodiment, the storage medium can be used to execute program code for the high-speed computation processing method of any of the elliptic curve cryptography algorithms described above in the embodiments of this application.

[0107] Optionally, in this embodiment, the storage medium is configured to store program code for performing the following steps:

[0108] S1, obtain the first and second coordinate points of the elliptic curve to be calculated in the Chudnovsky projective coordinate system in the arithmetic logic unit, where the second coordinate point is a point with normalization properties;

[0109] S2, determine whether the dot product operation of the elliptic curve to be calculated has a dot addition operation after doubling the dot. If the dot addition operation after doubling the dot exists, convert the dot addition operation after doubling the dot into an optimized dot addition operation. The optimized dot addition operation includes a first dot addition operation and a second dot addition operation.

[0110] S3, perform optimized point addition based on the first coordinate point and the second coordinate point to complete the point multiplication calculation.

[0111] Optionally, specific examples in this embodiment can refer to the examples described in the above embodiments, and will not be repeated in this embodiment.

[0112] The computer-readable storage medium may include, but is not limited to, any type of disk, including floppy disks, optical disks, DVDs, CD-ROMs, microdrives, as well as magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory devices, magnetic cards or optical cards, nanosystems (including molecular memory ICs), or any type of medium or device suitable for storing instructions and / or data.

[0113] According to another aspect of the embodiments of this application, an electronic device for a capture method for implementing the high-speed computation processing method of the above-described elliptic curve cryptography algorithm is also provided. The electronic device may be a server, a terminal, or a combination thereof.

[0114] Figure 4 This is a schematic diagram of the structure of an optional electronic device according to an embodiment of this application, such as... Figure 4As shown, it includes a processor 402, a communication interface 404, a memory 406, and a communication bus 408. The processor 402, communication interface 404, and memory 406 communicate with each other via the communication bus 408.

[0115] Memory 406 is used to store computer programs;

[0116] When processor 402 executes a computer program stored in memory 406, it performs the following steps:

[0117] S1, obtain the first and second coordinate points of the elliptic curve to be calculated in the Chudnovsky projective coordinate system in the arithmetic logic unit, where the second coordinate point is a point with normalization properties;

[0118] S2, determine whether the dot product operation of the elliptic curve to be calculated has a dot addition operation after doubling the dot. If the dot addition operation after doubling the dot exists, convert the dot addition operation after doubling the dot into an optimized dot addition operation. The optimized dot addition operation includes a first dot addition operation and a second dot addition operation.

[0119] S3, perform optimized point addition based on the first coordinate point and the second coordinate point to complete the point multiplication calculation.

[0120] Optionally, the communication bus can be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus, etc. This communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 4 The symbol is represented by a single thick line, but this does not indicate that there is only one bus or one type of bus. The communication interface is used for communication between the aforementioned electronic device and other devices.

[0121] Memory may include RAM or non-volatile memory. Volatile memory, for example, at least one disk storage device. Alternatively, the memory may also be at least one storage device located remotely from the aforementioned processor.

[0122] As an example, the memory 406 described above may include, but is not limited to, the processing unit 302, the optimization unit 304, and the calculation unit 306 in the high-speed processing device for the elliptic curve cryptography algorithm described above. Furthermore, it may include, but is not limited to, other module units in the high-speed processing device for the elliptic curve cryptography algorithm described above, which will not be elaborated further in this example.

[0123] The processors mentioned above can be general-purpose processors, including but not limited to: CPU (Central Processing Unit), NP (Network Processor), etc.; they can also be DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.

[0124] Optionally, specific examples in this embodiment can refer to the examples described in the above embodiments, and will not be repeated here.

[0125] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to this application.

[0126] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.

[0127] In the several embodiments provided in this application, it should be understood that the disclosed apparatus can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some service interface; the indirect coupling or communication connection between devices or units may be electrical or other forms.

[0128] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0129] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0130] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage device (CMD). Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a memory and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned memory includes various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.

[0131] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, which may include: a flash drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, etc.

[0132] The foregoing description is merely an exemplary embodiment of this disclosure and should not be construed as limiting the scope of this disclosure. Any equivalent changes and modifications made in accordance with the teachings of this disclosure shall still fall within the scope of this disclosure. Those skilled in the art will readily conceive of embodiments of this disclosure upon considering the specification and practicing the disclosure herein. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not described herein. The specification and embodiments are to be considered exemplary only, and the scope and spirit of this disclosure are defined by the claims.

[0133] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0134] Those skilled in the art will readily understand that the above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A high-speed computation method for elliptic curve cryptography algorithms, applied to the hardware computation unit of an elliptic curve cryptography system, characterized in that, include: Obtain the first and second coordinate points of the elliptic curve to be calculated in the Chudnovsky projective coordinate system in the arithmetic logic unit, where the second coordinate point is a point with normalization properties. Determine whether the dot product operation of the elliptic curve to be calculated has a dot addition operation after doubling the dot. If the dot addition operation after doubling the dot exists, convert the dot addition operation after doubling the dot into an optimized dot addition operation. The optimized dot addition operation includes a first dot addition operation and a second dot addition operation. Optimized point addition is performed based on the first coordinate point and the second coordinate point to complete the dot product calculation; the optimized point addition is performed based on the first coordinate point and the second coordinate point to complete the dot product calculation, including: Based on the first coordinate point and the second coordinate point, perform the first point addition operation to obtain the first operation result and the set of intermediate variables; Based on the set of intermediate variables, the coordinate components of the first coordinate point are algebraically transformed to obtain the target first coordinate point; Based on the first calculation result and the target first coordinate point, a second point addition operation is performed to obtain the second calculation result, thus completing the dot product calculation.

2. The high-speed computation method for elliptic curve cryptography as described in claim 1, characterized in that, The algebraic transformation is an operational transformation that replaces the coordinate components based on the auxiliary coordinate components of the Z-correlation using the point addition operation formula of the Chudnovsky projective coordinate system.

3. The high-speed computation method for the elliptic curve cryptography algorithm as described in any one of claims 1-2, characterized in that, The auxiliary coordinate components related to Z of the first and second coordinate points are the same.

4. The high-speed computation method for elliptic curve cryptography as described in claim 3, characterized in that, The auxiliary coordinate component related to the Z of the first and second coordinate points is 1.

5. A high-speed processing device for elliptic curve cryptography algorithms, applied to the hardware processing unit of an elliptic curve cryptography system, characterized in that, include: The processing unit is used to obtain the first coordinate point and the second coordinate point of the elliptic curve to be calculated in the Chudnovsky projective coordinate system in the arithmetic logic unit, wherein the second coordinate point is a point with normalization properties. An optimization unit is used to determine whether the dot product operation of the elliptic curve to be calculated has a dot addition operation after doubling the dot. If the dot addition operation after doubling the dot exists, the dot addition operation after doubling the dot is converted into an optimized dot addition operation. The optimized dot addition operation includes a first dot addition operation and a second dot addition operation. The calculation unit is used to perform optimized point addition operations based on the first coordinate point and the second coordinate point to complete the dot multiplication calculation. The optimized point addition operations based on the first coordinate point and the second coordinate point to complete the dot multiplication calculation include: Based on the first coordinate point and the second coordinate point, perform the first point addition operation to obtain the first operation result and the set of intermediate variables; Based on the set of intermediate variables, the coordinate components of the first coordinate point are algebraically transformed to obtain the target first coordinate point; Based on the first calculation result and the target first coordinate point, a second point addition operation is performed to obtain the second calculation result, thus completing the dot product calculation.

6. An electronic device, characterized in that, It includes at least one processing unit and at least one storage unit, wherein the storage unit stores a computer program that, when executed by the processing unit, causes the processing unit to perform the steps of the method according to any one of claims 1 to 4.

7. A storage medium, characterized in that, It stores a computer program that, when executed by a processing unit, implements the steps of the method as described in any one of claims 1 to 4.