1diff -Naur bcpkix-jdk15on-147.orig/org/bouncycastle/cms/CMSSignedGenerator.java bcpkix-jdk15on-147/org/bouncycastle/cms/CMSSignedGenerator.java
2--- bcpkix-jdk15on-147.orig/org/bouncycastle/cms/CMSSignedGenerator.java	2012-03-20 22:55:58.000000000 +0000
3+++ bcpkix-jdk15on-147/org/bouncycastle/cms/CMSSignedGenerator.java	2012-09-19 21:25:32.000000000 +0000
4@@ -22,7 +22,9 @@
5 import org.bouncycastle.asn1.DERTaggedObject;
6 import org.bouncycastle.asn1.cms.AttributeTable;
7 import org.bouncycastle.asn1.cms.CMSObjectIdentifiers;
8-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
9+// BEGIN android-removed
10+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
11+// END android-removed
12 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers;
13 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers;
14 import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers;
15@@ -30,7 +32,9 @@
16 import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
17 import org.bouncycastle.asn1.x509.AttributeCertificate;
18 import org.bouncycastle.asn1.x9.X9ObjectIdentifiers;
19-import org.bouncycastle.jce.interfaces.GOST3410PrivateKey;
20+// BEGIN android-removed
21+// import org.bouncycastle.jce.interfaces.GOST3410PrivateKey;
22+// END android-removed
23 import org.bouncycastle.util.Store;
24 import org.bouncycastle.x509.X509AttributeCertificate;
25 import org.bouncycastle.x509.X509Store;
26@@ -43,25 +47,33 @@
27     public static final String  DATA = CMSObjectIdentifiers.data.getId();
28     
29     public static final String  DIGEST_SHA1 = OIWObjectIdentifiers.idSHA1.getId();
30-    public static final String  DIGEST_SHA224 = NISTObjectIdentifiers.id_sha224.getId();
31+    // BEGIN android-removed
32+    // public static final String  DIGEST_SHA224 = NISTObjectIdentifiers.id_sha224.getId();
33+    // END android-removed
34     public static final String  DIGEST_SHA256 = NISTObjectIdentifiers.id_sha256.getId();
35     public static final String  DIGEST_SHA384 = NISTObjectIdentifiers.id_sha384.getId();
36     public static final String  DIGEST_SHA512 = NISTObjectIdentifiers.id_sha512.getId();
37     public static final String  DIGEST_MD5 = PKCSObjectIdentifiers.md5.getId();
38-    public static final String  DIGEST_GOST3411 = CryptoProObjectIdentifiers.gostR3411.getId();
39-    public static final String  DIGEST_RIPEMD128 = TeleTrusTObjectIdentifiers.ripemd128.getId();
40-    public static final String  DIGEST_RIPEMD160 = TeleTrusTObjectIdentifiers.ripemd160.getId();
41-    public static final String  DIGEST_RIPEMD256 = TeleTrusTObjectIdentifiers.ripemd256.getId();
42+    // BEGIN android-removed
43+    // public static final String  DIGEST_GOST3411 = CryptoProObjectIdentifiers.gostR3411.getId();
44+    // public static final String  DIGEST_RIPEMD128 = TeleTrusTObjectIdentifiers.ripemd128.getId();
45+    // public static final String  DIGEST_RIPEMD160 = TeleTrusTObjectIdentifiers.ripemd160.getId();
46+    // public static final String  DIGEST_RIPEMD256 = TeleTrusTObjectIdentifiers.ripemd256.getId();
47+    // END android-removed
48 
49     public static final String  ENCRYPTION_RSA = PKCSObjectIdentifiers.rsaEncryption.getId();
50     public static final String  ENCRYPTION_DSA = X9ObjectIdentifiers.id_dsa_with_sha1.getId();
51     public static final String  ENCRYPTION_ECDSA = X9ObjectIdentifiers.ecdsa_with_SHA1.getId();
52     public static final String  ENCRYPTION_RSA_PSS = PKCSObjectIdentifiers.id_RSASSA_PSS.getId();
53-    public static final String  ENCRYPTION_GOST3410 = CryptoProObjectIdentifiers.gostR3410_94.getId();
54-    public static final String  ENCRYPTION_ECGOST3410 = CryptoProObjectIdentifiers.gostR3410_2001.getId();
55+    // BEGIN android-removed
56+    // public static final String  ENCRYPTION_GOST3410 = CryptoProObjectIdentifiers.gostR3410_94.getId();
57+    // public static final String  ENCRYPTION_ECGOST3410 = CryptoProObjectIdentifiers.gostR3410_2001.getId();
58+    // END android-removed
59 
60     private static final String  ENCRYPTION_ECDSA_WITH_SHA1 = X9ObjectIdentifiers.ecdsa_with_SHA1.getId();
61-    private static final String  ENCRYPTION_ECDSA_WITH_SHA224 = X9ObjectIdentifiers.ecdsa_with_SHA224.getId();
62+    // BEGIN android-removed
63+    // private static final String  ENCRYPTION_ECDSA_WITH_SHA224 = X9ObjectIdentifiers.ecdsa_with_SHA224.getId();
64+    // END android-removed
65     private static final String  ENCRYPTION_ECDSA_WITH_SHA256 = X9ObjectIdentifiers.ecdsa_with_SHA256.getId();
66     private static final String  ENCRYPTION_ECDSA_WITH_SHA384 = X9ObjectIdentifiers.ecdsa_with_SHA384.getId();
67     private static final String  ENCRYPTION_ECDSA_WITH_SHA512 = X9ObjectIdentifiers.ecdsa_with_SHA512.getId();
68@@ -74,13 +86,17 @@
69         NO_PARAMS.add(ENCRYPTION_DSA);
70         NO_PARAMS.add(ENCRYPTION_ECDSA);
71         NO_PARAMS.add(ENCRYPTION_ECDSA_WITH_SHA1);
72-        NO_PARAMS.add(ENCRYPTION_ECDSA_WITH_SHA224);
73+        // BEGIN android-removed
74+        // NO_PARAMS.add(ENCRYPTION_ECDSA_WITH_SHA224);
75+        // END android-removed
76         NO_PARAMS.add(ENCRYPTION_ECDSA_WITH_SHA256);
77         NO_PARAMS.add(ENCRYPTION_ECDSA_WITH_SHA384);
78         NO_PARAMS.add(ENCRYPTION_ECDSA_WITH_SHA512);
79 
80         EC_ALGORITHMS.put(DIGEST_SHA1, ENCRYPTION_ECDSA_WITH_SHA1);
81-        EC_ALGORITHMS.put(DIGEST_SHA224, ENCRYPTION_ECDSA_WITH_SHA224);
82+        // BEGIN android-removed
83+        // EC_ALGORITHMS.put(DIGEST_SHA224, ENCRYPTION_ECDSA_WITH_SHA224);
84+        // END android-removed
85         EC_ALGORITHMS.put(DIGEST_SHA256, ENCRYPTION_ECDSA_WITH_SHA256);
86         EC_ALGORITHMS.put(DIGEST_SHA384, ENCRYPTION_ECDSA_WITH_SHA384);
87         EC_ALGORITHMS.put(DIGEST_SHA512, ENCRYPTION_ECDSA_WITH_SHA512);
88@@ -138,14 +154,16 @@
89                 throw new IllegalArgumentException("can't mix ECDSA with anything but SHA family digests");
90             }
91         }
92-        else if (key instanceof GOST3410PrivateKey || "GOST3410".equalsIgnoreCase(key.getAlgorithm()))
93-        {
94-            encOID = ENCRYPTION_GOST3410;
95-        }
96-        else if ("ECGOST3410".equalsIgnoreCase(key.getAlgorithm()))
97-        {
98-            encOID = ENCRYPTION_ECGOST3410;
99-        }
100+        // BEGIN android-removed
101+        // else if (key instanceof GOST3410PrivateKey || "GOST3410".equalsIgnoreCase(key.getAlgorithm()))
102+        // {
103+        //     encOID = ENCRYPTION_GOST3410;
104+        // }
105+        // else if ("ECGOST3410".equalsIgnoreCase(key.getAlgorithm()))
106+        // {
107+        //     encOID = ENCRYPTION_ECGOST3410;
108+        // }
109+        // END android-removed
110         
111         return encOID;
112     }
113diff -Naur bcpkix-jdk15on-147.orig/org/bouncycastle/cms/CMSSignedHelper.java bcpkix-jdk15on-147/org/bouncycastle/cms/CMSSignedHelper.java
114--- bcpkix-jdk15on-147.orig/org/bouncycastle/cms/CMSSignedHelper.java	2012-03-20 22:55:58.000000000 +0000
115+++ bcpkix-jdk15on-147/org/bouncycastle/cms/CMSSignedHelper.java	2012-09-19 21:25:32.000000000 +0000
116@@ -23,7 +23,9 @@
117 import org.bouncycastle.asn1.ASN1TaggedObject;
118 import org.bouncycastle.asn1.DERNull;
119 import org.bouncycastle.asn1.DERObjectIdentifier;
120-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
121+// BEGIN android-removed
122+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
123+// END android-removed
124 import org.bouncycastle.asn1.eac.EACObjectIdentifiers;
125 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers;
126 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers;
127@@ -53,31 +55,43 @@
128 
129     static
130     {
131-        addEntries(NISTObjectIdentifiers.dsa_with_sha224, "SHA224", "DSA");
132+        // BEGIN android-removed
133+        // addEntries(NISTObjectIdentifiers.dsa_with_sha224, "SHA224", "DSA");
134+        // END android-removed
135         addEntries(NISTObjectIdentifiers.dsa_with_sha256, "SHA256", "DSA");
136         addEntries(NISTObjectIdentifiers.dsa_with_sha384, "SHA384", "DSA");
137         addEntries(NISTObjectIdentifiers.dsa_with_sha512, "SHA512", "DSA");
138         addEntries(OIWObjectIdentifiers.dsaWithSHA1, "SHA1", "DSA");
139-        addEntries(OIWObjectIdentifiers.md4WithRSA, "MD4", "RSA");
140-        addEntries(OIWObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA");
141+        // BEGIN android-removed
142+        // addEntries(OIWObjectIdentifiers.md4WithRSA, "MD4", "RSA");
143+        // addEntries(OIWObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA");
144+        // END android-removed
145         addEntries(OIWObjectIdentifiers.md5WithRSA, "MD5", "RSA");
146         addEntries(OIWObjectIdentifiers.sha1WithRSA, "SHA1", "RSA");
147-        addEntries(PKCSObjectIdentifiers.md2WithRSAEncryption, "MD2", "RSA");
148-        addEntries(PKCSObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA");
149+        // BEGIN android-removed
150+        // addEntries(PKCSObjectIdentifiers.md2WithRSAEncryption, "MD2", "RSA");
151+        // addEntries(PKCSObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA");
152+        // END android-removed
153         addEntries(PKCSObjectIdentifiers.md5WithRSAEncryption, "MD5", "RSA");
154         addEntries(PKCSObjectIdentifiers.sha1WithRSAEncryption, "SHA1", "RSA");
155-        addEntries(PKCSObjectIdentifiers.sha224WithRSAEncryption, "SHA224", "RSA");
156+        // BEGIN android-removed
157+        // addEntries(PKCSObjectIdentifiers.sha224WithRSAEncryption, "SHA224", "RSA");
158+        // END android-removed
159         addEntries(PKCSObjectIdentifiers.sha256WithRSAEncryption, "SHA256", "RSA");
160         addEntries(PKCSObjectIdentifiers.sha384WithRSAEncryption, "SHA384", "RSA");
161         addEntries(PKCSObjectIdentifiers.sha512WithRSAEncryption, "SHA512", "RSA");
162         addEntries(X9ObjectIdentifiers.ecdsa_with_SHA1, "SHA1", "ECDSA");
163-        addEntries(X9ObjectIdentifiers.ecdsa_with_SHA224, "SHA224", "ECDSA");
164+        // BEGIN android-removed
165+        // addEntries(X9ObjectIdentifiers.ecdsa_with_SHA224, "SHA224", "ECDSA");
166+        // END android-removed
167         addEntries(X9ObjectIdentifiers.ecdsa_with_SHA256, "SHA256", "ECDSA");
168         addEntries(X9ObjectIdentifiers.ecdsa_with_SHA384, "SHA384", "ECDSA");
169         addEntries(X9ObjectIdentifiers.ecdsa_with_SHA512, "SHA512", "ECDSA");
170         addEntries(X9ObjectIdentifiers.id_dsa_with_sha1, "SHA1", "DSA");
171         addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_1, "SHA1", "ECDSA");
172-        addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_224, "SHA224", "ECDSA");
173+        // BEGIN android-removed
174+        // addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_224, "SHA224", "ECDSA");
175+        // END android-removed
176         addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_256, "SHA256", "ECDSA");
177         addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_384, "SHA384", "ECDSA");
178         addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_512, "SHA512", "ECDSA");
179@@ -90,30 +104,38 @@
180         encryptionAlgs.put(PKCSObjectIdentifiers.rsaEncryption.getId(), "RSA");
181         encryptionAlgs.put(TeleTrusTObjectIdentifiers.teleTrusTRSAsignatureAlgorithm, "RSA");
182         encryptionAlgs.put(X509ObjectIdentifiers.id_ea_rsa.getId(), "RSA");
183-        encryptionAlgs.put(CMSSignedDataGenerator.ENCRYPTION_RSA_PSS, "RSAandMGF1");
184-        encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_94.getId(), "GOST3410");
185-        encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_2001.getId(), "ECGOST3410");
186-        encryptionAlgs.put("1.3.6.1.4.1.5849.1.6.2", "ECGOST3410");
187-        encryptionAlgs.put("1.3.6.1.4.1.5849.1.1.5", "GOST3410");
188-        encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001.getId(), "ECGOST3410");
189-        encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94.getId(), "GOST3410");
190-
191-        digestAlgs.put(PKCSObjectIdentifiers.md2.getId(), "MD2");
192-        digestAlgs.put(PKCSObjectIdentifiers.md4.getId(), "MD4");
193+        // BEGIN android-removed
194+        // encryptionAlgs.put(CMSSignedDataGenerator.ENCRYPTION_RSA_PSS, "RSAandMGF1");
195+        // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_94.getId(), "GOST3410");
196+        // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_2001.getId(), "ECGOST3410");
197+        // encryptionAlgs.put("1.3.6.1.4.1.5849.1.6.2", "ECGOST3410");
198+        // encryptionAlgs.put("1.3.6.1.4.1.5849.1.1.5", "GOST3410");
199+        // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001.getId(), "ECGOST3410");
200+        // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94.getId(), "GOST3410");
201+        //
202+        // digestAlgs.put(PKCSObjectIdentifiers.md2.getId(), "MD2");
203+        // digestAlgs.put(PKCSObjectIdentifiers.md4.getId(), "MD4");
204+        // END android-removed
205         digestAlgs.put(PKCSObjectIdentifiers.md5.getId(), "MD5");
206         digestAlgs.put(OIWObjectIdentifiers.idSHA1.getId(), "SHA1");
207-        digestAlgs.put(NISTObjectIdentifiers.id_sha224.getId(), "SHA224");
208+        // BEGIN android-removed
209+        // digestAlgs.put(NISTObjectIdentifiers.id_sha224.getId(), "SHA224");
210+        // END android-removed
211         digestAlgs.put(NISTObjectIdentifiers.id_sha256.getId(), "SHA256");
212         digestAlgs.put(NISTObjectIdentifiers.id_sha384.getId(), "SHA384");
213         digestAlgs.put(NISTObjectIdentifiers.id_sha512.getId(), "SHA512");
214-        digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd128.getId(), "RIPEMD128");
215-        digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd160.getId(), "RIPEMD160");
216-        digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd256.getId(), "RIPEMD256");
217-        digestAlgs.put(CryptoProObjectIdentifiers.gostR3411.getId(),  "GOST3411");
218-        digestAlgs.put("1.3.6.1.4.1.5849.1.2.1",  "GOST3411");
219+        // BEGIN android-removed
220+        // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd128.getId(), "RIPEMD128");
221+        // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd160.getId(), "RIPEMD160");
222+        // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd256.getId(), "RIPEMD256");
223+        // digestAlgs.put(CryptoProObjectIdentifiers.gostR3411.getId(),  "GOST3411");
224+        // digestAlgs.put("1.3.6.1.4.1.5849.1.2.1",  "GOST3411");
225+        // END android-removed
226 
227         digestAliases.put("SHA1", new String[] { "SHA-1" });
228-        digestAliases.put("SHA224", new String[] { "SHA-224" });
229+        // BEGIN android-removed
230+        // digestAliases.put("SHA224", new String[] { "SHA-224" });
231+        // END android-removed
232         digestAliases.put("SHA256", new String[] { "SHA-256" });
233         digestAliases.put("SHA384", new String[] { "SHA-384" });
234         digestAliases.put("SHA512", new String[] { "SHA-512" });
235diff -Naur bcpkix-jdk15on-147.orig/org/bouncycastle/cms/DefaultCMSSignatureAlgorithmNameGenerator.java bcpkix-jdk15on-147/org/bouncycastle/cms/DefaultCMSSignatureAlgorithmNameGenerator.java
236--- bcpkix-jdk15on-147.orig/org/bouncycastle/cms/DefaultCMSSignatureAlgorithmNameGenerator.java	2012-03-20 22:55:58.000000000 +0000
237+++ bcpkix-jdk15on-147/org/bouncycastle/cms/DefaultCMSSignatureAlgorithmNameGenerator.java	2012-09-19 21:25:32.000000000 +0000
238@@ -4,7 +4,9 @@
239 import java.util.Map;
240 
241 import org.bouncycastle.asn1.ASN1ObjectIdentifier;
242-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
243+// BEGIN android-removed
244+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
245+// END android-removed
246 import org.bouncycastle.asn1.eac.EACObjectIdentifiers;
247 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers;
248 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers;
249@@ -28,31 +30,43 @@
250 
251     public DefaultCMSSignatureAlgorithmNameGenerator()
252     {
253-        addEntries(NISTObjectIdentifiers.dsa_with_sha224, "SHA224", "DSA");
254+        // BEGIN android-removed
255+        // addEntries(NISTObjectIdentifiers.dsa_with_sha224, "SHA224", "DSA");
256+        // END android-removed
257         addEntries(NISTObjectIdentifiers.dsa_with_sha256, "SHA256", "DSA");
258         addEntries(NISTObjectIdentifiers.dsa_with_sha384, "SHA384", "DSA");
259         addEntries(NISTObjectIdentifiers.dsa_with_sha512, "SHA512", "DSA");
260         addEntries(OIWObjectIdentifiers.dsaWithSHA1, "SHA1", "DSA");
261-        addEntries(OIWObjectIdentifiers.md4WithRSA, "MD4", "RSA");
262-        addEntries(OIWObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA");
263+        // BEGIN android-removed
264+        // addEntries(OIWObjectIdentifiers.md4WithRSA, "MD4", "RSA");
265+        // addEntries(OIWObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA");
266+        // END android-removed
267         addEntries(OIWObjectIdentifiers.md5WithRSA, "MD5", "RSA");
268         addEntries(OIWObjectIdentifiers.sha1WithRSA, "SHA1", "RSA");
269-        addEntries(PKCSObjectIdentifiers.md2WithRSAEncryption, "MD2", "RSA");
270-        addEntries(PKCSObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA");
271+        // BEGIN android-removed
272+        // addEntries(PKCSObjectIdentifiers.md2WithRSAEncryption, "MD2", "RSA");
273+        // addEntries(PKCSObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA");
274+        // END android-removed
275         addEntries(PKCSObjectIdentifiers.md5WithRSAEncryption, "MD5", "RSA");
276         addEntries(PKCSObjectIdentifiers.sha1WithRSAEncryption, "SHA1", "RSA");
277-        addEntries(PKCSObjectIdentifiers.sha224WithRSAEncryption, "SHA224", "RSA");
278+        // BEGIN android-removed
279+        // addEntries(PKCSObjectIdentifiers.sha224WithRSAEncryption, "SHA224", "RSA");
280+        // END android-removed
281         addEntries(PKCSObjectIdentifiers.sha256WithRSAEncryption, "SHA256", "RSA");
282         addEntries(PKCSObjectIdentifiers.sha384WithRSAEncryption, "SHA384", "RSA");
283         addEntries(PKCSObjectIdentifiers.sha512WithRSAEncryption, "SHA512", "RSA");
284         addEntries(X9ObjectIdentifiers.ecdsa_with_SHA1, "SHA1", "ECDSA");
285-        addEntries(X9ObjectIdentifiers.ecdsa_with_SHA224, "SHA224", "ECDSA");
286+        // BEGIN android-removed
287+        // addEntries(X9ObjectIdentifiers.ecdsa_with_SHA224, "SHA224", "ECDSA");
288+        // END android-removed
289         addEntries(X9ObjectIdentifiers.ecdsa_with_SHA256, "SHA256", "ECDSA");
290         addEntries(X9ObjectIdentifiers.ecdsa_with_SHA384, "SHA384", "ECDSA");
291         addEntries(X9ObjectIdentifiers.ecdsa_with_SHA512, "SHA512", "ECDSA");
292         addEntries(X9ObjectIdentifiers.id_dsa_with_sha1, "SHA1", "DSA");
293         addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_1, "SHA1", "ECDSA");
294-        addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_224, "SHA224", "ECDSA");
295+        // BEGIN android-removed
296+        // addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_224, "SHA224", "ECDSA");
297+        // END android-removed
298         addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_256, "SHA256", "ECDSA");
299         addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_384, "SHA384", "ECDSA");
300         addEntries(EACObjectIdentifiers.id_TA_ECDSA_SHA_512, "SHA512", "ECDSA");
301@@ -66,26 +80,32 @@
302         encryptionAlgs.put(TeleTrusTObjectIdentifiers.teleTrusTRSAsignatureAlgorithm, "RSA");
303         encryptionAlgs.put(X509ObjectIdentifiers.id_ea_rsa, "RSA");
304         encryptionAlgs.put(PKCSObjectIdentifiers.id_RSASSA_PSS, "RSAandMGF1");
305-        encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_94, "GOST3410");
306-        encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_2001, "ECGOST3410");
307-        encryptionAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.6.2"), "ECGOST3410");
308-        encryptionAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.1.5"), "GOST3410");
309-        encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, "ECGOST3410");
310-        encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, "GOST3410");
311-
312-        digestAlgs.put(PKCSObjectIdentifiers.md2, "MD2");
313-        digestAlgs.put(PKCSObjectIdentifiers.md4, "MD4");
314+        // BEGIN android-removed
315+        // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_94, "GOST3410");
316+        // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_2001, "ECGOST3410");
317+        // encryptionAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.6.2"), "ECGOST3410");
318+        // encryptionAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.1.5"), "GOST3410");
319+        // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, "ECGOST3410");
320+        // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, "GOST3410");
321+        //
322+        // digestAlgs.put(PKCSObjectIdentifiers.md2, "MD2");
323+        // digestAlgs.put(PKCSObjectIdentifiers.md4, "MD4");
324+        // END android-removed
325         digestAlgs.put(PKCSObjectIdentifiers.md5, "MD5");
326         digestAlgs.put(OIWObjectIdentifiers.idSHA1, "SHA1");
327-        digestAlgs.put(NISTObjectIdentifiers.id_sha224, "SHA224");
328+        // BEGIN android-removed
329+        // digestAlgs.put(NISTObjectIdentifiers.id_sha224, "SHA224");
330+        // END android-removed
331         digestAlgs.put(NISTObjectIdentifiers.id_sha256, "SHA256");
332         digestAlgs.put(NISTObjectIdentifiers.id_sha384, "SHA384");
333         digestAlgs.put(NISTObjectIdentifiers.id_sha512, "SHA512");
334-        digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd128, "RIPEMD128");
335-        digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd160, "RIPEMD160");
336-        digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd256, "RIPEMD256");
337-        digestAlgs.put(CryptoProObjectIdentifiers.gostR3411,  "GOST3411");
338-        digestAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.2.1"),  "GOST3411");
339+        // BEGIN android-removed
340+        // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd128, "RIPEMD128");
341+        // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd160, "RIPEMD160");
342+        // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd256, "RIPEMD256");
343+        // digestAlgs.put(CryptoProObjectIdentifiers.gostR3411,  "GOST3411");
344+        // digestAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.2.1"),  "GOST3411");
345+        // END android-removed
346     }
347 
348     /**
349diff -Naur bcpkix-jdk15on-147.orig/org/bouncycastle/cms/DefaultCMSSignatureEncryptionAlgorithmFinder.java bcpkix-jdk15on-147/org/bouncycastle/cms/DefaultCMSSignatureEncryptionAlgorithmFinder.java
350--- bcpkix-jdk15on-147.orig/org/bouncycastle/cms/DefaultCMSSignatureEncryptionAlgorithmFinder.java	2012-03-20 22:55:58.000000000 +0000
351+++ bcpkix-jdk15on-147/org/bouncycastle/cms/DefaultCMSSignatureEncryptionAlgorithmFinder.java	2012-09-19 21:25:32.000000000 +0000
352@@ -16,21 +16,29 @@
353 
354     static
355     {
356-        RSA_PKCS1d5.add(PKCSObjectIdentifiers.md2WithRSAEncryption);
357-        RSA_PKCS1d5.add(PKCSObjectIdentifiers.md4WithRSAEncryption);
358+        // BEGIN android-removed
359+        // RSA_PKCS1d5.add(PKCSObjectIdentifiers.md2WithRSAEncryption);
360+        // RSA_PKCS1d5.add(PKCSObjectIdentifiers.md4WithRSAEncryption);
361+        // END android-removed
362         RSA_PKCS1d5.add(PKCSObjectIdentifiers.md5WithRSAEncryption);
363         RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha1WithRSAEncryption);
364-        RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha224WithRSAEncryption);
365+        // BEGIN android-removed
366+        // RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha224WithRSAEncryption);
367+        // END android-removed
368         RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha256WithRSAEncryption);
369         RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha384WithRSAEncryption);
370         RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha512WithRSAEncryption);
371-        RSA_PKCS1d5.add(OIWObjectIdentifiers.md4WithRSAEncryption);
372-        RSA_PKCS1d5.add(OIWObjectIdentifiers.md4WithRSA);
373+        // BEGIN android-removed
374+        // RSA_PKCS1d5.add(OIWObjectIdentifiers.md4WithRSAEncryption);
375+        // RSA_PKCS1d5.add(OIWObjectIdentifiers.md4WithRSA);
376+        // END android-removed
377         RSA_PKCS1d5.add(OIWObjectIdentifiers.md5WithRSA);
378         RSA_PKCS1d5.add(OIWObjectIdentifiers.sha1WithRSA);
379-        RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128);
380-        RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160);
381-        RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256);
382+        // BEGIN android-removed
383+        // RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128);
384+        // RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160);
385+        // RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256);
386+        // END android-removed
387     }
388 
389     public AlgorithmIdentifier findEncryptionAlgorithm(AlgorithmIdentifier signatureAlgorithm)
390diff -Naur bcpkix-jdk15on-147.orig/org/bouncycastle/operator/DefaultDigestAlgorithmIdentifierFinder.java bcpkix-jdk15on-147/org/bouncycastle/operator/DefaultDigestAlgorithmIdentifierFinder.java
391--- bcpkix-jdk15on-147.orig/org/bouncycastle/operator/DefaultDigestAlgorithmIdentifierFinder.java	2012-03-20 22:55:58.000000000 +0000
392+++ bcpkix-jdk15on-147/org/bouncycastle/operator/DefaultDigestAlgorithmIdentifierFinder.java	2012-09-19 21:25:32.000000000 +0000
393@@ -5,7 +5,9 @@
394 
395 import org.bouncycastle.asn1.ASN1ObjectIdentifier;
396 import org.bouncycastle.asn1.DERNull;
397-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
398+// BEGIN android-removed
399+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
400+// END android-removed
401 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers;
402 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers;
403 import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers;
404@@ -25,53 +27,71 @@
405         //
406         // digests
407         //
408-        digestOids.put(OIWObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4);
409-        digestOids.put(OIWObjectIdentifiers.md4WithRSA, PKCSObjectIdentifiers.md4);
410+        // BEGIN android-removed
411+        // digestOids.put(OIWObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4);
412+        // digestOids.put(OIWObjectIdentifiers.md4WithRSA, PKCSObjectIdentifiers.md4);
413+        // END android-removed
414         digestOids.put(OIWObjectIdentifiers.sha1WithRSA, OIWObjectIdentifiers.idSHA1);
415 
416-        digestOids.put(PKCSObjectIdentifiers.sha224WithRSAEncryption, NISTObjectIdentifiers.id_sha224);
417+        // BEGIN android-removed
418+        // digestOids.put(PKCSObjectIdentifiers.sha224WithRSAEncryption, NISTObjectIdentifiers.id_sha224);
419+        // END android-removed
420         digestOids.put(PKCSObjectIdentifiers.sha256WithRSAEncryption, NISTObjectIdentifiers.id_sha256);
421         digestOids.put(PKCSObjectIdentifiers.sha384WithRSAEncryption, NISTObjectIdentifiers.id_sha384);
422         digestOids.put(PKCSObjectIdentifiers.sha512WithRSAEncryption, NISTObjectIdentifiers.id_sha512);
423-        digestOids.put(PKCSObjectIdentifiers.md2WithRSAEncryption, PKCSObjectIdentifiers.md2);
424-        digestOids.put(PKCSObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4);
425+        // BEGIN android-removed
426+        // digestOids.put(PKCSObjectIdentifiers.md2WithRSAEncryption, PKCSObjectIdentifiers.md2);
427+        // digestOids.put(PKCSObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4);
428+        // END android-removed
429         digestOids.put(PKCSObjectIdentifiers.md5WithRSAEncryption, PKCSObjectIdentifiers.md5);
430         digestOids.put(PKCSObjectIdentifiers.sha1WithRSAEncryption, OIWObjectIdentifiers.idSHA1);
431 
432         digestOids.put(X9ObjectIdentifiers.ecdsa_with_SHA1, OIWObjectIdentifiers.idSHA1);
433-        digestOids.put(X9ObjectIdentifiers.ecdsa_with_SHA224, NISTObjectIdentifiers.id_sha224);
434+        // BEGIN android-removed
435+        // digestOids.put(X9ObjectIdentifiers.ecdsa_with_SHA224, NISTObjectIdentifiers.id_sha224);
436+        // END android-removed
437         digestOids.put(X9ObjectIdentifiers.ecdsa_with_SHA256, NISTObjectIdentifiers.id_sha256);
438         digestOids.put(X9ObjectIdentifiers.ecdsa_with_SHA384, NISTObjectIdentifiers.id_sha384);
439         digestOids.put(X9ObjectIdentifiers.ecdsa_with_SHA512, NISTObjectIdentifiers.id_sha512);
440         digestOids.put(X9ObjectIdentifiers.id_dsa_with_sha1, OIWObjectIdentifiers.idSHA1);
441 
442-        digestOids.put(NISTObjectIdentifiers.dsa_with_sha224, NISTObjectIdentifiers.id_sha224);
443+        // BEGIN android-removed
444+        // digestOids.put(NISTObjectIdentifiers.dsa_with_sha224, NISTObjectIdentifiers.id_sha224);
445+        // END android-removed
446         digestOids.put(NISTObjectIdentifiers.dsa_with_sha256, NISTObjectIdentifiers.id_sha256);
447         digestOids.put(NISTObjectIdentifiers.dsa_with_sha384, NISTObjectIdentifiers.id_sha384);
448         digestOids.put(NISTObjectIdentifiers.dsa_with_sha512, NISTObjectIdentifiers.id_sha512);
449 
450-        digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128, TeleTrusTObjectIdentifiers.ripemd128);
451-        digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160, TeleTrusTObjectIdentifiers.ripemd160);
452-        digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256, TeleTrusTObjectIdentifiers.ripemd256);
453-
454-        digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, CryptoProObjectIdentifiers.gostR3411);
455-        digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, CryptoProObjectIdentifiers.gostR3411);
456+        // BEGIN android-removed
457+        // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128, TeleTrusTObjectIdentifiers.ripemd128);
458+        // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160, TeleTrusTObjectIdentifiers.ripemd160);
459+        // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256, TeleTrusTObjectIdentifiers.ripemd256);
460+        //
461+        // digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, CryptoProObjectIdentifiers.gostR3411);
462+        // digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, CryptoProObjectIdentifiers.gostR3411);
463+        // END android-removed
464 
465         digestNameToOids.put("SHA-1", OIWObjectIdentifiers.idSHA1);
466-        digestNameToOids.put("SHA-224", NISTObjectIdentifiers.id_sha224);
467+        // BEGIN android-removed
468+        // digestNameToOids.put("SHA-224", NISTObjectIdentifiers.id_sha224);
469+        // END android-removed
470         digestNameToOids.put("SHA-256", NISTObjectIdentifiers.id_sha256);
471         digestNameToOids.put("SHA-384", NISTObjectIdentifiers.id_sha384);
472         digestNameToOids.put("SHA-512", NISTObjectIdentifiers.id_sha512);
473 
474-        digestNameToOids.put("GOST3411", CryptoProObjectIdentifiers.gostR3411);
475-
476-        digestNameToOids.put("MD2", PKCSObjectIdentifiers.md2);
477-        digestNameToOids.put("MD4", PKCSObjectIdentifiers.md4);
478+        // BEGIN android-removed
479+        // digestNameToOids.put("GOST3411", CryptoProObjectIdentifiers.gostR3411);
480+        //
481+        // digestNameToOids.put("MD2", PKCSObjectIdentifiers.md2);
482+        // digestNameToOids.put("MD4", PKCSObjectIdentifiers.md4);
483+        // END android-removed
484         digestNameToOids.put("MD5", PKCSObjectIdentifiers.md5);
485 
486-        digestNameToOids.put("RIPEMD128", TeleTrusTObjectIdentifiers.ripemd128);
487-        digestNameToOids.put("RIPEMD160", TeleTrusTObjectIdentifiers.ripemd160);
488-        digestNameToOids.put("RIPEMD256", TeleTrusTObjectIdentifiers.ripemd256);
489+        // BEGIN android-removed
490+        // digestNameToOids.put("RIPEMD128", TeleTrusTObjectIdentifiers.ripemd128);
491+        // digestNameToOids.put("RIPEMD160", TeleTrusTObjectIdentifiers.ripemd160);
492+        // digestNameToOids.put("RIPEMD256", TeleTrusTObjectIdentifiers.ripemd256);
493+        // END android-removed
494     }
495 
496     public AlgorithmIdentifier find(AlgorithmIdentifier sigAlgId)
497@@ -84,7 +104,9 @@
498         }
499         else
500         {
501-            digAlgId = new AlgorithmIdentifier((ASN1ObjectIdentifier)digestOids.get(sigAlgId.getAlgorithm()), new DERNull());
502+            // BEGIN android-changed
503+            digAlgId = new AlgorithmIdentifier((ASN1ObjectIdentifier)digestOids.get(sigAlgId.getAlgorithm()), DERNull.INSTANCE);
504+            // END android-changed
505         }
506 
507         return digAlgId;
508@@ -92,6 +114,8 @@
509 
510     public AlgorithmIdentifier find(String digAlgName)
511     {
512-        return new AlgorithmIdentifier((ASN1ObjectIdentifier)digestNameToOids.get(digAlgName), new DERNull());
513+        // BEGIN android-changed
514+        return new AlgorithmIdentifier((ASN1ObjectIdentifier)digestNameToOids.get(digAlgName), DERNull.INSTANCE);
515+        // END android-changed
516     }
517-}
518\ No newline at end of file
519+}
520diff -Naur bcpkix-jdk15on-147.orig/org/bouncycastle/operator/DefaultSignatureAlgorithmIdentifierFinder.java bcpkix-jdk15on-147/org/bouncycastle/operator/DefaultSignatureAlgorithmIdentifierFinder.java
521--- bcpkix-jdk15on-147.orig/org/bouncycastle/operator/DefaultSignatureAlgorithmIdentifierFinder.java	2012-03-20 22:55:58.000000000 +0000
522+++ bcpkix-jdk15on-147/org/bouncycastle/operator/DefaultSignatureAlgorithmIdentifierFinder.java	2012-09-19 21:25:32.000000000 +0000
523@@ -9,7 +9,9 @@
524 import org.bouncycastle.asn1.ASN1Integer;
525 import org.bouncycastle.asn1.ASN1ObjectIdentifier;
526 import org.bouncycastle.asn1.DERNull;
527-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
528+// BEGIN android-removed
529+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
530+// END android-removed
531 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers;
532 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers;
533 import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers;
534@@ -32,19 +34,25 @@
535     private static final ASN1ObjectIdentifier ENCRYPTION_DSA = X9ObjectIdentifiers.id_dsa_with_sha1;
536     private static final ASN1ObjectIdentifier ENCRYPTION_ECDSA = X9ObjectIdentifiers.ecdsa_with_SHA1;
537     private static final ASN1ObjectIdentifier ENCRYPTION_RSA_PSS = PKCSObjectIdentifiers.id_RSASSA_PSS;
538-    private static final ASN1ObjectIdentifier ENCRYPTION_GOST3410 = CryptoProObjectIdentifiers.gostR3410_94;
539-    private static final ASN1ObjectIdentifier ENCRYPTION_ECGOST3410 = CryptoProObjectIdentifiers.gostR3410_2001;
540+    // BEGIN android-removed
541+    // private static final ASN1ObjectIdentifier ENCRYPTION_GOST3410 = CryptoProObjectIdentifiers.gostR3410_94;
542+    // private static final ASN1ObjectIdentifier ENCRYPTION_ECGOST3410 = CryptoProObjectIdentifiers.gostR3410_2001;
543+    // END android-removed
544 
545     static
546     {
547-        algorithms.put("MD2WITHRSAENCRYPTION", PKCSObjectIdentifiers.md2WithRSAEncryption);
548-        algorithms.put("MD2WITHRSA", PKCSObjectIdentifiers.md2WithRSAEncryption);
549+        // BEGIN android-removed
550+        // algorithms.put("MD2WITHRSAENCRYPTION", PKCSObjectIdentifiers.md2WithRSAEncryption);
551+        // algorithms.put("MD2WITHRSA", PKCSObjectIdentifiers.md2WithRSAEncryption);
552+        // END android-removed
553         algorithms.put("MD5WITHRSAENCRYPTION", PKCSObjectIdentifiers.md5WithRSAEncryption);
554         algorithms.put("MD5WITHRSA", PKCSObjectIdentifiers.md5WithRSAEncryption);
555         algorithms.put("SHA1WITHRSAENCRYPTION", PKCSObjectIdentifiers.sha1WithRSAEncryption);
556         algorithms.put("SHA1WITHRSA", PKCSObjectIdentifiers.sha1WithRSAEncryption);
557-        algorithms.put("SHA224WITHRSAENCRYPTION", PKCSObjectIdentifiers.sha224WithRSAEncryption);
558-        algorithms.put("SHA224WITHRSA", PKCSObjectIdentifiers.sha224WithRSAEncryption);
559+        // BEGIN android-removed
560+        // algorithms.put("SHA224WITHRSAENCRYPTION", PKCSObjectIdentifiers.sha224WithRSAEncryption);
561+        // algorithms.put("SHA224WITHRSA", PKCSObjectIdentifiers.sha224WithRSAEncryption);
562+        // END android-removed
563         algorithms.put("SHA256WITHRSAENCRYPTION", PKCSObjectIdentifiers.sha256WithRSAEncryption);
564         algorithms.put("SHA256WITHRSA", PKCSObjectIdentifiers.sha256WithRSAEncryption);
565         algorithms.put("SHA384WITHRSAENCRYPTION", PKCSObjectIdentifiers.sha384WithRSAEncryption);
566@@ -52,45 +60,59 @@
567         algorithms.put("SHA512WITHRSAENCRYPTION", PKCSObjectIdentifiers.sha512WithRSAEncryption);
568         algorithms.put("SHA512WITHRSA", PKCSObjectIdentifiers.sha512WithRSAEncryption);
569         algorithms.put("SHA1WITHRSAANDMGF1", PKCSObjectIdentifiers.id_RSASSA_PSS);
570-        algorithms.put("SHA224WITHRSAANDMGF1", PKCSObjectIdentifiers.id_RSASSA_PSS);
571+        // BEGIN android-removed
572+        // algorithms.put("SHA224WITHRSAANDMGF1", PKCSObjectIdentifiers.id_RSASSA_PSS);
573+        // END android-removed
574         algorithms.put("SHA256WITHRSAANDMGF1", PKCSObjectIdentifiers.id_RSASSA_PSS);
575         algorithms.put("SHA384WITHRSAANDMGF1", PKCSObjectIdentifiers.id_RSASSA_PSS);
576         algorithms.put("SHA512WITHRSAANDMGF1", PKCSObjectIdentifiers.id_RSASSA_PSS);
577-        algorithms.put("RIPEMD160WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160);
578-        algorithms.put("RIPEMD160WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160);
579-        algorithms.put("RIPEMD128WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128);
580-        algorithms.put("RIPEMD128WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128);
581-        algorithms.put("RIPEMD256WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256);
582-        algorithms.put("RIPEMD256WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256);
583+        // BEGIN android-removed
584+        // algorithms.put("RIPEMD160WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160);
585+        // algorithms.put("RIPEMD160WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160);
586+        // algorithms.put("RIPEMD128WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128);
587+        // algorithms.put("RIPEMD128WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128);
588+        // algorithms.put("RIPEMD256WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256);
589+        // algorithms.put("RIPEMD256WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256);
590+        // END android-removed
591         algorithms.put("SHA1WITHDSA", X9ObjectIdentifiers.id_dsa_with_sha1);
592         algorithms.put("DSAWITHSHA1", X9ObjectIdentifiers.id_dsa_with_sha1);
593-        algorithms.put("SHA224WITHDSA", NISTObjectIdentifiers.dsa_with_sha224);
594+        // BEGIN android-removed
595+        // algorithms.put("SHA224WITHDSA", NISTObjectIdentifiers.dsa_with_sha224);
596+        // END android-removed
597         algorithms.put("SHA256WITHDSA", NISTObjectIdentifiers.dsa_with_sha256);
598         algorithms.put("SHA384WITHDSA", NISTObjectIdentifiers.dsa_with_sha384);
599         algorithms.put("SHA512WITHDSA", NISTObjectIdentifiers.dsa_with_sha512);
600         algorithms.put("SHA1WITHECDSA", X9ObjectIdentifiers.ecdsa_with_SHA1);
601         algorithms.put("ECDSAWITHSHA1", X9ObjectIdentifiers.ecdsa_with_SHA1);
602-        algorithms.put("SHA224WITHECDSA", X9ObjectIdentifiers.ecdsa_with_SHA224);
603+        // BEGIN android-removed
604+        // algorithms.put("SHA224WITHECDSA", X9ObjectIdentifiers.ecdsa_with_SHA224);
605+        // END android-removed
606         algorithms.put("SHA256WITHECDSA", X9ObjectIdentifiers.ecdsa_with_SHA256);
607         algorithms.put("SHA384WITHECDSA", X9ObjectIdentifiers.ecdsa_with_SHA384);
608         algorithms.put("SHA512WITHECDSA", X9ObjectIdentifiers.ecdsa_with_SHA512);
609-        algorithms.put("GOST3411WITHGOST3410", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94);
610-        algorithms.put("GOST3411WITHGOST3410-94", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94);
611-        algorithms.put("GOST3411WITHECGOST3410", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001);
612-        algorithms.put("GOST3411WITHECGOST3410-2001", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001);
613-        algorithms.put("GOST3411WITHGOST3410-2001", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001);
614+        // BEGIN android-removed
615+        // algorithms.put("GOST3411WITHGOST3410", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94);
616+        // algorithms.put("GOST3411WITHGOST3410-94", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94);
617+        // algorithms.put("GOST3411WITHECGOST3410", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001);
618+        // algorithms.put("GOST3411WITHECGOST3410-2001", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001);
619+        // algorithms.put("GOST3411WITHGOST3410-2001", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001);
620+        // END android-removed
621                
622         //
623         // According to RFC 3279, the ASN.1 encoding SHALL (id-dsa-with-sha1) or MUST (ecdsa-with-SHA*) omit the parameters field.
624         // The parameters field SHALL be NULL for RSA based signature algorithms.
625         //
626         noParams.add(X9ObjectIdentifiers.ecdsa_with_SHA1);
627-        noParams.add(X9ObjectIdentifiers.ecdsa_with_SHA224);
628+        // BEGIN android-removed
629+        // noParams.add(X9ObjectIdentifiers.ecdsa_with_SHA224);
630+        // END android-removed
631         noParams.add(X9ObjectIdentifiers.ecdsa_with_SHA256);
632         noParams.add(X9ObjectIdentifiers.ecdsa_with_SHA384);
633         noParams.add(X9ObjectIdentifiers.ecdsa_with_SHA512);
634         noParams.add(X9ObjectIdentifiers.id_dsa_with_sha1);
635-        noParams.add(NISTObjectIdentifiers.dsa_with_sha224);
636+        // BEGIN android-removed
637+        // noParams.add(NISTObjectIdentifiers.dsa_with_sha224);
638+        // END android-removed
639         noParams.add(NISTObjectIdentifiers.dsa_with_sha256);
640         noParams.add(NISTObjectIdentifiers.dsa_with_sha384);
641         noParams.add(NISTObjectIdentifiers.dsa_with_sha512);
642@@ -98,55 +120,79 @@
643         //
644         // RFC 4491
645         //
646-        noParams.add(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94);
647-        noParams.add(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001);
648+        // BEGIN android-removed
649+        // noParams.add(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94);
650+        // noParams.add(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001);
651+        // END android-removed
652 
653         //
654         // PKCS 1.5 encrypted  algorithms
655         //
656         pkcs15RsaEncryption.add(PKCSObjectIdentifiers.sha1WithRSAEncryption);
657-        pkcs15RsaEncryption.add(PKCSObjectIdentifiers.sha224WithRSAEncryption);
658+        // BEGIN android-removed
659+        // pkcs15RsaEncryption.add(PKCSObjectIdentifiers.sha224WithRSAEncryption);
660+        // END android-removed
661         pkcs15RsaEncryption.add(PKCSObjectIdentifiers.sha256WithRSAEncryption);
662         pkcs15RsaEncryption.add(PKCSObjectIdentifiers.sha384WithRSAEncryption);
663         pkcs15RsaEncryption.add(PKCSObjectIdentifiers.sha512WithRSAEncryption);
664-        pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128);
665-        pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160);
666-        pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256);
667+        // BEGIN android-removed
668+        // pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128);
669+        // pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160);
670+        // pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256);
671+        // END android-removed
672 
673         //
674         // explicit params
675         //
676-        AlgorithmIdentifier sha1AlgId = new AlgorithmIdentifier(OIWObjectIdentifiers.idSHA1, new DERNull());
677+        // BEGIN android-changed
678+        AlgorithmIdentifier sha1AlgId = new AlgorithmIdentifier(OIWObjectIdentifiers.idSHA1, DERNull.INSTANCE);
679+        // END android-changed
680         params.put("SHA1WITHRSAANDMGF1", createPSSParams(sha1AlgId, 20));
681 
682-        AlgorithmIdentifier sha224AlgId = new AlgorithmIdentifier(NISTObjectIdentifiers.id_sha224, new DERNull());
683-        params.put("SHA224WITHRSAANDMGF1", createPSSParams(sha224AlgId, 28));
684-
685-        AlgorithmIdentifier sha256AlgId = new AlgorithmIdentifier(NISTObjectIdentifiers.id_sha256, new DERNull());
686+        // BEGIN android-removed
687+        // // BEGIN android-changed
688+        // AlgorithmIdentifier sha224AlgId = new AlgorithmIdentifier(NISTObjectIdentifiers.id_sha224, DERNull.INSTANCE);
689+        // // END android-changed
690+        // params.put("SHA224WITHRSAANDMGF1", createPSSParams(sha224AlgId, 28));
691+        // END android-removed
692+
693+        // BEGIN android-changed
694+        AlgorithmIdentifier sha256AlgId = new AlgorithmIdentifier(NISTObjectIdentifiers.id_sha256, DERNull.INSTANCE);
695+        // END android-changed
696         params.put("SHA256WITHRSAANDMGF1", createPSSParams(sha256AlgId, 32));
697 
698-        AlgorithmIdentifier sha384AlgId = new AlgorithmIdentifier(NISTObjectIdentifiers.id_sha384, new DERNull());
699+        // BEGIN android-changed
700+        AlgorithmIdentifier sha384AlgId = new AlgorithmIdentifier(NISTObjectIdentifiers.id_sha384, DERNull.INSTANCE);
701+        // END android-changed
702         params.put("SHA384WITHRSAANDMGF1", createPSSParams(sha384AlgId, 48));
703 
704-        AlgorithmIdentifier sha512AlgId = new AlgorithmIdentifier(NISTObjectIdentifiers.id_sha512, new DERNull());
705+        // BEGIN android-changed
706+        AlgorithmIdentifier sha512AlgId = new AlgorithmIdentifier(NISTObjectIdentifiers.id_sha512, DERNull.INSTANCE);
707+        // END android-changed
708         params.put("SHA512WITHRSAANDMGF1", createPSSParams(sha512AlgId, 64));
709 
710         //
711         // digests
712         //
713-        digestOids.put(PKCSObjectIdentifiers.sha224WithRSAEncryption, NISTObjectIdentifiers.id_sha224);
714+        // BEGIN android-removed
715+        // digestOids.put(PKCSObjectIdentifiers.sha224WithRSAEncryption, NISTObjectIdentifiers.id_sha224);
716+        // END android-removed
717         digestOids.put(PKCSObjectIdentifiers.sha256WithRSAEncryption, NISTObjectIdentifiers.id_sha256);
718         digestOids.put(PKCSObjectIdentifiers.sha384WithRSAEncryption, NISTObjectIdentifiers.id_sha384);
719         digestOids.put(PKCSObjectIdentifiers.sha512WithRSAEncryption, NISTObjectIdentifiers.id_sha512);
720-        digestOids.put(PKCSObjectIdentifiers.md2WithRSAEncryption, PKCSObjectIdentifiers.md2);
721-        digestOids.put(PKCSObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4);
722+        // BEGIN android-removed
723+        // digestOids.put(PKCSObjectIdentifiers.md2WithRSAEncryption, PKCSObjectIdentifiers.md2);
724+        // digestOids.put(PKCSObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4);
725+        // END android-removed
726         digestOids.put(PKCSObjectIdentifiers.md5WithRSAEncryption, PKCSObjectIdentifiers.md5);
727         digestOids.put(PKCSObjectIdentifiers.sha1WithRSAEncryption, OIWObjectIdentifiers.idSHA1);
728-        digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128, TeleTrusTObjectIdentifiers.ripemd128);
729-        digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160, TeleTrusTObjectIdentifiers.ripemd160);
730-        digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256, TeleTrusTObjectIdentifiers.ripemd256);
731-        digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, CryptoProObjectIdentifiers.gostR3411);
732-        digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, CryptoProObjectIdentifiers.gostR3411);
733+        // BEGIN android-removed
734+        // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128, TeleTrusTObjectIdentifiers.ripemd128);
735+        // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160, TeleTrusTObjectIdentifiers.ripemd160);
736+        // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256, TeleTrusTObjectIdentifiers.ripemd256);
737+        // digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, CryptoProObjectIdentifiers.gostR3411);
738+        // digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, CryptoProObjectIdentifiers.gostR3411);
739+        // END android-removed
740     }
741 
742     private static AlgorithmIdentifier generate(String signatureAlgorithm)
743@@ -177,7 +223,9 @@
744 
745         if (pkcs15RsaEncryption.contains(sigOID))
746         {
747-            encAlgId = new AlgorithmIdentifier(PKCSObjectIdentifiers.rsaEncryption, new DERNull());
748+            // BEGIN android-changed
749+            encAlgId = new AlgorithmIdentifier(PKCSObjectIdentifiers.rsaEncryption, DERNull.INSTANCE);
750+            // END android-changed
751         }
752         else
753         {
754@@ -190,7 +238,9 @@
755         }
756         else
757         {
758-            digAlgId = new AlgorithmIdentifier((ASN1ObjectIdentifier)digestOids.get(sigOID), new DERNull());
759+            // BEGIN android-changed
760+            digAlgId = new AlgorithmIdentifier((ASN1ObjectIdentifier)digestOids.get(sigOID), DERNull.INSTANCE);
761+            // END android-changed
762         }
763 
764         return sigAlgId;
765@@ -209,4 +259,4 @@
766     {
767         return generate(sigAlgName);
768     }
769-}
770\ No newline at end of file
771+}
772diff -Naur bcpkix-jdk15on-147.orig/org/bouncycastle/operator/bc/BcUtil.java bcpkix-jdk15on-147/org/bouncycastle/operator/bc/BcUtil.java
773--- bcpkix-jdk15on-147.orig/org/bouncycastle/operator/bc/BcUtil.java	2012-03-20 22:55:58.000000000 +0000
774+++ bcpkix-jdk15on-147/org/bouncycastle/operator/bc/BcUtil.java	2012-09-19 21:25:32.000000000 +0000
775@@ -1,21 +1,29 @@
776 package org.bouncycastle.operator.bc;
777 
778-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
779+// BEGIN android-removed
780+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
781+// END android-removed
782 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers;
783 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers;
784 import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers;
785 import org.bouncycastle.asn1.teletrust.TeleTrusTObjectIdentifiers;
786 import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
787 import org.bouncycastle.crypto.Digest;
788-import org.bouncycastle.crypto.digests.GOST3411Digest;
789-import org.bouncycastle.crypto.digests.MD2Digest;
790-import org.bouncycastle.crypto.digests.MD4Digest;
791+// BEGIN android-removed
792+// import org.bouncycastle.crypto.digests.GOST3411Digest;
793+// import org.bouncycastle.crypto.digests.MD2Digest;
794+// import org.bouncycastle.crypto.digests.MD4Digest;
795+// END android-removed
796 import org.bouncycastle.crypto.digests.MD5Digest;
797-import org.bouncycastle.crypto.digests.RIPEMD128Digest;
798-import org.bouncycastle.crypto.digests.RIPEMD160Digest;
799-import org.bouncycastle.crypto.digests.RIPEMD256Digest;
800+// BEGIN android-removed
801+// import org.bouncycastle.crypto.digests.RIPEMD128Digest;
802+// import org.bouncycastle.crypto.digests.RIPEMD160Digest;
803+// import org.bouncycastle.crypto.digests.RIPEMD256Digest;
804+// END android-removed
805 import org.bouncycastle.crypto.digests.SHA1Digest;
806-import org.bouncycastle.crypto.digests.SHA224Digest;
807+// BEGIN android-removed
808+// import org.bouncycastle.crypto.digests.SHA224Digest;
809+// END android-removed
810 import org.bouncycastle.crypto.digests.SHA256Digest;
811 import org.bouncycastle.crypto.digests.SHA384Digest;
812 import org.bouncycastle.crypto.digests.SHA512Digest;
813@@ -32,10 +40,12 @@
814         {
815             dig = new SHA1Digest();
816         }
817-        else if (digAlg.getAlgorithm().equals(NISTObjectIdentifiers.id_sha224))
818-        {
819-            dig = new SHA224Digest();
820-        }
821+        // BEGIN android-removed
822+        // else if (digAlg.getAlgorithm().equals(NISTObjectIdentifiers.id_sha224))
823+        // {
824+        //     dig = new SHA224Digest();
825+        // }
826+        // END android-removed
827         else if (digAlg.getAlgorithm().equals(NISTObjectIdentifiers.id_sha256))
828         {
829             dig = new SHA256Digest();
830@@ -52,30 +62,32 @@
831         {
832             dig = new MD5Digest();
833         }
834-        else if (digAlg.getAlgorithm().equals(PKCSObjectIdentifiers.md4))
835-        {
836-            dig = new MD4Digest();
837-        }
838-        else if (digAlg.getAlgorithm().equals(PKCSObjectIdentifiers.md2))
839-        {
840-            dig = new MD2Digest();
841-        }
842-        else if (digAlg.getAlgorithm().equals(CryptoProObjectIdentifiers.gostR3411))
843-        {
844-            dig = new GOST3411Digest();
845-        }
846-        else if (digAlg.getAlgorithm().equals(TeleTrusTObjectIdentifiers.ripemd128))
847-        {
848-            dig = new RIPEMD128Digest();
849-        }
850-        else if (digAlg.getAlgorithm().equals(TeleTrusTObjectIdentifiers.ripemd160))
851-        {
852-            dig = new RIPEMD160Digest();
853-        }
854-        else if (digAlg.getAlgorithm().equals(TeleTrusTObjectIdentifiers.ripemd256))
855-        {
856-            dig = new RIPEMD256Digest();
857-        }
858+        // BEGIN android-removed
859+        // else if (digAlg.getAlgorithm().equals(PKCSObjectIdentifiers.md4))
860+        // {
861+        //     dig = new MD4Digest();
862+        // }
863+        // else if (digAlg.getAlgorithm().equals(PKCSObjectIdentifiers.md2))
864+        // {
865+        //     dig = new MD2Digest();
866+        // }
867+        // else if (digAlg.getAlgorithm().equals(CryptoProObjectIdentifiers.gostR3411))
868+        // {
869+        //     dig = new GOST3411Digest();
870+        // }
871+        // else if (digAlg.getAlgorithm().equals(TeleTrusTObjectIdentifiers.ripemd128))
872+        // {
873+        //     dig = new RIPEMD128Digest();
874+        // }
875+        // else if (digAlg.getAlgorithm().equals(TeleTrusTObjectIdentifiers.ripemd160))
876+        // {
877+        //     dig = new RIPEMD160Digest();
878+        // }
879+        // else if (digAlg.getAlgorithm().equals(TeleTrusTObjectIdentifiers.ripemd256))
880+        // {
881+        //     dig = new RIPEMD256Digest();
882+        // }
883+        // END android-removed
884         else
885         {
886             throw new OperatorCreationException("cannot recognise digest");
887diff -Naur bcpkix-jdk15on-147.orig/org/bouncycastle/operator/jcajce/OperatorHelper.java bcpkix-jdk15on-147/org/bouncycastle/operator/jcajce/OperatorHelper.java
888--- bcpkix-jdk15on-147.orig/org/bouncycastle/operator/jcajce/OperatorHelper.java	2012-03-20 22:55:58.000000000 +0000
889+++ bcpkix-jdk15on-147/org/bouncycastle/operator/jcajce/OperatorHelper.java	2012-09-19 21:25:32.000000000 +0000
890@@ -20,7 +20,9 @@
891 import org.bouncycastle.asn1.ASN1Encodable;
892 import org.bouncycastle.asn1.ASN1ObjectIdentifier;
893 import org.bouncycastle.asn1.DERNull;
894-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
895+// BEGIN android-removed
896+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers;
897+// END android-removed
898 import org.bouncycastle.asn1.kisa.KISAObjectIdentifiers;
899 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers;
900 import org.bouncycastle.asn1.ntt.NTTObjectIdentifiers;
901@@ -47,24 +49,34 @@
902         // reverse mappings
903         //
904         oids.put(new ASN1ObjectIdentifier("1.2.840.113549.1.1.5"), "SHA1WITHRSA");
905-        oids.put(PKCSObjectIdentifiers.sha224WithRSAEncryption, "SHA224WITHRSA");
906+        // BEGIN android-removed
907+        // oids.put(PKCSObjectIdentifiers.sha224WithRSAEncryption, "SHA224WITHRSA");
908+        // END android-removed
909         oids.put(PKCSObjectIdentifiers.sha256WithRSAEncryption, "SHA256WITHRSA");
910         oids.put(PKCSObjectIdentifiers.sha384WithRSAEncryption, "SHA384WITHRSA");
911         oids.put(PKCSObjectIdentifiers.sha512WithRSAEncryption, "SHA512WITHRSA");
912-        oids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, "GOST3411WITHGOST3410");
913-        oids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, "GOST3411WITHECGOST3410");
914+        // BEGIN android-removed
915+        // oids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, "GOST3411WITHGOST3410");
916+        // oids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, "GOST3411WITHECGOST3410");
917+        // END android-removed
918 
919         oids.put(new ASN1ObjectIdentifier("1.2.840.113549.1.1.4"), "MD5WITHRSA");
920-        oids.put(new ASN1ObjectIdentifier("1.2.840.113549.1.1.2"), "MD2WITHRSA");
921+        // BEGIN android-removed
922+        // oids.put(new ASN1ObjectIdentifier("1.2.840.113549.1.1.2"), "MD2WITHRSA");
923+        // END android-removed
924         oids.put(new ASN1ObjectIdentifier("1.2.840.10040.4.3"), "SHA1WITHDSA");
925         oids.put(X9ObjectIdentifiers.ecdsa_with_SHA1, "SHA1WITHECDSA");
926-        oids.put(X9ObjectIdentifiers.ecdsa_with_SHA224, "SHA224WITHECDSA");
927+        // BEGIN android-removed
928+        // oids.put(X9ObjectIdentifiers.ecdsa_with_SHA224, "SHA224WITHECDSA");
929+        // END android-removed
930         oids.put(X9ObjectIdentifiers.ecdsa_with_SHA256, "SHA256WITHECDSA");
931         oids.put(X9ObjectIdentifiers.ecdsa_with_SHA384, "SHA384WITHECDSA");
932         oids.put(X9ObjectIdentifiers.ecdsa_with_SHA512, "SHA512WITHECDSA");
933         oids.put(OIWObjectIdentifiers.sha1WithRSA, "SHA1WITHRSA");
934         oids.put(OIWObjectIdentifiers.dsaWithSHA1, "SHA1WITHDSA");
935-        oids.put(NISTObjectIdentifiers.dsa_with_sha224, "SHA224WITHDSA");
936+        // BEGIN android-removed
937+        // oids.put(NISTObjectIdentifiers.dsa_with_sha224, "SHA224WITHDSA");
938+        // END android-removed
939         oids.put(NISTObjectIdentifiers.dsa_with_sha256, "SHA256WITHDSA");
940 
941         asymmetricWrapperAlgNames.put(PKCSObjectIdentifiers.rsaEncryption, "RSA/ECB/PKCS1Padding");
942@@ -296,10 +308,12 @@
943         {
944             return "SHA1";
945         }
946-        else if (NISTObjectIdentifiers.id_sha224.equals(digestAlgOID))
947-        {
948-            return "SHA224";
949-        }
950+        // BEGIN android-removed
951+        // else if (NISTObjectIdentifiers.id_sha224.equals(digestAlgOID))
952+        // {
953+        //     return "SHA224";
954+        // }
955+        // END android-removed
956         else if (NISTObjectIdentifiers.id_sha256.equals(digestAlgOID))
957         {
958             return "SHA256";
959@@ -312,22 +326,24 @@
960         {
961             return "SHA512";
962         }
963-        else if (TeleTrusTObjectIdentifiers.ripemd128.equals(digestAlgOID))
964-        {
965-            return "RIPEMD128";
966-        }
967-        else if (TeleTrusTObjectIdentifiers.ripemd160.equals(digestAlgOID))
968-        {
969-            return "RIPEMD160";
970-        }
971-        else if (TeleTrusTObjectIdentifiers.ripemd256.equals(digestAlgOID))
972-        {
973-            return "RIPEMD256";
974-        }
975-        else if (CryptoProObjectIdentifiers.gostR3411.equals(digestAlgOID))
976-        {
977-            return "GOST3411";
978-        }
979+        // BEGIN android-removed
980+        // else if (TeleTrusTObjectIdentifiers.ripemd128.equals(digestAlgOID))
981+        // {
982+        //     return "RIPEMD128";
983+        // }
984+        // else if (TeleTrusTObjectIdentifiers.ripemd160.equals(digestAlgOID))
985+        // {
986+        //     return "RIPEMD160";
987+        // }
988+        // else if (TeleTrusTObjectIdentifiers.ripemd256.equals(digestAlgOID))
989+        // {
990+        //     return "RIPEMD256";
991+        // }
992+        // else if (CryptoProObjectIdentifiers.gostR3411.equals(digestAlgOID))
993+        // {
994+        //     return "GOST3411";
995+        // }
996+        // END android-removed
997         else
998         {
999             return digestAlgOID.getId();
1000