Package org.bouncycastle.math.ec.sm9
package org.bouncycastle.math.ec.sm9
Curve, extension-field and pairing arithmetic for the SM9 identity-based
cryptographic algorithms (GM/T 0044.5-2016): the 256-bit Barreto-Naehrig curve
with its G1 group (see
SM9Curve, backed by
the constant-time Montgomery curve
SM9P256V1Curve), the G2 sextic twist over F_p2
(SM9G2Point), the F_p2/F_p4/F_p12
1-2-4-12 tower, and the R-ate pairing e: G1 x G2 -> G_T
(SM9Pairing, target group
Fp12). The SM9 schemes built on this
package live in the standard lightweight packages: the signer in
org.bouncycastle.crypto.signers, the KEM in org.bouncycastle.crypto.kems,
the public-key cipher in org.bouncycastle.crypto.engines, the key exchange in
org.bouncycastle.crypto.agreement, the master key-pair generators in
org.bouncycastle.crypto.generators and the key parameters in
org.bouncycastle.crypto.params.-
ClassesClassDescriptionElement of F_p12 = F_p4[w]/(w^3 - v), i.e.Fixed system parameters of the SM9 256-bit BN curve (GM/T 0044.5-2016, clause 1).Affine point of the group G2 for SM9: the sextic twist E'(F_p2): y^2 = x^3 + 5u (GM/T 0044.5-2016).The SM9 R-ate pairing e: G1 x G2 -> G_T over the 256-bit BN curve (GM/T 0044.5-2016).