Method and apparatus for processing data associated with an accelerator device

The procedure and device transform elliptical curves between different forms, allowing accelerator devices trained for one form to operate on curves in other forms, thereby enhancing flexibility and adaptability in cryptographic applications.

DE102023208783A1Pending Publication Date: 2025-03-13ROBERT BOSCH GMBH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
DE102023208783
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-09-11
Publication Date
2025-03-13

AI Technical Summary

Technical Problem

Existing accelerator facilities for elliptical curves are limited to specific forms, such as Weierstraß, Montgomery, Edwards, and Hesse forms, and are not adaptable to process operations on elliptical curves in different forms.

Method used

A procedure and device that transform elliptical curves from one form to another, allowing an accelerator device trained for one form to perform operations on elliptical curves in different forms, thereby expanding the versatility of the accelerator device.

Benefits of technology

Enables the use of accelerator devices for operations on elliptical curves in various forms, increasing flexibility and adaptability in cryptographic applications, such as elliptic curve cryptography (ECC).

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Method, for example a computer-implemented method, for processing data associated with an accelerator device for elliptic curves, for example for elliptic curve cryptography, ECC, wherein the accelerator device is configured for performing operations with respect to an elliptic curve in a first form, comprising: transforming an elliptic curve of a second form into a transformed elliptic curve of a first form, performing at least one operation with respect to the transformed elliptic curve of a first form using the accelerator device.
Need to check novelty before this filing date? Find Prior Art

Description

State of the art

[0001] The disclosure relates to a method for processing data associated with an elliptic curve accelerator device, for example for elliptic curve cryptography, for example elliptic curve cryptography (ECC).

[0002] The disclosure further relates to an apparatus for processing data associated with an elliptic curve accelerator device, for example for elliptic curve cryptography, for example elliptic curve cryptography, ECC. Disclosure of the invention

[0003] Example embodiments relate to a method, for example a computer-implemented method, for processing data associated with an accelerator device for elliptic curves, for example for elliptic curve cryptography, for example elliptic curve cryptography (ECC), wherein the accelerator device is configured to perform operations on an elliptic curve in a first form, comprising: transforming an elliptic curve of a second form into a transformed elliptic curve of a first form, and performing at least one operation on the transformed elliptic curve of a first form by means of the accelerator device. In further example embodiments, this enables the accelerator device to be used to perform operations on elliptic curves with shapes for which the accelerator device is not designed, for example.

[0004] In further exemplary embodiments, it is provided that the method comprises: transforming input data for performing the at least one operation, wherein, for example, the execution of the at least one operation is carried out on transformed input data.

[0005] In further exemplary embodiments, the method comprises: transforming output data obtained when performing the at least one operation.

[0006] In further exemplary embodiments, it is provided that the accelerator device is designed exclusively to accelerate the execution of operations relating to the elliptic curve in the first form. The principle according to the embodiments nevertheless allows, in further embodiments, the use of the accelerator device for the execution of operations relating to elliptic curves in a form other than the first form.

[0007] In further exemplary embodiments, it is provided that the second shape is different from the first shape.

[0008] In further exemplary embodiments, it is provided that the first shape is one of the following elements: a) Weierstrass shape, b) Montgomery shape, c) Edwards shape, d) Hesse shape, and / or that the second shape is one of the following elements: a) Weierstrass shape, b) Montgomery shape, c) Edwards shape, d) Hesse shape.

[0009] In further exemplary embodiments, it is provided that the method comprises: receiving first information which characterizes a first elliptic curve in a predetermined shape, wherein, for example, with respect to the first elliptic curve in the predetermined shape, at least one operation is to be carried out by means of the accelerator device, determining whether the predetermined shape corresponds to the first shape.

[0010] In further exemplary embodiments, it is provided that the method comprises: a) if the predetermined shape corresponds to the first shape, carrying out the at least one operation by means of the accelerator device, or, b) if the predetermined shape does not correspond to the first shape, transforming the first elliptical curve into a second elliptical curve with the predetermined shape, and, optionally, carrying out the at least one operation with respect to the second elliptical curve by means of the accelerator device.

[0011] Further exemplary embodiments relate to a device for carrying out the method according to at least one of the preceding claims.

[0012] Further exemplary embodiments relate to an accelerator device for elliptic curves, for example for cryptography with elliptic curves, for example elliptic curve cryptography, ECC, for carrying out the method according to the embodiments.

[0013] In further exemplary embodiments, it is provided that the accelerator device comprises at least one device according to the embodiments.

