/extern/spongycastle/prov/src/main/java/org/spongycastle/jcajce/provider/asymmetric/DSA.java

https://gitlab.com/vizilo/fdroidclient · Java · 70 lines · 55 code · 15 blank · 0 comment · 2 complexity · 80d6fc9a58bf58026cb8f949ad5044f3 MD5 · raw file

  1. package org.spongycastle.jcajce.provider.asymmetric;
  2. import org.spongycastle.asn1.nist.NISTObjectIdentifiers;
  3. import org.spongycastle.jcajce.provider.asymmetric.dsa.DSAUtil;
  4. import org.spongycastle.jcajce.provider.asymmetric.dsa.KeyFactorySpi;
  5. import org.spongycastle.jcajce.provider.config.ConfigurableProvider;
  6. import org.spongycastle.jcajce.provider.util.AsymmetricAlgorithmProvider;
  7. import org.spongycastle.jcajce.provider.util.AsymmetricKeyInfoConverter;
  8. public class DSA
  9. {
  10. private static final String PREFIX = "org.spongycastle.jcajce.provider.asymmetric" + ".dsa.";
  11. public static class Mappings
  12. extends AsymmetricAlgorithmProvider
  13. {
  14. public Mappings()
  15. {
  16. }
  17. public void configure(ConfigurableProvider provider)
  18. {
  19. provider.addAlgorithm("AlgorithmParameters.DSA", PREFIX + "AlgorithmParametersSpi");
  20. provider.addAlgorithm("AlgorithmParameterGenerator.DSA", PREFIX + "AlgorithmParameterGeneratorSpi");
  21. provider.addAlgorithm("KeyPairGenerator.DSA", PREFIX + "KeyPairGeneratorSpi");
  22. provider.addAlgorithm("KeyFactory.DSA", PREFIX + "KeyFactorySpi");
  23. provider.addAlgorithm("Signature.DSA", PREFIX + "DSASigner$stdDSA");
  24. provider.addAlgorithm("Signature.NONEWITHDSA", PREFIX + "DSASigner$noneDSA");
  25. provider.addAlgorithm("Alg.Alias.Signature.RAWDSA", "NONEWITHDSA");
  26. provider.addAlgorithm("Signature.DETDSA", PREFIX + "DSASigner$detDSA");
  27. provider.addAlgorithm("Signature.SHA1WITHDETDSA", PREFIX + "DSASigner$detDSA");
  28. provider.addAlgorithm("Signature.SHA224WITHDETDSA", PREFIX + "DSASigner$detDSA224");
  29. provider.addAlgorithm("Signature.SHA256WITHDETDSA", PREFIX + "DSASigner$detDSA256");
  30. provider.addAlgorithm("Signature.SHA384WITHDETDSA", PREFIX + "DSASigner$detDSA384");
  31. provider.addAlgorithm("Signature.SHA512WITHDETDSA", PREFIX + "DSASigner$detDSA512");
  32. addSignatureAlgorithm(provider, "SHA224", "DSA", PREFIX + "DSASigner$dsa224", NISTObjectIdentifiers.dsa_with_sha224);
  33. addSignatureAlgorithm(provider, "SHA256", "DSA", PREFIX + "DSASigner$dsa256", NISTObjectIdentifiers.dsa_with_sha256);
  34. addSignatureAlgorithm(provider, "SHA384", "DSA", PREFIX + "DSASigner$dsa384", NISTObjectIdentifiers.dsa_with_sha384);
  35. addSignatureAlgorithm(provider, "SHA512", "DSA", PREFIX + "DSASigner$dsa512", NISTObjectIdentifiers.dsa_with_sha512);
  36. provider.addAlgorithm("Alg.Alias.Signature.SHA/DSA", "DSA");
  37. provider.addAlgorithm("Alg.Alias.Signature.SHA1withDSA", "DSA");
  38. provider.addAlgorithm("Alg.Alias.Signature.SHA1WITHDSA", "DSA");
  39. provider.addAlgorithm("Alg.Alias.Signature.1.3.14.3.2.26with1.2.840.10040.4.1", "DSA");
  40. provider.addAlgorithm("Alg.Alias.Signature.1.3.14.3.2.26with1.2.840.10040.4.3", "DSA");
  41. provider.addAlgorithm("Alg.Alias.Signature.DSAwithSHA1", "DSA");
  42. provider.addAlgorithm("Alg.Alias.Signature.DSAWITHSHA1", "DSA");
  43. provider.addAlgorithm("Alg.Alias.Signature.SHA1WithDSA", "DSA");
  44. provider.addAlgorithm("Alg.Alias.Signature.DSAWithSHA1", "DSA");
  45. provider.addAlgorithm("Alg.Alias.Signature.1.2.840.10040.4.3", "DSA");
  46. AsymmetricKeyInfoConverter keyFact = new KeyFactorySpi();
  47. for (int i = 0; i != DSAUtil.dsaOids.length; i++)
  48. {
  49. provider.addAlgorithm("Alg.Alias.Signature." + DSAUtil.dsaOids[i], "DSA");
  50. registerOid(provider, DSAUtil.dsaOids[i], "DSA", keyFact);
  51. registerOidAlgorithmParameters(provider, DSAUtil.dsaOids[i], "DSA");
  52. }
  53. }
  54. }
  55. }