<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java%2FSecurity%2FAlgorithms</id>
		<title>Java/Security/Algorithms - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java%2FSecurity%2FAlgorithms"/>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java/Security/Algorithms&amp;action=history"/>
		<updated>2026-04-07T02:26:49Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://jexp.ru/index.php?title=Java/Security/Algorithms&amp;diff=7639&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java/Security/Algorithms&amp;diff=7639&amp;oldid=prev"/>
				<updated>2010-06-01T06:49:20Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 06:49, 1 июня 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://jexp.ru/index.php?title=Java/Security/Algorithms&amp;diff=7638&amp;oldid=prev</id>
		<title> в 18:01, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java/Security/Algorithms&amp;diff=7638&amp;oldid=prev"/>
				<updated>2010-05-31T18:01:45Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Generating a Parameter Set for the Diffie-Hellman Key Agreement Algorithm ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
import java.security.AlgorithmParameterGenerator;&lt;br /&gt;
import java.security.AlgorithmParameters;&lt;br /&gt;
import javax.crypto.spec.DHParameterSpec;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    AlgorithmParameterGenerator paramGen = AlgorithmParameterGenerator.getInstance(&amp;quot;DH&amp;quot;);&lt;br /&gt;
    paramGen.init(1024);&lt;br /&gt;
    AlgorithmParameters params = paramGen.generateParameters();&lt;br /&gt;
    DHParameterSpec dhSpec = (DHParameterSpec) params.getParameterSpec(DHParameterSpec.class);&lt;br /&gt;
    System.out.println(&amp;quot;&amp;quot; + dhSpec.getP() + &amp;quot;,&amp;quot; + dhSpec.getG() + &amp;quot;,&amp;quot; + dhSpec.getL());&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Get cryptographic security providers ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