[0014] In further exemplary embodiments, it is provided that the accelerator device has at least one of the following elements: a) hardware accelerator unit for elliptic curves, for example for cryptography with elliptic curves, for example elliptic curve cryptography, ECC, for example for executing the at least one operation, b) first transformation device for transforming input data and / or parameters associated with at least one elliptic curve, c) second transformation device for transforming output data.

[0015] Further exemplary embodiments relate to a product, for example a vehicle, for example a motor vehicle, with at least one device according to the embodiments and / or with at least one accelerator device according to the embodiments.

[0016] Further exemplary embodiments relate to a computer-readable storage medium comprising instructions that, when executed by a computer, cause the computer to perform the method according to the embodiments.

[0017] Further exemplary embodiments relate to a computer program comprising instructions which, when executed by a computer, cause the computer to carry out the method according to the embodiments.

[0018] Further exemplary embodiments relate to a data carrier signal that transmits and / or characterizes the computer program according to the embodiments.

[0019] Further exemplary embodiments relate to a use of the method according to the embodiments and / or the device according to the embodiments and / or the accelerator device according to the embodiments and / or the product according to the embodiments and / or the computer-readable storage medium according to the embodiments and / or the computer program according to the embodiments and / or the data carrier signal according to the embodiments for at least one of the following elements: a) cryptography with elliptic curves, b) enabling the use of an accelerator device for operations relating to a plurality of different forms of elliptic curves, c) carrying out operations relating to a plurality of different forms of elliptic curves by means of an accelerator device which, for example, exclusively,designed to accelerate the execution of operations with respect to the elliptic curve in the first form, d) increasing flexibility with respect to an accelerator device for elliptic curves.,

[0020] Further features, possible applications, and advantages of the invention will become apparent from the following description of exemplary embodiments of the invention, which are illustrated in the figures of the drawing. All described or illustrated features, individually or in any combination, constitute the subject matter of the invention, regardless of their summary in the claims or their references, as well as regardless of their wording or representation in the description or in the drawing.

[0021] The drawing shows: Fig. 1 schematically shows a simplified flow diagram according to exemplary embodiments, Fig. 2 schematically shows a simplified block diagram according to further exemplary embodiments, Fig. 3 schematically shows a simplified block diagram according to further exemplary embodiments, Fig. 4 schematically shows a simplified flow diagram according to further exemplary embodiments, Fig. 5 schematically shows a simplified block diagram according to further exemplary embodiments, Fig. 6 schematically shows a simplified block diagram according to further exemplary embodiments, Fig. 7 schematically illustrates aspects of uses according to further exemplary embodiments.

[0022] For exemplary embodiments, see Fig. 1, Fig. 2, relate to a method, for example a computer-implemented method, for processing data generated by an accelerator device 10 ( Fig. 2) for elliptic curves, for example for cryptography with elliptic curves, for example elliptic curve cryptography, ECC, associated data, wherein the accelerator device 10 is configured to carry out operations with respect to an elliptic curve in a first form F1 ( Fig. 3) is formed, comprising: Transforming 100 ( Fig. 1) an elliptic curve EC-F2 of second form F2 ( Fig. 3) into a transformed elliptic curve EC-F1' of first form, executing 104 at least one operation OP-1 with respect to the transformed elliptic curve EC-F1' of first form by means of the accelerator device 10. In further exemplary embodiments, this enables the accelerator device 10 to be used to execute operations with respect to elliptic curves with shapes for which the accelerator device 10 is not, for example not originally, designed.

[0023] In further exemplary embodiments, Fig. 1, it is provided that the method comprises: transforming 102 input data ED for executing 104 the at least one operation OP-1, wherein, for example, transformed input data ED' is obtained, wherein, for example, the execution 104 of the at least one operation OP-1 is carried out on the transformed input data.

[0024] In further exemplary embodiments, the transformation 102 of the input data ED may, for example, comprise a transformation 102a of the input data ED based at least on the elliptic curve EC-F2 of the second form F2 or based at least on the second form F2, and / or based on the second form F2 and the first form F1.

[0025] In further exemplary embodiments, Fig. 1, it is provided that the method comprises: transforming 106 the output data AD obtained during the execution 104 of the at least one operation OP-1, wherein, for example, transformed output data AD' is obtained. For example, in further exemplary embodiments, the transformation may be based at least on the elliptic curve EC-F2 of the second form F2, or based at least on the second form F2, and / or based on the second form F2 and the first form F1, e.g., similar to the transformation 102.

[0026] In further exemplary embodiments, Fig. 2, it is provided that the accelerator device 10 is designed exclusively to accelerate the execution of operations relating to the elliptic curve EC-F1 in the first form F1. The principle according to the embodiments nevertheless allows, in further embodiments, the use of the accelerator device 10 for the execution of operations relating to elliptic curves in a form F2 other than the first form F2.

