Network security
How could I generat开发者_运维百科e curve points for elliptic curve cryptography in Java?
You would be advised to consider using the bouncycastle java libary, which has support for elliptic curves and the Java ME. Look for the lcrypto-j2me links on their latest releases page.
From Wikipedia: Elliptic curve cryptography
For current cryptographic purposes, an elliptic curve is a plane curve which consists of the points satisfying the equation
y^2 = x^3 + ax + b
along with a distinguished point at infinity, denoted \infty. (The coordinates here are to be chosen from a fixed finite field of characteristic not equal to 2 or 3, or the curve equation will be somewhat more complicated.) This set together with the group operation of the elliptic group theory form an Abelian group, with the point at infinity as identity element. The structure of the group is inherited from the divisor group of the underlying algebraic variety.
Further on, we read:
Several discrete logarithm-based protocols have been adapted to elliptic curves, replacing the group
(Zp)^x
times with an elliptic curve:
- the elliptic curve Diffie–Hellman key agreement scheme is based on the Diffie–Hellman scheme,
- the Elliptic Curve Digital Signature Algorithm is based on the Digital Signature Algorithm,
- the ECMQV key agreement scheme is based on the MQV key agreement scheme.
This should be enough information to get you started.
精彩评论