Method, Device and System For Verifying Points Determined on an Elliptic Curve
AssigneeSiemens Aktiengesellschaft
InventorsMichael Braun, Anton Kargl, Bernd Meyer
Life of this patent
Estimating the term…
Abstract
Conventional cryptographic methods that are based on elliptic curves are prone to side-channel attacks. Previously known methods for preventing side-channel attacks have the disadvantage of requiring high arithmetic capacity and a large amount of available memory space. The proposed method overcomes said disadvantage by using a process for verifying points on elliptic curves which saves arithmetic capacity and memory space.
Claims11
1-10. (canceled)
A method for verifying points determined on an elliptic curve, comprising:
- determining or selecting at least one coordinate of at least one first point lying on the elliptic curve;
- multiplying the first point by a scalar according to a defined method to produce a first result, with one coordinate of the first point being used in the entire defined method;
- obtaining further points as a result of the scalar multiplication, comprising at least:
- a coordinate of a second point obtained by multiplying the first point by the scalar;
- and
- a coordinate of a third point obtained by multiplying the first point by the scalar increased by a value;
- determining whether the first point and the further points lie on a straight line;
- and
- identifying the first and further points as verified if the first and further points lie on a straight line.
A system for verifying points determined on an elliptic curve, comprising:
- a first processor;
- and
- a second processor connected to the first processor, wherein
- an elliptic curve and a coordinate of a first point lying on the elliptic curve are agreed between the first processor and the second processor,
- the first processor comprises a processor unit, which is configured to execute a method comprising:
- multiplying the first point by a scalar according to a defined method to produce a first result, with one coordinate of the first point being used in the entire defined method;
- obtaining further points as a result of the scalar multiplication, comprising at least:
- a coordinate of a second point obtained by multiplying the first point by the scalar;
- and
- a coordinate of a third point obtained by multiplying the first point by the scalar increased by a value;
- determining whether the first point and the further points lie on a straight line;
- and
- identifying the first and further points as verified if the first and further points lie on a straight line;
- and
- transmitting the verified points from the first processor to the second processor, with just one coordinate being sent for each point that lies on a straight line,
- the second processor comprises a processor unit, which is configured to execute a method comprising:
- receiving the verified points transmitted from the first processor;
- and
- performing additional processing, with just one coordinate of each verified point being used in the entire additional processing.
Dependencies are inferred from the claim text.