import java.security.Provider;&lt;br /&gt;
import java.security.Security;&lt;br /&gt;
import java.util.HashSet;&lt;br /&gt;
import java.util.Set;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    Set&amp;lt;Object&amp;gt; result = new HashSet&amp;lt;Object&amp;gt;();&lt;br /&gt;
    Provider[] providers = Security.getProviders();&lt;br /&gt;
    for (Provider provider : providers) {&lt;br /&gt;
      Set&amp;lt;Object&amp;gt; keys = provider.keySet();&lt;br /&gt;
      for (Object key : keys) {&lt;br /&gt;
        String data = (String) key;&lt;br /&gt;
        data = data.split(&amp;quot; &amp;quot;)[0];&lt;br /&gt;
        if (data.startsWith(&amp;quot;Alg.Alias&amp;quot;)) {&lt;br /&gt;
          data = data.substring(10);&lt;br /&gt;
        }&lt;br /&gt;
        data = data.substring(0, data.indexOf(&amp;quot;.&amp;quot;));&lt;br /&gt;
        result.add(data);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    for (Object o : result) {&lt;br /&gt;
      System.out.println(&amp;quot;Service Type = &amp;quot; + o);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== JCE algorithms in Browser ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
import java.awt.Dimension;&lt;br /&gt;
import java.security.Provider;&lt;br /&gt;
import java.security.Security;&lt;br /&gt;
import java.util.HashSet;&lt;br /&gt;
import java.util.Set;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
import javax.swing.JTree;&lt;br /&gt;
import javax.swing.tree.DefaultMutableTreeNode;&lt;br /&gt;
import javax.swing.tree.DefaultTreeModel;&lt;br /&gt;
import javax.swing.tree.TreeSelectionModel;&lt;br /&gt;
public class ListAlgorithmsBC extends JFrame {&lt;br /&gt;
  private void getNodes(DefaultMutableTreeNode providerNode, Provider provider,&lt;br /&gt;
      Set&amp;lt;Provider.Service&amp;gt; used, String title, String target) {&lt;br /&gt;
    DefaultMutableTreeNode node = new DefaultMutableTreeNode(title);&lt;br /&gt;
    for (Provider.Service service : provider.getServices()) {&lt;br /&gt;
      if (!used.contains(service) &amp;amp;&amp;amp; target.equalsIgnoreCase(service.getType())) {&lt;br /&gt;
        used.add(service);&lt;br /&gt;
        DefaultMutableTreeNode algNode = new DefaultMutableTreeNode(service.getAlgorithm());&lt;br /&gt;
        node.add(algNode);&lt;br /&gt;
        algNode.add(new DefaultMutableTreeNode(&amp;quot;class : &amp;quot; + service.getClassName()));&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    if (node.getChildCount() != 0) {&lt;br /&gt;
      providerNode.add(node);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  private ListAlgorithmsBC() {&lt;br /&gt;
    super(&amp;quot;JCE Algorithms&amp;quot;);&lt;br /&gt;
    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);&lt;br /&gt;
    DefaultMutableTreeNode root = new DefaultMutableTreeNode(&amp;quot;Providers&amp;quot;);&lt;br /&gt;
    DefaultTreeModel treeModel = new DefaultTreeModel(root);&lt;br /&gt;
    for (Provider provider : java.security.Security.getProviders()) {&lt;br /&gt;
      DefaultMutableTreeNode providerNode = new DefaultMutableTreeNode(provider);&lt;br /&gt;
      root.add(providerNode);&lt;br /&gt;
      Set&amp;lt;Provider.Service&amp;gt; used = new HashSet&amp;lt;Provider.Service&amp;gt;();&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Cipher&amp;quot;, &amp;quot;cipher&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Key Agreement&amp;quot;, &amp;quot;keyagreement&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Key Generator&amp;quot;, &amp;quot;keygenerator&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Key Pair Generator&amp;quot;, &amp;quot;keypairgenerator&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Key Factory&amp;quot;, &amp;quot;keyfactory&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Secret Key Factory&amp;quot;, &amp;quot;secretkeyfactory&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Mac&amp;quot;, &amp;quot;mac&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Message Digest&amp;quot;, &amp;quot;messagedigest&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Signature&amp;quot;, &amp;quot;signature&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Algorithm Paramater&amp;quot;, &amp;quot;algorithmparameters&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Algorithm Paramater Generator&amp;quot;,&lt;br /&gt;
          &amp;quot;algorithmparametergenerator&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Key Store&amp;quot;, &amp;quot;keystore&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Secure Random&amp;quot;, &amp;quot;securerandom&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Certificate Factory&amp;quot;, &amp;quot;certificatefactory&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Certificate Store&amp;quot;, &amp;quot;certstore&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Key Manager Factory&amp;quot;, &amp;quot;KeyManagerFactory&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Trust Manager Factory&amp;quot;, &amp;quot;TrustManagerFactory&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;SSL Context&amp;quot;, &amp;quot;SSLContext&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Sasl Server Factory&amp;quot;, &amp;quot;SaslServerFactory&amp;quot;);&lt;br /&gt;
      getNodes(providerNode, provider, used, &amp;quot;Sasl Client Factory&amp;quot;, &amp;quot;SaslClientFactory&amp;quot;);&lt;br /&gt;
      {&lt;br /&gt;
        DefaultMutableTreeNode node = new DefaultMutableTreeNode(&amp;quot;Other&amp;quot;);&lt;br /&gt;
        for (Provider.Service service : provider.getServices()) {&lt;br /&gt;
          if (!used.contains(service)) {&lt;br /&gt;
            DefaultMutableTreeNode serviceNode = new DefaultMutableTreeNode(service.getType()&lt;br /&gt;
                + &amp;quot; : &amp;quot; + service.getAlgorithm());&lt;br /&gt;
            node.add(serviceNode);&lt;br /&gt;
            serviceNode.add(new DefaultMutableTreeNode(&amp;quot;class : &amp;quot; + service.getClassName()));&lt;br /&gt;
          }&lt;br /&gt;
        }&lt;br /&gt;
        if (node.getChildCount() != 0)&lt;br /&gt;
          providerNode.add(node);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    JTree tree = new JTree(treeModel);&lt;br /&gt;
    tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);&lt;br /&gt;
    tree.setEditable(false);&lt;br /&gt;
    JScrollPane pane = new JScrollPane(tree);&lt;br /&gt;
    pane.setPreferredSize(new Dimension(200, 200));&lt;br /&gt;
    getContentPane().add(pane);&lt;br /&gt;
    pack();&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());&lt;br /&gt;
    new ListAlgorithmsBC().setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Listing All Available Cryptographic Services ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
import java.security.Provider;&lt;br /&gt;
import java.security.Security;&lt;br /&gt;
import java.util.HashSet;&lt;br /&gt;
import java.util.Iterator;&lt;br /&gt;
import java.util.Set;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    Set result = new HashSet();&lt;br /&gt;
    Provider[] providers = Security.getProviders();&lt;br /&gt;
    for (int i = 0; i &amp;lt; providers.length; i++) {&lt;br /&gt;
      Set keys = providers[i].keySet();&lt;br /&gt;
      for (Iterator it = keys.iterator(); it.hasNext();) {&lt;br /&gt;
        String key = (String) it.next();&lt;br /&gt;
        key = key.split(&amp;quot; &amp;quot;)[0];&lt;br /&gt;
        if (key.startsWith(&amp;quot;Alg.Alias.&amp;quot;)) {&lt;br /&gt;
          // Strip the alias&lt;br /&gt;
          key = key.substring(10);&lt;br /&gt;
        }&lt;br /&gt;
        int ix = key.indexOf(&amp;quot;.&amp;quot;);&lt;br /&gt;
        result.add(key.substring(0, ix));&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    System.out.println(result);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
[KeyFactory, &lt;br /&gt;
TransformService, &lt;br /&gt;
CertPathBuilder, &lt;br /&gt;
Cipher, &lt;br /&gt;
SecureRandom, &lt;br /&gt;
Signature, &lt;br /&gt;
AlgorithmParameterGenerator, &lt;br /&gt;
KeyPairGenerator, &lt;br /&gt;
XMLSignatureFactory, &lt;br /&gt;
CertificateFactory, &lt;br /&gt;
MessageDigest, &lt;br /&gt;
KeyInfoFactory, &lt;br /&gt;
KeyAgreement, &lt;br /&gt;
CertStore, &lt;br /&gt;
Configuration, &lt;br /&gt;
SSLContext, &lt;br /&gt;
SaslServerFactory, &lt;br /&gt;
AlgorithmParameters, &lt;br /&gt;
TrustManagerFactory, &lt;br /&gt;
GssApiMechanism, &lt;br /&gt;
TerminalFactory, &lt;br /&gt;
Mac, &lt;br /&gt;
KeyGenerator, &lt;br /&gt;
Policy, &lt;br /&gt;
CertPathValidator, &lt;br /&gt;
SaslClientFactory, &lt;br /&gt;
SecretKeyFactory, &lt;br /&gt;
KeyManagerFactory, &lt;br /&gt;
KeyStore, &lt;br /&gt;
Provider]&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Return the available implementations for a service type ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
import java.security.Provider;&lt;br /&gt;
import java.security.Security;&lt;br /&gt;
import java.util.HashSet;&lt;br /&gt;
import java.util.Iterator;&lt;br /&gt;
import java.util.Set;&lt;br /&gt;
public class Main {&lt;br /&gt;
  public static void main(String[] argv) throws Exception {&lt;br /&gt;
    Set result = new HashSet();&lt;br /&gt;
    String serviceType = &amp;quot;KeyFactory&amp;quot;;&lt;br /&gt;
    Provider[] providers = Security.getProviders();&lt;br /&gt;
    for (int i = 0; i &amp;lt; providers.length; i++) {&lt;br /&gt;
      Set keys = providers[i].keySet();&lt;br /&gt;
      for (Iterator it = keys.iterator(); it.hasNext();) {&lt;br /&gt;
        String key = (String) it.next();&lt;br /&gt;
        key = key.split(&amp;quot; &amp;quot;)[0];&lt;br /&gt;
        if (key.startsWith(serviceType + &amp;quot;.&amp;quot;)) {&lt;br /&gt;
          result.add(key.substring(serviceType.length() + 1));&lt;br /&gt;
        } else if (key.startsWith(&amp;quot;Alg.Alias.&amp;quot; + serviceType + &amp;quot;.&amp;quot;)) {&lt;br /&gt;
          result.add(key.substring(serviceType.length() + 11));&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    System.out.println(result);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
[1.2.840.113549.1.3.1, &lt;br /&gt;
OID.1.2.840.113549.1.1, &lt;br /&gt;
1.2.840.113549.1.1, &lt;br /&gt;
OID.1.2.840.113549.1.3.1, &lt;br /&gt;
1.3.14.3.2.12, &lt;br /&gt;
DSA, DiffieHellman, RSA, DH, 1.2.840.10040.4.1]&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== What is in bouncycastle (bouncy castle) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
       &lt;br /&gt;
/*&lt;br /&gt;
KeyGenerator:&lt;br /&gt;
            HMAC-MD2&lt;br /&gt;
            GOST&lt;br /&gt;
            HMACRIPEMD160&lt;br /&gt;
            ARC4&lt;br /&gt;
            CAST5&lt;br /&gt;
            2.16.840.1.101.3.4.1.44&lt;br /&gt;
            HMAC-SHA384&lt;br /&gt;
            2.16.840.1.101.3.4.2&lt;br /&gt;
            HMAC-MD4&lt;br /&gt;
            HMAC-SHA1&lt;br /&gt;
            HMAC-RIPEMD128&lt;br /&gt;
            HMAC-SHA512&lt;br /&gt;
            2.16.840.1.101.3.4.1.5&lt;br /&gt;
            DESEDEWRAP&lt;br /&gt;
            TWOFISH&lt;br /&gt;
            HMACMD4&lt;br /&gt;
            2.16.840.1.101.3.4.1.24&lt;br /&gt;
            2.16.840.1.101.3.4.1.42&lt;br /&gt;
            RIJNDAEL&lt;br /&gt;
            IDEA&lt;br /&gt;
            2.16.840.1.101.3.4.42&lt;br /&gt;
            RC4&lt;br /&gt;
            1.2.840.113549.2.10&lt;br /&gt;
            RC5&lt;br /&gt;
            HMAC-MD5&lt;br /&gt;
            2.16.840.1.101.3.4.22&lt;br /&gt;
            HMAC-SHA224&lt;br /&gt;
            1.2.840.113533.7.66.10&lt;br /&gt;
            BLOWFISH&lt;br /&gt;
            HMACMD2&lt;br /&gt;
            HMACRIPEMD128&lt;br /&gt;
            RC2&lt;br /&gt;
            2.16.840.1.101.3.4.1.23&lt;br /&gt;
            GOST-28147&lt;br /&gt;
            1.2.840.113549.2.9&lt;br /&gt;
            HMACSHA512&lt;br /&gt;
            DESEDE&lt;br /&gt;
            CAMELLIA&lt;br /&gt;
            SERPENT&lt;br /&gt;
            RC5-64&lt;br /&gt;
            RC5-32&lt;br /&gt;
            HMAC-SHA256&lt;br /&gt;
            HMACSHA384&lt;br /&gt;
            HMAC-RIPEMD160&lt;br /&gt;
            1.2.840.113549.3.7&lt;br /&gt;
            AESWRAP&lt;br /&gt;
            HMACTIGER&lt;br /&gt;
            2.16.840.1.101.3.4.1.22&lt;br /&gt;
            RC6&lt;br /&gt;
            HMACMD5&lt;br /&gt;
            1.2.840.113549.2.7&lt;br /&gt;
            HMACSHA256&lt;br /&gt;
            1.3.14.3.2.7&lt;br /&gt;
            2.16.840.1.101.3.4.1.21&lt;br /&gt;
            2.16.840.1.101.3.4.1.2&lt;br /&gt;
            1.2.643.2.2.21&lt;br /&gt;
            1.2.840.113549.2.8&lt;br /&gt;
            1.2.840.113549.2.11&lt;br /&gt;
            1.2.840.113549.3.4&lt;br /&gt;
            2.16.840.1.101.3.4.1.45&lt;br /&gt;
            2.16.840.1.101.3.4.1.41&lt;br /&gt;
            2.16.840.1.101.3.4.1.1&lt;br /&gt;
            2.16.840.1.101.3.4.1.3&lt;br /&gt;
            HMACSHA224&lt;br /&gt;
            2.16.840.1.101.3.4.1.43&lt;br /&gt;
            2.16.840.1.101.3.4.1.4&lt;br /&gt;
            1.3.6.1.4.1.188.7.1.1.2&lt;br /&gt;
            2.16.840.1.101.3.4.1.25&lt;br /&gt;
            CAST6&lt;br /&gt;
            HMACSHA1&lt;br /&gt;
            1.2.840.113549.3.2&lt;br /&gt;
            SKIPJACK&lt;br /&gt;
            AES&lt;br /&gt;
            DES&lt;br /&gt;
            GOST28147&lt;br /&gt;
KeyFactory:&lt;br /&gt;
            EC&lt;br /&gt;
            ECDH&lt;br /&gt;
            1.2.840.113549.1.1&lt;br /&gt;
            OID.1.2.840.113549.1.1&lt;br /&gt;
            1.2.643.2.2.19&lt;br /&gt;
            DH&lt;br /&gt;
            ECDSA&lt;br /&gt;
            1.3.14.3.2.12&lt;br /&gt;
            1.2.840.113549.1.1.1&lt;br /&gt;
            GOST-3410-94&lt;br /&gt;
            RSA&lt;br /&gt;
            ECGOST-3410&lt;br /&gt;
            1.2.840.10045.2.1&lt;br /&gt;
            DSA ImplementedIn&lt;br /&gt;
            GOST3410&lt;br /&gt;
            DSA&lt;br /&gt;
            GOST-3410&lt;br /&gt;
            ELGAMAL&lt;br /&gt;
            1.2.840.10040.4.1&lt;br /&gt;
            1.2.643.2.2.20&lt;br /&gt;
            ECDHC&lt;br /&gt;
            GOST-3410-2001&lt;br /&gt;
            ECGOST3410&lt;br /&gt;
            ElGamal&lt;br /&gt;
KeyPairGenerator:&lt;br /&gt;
            EC&lt;br /&gt;
            ECDH&lt;br /&gt;
            1.2.840.113549.1.1&lt;br /&gt;
            OID.1.2.840.113549.1.1&lt;br /&gt;
            DSA KeySize&lt;br /&gt;
            DH&lt;br /&gt;
            1.3.14.3.2.12&lt;br /&gt;
            ECDSA&lt;br /&gt;
            OID.1.2.840.10040.4.1&lt;br /&gt;
            1.2.840.113549.1.1.1&lt;br /&gt;
            GOST-3410-94&lt;br /&gt;
            ECGOST-3410&lt;br /&gt;
            RSA&lt;br /&gt;
            GOST3410&lt;br /&gt;
            ECIES&lt;br /&gt;
            DSA ImplementedIn&lt;br /&gt;
            GOST-3410&lt;br /&gt;
            DSA&lt;br /&gt;
            ELGAMAL&lt;br /&gt;
            1.2.840.10040.4.1&lt;br /&gt;
            ECDHC&lt;br /&gt;
            GOST-3410-2001&lt;br /&gt;
            ECGOST3410&lt;br /&gt;
Ciphers:&lt;br /&gt;
            ELGAMAL/NONE/NOPADDING&lt;br /&gt;
            RSA//NOPADDING&lt;br /&gt;
            PBEWITHSHA1AND192BITAES-CBC-BC&lt;br /&gt;
            OLDPBEWITHSHAAND3-KEYTRIPLEDES-CBC&lt;br /&gt;
            1.2.840.113549.1.1.7&lt;br /&gt;
            CAST5&lt;br /&gt;
            ELGAMAL/PKCS1&lt;br /&gt;
            PBEWITHSHA1AND128BITRC2-CBC&lt;br /&gt;
            1.2.840.113549.1.12.1.3&lt;br /&gt;
            ECIES&lt;br /&gt;
            RSA//RAW&lt;br /&gt;
            PBEWITHSHAAND40BITRC2-CBC&lt;br /&gt;
            PBEWITHSHAAND3-KEYTRIPLEDES-CBC&lt;br /&gt;
            2.16.840.1.101.3.4.1.5&lt;br /&gt;
            1.2.840.113549.1.12.1.6&lt;br /&gt;
            DESEDEWRAP&lt;br /&gt;
            PBEWITHSHA-1AND192BITAES-CBC-BC&lt;br /&gt;
            2.16.840.1.101.3.4.1.24&lt;br /&gt;
            2.16.840.1.101.3.4.1.42&lt;br /&gt;
            PBEWITHSHA256AND256BITAES-CBC-BC&lt;br /&gt;
            RIJNDAEL&lt;br /&gt;
            IDEA&lt;br /&gt;
            2.16.840.1.101.3.4.42&lt;br /&gt;
            RC4&lt;br /&gt;
            PBEWITHSHA1AND128BITAES-CBC-BC&lt;br /&gt;
            PBEWITHSHA-1AND256BITAES-CBC-BC&lt;br /&gt;
            RC5&lt;br /&gt;
            1.2.840.113549.1.12.1.2&lt;br /&gt;
            RC2&lt;br /&gt;
            1.2.840.113549.1.9.16.3.6&lt;br /&gt;
            PBEWITHSHA1ANDDESEDE&lt;br /&gt;
            RSA/OAEP&lt;br /&gt;
            SERPENT&lt;br /&gt;
            RC5-64&lt;br /&gt;
            RC5-32&lt;br /&gt;
            1.2.840.113549.3.7&lt;br /&gt;
            AESWRAP&lt;br /&gt;
            RSA/PKCS1&lt;br /&gt;
            2.16.840.1.101.3.4.1.22&lt;br /&gt;
            RC6&lt;br /&gt;
            PBEWITHMD5ANDRC2&lt;br /&gt;
            2.16.840.1.101.3.4.1.2&lt;br /&gt;
            2.16.840.1.101.3.4.1.21&lt;br /&gt;
            ARCFOUR&lt;br /&gt;
            1.2.643.2.2.21&lt;br /&gt;
            2.5.8.1.1&lt;br /&gt;
            IES&lt;br /&gt;
            1.2.840.113549.1.12.1.5&lt;br /&gt;
            2.16.840.1.101.3.4.1.45&lt;br /&gt;
            2.16.840.1.101.3.4.1.41&lt;br /&gt;
            2.16.840.1.101.3.4.1.1&lt;br /&gt;
            2.16.840.1.101.3.4.1.3&lt;br /&gt;
            PBEWITHSHA1ANDRC2&lt;br /&gt;
            RSA//OAEPPADDING&lt;br /&gt;
            2.16.840.1.101.3.4.1.43&lt;br /&gt;
            2.16.840.1.101.3.4.1.4&lt;br /&gt;
            PBEWITHSHA1AND40BITRC2-CBC&lt;br /&gt;
            PBEWITHSHAAND256BITAES-CBC-BC&lt;br /&gt;
            PBEWITHSHA256AND192BITAES-CBC-BC&lt;br /&gt;
            SKIPJACK&lt;br /&gt;
            DES&lt;br /&gt;
            PBEWITHSHAAND40BITRC4&lt;br /&gt;
            BROKENPBEWITHMD5ANDDES&lt;br /&gt;
            PBEWITHMD5AND256BITAES-CBC-OPENSSL&lt;br /&gt;
            PBEWITHSHA1AND2-KEYTRIPLEDES-CBC&lt;br /&gt;
            RSA/1&lt;br /&gt;
            PBEWITHMD5AND192BITAES-CBC-OPENSSL&lt;br /&gt;
            GOST&lt;br /&gt;
            ARC4&lt;br /&gt;
            PBEWITHSHAAND128BITRC4&lt;br /&gt;
            1.2.840.113549.1.12.1.1&lt;br /&gt;
            RSA/2&lt;br /&gt;
            2.16.840.1.101.3.4.1.44&lt;br /&gt;
            RSA//ISO9796-1PADDING&lt;br /&gt;
            PBEWITHSHAAND2-KEYTRIPLEDES-CBC&lt;br /&gt;
            2.16.840.1.101.3.4.2&lt;br /&gt;
            RC2WRAP&lt;br /&gt;
            PBEWITHSHA-256AND256BITAES-CBC-BC&lt;br /&gt;
            PBEWITHSHA1ANDDES&lt;br /&gt;
            PBEWITHSHAANDTWOFISH-CBC&lt;br /&gt;
            TWOFISH&lt;br /&gt;
            1.2.840.113549.1.9.16.3.7&lt;br /&gt;
            ELGAMAL/NONE/PKCS1PADDING&lt;br /&gt;
            1.2.840.113549.1.12.1.4&lt;br /&gt;
            PBEWITHSHAAND128BITRC2-CBC&lt;br /&gt;
            PBEWITHSHA1AND128BITRC4&lt;br /&gt;
            PBEWITHSHAAND192BITAES-CBC-BC&lt;br /&gt;
            2.16.840.1.101.3.4.22&lt;br /&gt;
            PBEWithSHAAnd3KeyTripleDES&lt;br /&gt;
            BLOWFISH&lt;br /&gt;
            1.2.840.113533.7.66.10&lt;br /&gt;
            2.16.840.1.101.3.4.1.23&lt;br /&gt;
            GOST-28147&lt;br /&gt;
            ELGAMAL/ECB/PKCS1PADDING&lt;br /&gt;
            DESEDE&lt;br /&gt;
            PBEWITHSHA-256AND128BITAES-CBC-BC&lt;br /&gt;
            RSA/ISO9796-1&lt;br /&gt;
            RSA//PKCS1PADDING&lt;br /&gt;
            CAMELLIA&lt;br /&gt;
            PBEWITHSHA-1AND128BITAES-CBC-BC&lt;br /&gt;
            BROKENPBEWITHSHA1ANDDES&lt;br /&gt;
            BROKENPBEWITHSHAAND3-KEYTRIPLEDES-CBC&lt;br /&gt;
            PBEWITHSHA1AND3-KEYTRIPLEDES-CBC&lt;br /&gt;
            RSA&lt;br /&gt;
            ELGAMAL&lt;br /&gt;
            PBEWITHSHA256AND128BITAES-CBC-BC&lt;br /&gt;
            RSA/RAW&lt;br /&gt;
            1.3.14.3.2.7&lt;br /&gt;
            PBEWITHSHA-256AND192BITAES-CBC-BC&lt;br /&gt;
            PBEWITHSHA1AND40BITRC4&lt;br /&gt;
            1.2.840.113549.3.4&lt;br /&gt;
            PBEWITHMD5AND128BITAES-CBC-OPENSSL&lt;br /&gt;
            BROKENPBEWITHSHAAND2-KEYTRIPLEDES-CBC&lt;br /&gt;
            PBEWITHSHAAND128BITAES-CBC-BC&lt;br /&gt;
            1.2.840.113549.1.1.1&lt;br /&gt;
            OLDPBEWITHSHAANDTWOFISH-CBC&lt;br /&gt;
            2.16.840.1.101.3.4.1.25&lt;br /&gt;
            1.3.6.1.4.1.188.7.1.1.2&lt;br /&gt;
            CAST6&lt;br /&gt;
            PBEWITHSHA1AND256BITAES-CBC-BC&lt;br /&gt;
            1.2.840.113549.3.2&lt;br /&gt;
            PBEWITHSHAANDIDEA-CBC&lt;br /&gt;
            AES&lt;br /&gt;
            PBEWITHMD5ANDDES&lt;br /&gt;
            GOST28147&lt;br /&gt;
KeyAgreeents:&lt;br /&gt;
            ECDH&lt;br /&gt;
            ECDHC&lt;br /&gt;
            DH&lt;br /&gt;
Macs:&lt;br /&gt;
            RC2MAC&lt;br /&gt;
            HMAC-MD2&lt;br /&gt;
            IDEAMAC/CFB8&lt;br /&gt;
            HMAC/SHA512&lt;br /&gt;
            HMACRIPEMD160&lt;br /&gt;
            RC5MAC&lt;br /&gt;
            HMAC-SHA384&lt;br /&gt;
            HMAC-MD4&lt;br /&gt;
            HMAC/SHA1&lt;br /&gt;
            DESEDEMAC64&lt;br /&gt;
            HMAC-SHA1&lt;br /&gt;
            HMAC-RIPEMD128&lt;br /&gt;
            HMAC-SHA512&lt;br /&gt;
            HMAC/RIPEMD128&lt;br /&gt;
            GOST28147MAC&lt;br /&gt;
            PBEWITHHMACRIPEMD160&lt;br /&gt;
            PBEWITHHMACSHA1&lt;br /&gt;
            RC2MAC/CFB8&lt;br /&gt;
            DESEDE64&lt;br /&gt;
            HMACMD4&lt;br /&gt;
            PBEWITHHMACSHA&lt;br /&gt;
            SKIPJACKMAC&lt;br /&gt;
            IDEA&lt;br /&gt;
            SKIPJACK/CFB8&lt;br /&gt;
            HMAC/MD2&lt;br /&gt;
            HMAC/MD5&lt;br /&gt;
            RC5/CFB8&lt;br /&gt;
            RC2/CFB8&lt;br /&gt;
            OLDHMACSHA512&lt;br /&gt;
            1.2.840.113549.2.10&lt;br /&gt;
            HMAC/SHA224&lt;br /&gt;
            DESWITHISO9797&lt;br /&gt;
            RC5&lt;br /&gt;
            DES/CFB8&lt;br /&gt;
            HMAC-MD5&lt;br /&gt;
            HMAC-SHA224&lt;br /&gt;
            HMACMD2&lt;br /&gt;
            HMACRIPEMD128&lt;br /&gt;
            ISO9797ALG3MAC&lt;br /&gt;
            RC2&lt;br /&gt;
            DESEDE/CFB8&lt;br /&gt;
            1.2.840.113549.2.9&lt;br /&gt;
            HMACSHA512&lt;br /&gt;
            DESEDE&lt;br /&gt;
            HMAC-SHA256&lt;br /&gt;
            HMACSHA384&lt;br /&gt;
            HMAC/Tiger&lt;br /&gt;
            HMAC-RIPEMD160&lt;br /&gt;
            IDEA/CFB8&lt;br /&gt;
            DESEDEMAC/CFB8&lt;br /&gt;
            1.3.14.3.2.26&lt;br /&gt;
            HMAC/MD4&lt;br /&gt;
            1.2.840.113549.2.7&lt;br /&gt;
            HMACMD5&lt;br /&gt;
            IDEAMAC&lt;br /&gt;
            HMACSHA256&lt;br /&gt;
            HMACTiger&lt;br /&gt;
            RC5MAC/CFB8&lt;br /&gt;
            HMAC/SHA384&lt;br /&gt;
            1.2.840.113549.2.8&lt;br /&gt;
            1.2.840.113549.2.11&lt;br /&gt;
            DESMAC/CFB8&lt;br /&gt;
            HMACSHA224&lt;br /&gt;
            DESMAC&lt;br /&gt;
            ISO9797ALG3&lt;br /&gt;
            HMAC/SHA256&lt;br /&gt;
            DESEDEMAC&lt;br /&gt;
            OLDHMACSHA384&lt;br /&gt;
            SKIPJACKMAC/CFB8&lt;br /&gt;
            HMAC/RIPEMD160&lt;br /&gt;
            HMAC-Tiger&lt;br /&gt;
            HMACSHA1&lt;br /&gt;
            SKIPJACK&lt;br /&gt;
            DESISO9797MAC&lt;br /&gt;
            DES&lt;br /&gt;
MessageDigests:&lt;br /&gt;
            1.3.36.3.2.2&lt;br /&gt;
            RIPEMD320&lt;br /&gt;
            SHA224&lt;br /&gt;
            1.2.840.113549.2.2&lt;br /&gt;
            SHA384&lt;br /&gt;
            SHA ImplementedIn&lt;br /&gt;
            GOST&lt;br /&gt;
            1.3.36.3.2.1&lt;br /&gt;
            MD5&lt;br /&gt;
            1.2.840.113549.2.4&lt;br /&gt;
            SHA256&lt;br /&gt;
            SHA-512&lt;br /&gt;
            1.3.36.3.2.3&lt;br /&gt;
            RIPEMD128&lt;br /&gt;
            MD2&lt;br /&gt;
            1.3.14.3.2.26&lt;br /&gt;
            RIPEMD256&lt;br /&gt;
            SHA-256&lt;br /&gt;
            GOST3411&lt;br /&gt;
            MD5 ImplementedIn&lt;br /&gt;
            WHIRLPOOL&lt;br /&gt;
            1.2.643.2.2.9&lt;br /&gt;
            SHA1&lt;br /&gt;
            SHA-224&lt;br /&gt;
            MD4&lt;br /&gt;
            2.16.840.1.101.3.4.2.3&lt;br /&gt;
            2.16.840.1.101.3.4.2.1&lt;br /&gt;
            1.2.840.113549.2.5&lt;br /&gt;
            RIPEMD160&lt;br /&gt;
            SHA-1&lt;br /&gt;
            2.16.840.1.101.3.4.2.4&lt;br /&gt;
            SHA&lt;br /&gt;
            Tiger&lt;br /&gt;
            SHA512&lt;br /&gt;
            GOST-3411&lt;br /&gt;
            SHA-384&lt;br /&gt;
            2.16.840.1.101.3.4.2.2&lt;br /&gt;
Signatures:&lt;br /&gt;
            SHA384withRSA&lt;br /&gt;
            SHA1withRSAEncryption&lt;br /&gt;
            NONEwithDSA SupportedKeyClasses&lt;br /&gt;
            RIPEMD160withRSA&lt;br /&gt;
            GOST-3410&lt;br /&gt;
            SHA224withRSAandMGF1&lt;br /&gt;
            SHA256WITHECDSA&lt;br /&gt;
            SHA224withRSA&lt;br /&gt;
            SHA512WITHECDSA&lt;br /&gt;
            SHA1WithRSAEncryption&lt;br /&gt;
            MD4WithRSAEncryption&lt;br /&gt;
            1.2.840.113549.1.1.4&lt;br /&gt;
            MD2WITHRSAENCRYPTION&lt;br /&gt;
            ECDSAwithSHA1&lt;br /&gt;
            MD5andSHA1withRSA&lt;br /&gt;
            GOST3411WithECGOST3410&lt;br /&gt;
            SHA1withRSAandMGF1&lt;br /&gt;
            SHA1withRSA/ISO9796-2&lt;br /&gt;
            SHA256withRSA&lt;br /&gt;
            1.2.643.2.2.3&lt;br /&gt;
            SHA1WITHRSA&lt;br /&gt;
            SHA256withRSAandMGF1&lt;br /&gt;
            GOST3411WITHECGOST3410&lt;br /&gt;
            RawDSA&lt;br /&gt;
            GOST-3410-94&lt;br /&gt;
            RIPEMD128WithRSAEncryption&lt;br /&gt;
            SHA384WITHRSAENCRYPTION&lt;br /&gt;
            1.3.14.3.2.26with1.2.840.113549.1.1.1&lt;br /&gt;
            SHA-1/DSA&lt;br /&gt;
            MD2withRSAEncryption&lt;br /&gt;
            RIPEMD160withRSAEncryption&lt;br /&gt;
            RIPEMD160WITHRSAENCRYPTION&lt;br /&gt;
            SHA1WithRSA&lt;br /&gt;
            SHA1WithECDSA&lt;br /&gt;
            1.3.14.3.2.29&lt;br /&gt;
            SHA224withRSAEncryption&lt;br /&gt;
            SHA/DSA&lt;br /&gt;
            SHA1withDSA KeySize&lt;br /&gt;
            SHA512WithRSA&lt;br /&gt;
            SHA1WITHDSA&lt;br /&gt;
            SHA512WithRSAEncryption&lt;br /&gt;
            SHA256WITHRSAENCRYPTION&lt;br /&gt;
            GOST3411withECGOST3410&lt;br /&gt;
            SHA512withRSA/PSS&lt;br /&gt;
            RIPEMD160WithRSAEncryption&lt;br /&gt;
            MD5WITHRSAENCRYPTION&lt;br /&gt;
            RIPEMD160WithRSA/ISO9796-2&lt;br /&gt;
            SHA384withRSA SupportedKeyClasses&lt;br /&gt;
            GOST3410&lt;br /&gt;
            SHA256WITHECNR&lt;br /&gt;
            MD5withRSA/ISO9796-2&lt;br /&gt;
            SHA1withRSA&lt;br /&gt;
            SHA256WithRSAEncryption&lt;br /&gt;
            SHA1withRSA/PSS&lt;br /&gt;
            SHA384withRSAEncryption&lt;br /&gt;
            1.3.14.3.2.26with1.2.840.113549.1.1.5&lt;br /&gt;
            ECDSAWITHSHA1&lt;br /&gt;
            RMD160WITHRSA&lt;br /&gt;
            NONEwithDSA&lt;br /&gt;
            1.2.840.113549.1.1.11&lt;br /&gt;
            RIPEMD256WithRSAEncryption&lt;br /&gt;
            SHA256withRSAEncryption&lt;br /&gt;
            1.2.840.10040.4.3&lt;br /&gt;
            SHA512withRSAEncryption&lt;br /&gt;
            1.2.840.113549.1.1.3&lt;br /&gt;
            SHA384WithRSAEncryption&lt;br /&gt;
            SHA224withRSA/PSS&lt;br /&gt;
            1.2.840.113549.1.1.12&lt;br /&gt;
            MD4withRSA&lt;br /&gt;
            MD5WITHRSA&lt;br /&gt;
            RAWDSA&lt;br /&gt;
            1.2.643.2.2.4&lt;br /&gt;
            RMD160/RSA&lt;br /&gt;
            1.3.14.3.2.13&lt;br /&gt;
            ECGOST-3410&lt;br /&gt;
            DSAWithSHA1&lt;br /&gt;
            1.2.840.113549.1.1.13&lt;br /&gt;
            OID.1.3.14.3.2.29&lt;br /&gt;
            RIPEMD160withRSA/ISO9796-2&lt;br /&gt;
            1.2.840.10045.4.1&lt;br /&gt;
            SHA256withRSA SupportedKeyClasses&lt;br /&gt;
            RIPEMD256WithRSA&lt;br /&gt;
            1.2.840.113549.1.1.5&lt;br /&gt;
            SHA384withRSAandMGF1&lt;br /&gt;
            SHA1withRSA SupportedKeyClasses&lt;br /&gt;
            SHA1/RSA&lt;br /&gt;
            GOST3411WITHGOST3410&lt;br /&gt;
            SHA224WithRSA&lt;br /&gt;
            SHA512withRSAandMGF1&lt;br /&gt;
            SHA1WithDSA&lt;br /&gt;
            SHA1WITHECNR&lt;br /&gt;
            OID.1.2.840.113549.1.1.5&lt;br /&gt;
            SHA512withRSA&lt;br /&gt;
            ECDSA&lt;br /&gt;
            SHA512WITHRSAENCRYPTION&lt;br /&gt;
            OID.1.2.840.113549.1.1.11&lt;br /&gt;
            MD4withRSAEncryption&lt;br /&gt;
            MD2WithRSA&lt;br /&gt;
            RIPEMD160WithRSA&lt;br /&gt;
            SHA1WithRSA/ISO9796-2&lt;br /&gt;
            MD5withRSA SupportedKeyClasses&lt;br /&gt;
            MD4WithRSA&lt;br /&gt;
            DSAwithSHA1&lt;br /&gt;
            RIPEMD160WITHRSA&lt;br /&gt;
            RSASSA-PSS&lt;br /&gt;
            GOST3411WithGOST3410&lt;br /&gt;
            OID.1.2.840.113549.1.1.13&lt;br /&gt;
            MD5WithRSAEncryption&lt;br /&gt;
            1.3.36.3.3.1.4&lt;br /&gt;
            1.2.840.113549.1.1.14&lt;br /&gt;
            MD2withRSA SupportedKeyClasses&lt;br /&gt;
            1.2.840.113549.1.1.2&lt;br /&gt;
            MD2withRSA&lt;br /&gt;
            SHA384WITHECNR&lt;br /&gt;
            SHAwithDSA&lt;br /&gt;
            MD4/RSA&lt;br /&gt;
            RIPEMD256withRSA&lt;br /&gt;
            DSA&lt;br /&gt;
            SHA-1/RSA&lt;br /&gt;
            1.2.840.113549.2.5with1.2.840.113549.1.1.1&lt;br /&gt;
            SHA384WITHECDSA&lt;br /&gt;
            OID.1.2.840.113549.1.1.12&lt;br /&gt;
            OID.1.2.840.113549.1.1.2&lt;br /&gt;
            1.3.36.3.3.1.3&lt;br /&gt;
            1.2.840.113549.1.1.10&lt;br /&gt;
            OID.1.2.840.10040.4.3&lt;br /&gt;
            OID.1.2.840.113549.1.1.4&lt;br /&gt;
            SHA512withRSA SupportedKeyClasses&lt;br /&gt;
            MD5WithRSA/ISO9796-2&lt;br /&gt;
            GOST3411withGOST3410&lt;br /&gt;
            SHA224WITHECDSA&lt;br /&gt;
            MD5withRSAEncryption&lt;br /&gt;
            MD5withRSA&lt;br /&gt;
            DSS&lt;br /&gt;
            SHA224WithRSAEncryption&lt;br /&gt;
            ECDSAWithSHA1&lt;br /&gt;
            1.3.36.3.3.1.2&lt;br /&gt;
            RIPEMD128withRSA&lt;br /&gt;
            SHA384withRSA/PSS&lt;br /&gt;
            SHA1WITHECDSA&lt;br /&gt;
            1.3.14.3.2.26with1.2.840.10040.4.3&lt;br /&gt;
            SHA1WITHRSAENCRYPTION&lt;br /&gt;
            MD2/RSA&lt;br /&gt;
            RIPEMD-160/RSA&lt;br /&gt;
            RMD160withRSA&lt;br /&gt;
            SHA512WITHECNR&lt;br /&gt;
            1.3.14.3.2.27&lt;br /&gt;
            MD5WithRSA&lt;br /&gt;
            MD2WithRSAEncryption&lt;br /&gt;
            MD5/RSA&lt;br /&gt;
            DSAWITHSHA1&lt;br /&gt;
            SHA1withDSA&lt;br /&gt;
            SHA384WithRSA&lt;br /&gt;
            1.3.14.3.2.26with1.2.840.10040.4.1&lt;br /&gt;
            SHA256withRSA/PSS&lt;br /&gt;
            SHA1/DSA&lt;br /&gt;
            NONEWITHDSA&lt;br /&gt;
            SHA1withDSA ImplementedIn&lt;br /&gt;
            SHA1withDSA SupportedKeyClasses&lt;br /&gt;
            SHA256WithRSA&lt;br /&gt;
            ECGOST3410&lt;br /&gt;
            RIPEMD128WithRSA&lt;br /&gt;
            GOST-3410-2001&lt;br /&gt;
            SHA224WITHECNR&lt;br /&gt;
            SHA1withECDSA&lt;br /&gt;
*/       &lt;br /&gt;
import java.security.Provider;&lt;br /&gt;
import java.security.Security;&lt;br /&gt;
import java.util.HashSet;&lt;br /&gt;
import java.util.Iterator;&lt;br /&gt;
import java.util.Set;&lt;br /&gt;
public class ListAlgorithms {&lt;br /&gt;
  public static void printSet(String setName, Set algorithms) {&lt;br /&gt;
    System.out.println(setName + &amp;quot;:&amp;quot;);&lt;br /&gt;
    if (algorithms.isEmpty()) {&lt;br /&gt;
      System.out.println(&amp;quot;            None available.&amp;quot;);&lt;br /&gt;
    } else {&lt;br /&gt;
      Iterator it = algorithms.iterator();&lt;br /&gt;
      while (it.hasNext()) {&lt;br /&gt;
        String name = (String) it.next();&lt;br /&gt;
        System.out.println(&amp;quot;            &amp;quot; + name);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());&lt;br /&gt;
    Provider[] providers = Security.getProviders();&lt;br /&gt;
    Set&amp;lt;String&amp;gt; ciphers = new HashSet&amp;lt;String&amp;gt;();&lt;br /&gt;
    Set&amp;lt;String&amp;gt; keyAgreements = new HashSet&amp;lt;String&amp;gt;();&lt;br /&gt;
    Set&amp;lt;String&amp;gt; macs = new HashSet&amp;lt;String&amp;gt;();&lt;br /&gt;
    Set&amp;lt;String&amp;gt; messageDigests = new HashSet&amp;lt;String&amp;gt;();&lt;br /&gt;
    Set&amp;lt;String&amp;gt; signatures = new HashSet&amp;lt;String&amp;gt;();&lt;br /&gt;
    Set&amp;lt;String&amp;gt; keyFactory = new HashSet&amp;lt;String&amp;gt;();&lt;br /&gt;
    Set&amp;lt;String&amp;gt; keyPairGenerator = new HashSet&amp;lt;String&amp;gt;();&lt;br /&gt;
    Set&amp;lt;String&amp;gt; keyGenerator = new HashSet&amp;lt;String&amp;gt;();&lt;br /&gt;
    for (int i = 0; i != providers.length; i++) {&lt;br /&gt;
      Iterator it = providers[i].keySet().iterator();&lt;br /&gt;
      while (it.hasNext()) {&lt;br /&gt;
        String entry = (String) it.next();&lt;br /&gt;
        if (entry.startsWith(&amp;quot;Alg.Alias.&amp;quot;)) {&lt;br /&gt;
          entry = entry.substring(&amp;quot;Alg.Alias.&amp;quot;.length());&lt;br /&gt;
        }&lt;br /&gt;
        if (entry.startsWith(&amp;quot;Cipher.&amp;quot;)) {&lt;br /&gt;
          ciphers.add(entry.substring(&amp;quot;Cipher.&amp;quot;.length()));&lt;br /&gt;
        } else if (entry.startsWith(&amp;quot;KeyAgreement.&amp;quot;)) {&lt;br /&gt;
          keyAgreements.add(entry.substring(&amp;quot;KeyAgreement.&amp;quot;.length()));&lt;br /&gt;
        } else if (entry.startsWith(&amp;quot;Mac.&amp;quot;)) {&lt;br /&gt;
          macs.add(entry.substring(&amp;quot;Mac.&amp;quot;.length()));&lt;br /&gt;
        } else if (entry.startsWith(&amp;quot;MessageDigest.&amp;quot;)) {&lt;br /&gt;
          messageDigests.add(entry.substring(&amp;quot;MessageDigest.&amp;quot;.length()));&lt;br /&gt;
        } else if (entry.startsWith(&amp;quot;Signature.&amp;quot;)) {&lt;br /&gt;
          signatures.add(entry.substring(&amp;quot;Signature.&amp;quot;.length()));&lt;br /&gt;
        } else if (entry.startsWith(&amp;quot;KeyPairGenerator.&amp;quot;)) {&lt;br /&gt;
          keyPairGenerator.add(entry.substring(&amp;quot;KeyPairGenerator.&amp;quot;.length()));&lt;br /&gt;
        } else if (entry.startsWith(&amp;quot;KeyFactory.&amp;quot;)) {&lt;br /&gt;
          keyFactory.add(entry.substring(&amp;quot;KeyFactory.&amp;quot;.length()));&lt;br /&gt;
        } else if (entry.startsWith(&amp;quot;KeyGenerator.&amp;quot;)) {&lt;br /&gt;
          keyGenerator.add(entry.substring(&amp;quot;KeyGenerator.&amp;quot;.length()));&lt;br /&gt;
        } else {&lt;br /&gt;
          System.out.println(entry);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    printSet(&amp;quot;KeyGenerator&amp;quot;, keyGenerator);&lt;br /&gt;
    printSet(&amp;quot;KeyFactory&amp;quot;, keyFactory);&lt;br /&gt;
    printSet(&amp;quot;KeyPairGenerator&amp;quot;, keyPairGenerator);&lt;br /&gt;
    printSet(&amp;quot;Ciphers&amp;quot;, ciphers);&lt;br /&gt;
    printSet(&amp;quot;KeyAgreeents&amp;quot;, keyAgreements);&lt;br /&gt;
    printSet(&amp;quot;Macs&amp;quot;, macs);&lt;br /&gt;
    printSet(&amp;quot;MessageDigests&amp;quot;, messageDigests);&lt;br /&gt;
    printSet(&amp;quot;Signatures&amp;quot;, signatures);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;/div&gt;</summary>
			</entry>

	</feed>