[0027] In further exemplary embodiments, Fig. 3, it is provided that the second form F2 is different from the first form F1.

[0028] In further exemplary embodiments, Fig. 3, it is provided that the first form F1 is one of the following elements: a) Weierstrass form WF, b) Montgomery form MF, c) Edwards form EF, d) Hesse form HF, e) other form, see points ... according to Fig. 3, and / or that the second form F2 is one of the following elements: a) Weierstrass form WF, b) Montgomery form MF, c) Edwards form EF, d) Hesse form HF, e) other form ....

[0029] In further exemplary embodiments, Fig. 4, it is provided that the method comprises: receiving 110 first information I-1 which characterizes a first elliptic curve EC-1 in a predetermined form F-vorg, wherein, for example, with respect to the first elliptic curve EC-1 in the predetermined form F-vorg, at least one operation is carried out by means of the accelerator device 10 ( Fig. 2) is to be executed, determining 112 whether the given form F-vorg corresponds to the first form F1.

[0030] In further exemplary embodiments, Fig. 4, it is provided that the method comprises: a) if the predetermined shape F-vorg corresponds to the first shape F1, carrying out 114 the at least one operation by means of the accelerator device 10 (e.g. without a transformation), or, b) if the predetermined shape F-vorg does not correspond to the first shape F1, transforming 116 the first elliptical curve EC-1 into a second elliptical curve EC-2 with the predetermined shape F-vorg, and, optionally, carrying out 118 the at least one operation with respect to the second elliptical curve EC-2 by means of the accelerator device 10.

[0031] Further exemplary embodiments, Fig. 5, refer to a device 200 for executing the method according to the embodiments. The device 200 comprises: a computing device ("computer") 202 having at least one computing core 202a, a memory device 204 assigned to the computing device 202 for at least temporarily storing at least one of the following elements: a) data DAT, b) computer program PRG, for example, for executing the method according to the embodiments.

[0032] For example, the DAT comprise at least parts of at least one of the following elements: a) input data ED, ED', b) output data AD, AD', c) data associated with at least one elliptic curve EC-1, EC-2, e.g. parameters, d) data associated with the operation OP-1.

[0033] In further exemplary embodiments, the memory device 204 comprises a volatile memory (e.g., random access memory (RAM)) 204a, and / or a non-volatile (NVM) memory (e.g., flash EEPROM) 204b, or a combination thereof or with other memory types not explicitly mentioned.

[0034] Further exemplary embodiments relate to a computer-readable storage medium SM, comprising instructions PRG which, when executed by a computer 202, cause the computer to carry out the method according to the embodiments.

[0035] Further exemplary embodiments relate to a computer program PRG comprising instructions which, when the program PRG is executed by a computer 202, cause the computer 202 to carry out the method according to the embodiments.

[0036] Further exemplary embodiments relate to a data carrier signal DCS that characterizes and / or transmits the computer program PRG according to the embodiments. The data carrier signal DCS can be received, for example, via an optional data interface 206 of the device 200.

[0037] Further exemplary embodiments, Fig. 2, refer to an accelerator device 10 for elliptic curves, for example for cryptography with elliptic curves, for example elliptic curve cryptography, ECC, for carrying out the method according to the embodiments.

[0038] In further exemplary embodiments, Fig. 2, it is provided that the accelerator device 10 has at least one device 200 according to the embodiments.

[0039] In further exemplary embodiments. Fig. 2, it is provided that the accelerator device 10 has at least one of the following elements: a) hardware accelerator unit 11 for elliptic curves, for example for cryptography with elliptic curves, for example elliptic curve cryptography, ECC, for example for carrying out the at least one operation OP-1, b) first transformation device 12 for transforming input data ED and / or parameters associated with at least one elliptic curve, c) second transformation device 13 for transforming output data AD.

[0040] Arrow a1 according to Fig. 2 symbolizes, for example, the input data ED, arrow a2 symbolizes, by way of example, parameters for an elliptic curve, with respect to which at least one operation OP-1 is to be executed by means of the accelerator device 10. Arrow a3 symbolizes, by way of example, input data ED' transformed by means of the first transformation device 12. Arrow a4 symbolizes, by way of example, parameters for the elliptic curve transformed by means of the first transformation device 12. For example, using the first transformation device 12, the transformation 100 according to block 100 of Fig. 1 can be executed.

[0041] Arrow a5 according to Fig. 2 symbolizes, by way of example, output data AD of the hardware accelerator unit 11, as obtained during the hardware-based, e.g. purely hardware-based, execution of the at least one operation OP-1 by the hardware accelerator unit 11.

