AsymmetricAlgorithmProvider.java revision e6bf3e8dfa2804891a82075cb469b736321b4827
1package org.bouncycastle.jcajce.provider.util; 2 3import org.bouncycastle.asn1.ASN1ObjectIdentifier; 4import org.bouncycastle.jcajce.provider.config.ConfigurableProvider; 5 6public abstract class AsymmetricAlgorithmProvider 7 extends AlgorithmProvider 8{ 9 protected void addSignatureAlgorithm( 10 ConfigurableProvider provider, 11 String digest, 12 String algorithm, 13 String className, 14 ASN1ObjectIdentifier oid) 15 { 16 String mainName = digest + "WITH" + algorithm; 17 String jdk11Variation1 = digest + "with" + algorithm; 18 String jdk11Variation2 = digest + "With" + algorithm; 19 String alias = digest + "/" + algorithm; 20 21 provider.addAlgorithm("Signature." + mainName, className); 22 provider.addAlgorithm("Alg.Alias.Signature." + jdk11Variation1, mainName); 23 provider.addAlgorithm("Alg.Alias.Signature." + jdk11Variation2, mainName); 24 provider.addAlgorithm("Alg.Alias.Signature." + alias, mainName); 25 provider.addAlgorithm("Alg.Alias.Signature." + oid, mainName); 26 provider.addAlgorithm("Alg.Alias.Signature.OID." + oid, mainName); 27 } 28 29 protected void registerOid(ConfigurableProvider provider, ASN1ObjectIdentifier oid, String name, AsymmetricKeyInfoConverter keyFactory) 30 { 31 provider.addAlgorithm("Alg.Alias.KeyFactory." + oid, name); 32 provider.addAlgorithm("Alg.Alias.KeyPairGenerator." + oid, name); 33 34 provider.addKeyInfoConverter(oid, keyFactory); 35 } 36 37 protected void registerOidAlgorithmParameters(ConfigurableProvider provider, ASN1ObjectIdentifier oid, String name) 38 { 39 provider.addAlgorithm("Alg.Alias.AlgorithmParameterGenerator." + oid, name); 40 provider.addAlgorithm("Alg.Alias.AlgorithmParameters." + oid, name); 41 } 42} 43