diff options
author | Peter Dettman <peter.dettman@bouncycastle.org> | 2020-07-07 19:17:41 +0700 |
---|---|---|
committer | Peter Dettman <peter.dettman@bouncycastle.org> | 2020-07-07 19:17:41 +0700 |
commit | c43f275ac1aca8af3010dd4d94efa1511ca18f42 (patch) | |
tree | 9ebad3642950a439b0bbdd70229bc895f4730b48 /crypto/src/math/ec/custom/gm/SM2P256V1FieldElement.cs | |
parent | EC updates from bc-java (diff) | |
download | BouncyCastle.NET-ed25519-c43f275ac1aca8af3010dd4d94efa1511ca18f42.tar.xz |
Fermat inversion for all custom curves
- also customized random FE gen
Diffstat (limited to 'crypto/src/math/ec/custom/gm/SM2P256V1FieldElement.cs')
-rw-r--r-- | crypto/src/math/ec/custom/gm/SM2P256V1FieldElement.cs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/crypto/src/math/ec/custom/gm/SM2P256V1FieldElement.cs b/crypto/src/math/ec/custom/gm/SM2P256V1FieldElement.cs index a9331eb52..25cb24932 100644 --- a/crypto/src/math/ec/custom/gm/SM2P256V1FieldElement.cs +++ b/crypto/src/math/ec/custom/gm/SM2P256V1FieldElement.cs @@ -94,7 +94,7 @@ namespace Org.BouncyCastle.Math.EC.Custom.GM { //return Multiply(b.Invert()); uint[] z = Nat256.Create(); - Mod.Invert(SM2P256V1Field.P, ((SM2P256V1FieldElement)b).x, z); + SM2P256V1Field.Inv(((SM2P256V1FieldElement)b).x, z); SM2P256V1Field.Multiply(z, x, z); return new SM2P256V1FieldElement(z); } @@ -117,7 +117,7 @@ namespace Org.BouncyCastle.Math.EC.Custom.GM { //return new SM2P256V1FieldElement(ToBigInteger().ModInverse(Q)); uint[] z = Nat256.Create(); - Mod.Invert(SM2P256V1Field.P, x, z); + SM2P256V1Field.Inv(x, z); return new SM2P256V1FieldElement(z); } @@ -131,7 +131,7 @@ namespace Org.BouncyCastle.Math.EC.Custom.GM * Raise this element to the exponent 2^254 - 2^222 - 2^94 + 2^62 * * Breaking up the exponent's binary representation into "repunits", we get: - * { 31 1s } { 1 0s } { 128 1s } { 31 0s } { 1 1s } { 62 0s} + * { 31 1s } { 1 0s } { 128 1s } { 31 0s } { 1 1s } { 62 0s } * * We use an addition chain for the beginning: [1], 2, 3, 6, 12, [24], 30, [31] */ |