public static final ISignature getInstance(String ssa) {
      if (ssa == null) {
         return null;
      }

      ssa = ssa.trim();
      ISignature result = null;
      if (ssa.equalsIgnoreCase(Registry.DSA_SIG) || ssa.equals(Registry.DSS_SIG)) {
         result = new DSSSignature();
      } else if (ssa.equalsIgnoreCase(Registry.RSA_PSS_SIG)) {
         result = new RSAPSSSignature();
      } else if (ssa.equalsIgnoreCase(Registry.RSA_PKCS1_V1_5_SIG)) {
         result = new RSAPKCS1V1_5Signature();
      }

      return result;
   }