[0042] Arrow a6 according to Fig. 2 symbolizes exemplary transformed output data AD', as obtained in further exemplary embodiments, for example by means of the second transformation device 13.

[0043] Further exemplary embodiments, Fig. 6, relate to a product 1, for example a vehicle, for example a motor vehicle, with at least one device 200 according to the embodiments and / or with at least one accelerator device 10 according to the embodiments.

[0044] For example, the accelerator device 10 or the apparatus 200 can be used to execute cryptographic operations according to ECC, e.g., to cryptographically secure data communication in the product 1 or with respect to the product 1 and / or for authentication, etc.

[0045] Further exemplary aspects and embodiments are described below, each of which can be combined individually or in combination with one another with at least one of the embodiments described above by way of example.

[0046] In further exemplary embodiments, for example, elliptic curves of the Weierstrass type may be used, wherein the elliptic curve of the Weierstrass type is characterized, e.g. represented, by all points (x; y) that satisfy the equation y 2 =x 3 +ax+b, where a, b are constants.

[0047] In further exemplary embodiments, for example, elliptic curves of the Montgomery type may be used, wherein the elliptic curve of the Montgomery type is characterized, e.g. represented, by all points (x; y) that satisfy the equation by 2 =x 3 +ax 2 +x, where a, b are again constants.

[0048] In further exemplary embodiments, for example, at least one standardized elliptic curve, eg of the type “Curve25519” and / or NIST (P-192, P-244, ... , P-512) and / or BSI (brainpool) can be used.

[0049] In further exemplary embodiments, for example, an elliptic curve ℇ a,b in Weierstrass form with parameters a, b according to y 2 = x 3 + ax + b, where the elliptic curve in Montgomery form with parameters A, B can be characterized by By 2 = x 3 + Ax 2 + x.

[0050] In further exemplary embodiments, the accelerator device 10, for example the hardware accelerator unit 11, is designed to perform scalar multiplications on an elliptic curve in the first form F1, e.g. the Weierstrass form, wherein the hardware accelerator unit 11 implements, for example, the following equation by means of hardware: Fa,b(α,P)=αP.

[0051] In other words, the above equation describes a determination, for example calculation, of a result of adding α times a point P located on the elliptic curve ℇ a,b lies, to itself by the function F. In further exemplary embodiments, affine coordinates are used for the representation of the point P, e.g. according to P = (x,y)

[0052] In further exemplary embodiments, the function F can be transformed to the function G, where G A,B(α, P') a scalar multiplication αP' on the elliptic curve ℇ A,B characterized.

[0053] For further exemplary embodiments, the following applies: GA,B(α(x,y))=ϕ−1(Fa,b(α,(t,v))), with(t,v)=(xB+A3B,yB)(a,b)=(3−A23B2,2A3−9A27B2), where ϕ -1 (t, v) = (x, y) a point Q = αP' from the elliptic curve ℇ a,b to the elliptic curve ℇ A,B transformed.

[0054] For example, in further exemplary embodiments, the parameters A, B correspond to the elliptic curve ℇ described above by way of example A,B according to arrow a2 Fig. 2, and the input data a1 are e.g. P' = (x, v)

[0055] For example, Block 12 determines according to Fig. 2 a, b, and (t; v) in further exemplary embodiments, e.g. using the equations described above.

[0056] For example, Block 13 determines according to Fig. 2 ϕ-1 , e.g. to map the resulting point Q (e.g. back) to the elliptic curve ℇ a,b .

[0057] Further exemplary embodiments, Fig.7, relate to a use 300 of the method according to the embodiments and / or the apparatus 200 according to the embodiments and / or the accelerator device 10 according to the embodiments and / or the product 1 according to the embodiments and / or the computer-readable storage medium SM according to the embodiments and / or the computer program PRG according to the embodiments and / or the data carrier signal DCS according to the embodiments for at least one of the following elements: a) cryptography 301 with elliptic curves, b) enabling 302 a use of an accelerator device 10 for operations relating to a plurality of different shapes F1, F2 of elliptic curves, c) executing 303 operations relating to a plurality of different shapes of elliptic curves by means of an accelerator device 10 which, for example exclusively,designed to accelerate the execution of operations relating to the elliptic curve in the first form F1, d) increasing 304 flexibility with respect to an accelerator device for elliptic curves.,

Claims

