Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
NistP192.cs
1using System.Numerics;
2
4{
9 public class NistP192 : NistPrimeCurve
10 {
11 private static readonly BigInteger p0 = BigInteger.Pow(2, 192) - BigInteger.Pow(2, 64) - 1;
12 private static readonly BigInteger n0 = BigInteger.Parse("6277101735386680763835789423176059013767194773182842284081");
13 private static readonly BigInteger B0 = ToBigInteger(new uint[]
14 {
15 0x64210519, 0xe59c80e7, 0x0fa7e9ab, 0x72243049, 0xfeb8deec, 0xc146b9b1
16 });
17 private static readonly BigInteger BasePointX = ToBigInteger(new uint[]
18 {
19 0x188da80e, 0xb03090f6, 0x7cbf20eb, 0x43a18800, 0xf4ff0afd, 0x82ff1012
20 });
21 private static readonly BigInteger BasePointY = ToBigInteger(new uint[]
22 {
23 0x07192b95, 0xffc8da78, 0x631011ed, 0x6b24cdd5, 0x73f977a1, 0x1e794811
24 });
25
30 public NistP192()
31 : base(p0, new PointOnCurve(BasePointX, BasePointY), B0, n0)
32 {
33 }
34
40 public NistP192(byte[] Secret)
41 : base(p0, new PointOnCurve(BasePointX, BasePointY), B0, n0, Secret)
42 {
43 }
44
48 public override string CurveName => "NIST P-192";
49
50 }
51}
NIST P-192 Elliptic Curve, as defined in NIST FIPS BUB 186-4: https://nvlpubs.nist....
Definition: NistP192.cs:10
override string CurveName
Name of curve.
Definition: NistP192.cs:48
NistP192()
NIST P-192 Elliptic Curve, as defined in NIST FIPS BUB 186-4: https://nvlpubs.nist....
Definition: NistP192.cs:30
NistP192(byte[] Secret)
NIST P-192 Elliptic Curve, as defined in NIST FIPS BUB 186-4: https://nvlpubs.nist....
Definition: NistP192.cs:40
Base class of Elliptic curves over a prime field defined by NIST.
static BigInteger ToBigInteger(uint[] BigEndianDWords)
Converts a sequence of unsigned 32-bit integers to a BigInteger.
Represents a point on a curve.
Definition: PointOnCurve.cs:10