|
|
@@ -37,6 +37,8 @@ uses
|
|
|
ClpIX9ECC,
|
|
|
ClpIAsn1Objects,
|
|
|
ClpGlvTypeBEndomorphism,
|
|
|
+ ClpIScalarSplitParameters,
|
|
|
+ ClpScalarSplitParameters,
|
|
|
ClpX9ECParameters,
|
|
|
ClpIX9ECParameters,
|
|
|
ClpX9ECParametersHolder,
|
|
|
@@ -1052,14 +1054,16 @@ begin
|
|
|
glv := TGlvTypeBParameters.Create
|
|
|
(TBigInteger.Create('9ba48cba5ebcb9b6bd33b92830b2a2e0e192f10a', 16),
|
|
|
TBigInteger.Create('c39c6c3b3a36d7701b9c71a1f5804ae5d0003f4', 16),
|
|
|
- TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
+
|
|
|
+ TScalarSplitParameters.Create(TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
(TBigInteger.Create('9162fbe73984472a0a9e', 16),
|
|
|
TBigInteger.Create('-96341f1138933bc2f505', 16)),
|
|
|
- TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
- (TBigInteger.Create('127971af8721782ecffa3', 16),
|
|
|
- TBigInteger.Create('9162fbe73984472a0a9e', 16)),
|
|
|
- TBigInteger.Create('9162fbe73984472a0a9d0590', 16),
|
|
|
- TBigInteger.Create('96341f1138933bc2f503fd44', 16), 176);
|
|
|
+
|
|
|
+ TCryptoLibGenericArray<TBigInteger>.Create(TBigInteger.Create
|
|
|
+ ('127971af8721782ecffa3', 16), TBigInteger.Create('9162fbe73984472a0a9e',
|
|
|
+ 16)), TBigInteger.Create('9162fbe73984472a0a9d0590', 16),
|
|
|
+ TBigInteger.Create('96341f1138933bc2f503fd44', 16), 176)
|
|
|
+ as IScalarSplitParameters);
|
|
|
|
|
|
curve := ConfigureCurveGlv(TFpCurve.Create(p, a, b, n, h) as IFpCurve, glv);
|
|
|
G := ConfigureBasepoint(curve,
|
|
|
@@ -1152,14 +1156,16 @@ begin
|
|
|
glv := TGlvTypeBParameters.Create
|
|
|
(TBigInteger.Create('bb85691939b869c1d087f601554b96b80cb4f55b35f433c2', 16),
|
|
|
TBigInteger.Create('3d84f26c12238d7b4f3d516613c1759033b1a5800175d0b1', 16),
|
|
|
- TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
+
|
|
|
+ TScalarSplitParameters.Create(TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
(TBigInteger.Create('71169be7330b3038edb025f1', 16),
|
|
|
TBigInteger.Create('-b3fb3400dec5c4adceb8655c', 16)),
|
|
|
- TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
- (TBigInteger.Create('12511cfe811d0f4e6bc688b4d', 16),
|
|
|
+ TCryptoLibGenericArray<TBigInteger>.Create(TBigInteger.Create
|
|
|
+ ('12511cfe811d0f4e6bc688b4d', 16),
|
|
|
TBigInteger.Create('71169be7330b3038edb025f1', 16)),
|
|
|
TBigInteger.Create('71169be7330b3038edb025f1d0f9', 16),
|
|
|
- TBigInteger.Create('b3fb3400dec5c4adceb8655d4c94', 16), 208);
|
|
|
+ TBigInteger.Create('b3fb3400dec5c4adceb8655d4c94', 16), 208)
|
|
|
+ as IScalarSplitParameters);
|
|
|
|
|
|
curve := ConfigureCurveGlv(TFpCurve.Create(p, a, b, n, h) as IFpCurve, glv);
|
|
|
G := ConfigureBasepoint(curve,
|
|
|
@@ -1225,14 +1231,15 @@ begin
|
|
|
('fe0e87005b4e83761908c5131d552a850b3f58b749c37cf5b84d6768', 16),
|
|
|
TBigInteger.Create
|
|
|
('60dcd2104c4cbc0be6eeefc2bdd610739ec34e317f9b33046c9e4788', 16),
|
|
|
- TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
+ TScalarSplitParameters.Create(TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
(TBigInteger.Create('6b8cf07d4ca75c88957d9d670591', 16),
|
|
|
TBigInteger.Create('-b8adf1378a6eb73409fa6c9c637d', 16)),
|
|
|
- TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
- (TBigInteger.Create('1243ae1b4d71613bc9f780a03690e', 16),
|
|
|
+ TCryptoLibGenericArray<TBigInteger>.Create(TBigInteger.Create
|
|
|
+ ('1243ae1b4d71613bc9f780a03690e', 16),
|
|
|
TBigInteger.Create('6b8cf07d4ca75c88957d9d670591', 16)),
|
|
|
TBigInteger.Create('6b8cf07d4ca75c88957d9d67059037a4', 16),
|
|
|
- TBigInteger.Create('b8adf1378a6eb73409fa6c9c637ba7f5', 16), 240);
|
|
|
+ TBigInteger.Create('b8adf1378a6eb73409fa6c9c637ba7f5', 16), 240)
|
|
|
+ as IScalarSplitParameters);
|
|
|
|
|
|
curve := ConfigureCurveGlv(TFpCurve.Create(p, a, b, n, h) as IFpCurve, glv);
|
|
|
G := ConfigureBasepoint(curve,
|
|
|
@@ -1300,14 +1307,16 @@ begin
|
|
|
('7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee', 16),
|
|
|
TBigInteger.Create
|
|
|
('5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72', 16),
|
|
|
- TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
+
|
|
|
+ TScalarSplitParameters.Create(TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
(TBigInteger.Create('3086d221a7d46bcde86c90e49284eb15', 16),
|
|
|
TBigInteger.Create('-e4437ed6010e88286f547fa90abfe4c3', 16)),
|
|
|
- TCryptoLibGenericArray<TBigInteger>.Create
|
|
|
- (TBigInteger.Create('114ca50f7a8e2f3f657c1108d9d44cfd8', 16),
|
|
|
+ TCryptoLibGenericArray<TBigInteger>.Create(TBigInteger.Create
|
|
|
+ ('114ca50f7a8e2f3f657c1108d9d44cfd8', 16),
|
|
|
TBigInteger.Create('3086d221a7d46bcde86c90e49284eb15', 16)),
|
|
|
TBigInteger.Create('3086d221a7d46bcde86c90e49284eb153dab', 16),
|
|
|
- TBigInteger.Create('e4437ed6010e88286f547fa90abfe4c42212', 16), 272);
|
|
|
+ TBigInteger.Create('e4437ed6010e88286f547fa90abfe4c42212', 16), 272)
|
|
|
+ as IScalarSplitParameters);
|
|
|
|
|
|
curve := ConfigureCurveGlv(TFpCurve.Create(p, a, b, n, h) as IFpCurve, glv);
|
|
|
G := ConfigureBasepoint(curve,
|