[1] Method, for example a computer-implemented method, for processing data associated with an accelerator device (10) for elliptic curves, for example for cryptography with elliptic curves, for example elliptic curve cryptography, ECC, wherein the accelerator device (10) is designed to carry out operations with respect to an elliptic curve (EC-F1) in a first form (F1), comprising: transforming (100) an elliptic curve (EC-F2) of a second form (F2) into a transformed elliptic curve (EC-F1') of a first form (F1), carrying out (104) at least one operation (OP-1) with respect to the transformed elliptic curve (EC-F1') of the first form (F1) by means of the accelerator device (10). [2] Method according to claim 1, comprising: transforming (102) input data (ED) for executing (104) the at least one operation (OP-1), wherein, for example, the execution (104) of the at least one operation (OP-1) is carried out on transformed input data (ED'). [3] Method according to at least one of the preceding claims, comprising: transforming (106) output data (AD) obtained during the execution (104). [4] Method according to at least one of the preceding claims, wherein the accelerator device (10) is designed exclusively to accelerate an execution of operations with respect to the elliptic curve (EC-F1) in the first form. [5] A method according to at least one of the preceding claims, wherein the second shape is different from the first shape. [6] Method according to at least one of the preceding claims, wherein the first shape is one of the following elements: a) Weierstrass shape, b) Montgomery shape, c) Edwards shape, d) Hesse shape, and / or wherein the second shape is one of the following elements: a) Weierstrass shape, b) Montgomery shape, c) Edwards shape, d) Hesse shape. [7] Method according to at least one of the preceding claims, comprising: receiving (110) first information (I-1) which characterizes a first elliptic curve (EC-1) in a predetermined shape (F-vorg), wherein, for example, with respect to the first elliptic curve (EC-1) in the predetermined shape (F-vorg), at least one operation is to be carried out by means of the accelerator device (10), determining (112) whether the predetermined shape (F-vorg) corresponds to the first shape (F1). [8] Method according to claim 7, comprising: a) if the predetermined shape (F-vorg) corresponds to the first shape (F1), carrying out (114) the at least one operation by means of the accelerator device (10), or, b) if the predetermined shape (F-vorg) corresponds to the non-first shape (F1), transforming (116) the first elliptical curve (EC-1) into a second elliptical curve (EC-2) with the predetermined shape (F-vorg), and, optionally, carrying out (118) the at least one operation with respect to the second elliptical curve (EC-2) by means of the accelerator device (10). [9] Device (200) for carrying out the method according to at least one of the preceding claims. [10] Accelerator device (10) for elliptic curves, for example for cryptography with elliptic curves, for example elliptic curve cryptography, ECC, for carrying out the method according to at least one of claims 1 to 8. [11] Accelerator device (10) according to claim 10, comprising at least one device (200) according to claim 9. [12] Accelerator device (10) according to at least one of claims 10 to 11, comprising at least one of the following elements: a) hardware accelerator unit (11) for elliptic curves, for example for cryptography with elliptic curves, for example elliptic curve cryptography, ECC, for example for carrying out the at least one operation (OP-1), b) first transformation device (12) for transforming input data (ED) and / or parameters associated with at least one elliptic curve, c) second transformation device (13) for transforming output data. [13] Product (1), for example a vehicle, for example a motor vehicle, with at least one device (200) according to claim 9 and / or with at least one accelerator device (10) according to at least one of claims 10 to 12. [14] Computer-readable storage medium (SM) comprising instructions (PRG) which, when executed by a computer (202), cause the computer to carry out the method according to at least one of claims 1 to 8. [15] Computer program (PRG) comprising instructions which, when the program (PRG) is executed by a computer (202), cause the computer (202) to carry out the method according to at least one of claims 1 to 8. [16] Data carrier signal (DCS) which transmits and / or characterises the computer program (PRG) according to claim 11. [17] Use (300) of the method according to at least one of claims 1 to 8 and / or the device (200) according to claim 9 and / or the accelerator device (10) according to at least one of claims 10 to 12 and / or the product (1) according to claim 13 and / or the computer-readable storage medium (SM) according to claim 14 and / or the computer program (PRG) according to claim 15 and / or the data carrier signal (DCS) according to claim 16 for at least one of the following elements: a) cryptography (301) with elliptic curves, b) enabling (302) the use of an accelerator device (10) for operations relating to a plurality of different forms of elliptic curves, c) carrying out (303) operations relating to a plurality of different forms of elliptic curves by means of an accelerator device (10) which, for example, exclusively,designed to accelerate the execution of operations relating to the elliptic curve (EC-F1) in the first form (F1), d) increasing (304) flexibility with respect to an accelerator device (10) for elliptic curves.,

Citation Information

Patent Citations

  • Elliptic curve cryptographic process and device for a computer

    EP1062764B1

  • A system and a method for performing operations

    WO2022243689A1