| package org.bouncycastle.jcajce.provider.asymmetric; |
| |
| import java.util.HashMap; |
| import java.util.Map; |
| |
| import org.bouncycastle.asn1.gm.GMObjectIdentifiers; |
| import org.bouncycastle.jcajce.provider.config.ConfigurableProvider; |
| import org.bouncycastle.jcajce.provider.util.AsymmetricAlgorithmProvider; |
| |
| public class GM |
| { |
| private static final String PREFIX = "org.bouncycastle.jcajce.provider.asymmetric" + ".ec."; |
| |
| private static final Map<String, String> generalSm2Attributes = new HashMap<String, String>(); |
| |
| static |
| { |
| generalSm2Attributes.put("SupportedKeyClasses", "java.security.interfaces.ECPublicKey|java.security.interfaces.ECPrivateKey"); |
| generalSm2Attributes.put("SupportedKeyFormats", "PKCS#8|X.509"); |
| } |
| |
| public static class Mappings |
| extends AsymmetricAlgorithmProvider |
| { |
| public Mappings() |
| { |
| } |
| |
| public void configure(ConfigurableProvider provider) |
| { |
| provider.addAlgorithm("Signature.SM3WITHSM2", PREFIX + "GMSignatureSpi$sm3WithSM2"); |
| provider.addAlgorithm("Alg.Alias.Signature." + GMObjectIdentifiers.sm2sign_with_sm3, "SM3WITHSM2"); |
| } |
| } |
| } |