1diff -Naur bcpkix-jdk15on-152.orig/org/bouncycastle/cms/CMSSignedData.java bcpkix-jdk15on-152/org/bouncycastle/cms/CMSSignedData.java 2--- bcpkix-jdk15on-152.orig/org/bouncycastle/cms/CMSSignedData.java 2015-03-01 12:03:46.000000000 +0000 3+++ bcpkix-jdk15on-152/org/bouncycastle/cms/CMSSignedData.java 2015-04-09 13:10:16.000000000 +0000 4@@ -287,18 +287,20 @@ 5 return HELPER.getAttributeCertificates(signedData.getCertificates()); 6 } 7 8- /** 9- * Return any OtherRevocationInfo OtherRevInfo objects of the type indicated by otherRevocationInfoFormat in 10- * this SignedData structure. 11- * 12- * @param otherRevocationInfoFormat OID of the format type been looked for. 13- * 14- * @return a Store of ASN1Encodable objects representing any objects of otherRevocationInfoFormat found. 15- */ 16- public Store getOtherRevocationInfo(ASN1ObjectIdentifier otherRevocationInfoFormat) 17- { 18- return HELPER.getOtherRevocationInfo(otherRevocationInfoFormat, signedData.getCRLs()); 19- } 20+ // BEGIN android-removed 21+ // /** 22+ // * Return any OtherRevocationInfo OtherRevInfo objects of the type indicated by otherRevocationInfoFormat in 23+ // * this SignedData structure. 24+ // * 25+ // * @param otherRevocationInfoFormat OID of the format type been looked for. 26+ // * 27+ // * @return a Store of ASN1Encodable objects representing any objects of otherRevocationInfoFormat found. 28+ // */ 29+ // public Store getOtherRevocationInfo(ASN1ObjectIdentifier otherRevocationInfoFormat) 30+ // { 31+ // return HELPER.getOtherRevocationInfo(otherRevocationInfoFormat, signedData.getCRLs()); 32+ // } 33+ // END android-removed 34 35 /** 36 * Return the a string representation of the OID associated with the 37@@ -333,90 +335,92 @@ 38 return contentInfo.getEncoded(); 39 } 40 41- /** 42- * Verify all the SignerInformation objects and their associated counter signatures attached 43- * to this CMS SignedData object. 44- * 45- * @param verifierProvider a provider of SignerInformationVerifier objects. 46- * @return true if all verify, false otherwise. 47- * @throws CMSException if an exception occurs during the verification process. 48- */ 49- public boolean verifySignatures(SignerInformationVerifierProvider verifierProvider) 50- throws CMSException 51- { 52- return verifySignatures(verifierProvider, false); 53- } 54- 55- /** 56- * Verify all the SignerInformation objects and optionally their associated counter signatures attached 57- * to this CMS SignedData object. 58- * 59- * @param verifierProvider a provider of SignerInformationVerifier objects. 60- * @param ignoreCounterSignatures if true don't check counter signatures. If false check counter signatures as well. 61- * @return true if all verify, false otherwise. 62- * @throws CMSException if an exception occurs during the verification process. 63- */ 64- public boolean verifySignatures(SignerInformationVerifierProvider verifierProvider, boolean ignoreCounterSignatures) 65- throws CMSException 66- { 67- Collection signers = this.getSignerInfos().getSigners(); 68- 69- for (Iterator it = signers.iterator(); it.hasNext();) 70- { 71- SignerInformation signer = (SignerInformation)it.next(); 72- 73- try 74- { 75- SignerInformationVerifier verifier = verifierProvider.get(signer.getSID()); 76- 77- if (!signer.verify(verifier)) 78- { 79- return false; 80- } 81- 82- if (!ignoreCounterSignatures) 83- { 84- Collection counterSigners = signer.getCounterSignatures().getSigners(); 85- 86- for (Iterator cIt = counterSigners.iterator(); cIt.hasNext();) 87- { 88- if (!verifyCounterSignature((SignerInformation)cIt.next(), verifierProvider)) 89- { 90- return false; 91- } 92- } 93- } 94- } 95- catch (OperatorCreationException e) 96- { 97- throw new CMSException("failure in verifier provider: " + e.getMessage(), e); 98- } 99- } 100- 101- return true; 102- } 103- 104- private boolean verifyCounterSignature(SignerInformation counterSigner, SignerInformationVerifierProvider verifierProvider) 105- throws OperatorCreationException, CMSException 106- { 107- SignerInformationVerifier counterVerifier = verifierProvider.get(counterSigner.getSID()); 108- 109- if (!counterSigner.verify(counterVerifier)) 110- { 111- return false; 112- } 113- 114- Collection counterSigners = counterSigner.getCounterSignatures().getSigners(); 115- for (Iterator cIt = counterSigners.iterator(); cIt.hasNext();) 116- { 117- if (!verifyCounterSignature((SignerInformation)cIt.next(), verifierProvider)) 118- { 119- return false; 120- } 121- } 122- 123- return true; 124- } 125+ // BEGIN android-removed 126+ // /** 127+ // * Verify all the SignerInformation objects and their associated counter signatures attached 128+ // * to this CMS SignedData object. 129+ // * 130+ // * @param verifierProvider a provider of SignerInformationVerifier objects. 131+ // * @return true if all verify, false otherwise. 132+ // * @throws CMSException if an exception occurs during the verification process. 133+ // */ 134+ // public boolean verifySignatures(SignerInformationVerifierProvider verifierProvider) 135+ // throws CMSException 136+ // { 137+ // return verifySignatures(verifierProvider, false); 138+ // } 139+ // 140+ // /** 141+ // * Verify all the SignerInformation objects and optionally their associated counter signatures attached 142+ // * to this CMS SignedData object. 143+ // * 144+ // * @param verifierProvider a provider of SignerInformationVerifier objects. 145+ // * @param ignoreCounterSignatures if true don't check counter signatures. If false check counter signatures as well. 146+ // * @return true if all verify, false otherwise. 147+ // * @throws CMSException if an exception occurs during the verification process. 148+ // */ 149+ // public boolean verifySignatures(SignerInformationVerifierProvider verifierProvider, boolean ignoreCounterSignatures) 150+ // throws CMSException 151+ // { 152+ // Collection signers = this.getSignerInfos().getSigners(); 153+ // 154+ // for (Iterator it = signers.iterator(); it.hasNext();) 155+ // { 156+ // SignerInformation signer = (SignerInformation)it.next(); 157+ // 158+ // try 159+ // { 160+ // SignerInformationVerifier verifier = verifierProvider.get(signer.getSID()); 161+ // 162+ // if (!signer.verify(verifier)) 163+ // { 164+ // return false; 165+ // } 166+ // 167+ // if (!ignoreCounterSignatures) 168+ // { 169+ // Collection counterSigners = signer.getCounterSignatures().getSigners(); 170+ // 171+ // for (Iterator cIt = counterSigners.iterator(); cIt.hasNext();) 172+ // { 173+ // if (!verifyCounterSignature((SignerInformation)cIt.next(), verifierProvider)) 174+ // { 175+ // return false; 176+ // } 177+ // } 178+ // } 179+ // } 180+ // catch (OperatorCreationException e) 181+ // { 182+ // throw new CMSException("failure in verifier provider: " + e.getMessage(), e); 183+ // } 184+ // } 185+ // 186+ // return true; 187+ // } 188+ // 189+ // private boolean verifyCounterSignature(SignerInformation counterSigner, SignerInformationVerifierProvider verifierProvider) 190+ // throws OperatorCreationException, CMSException 191+ // { 192+ // SignerInformationVerifier counterVerifier = verifierProvider.get(counterSigner.getSID()); 193+ // 194+ // if (!counterSigner.verify(counterVerifier)) 195+ // { 196+ // return false; 197+ // } 198+ // 199+ // Collection counterSigners = counterSigner.getCounterSignatures().getSigners(); 200+ // for (Iterator cIt = counterSigners.iterator(); cIt.hasNext();) 201+ // { 202+ // if (!verifyCounterSignature((SignerInformation)cIt.next(), verifierProvider)) 203+ // { 204+ // return false; 205+ // } 206+ // } 207+ // 208+ // return true; 209+ // } 210+ // END android-removed 211 212 /** 213 * Replace the SignerInformation store associated with this 214diff -Naur bcpkix-jdk15on-152.orig/org/bouncycastle/cms/CMSSignedGenerator.java bcpkix-jdk15on-152/org/bouncycastle/cms/CMSSignedGenerator.java 215--- bcpkix-jdk15on-152.orig/org/bouncycastle/cms/CMSSignedGenerator.java 2015-03-01 12:03:46.000000000 +0000 216+++ bcpkix-jdk15on-152/org/bouncycastle/cms/CMSSignedGenerator.java 2013-12-12 00:35:05.000000000 +0000 217@@ -12,8 +12,10 @@ 218 import org.bouncycastle.asn1.ASN1ObjectIdentifier; 219 import org.bouncycastle.asn1.DERTaggedObject; 220 import org.bouncycastle.asn1.cms.CMSObjectIdentifiers; 221-import org.bouncycastle.asn1.cms.OtherRevocationInfoFormat; 222-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 223+// BEGIN android-removed 224+// import org.bouncycastle.asn1.cms.OtherRevocationInfoFormat; 225+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 226+// END android-removed 227 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers; 228 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers; 229 import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers; 230@@ -39,17 +41,21 @@ 231 public static final String DIGEST_SHA384 = NISTObjectIdentifiers.id_sha384.getId(); 232 public static final String DIGEST_SHA512 = NISTObjectIdentifiers.id_sha512.getId(); 233 public static final String DIGEST_MD5 = PKCSObjectIdentifiers.md5.getId(); 234- public static final String DIGEST_GOST3411 = CryptoProObjectIdentifiers.gostR3411.getId(); 235- public static final String DIGEST_RIPEMD128 = TeleTrusTObjectIdentifiers.ripemd128.getId(); 236- public static final String DIGEST_RIPEMD160 = TeleTrusTObjectIdentifiers.ripemd160.getId(); 237- public static final String DIGEST_RIPEMD256 = TeleTrusTObjectIdentifiers.ripemd256.getId(); 238+ // BEGIN android-removed 239+ // public static final String DIGEST_GOST3411 = CryptoProObjectIdentifiers.gostR3411.getId(); 240+ // public static final String DIGEST_RIPEMD128 = TeleTrusTObjectIdentifiers.ripemd128.getId(); 241+ // public static final String DIGEST_RIPEMD160 = TeleTrusTObjectIdentifiers.ripemd160.getId(); 242+ // public static final String DIGEST_RIPEMD256 = TeleTrusTObjectIdentifiers.ripemd256.getId(); 243+ // END android-removed 244 245 public static final String ENCRYPTION_RSA = PKCSObjectIdentifiers.rsaEncryption.getId(); 246 public static final String ENCRYPTION_DSA = X9ObjectIdentifiers.id_dsa_with_sha1.getId(); 247 public static final String ENCRYPTION_ECDSA = X9ObjectIdentifiers.ecdsa_with_SHA1.getId(); 248 public static final String ENCRYPTION_RSA_PSS = PKCSObjectIdentifiers.id_RSASSA_PSS.getId(); 249- public static final String ENCRYPTION_GOST3410 = CryptoProObjectIdentifiers.gostR3410_94.getId(); 250- public static final String ENCRYPTION_ECGOST3410 = CryptoProObjectIdentifiers.gostR3410_2001.getId(); 251+ // BEGIN android-removed 252+ // public static final String ENCRYPTION_GOST3410 = CryptoProObjectIdentifiers.gostR3410_94.getId(); 253+ // public static final String ENCRYPTION_ECGOST3410 = CryptoProObjectIdentifiers.gostR3410_2001.getId(); 254+ // END android-removed 255 256 private static final String ENCRYPTION_ECDSA_WITH_SHA1 = X9ObjectIdentifiers.ecdsa_with_SHA1.getId(); 257 private static final String ENCRYPTION_ECDSA_WITH_SHA224 = X9ObjectIdentifiers.ecdsa_with_SHA224.getId(); 258@@ -174,31 +180,33 @@ 259 certs.addAll(CMSUtils.getAttributeCertificatesFromStore(attrStore)); 260 } 261 262- /** 263- * Add a single instance of otherRevocationData to the CRL set to be included with the generated SignedData message. 264- * 265- * @param otherRevocationInfoFormat the OID specifying the format of the otherRevocationInfo data. 266- * @param otherRevocationInfo the otherRevocationInfo ASN.1 structure. 267- */ 268- public void addOtherRevocationInfo( 269- ASN1ObjectIdentifier otherRevocationInfoFormat, 270- ASN1Encodable otherRevocationInfo) 271- { 272- crls.add(new DERTaggedObject(false, 1, new OtherRevocationInfoFormat(otherRevocationInfoFormat, otherRevocationInfo))); 273- } 274- 275- /** 276- * Add a Store of otherRevocationData to the CRL set to be included with the generated SignedData message. 277- * 278- * @param otherRevocationInfoFormat the OID specifying the format of the otherRevocationInfo data. 279- * @param otherRevocationInfos a Store of otherRevocationInfo data to add. 280- */ 281- public void addOtherRevocationInfo( 282- ASN1ObjectIdentifier otherRevocationInfoFormat, 283- Store otherRevocationInfos) 284- { 285- crls.addAll(CMSUtils.getOthersFromStore(otherRevocationInfoFormat, otherRevocationInfos)); 286- } 287+ // BEGIN android-removed 288+ // /** 289+ // * Add a single instance of otherRevocationData to the CRL set to be included with the generated SignedData message. 290+ // * 291+ // * @param otherRevocationInfoFormat the OID specifying the format of the otherRevocationInfo data. 292+ // * @param otherRevocationInfo the otherRevocationInfo ASN.1 structure. 293+ // */ 294+ // public void addOtherRevocationInfo( 295+ // ASN1ObjectIdentifier otherRevocationInfoFormat, 296+ // ASN1Encodable otherRevocationInfo) 297+ // { 298+ // crls.add(new DERTaggedObject(false, 1, new OtherRevocationInfoFormat(otherRevocationInfoFormat, otherRevocationInfo))); 299+ // } 300+ // 301+ // /** 302+ // * Add a Store of otherRevocationData to the CRL set to be included with the generated SignedData message. 303+ // * 304+ // * @param otherRevocationInfoFormat the OID specifying the format of the otherRevocationInfo data. 305+ // * @param otherRevocationInfos a Store of otherRevocationInfo data to add. 306+ // */ 307+ // public void addOtherRevocationInfo( 308+ // ASN1ObjectIdentifier otherRevocationInfoFormat, 309+ // Store otherRevocationInfos) 310+ // { 311+ // crls.addAll(CMSUtils.getOthersFromStore(otherRevocationInfoFormat, otherRevocationInfos)); 312+ // } 313+ // END android-removed 314 315 /** 316 * Add a store of pre-calculated signers to the generator. 317diff -Naur bcpkix-jdk15on-152.orig/org/bouncycastle/cms/CMSSignedHelper.java bcpkix-jdk15on-152/org/bouncycastle/cms/CMSSignedHelper.java 318--- bcpkix-jdk15on-152.orig/org/bouncycastle/cms/CMSSignedHelper.java 2015-03-01 12:03:46.000000000 +0000 319+++ bcpkix-jdk15on-152/org/bouncycastle/cms/CMSSignedHelper.java 2013-12-12 00:35:05.000000000 +0000 320@@ -13,8 +13,10 @@ 321 import org.bouncycastle.asn1.ASN1Set; 322 import org.bouncycastle.asn1.ASN1TaggedObject; 323 import org.bouncycastle.asn1.DERNull; 324-import org.bouncycastle.asn1.cms.OtherRevocationInfoFormat; 325-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 326+// BEGIN android-removed 327+// import org.bouncycastle.asn1.cms.OtherRevocationInfoFormat; 328+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 329+// END android-removed 330 import org.bouncycastle.asn1.eac.EACObjectIdentifiers; 331 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers; 332 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers; 333@@ -53,12 +55,16 @@ 334 addEntries(NISTObjectIdentifiers.dsa_with_sha384, "SHA384", "DSA"); 335 addEntries(NISTObjectIdentifiers.dsa_with_sha512, "SHA512", "DSA"); 336 addEntries(OIWObjectIdentifiers.dsaWithSHA1, "SHA1", "DSA"); 337- addEntries(OIWObjectIdentifiers.md4WithRSA, "MD4", "RSA"); 338- addEntries(OIWObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA"); 339+ // BEGIN android-removed 340+ // addEntries(OIWObjectIdentifiers.md4WithRSA, "MD4", "RSA"); 341+ // addEntries(OIWObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA"); 342+ // END android-removed 343 addEntries(OIWObjectIdentifiers.md5WithRSA, "MD5", "RSA"); 344 addEntries(OIWObjectIdentifiers.sha1WithRSA, "SHA1", "RSA"); 345- addEntries(PKCSObjectIdentifiers.md2WithRSAEncryption, "MD2", "RSA"); 346- addEntries(PKCSObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA"); 347+ // BEGIN android-removed 348+ // addEntries(PKCSObjectIdentifiers.md2WithRSAEncryption, "MD2", "RSA"); 349+ // addEntries(PKCSObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA"); 350+ // END android-removed 351 addEntries(PKCSObjectIdentifiers.md5WithRSAEncryption, "MD5", "RSA"); 352 addEntries(PKCSObjectIdentifiers.sha1WithRSAEncryption, "SHA1", "RSA"); 353 addEntries(PKCSObjectIdentifiers.sha224WithRSAEncryption, "SHA224", "RSA"); 354@@ -85,27 +91,31 @@ 355 encryptionAlgs.put(PKCSObjectIdentifiers.rsaEncryption.getId(), "RSA"); 356 encryptionAlgs.put(TeleTrusTObjectIdentifiers.teleTrusTRSAsignatureAlgorithm, "RSA"); 357 encryptionAlgs.put(X509ObjectIdentifiers.id_ea_rsa.getId(), "RSA"); 358- encryptionAlgs.put(CMSSignedDataGenerator.ENCRYPTION_RSA_PSS, "RSAandMGF1"); 359- encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_94.getId(), "GOST3410"); 360- encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_2001.getId(), "ECGOST3410"); 361- encryptionAlgs.put("1.3.6.1.4.1.5849.1.6.2", "ECGOST3410"); 362- encryptionAlgs.put("1.3.6.1.4.1.5849.1.1.5", "GOST3410"); 363- encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001.getId(), "ECGOST3410"); 364- encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94.getId(), "GOST3410"); 365- 366- digestAlgs.put(PKCSObjectIdentifiers.md2.getId(), "MD2"); 367- digestAlgs.put(PKCSObjectIdentifiers.md4.getId(), "MD4"); 368+ // BEGIN android-removed 369+ // encryptionAlgs.put(CMSSignedDataGenerator.ENCRYPTION_RSA_PSS, "RSAandMGF1"); 370+ // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_94.getId(), "GOST3410"); 371+ // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_2001.getId(), "ECGOST3410"); 372+ // encryptionAlgs.put("1.3.6.1.4.1.5849.1.6.2", "ECGOST3410"); 373+ // encryptionAlgs.put("1.3.6.1.4.1.5849.1.1.5", "GOST3410"); 374+ // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001.getId(), "ECGOST3410"); 375+ // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94.getId(), "GOST3410"); 376+ // 377+ // digestAlgs.put(PKCSObjectIdentifiers.md2.getId(), "MD2"); 378+ // digestAlgs.put(PKCSObjectIdentifiers.md4.getId(), "MD4"); 379+ // END android-removed 380 digestAlgs.put(PKCSObjectIdentifiers.md5.getId(), "MD5"); 381 digestAlgs.put(OIWObjectIdentifiers.idSHA1.getId(), "SHA1"); 382 digestAlgs.put(NISTObjectIdentifiers.id_sha224.getId(), "SHA224"); 383 digestAlgs.put(NISTObjectIdentifiers.id_sha256.getId(), "SHA256"); 384 digestAlgs.put(NISTObjectIdentifiers.id_sha384.getId(), "SHA384"); 385 digestAlgs.put(NISTObjectIdentifiers.id_sha512.getId(), "SHA512"); 386- digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd128.getId(), "RIPEMD128"); 387- digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd160.getId(), "RIPEMD160"); 388- digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd256.getId(), "RIPEMD256"); 389- digestAlgs.put(CryptoProObjectIdentifiers.gostR3411.getId(), "GOST3411"); 390- digestAlgs.put("1.3.6.1.4.1.5849.1.2.1", "GOST3411"); 391+ // BEGIN android-removed 392+ // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd128.getId(), "RIPEMD128"); 393+ // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd160.getId(), "RIPEMD160"); 394+ // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd256.getId(), "RIPEMD256"); 395+ // digestAlgs.put(CryptoProObjectIdentifiers.gostR3411.getId(), "GOST3411"); 396+ // digestAlgs.put("1.3.6.1.4.1.5849.1.2.1", "GOST3411"); 397+ // END android-removed 398 399 digestAliases.put("SHA1", new String[] { "SHA-1" }); 400 digestAliases.put("SHA224", new String[] { "SHA-224" }); 401@@ -219,35 +229,35 @@ 402 return new CollectionStore(new ArrayList()); 403 } 404 405- Store getOtherRevocationInfo(ASN1ObjectIdentifier otherRevocationInfoFormat, ASN1Set crlSet) 406- { 407- if (crlSet != null) 408- { 409- List crlList = new ArrayList(crlSet.size()); 410- 411- for (Enumeration en = crlSet.getObjects(); en.hasMoreElements();) 412- { 413- ASN1Primitive obj = ((ASN1Encodable)en.nextElement()).toASN1Primitive(); 414- 415- if (obj instanceof ASN1TaggedObject) 416- { 417- ASN1TaggedObject tObj = ASN1TaggedObject.getInstance(obj); 418- 419- if (tObj.getTagNo() == 1) 420- { 421- OtherRevocationInfoFormat other = OtherRevocationInfoFormat.getInstance(tObj, false); 422- 423- if (otherRevocationInfoFormat.equals(other.getInfoFormat())) 424- { 425- crlList.add(other.getInfo()); 426- } 427- } 428- } 429- } 430- 431- return new CollectionStore(crlList); 432- } 433- 434- return new CollectionStore(new ArrayList()); 435- } 436+ // Store getOtherRevocationInfo(ASN1ObjectIdentifier otherRevocationInfoFormat, ASN1Set crlSet) 437+ // { 438+ // if (crlSet != null) 439+ // { 440+ // List crlList = new ArrayList(crlSet.size()); 441+ // 442+ // for (Enumeration en = crlSet.getObjects(); en.hasMoreElements();) 443+ // { 444+ // ASN1Primitive obj = ((ASN1Encodable)en.nextElement()).toASN1Primitive(); 445+ // 446+ // if (obj instanceof ASN1TaggedObject) 447+ // { 448+ // ASN1TaggedObject tObj = ASN1TaggedObject.getInstance(obj); 449+ // 450+ // if (tObj.getTagNo() == 1) 451+ // { 452+ // OtherRevocationInfoFormat other = OtherRevocationInfoFormat.getInstance(tObj, false); 453+ // 454+ // if (otherRevocationInfoFormat.equals(other.getInfoFormat())) 455+ // { 456+ // crlList.add(other.getInfo()); 457+ // } 458+ // } 459+ // } 460+ // } 461+ // 462+ // return new CollectionStore(crlList); 463+ // } 464+ // 465+ // return new CollectionStore(new ArrayList()); 466+ // } 467 } 468diff -Naur bcpkix-jdk15on-152.orig/org/bouncycastle/cms/CMSUtils.java bcpkix-jdk15on-152/org/bouncycastle/cms/CMSUtils.java 469--- bcpkix-jdk15on-152.orig/org/bouncycastle/cms/CMSUtils.java 2015-03-01 12:03:46.000000000 +0000 470+++ bcpkix-jdk15on-152/org/bouncycastle/cms/CMSUtils.java 2014-07-28 19:51:54.000000000 +0000 471@@ -20,9 +20,11 @@ 472 import org.bouncycastle.asn1.DERTaggedObject; 473 import org.bouncycastle.asn1.cms.CMSObjectIdentifiers; 474 import org.bouncycastle.asn1.cms.ContentInfo; 475-import org.bouncycastle.asn1.cms.OtherRevocationInfoFormat; 476-import org.bouncycastle.asn1.ocsp.OCSPResponse; 477-import org.bouncycastle.asn1.ocsp.OCSPResponseStatus; 478+// BEGIN android-removed 479+// import org.bouncycastle.asn1.cms.OtherRevocationInfoFormat; 480+// import org.bouncycastle.asn1.ocsp.OCSPResponse; 481+// import org.bouncycastle.asn1.ocsp.OCSPResponseStatus; 482+// END android-removed 483 import org.bouncycastle.cert.X509AttributeCertificateHolder; 484 import org.bouncycastle.cert.X509CRLHolder; 485 import org.bouncycastle.cert.X509CertificateHolder; 486@@ -113,14 +115,16 @@ 487 488 crls.add(c.toASN1Structure()); 489 } 490- else if (rev instanceof OtherRevocationInfoFormat) 491- { 492- OtherRevocationInfoFormat infoFormat = OtherRevocationInfoFormat.getInstance(rev); 493- 494- validateInfoFormat(infoFormat); 495- 496- crls.add(new DERTaggedObject(false, 1, infoFormat)); 497- } 498+ // BEGIN android-removed 499+ // else if (rev instanceof OtherRevocationInfoFormat) 500+ // { 501+ // OtherRevocationInfoFormat infoFormat = OtherRevocationInfoFormat.getInstance(rev); 502+ // 503+ // validateInfoFormat(infoFormat); 504+ // 505+ // crls.add(new DERTaggedObject(false, 1, infoFormat)); 506+ // } 507+ // END android-removed 508 else if (rev instanceof ASN1TaggedObject) 509 { 510 crls.add(rev); 511@@ -135,35 +139,36 @@ 512 } 513 } 514 515- private static void validateInfoFormat(OtherRevocationInfoFormat infoFormat) 516- { 517- if (CMSObjectIdentifiers.id_ri_ocsp_response.equals(infoFormat.getInfoFormat())) 518- { 519- OCSPResponse resp = OCSPResponse.getInstance(infoFormat.getInfo()); 520- 521- if (resp.getResponseStatus().getValue().intValue() != OCSPResponseStatus.SUCCESSFUL) 522- { 523- throw new IllegalArgumentException("cannot add unsuccessful OCSP response to CMS SignedData"); 524- } 525- } 526- } 527- 528- static Collection getOthersFromStore(ASN1ObjectIdentifier otherRevocationInfoFormat, Store otherRevocationInfos) 529- { 530- List others = new ArrayList(); 531- 532- for (Iterator it = otherRevocationInfos.getMatches(null).iterator(); it.hasNext();) 533- { 534- ASN1Encodable info = (ASN1Encodable)it.next(); 535- OtherRevocationInfoFormat infoFormat = new OtherRevocationInfoFormat(otherRevocationInfoFormat, info); 536- 537- validateInfoFormat(infoFormat); 538- 539- others.add(new DERTaggedObject(false, 1, infoFormat)); 540- } 541- 542- return others; 543- } 544+ // BEGIN android-removed 545+ // private static void validateInfoFormat(OtherRevocationInfoFormat infoFormat) 546+ // { 547+ // if (CMSObjectIdentifiers.id_ri_ocsp_response.equals(infoFormat.getInfoFormat())) 548+ // { 549+ // OCSPResponse resp = OCSPResponse.getInstance(infoFormat.getInfo()); 550+ // 551+ // if (resp.getResponseStatus().getValue().intValue() != OCSPResponseStatus.SUCCESSFUL) 552+ // { 553+ // throw new IllegalArgumentException("cannot add unsuccessful OCSP response to CMS SignedData"); 554+ // } 555+ // } 556+ // } 557+ // 558+ // static Collection getOthersFromStore(ASN1ObjectIdentifier otherRevocationInfoFormat, Store otherRevocationInfos) 559+ // { 560+ // List others = new ArrayList(); 561+ // 562+ // for (Iterator it = otherRevocationInfos.getMatches(null).iterator(); it.hasNext();) 563+ // { 564+ // ASN1Encodable info = (ASN1Encodable)it.next(); 565+ // OtherRevocationInfoFormat infoFormat = new OtherRevocationInfoFormat(otherRevocationInfoFormat, info); 566+ // validateInfoFormat(infoFormat); 567+ // 568+ // others.add(new DERTaggedObject(false, 1, infoFormat)); 569+ // } 570+ // 571+ // return others; 572+ // } 573+ // END android-removed 574 575 static ASN1Set createBerSetFromList(List derObjects) 576 { 577diff -Naur bcpkix-jdk15on-152.orig/org/bouncycastle/cms/DefaultCMSSignatureAlgorithmNameGenerator.java bcpkix-jdk15on-152/org/bouncycastle/cms/DefaultCMSSignatureAlgorithmNameGenerator.java 578--- bcpkix-jdk15on-152.orig/org/bouncycastle/cms/DefaultCMSSignatureAlgorithmNameGenerator.java 2015-03-01 12:03:46.000000000 +0000 579+++ bcpkix-jdk15on-152/org/bouncycastle/cms/DefaultCMSSignatureAlgorithmNameGenerator.java 2015-04-09 13:10:16.000000000 +0000 580@@ -4,8 +4,10 @@ 581 import java.util.Map; 582 583 import org.bouncycastle.asn1.ASN1ObjectIdentifier; 584-import org.bouncycastle.asn1.bsi.BSIObjectIdentifiers; 585-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 586+// BEGIN android-removed 587+// import org.bouncycastle.asn1.bsi.BSIObjectIdentifiers; 588+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 589+// END android-removed 590 import org.bouncycastle.asn1.eac.EACObjectIdentifiers; 591 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers; 592 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers; 593@@ -34,12 +36,16 @@ 594 addEntries(NISTObjectIdentifiers.dsa_with_sha384, "SHA384", "DSA"); 595 addEntries(NISTObjectIdentifiers.dsa_with_sha512, "SHA512", "DSA"); 596 addEntries(OIWObjectIdentifiers.dsaWithSHA1, "SHA1", "DSA"); 597- addEntries(OIWObjectIdentifiers.md4WithRSA, "MD4", "RSA"); 598- addEntries(OIWObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA"); 599+ // BEGIN android-removed 600+ // addEntries(OIWObjectIdentifiers.md4WithRSA, "MD4", "RSA"); 601+ // addEntries(OIWObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA"); 602+ // END android-removed 603 addEntries(OIWObjectIdentifiers.md5WithRSA, "MD5", "RSA"); 604 addEntries(OIWObjectIdentifiers.sha1WithRSA, "SHA1", "RSA"); 605- addEntries(PKCSObjectIdentifiers.md2WithRSAEncryption, "MD2", "RSA"); 606- addEntries(PKCSObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA"); 607+ // BEGIN android-removed 608+ // addEntries(PKCSObjectIdentifiers.md2WithRSAEncryption, "MD2", "RSA"); 609+ // addEntries(PKCSObjectIdentifiers.md4WithRSAEncryption, "MD4", "RSA"); 610+ // END android-removed 611 addEntries(PKCSObjectIdentifiers.md5WithRSAEncryption, "MD5", "RSA"); 612 addEntries(PKCSObjectIdentifiers.sha1WithRSAEncryption, "SHA1", "RSA"); 613 addEntries(PKCSObjectIdentifiers.sha224WithRSAEncryption, "SHA224", "RSA"); 614@@ -66,38 +72,44 @@ 615 addEntries(EACObjectIdentifiers.id_TA_RSA_v1_5_SHA_256, "SHA256", "RSA"); 616 addEntries(EACObjectIdentifiers.id_TA_RSA_PSS_SHA_1, "SHA1", "RSAandMGF1"); 617 addEntries(EACObjectIdentifiers.id_TA_RSA_PSS_SHA_256, "SHA256", "RSAandMGF1"); 618- addEntries(BSIObjectIdentifiers.ecdsa_plain_SHA1, "SHA1", "PLAIN-ECDSA"); 619- addEntries(BSIObjectIdentifiers.ecdsa_plain_SHA224, "SHA224", "PLAIN-ECDSA"); 620- addEntries(BSIObjectIdentifiers.ecdsa_plain_SHA256, "SHA256", "PLAIN-ECDSA"); 621- addEntries(BSIObjectIdentifiers.ecdsa_plain_SHA384, "SHA384", "PLAIN-ECDSA"); 622- addEntries(BSIObjectIdentifiers.ecdsa_plain_SHA512, "SHA512", "PLAIN-ECDSA"); 623- addEntries(BSIObjectIdentifiers.ecdsa_plain_RIPEMD160, "RIPEMD160", "PLAIN-ECDSA"); 624+ // BEGIN android-removed 625+ // addEntries(BSIObjectIdentifiers.ecdsa_plain_SHA1, "SHA1", "PLAIN-ECDSA"); 626+ // addEntries(BSIObjectIdentifiers.ecdsa_plain_SHA224, "SHA224", "PLAIN-ECDSA"); 627+ // addEntries(BSIObjectIdentifiers.ecdsa_plain_SHA256, "SHA256", "PLAIN-ECDSA"); 628+ // addEntries(BSIObjectIdentifiers.ecdsa_plain_SHA384, "SHA384", "PLAIN-ECDSA"); 629+ // addEntries(BSIObjectIdentifiers.ecdsa_plain_SHA512, "SHA512", "PLAIN-ECDSA"); 630+ // addEntries(BSIObjectIdentifiers.ecdsa_plain_RIPEMD160, "RIPEMD160", "PLAIN-ECDSA"); 631+ // END android-removed 632 633 encryptionAlgs.put(X9ObjectIdentifiers.id_dsa, "DSA"); 634 encryptionAlgs.put(PKCSObjectIdentifiers.rsaEncryption, "RSA"); 635 encryptionAlgs.put(TeleTrusTObjectIdentifiers.teleTrusTRSAsignatureAlgorithm, "RSA"); 636 encryptionAlgs.put(X509ObjectIdentifiers.id_ea_rsa, "RSA"); 637 encryptionAlgs.put(PKCSObjectIdentifiers.id_RSASSA_PSS, "RSAandMGF1"); 638- encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_94, "GOST3410"); 639- encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_2001, "ECGOST3410"); 640- encryptionAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.6.2"), "ECGOST3410"); 641- encryptionAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.1.5"), "GOST3410"); 642- encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, "ECGOST3410"); 643- encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, "GOST3410"); 644- 645- digestAlgs.put(PKCSObjectIdentifiers.md2, "MD2"); 646- digestAlgs.put(PKCSObjectIdentifiers.md4, "MD4"); 647+ // BEGIN android-removed 648+ // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_94, "GOST3410"); 649+ // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3410_2001, "ECGOST3410"); 650+ // encryptionAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.6.2"), "ECGOST3410"); 651+ // encryptionAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.1.5"), "GOST3410"); 652+ // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, "ECGOST3410"); 653+ // encryptionAlgs.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, "GOST3410"); 654+ // 655+ // digestAlgs.put(PKCSObjectIdentifiers.md2, "MD2"); 656+ // digestAlgs.put(PKCSObjectIdentifiers.md4, "MD4"); 657+ // END android-removed 658 digestAlgs.put(PKCSObjectIdentifiers.md5, "MD5"); 659 digestAlgs.put(OIWObjectIdentifiers.idSHA1, "SHA1"); 660 digestAlgs.put(NISTObjectIdentifiers.id_sha224, "SHA224"); 661 digestAlgs.put(NISTObjectIdentifiers.id_sha256, "SHA256"); 662 digestAlgs.put(NISTObjectIdentifiers.id_sha384, "SHA384"); 663 digestAlgs.put(NISTObjectIdentifiers.id_sha512, "SHA512"); 664- digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd128, "RIPEMD128"); 665- digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd160, "RIPEMD160"); 666- digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd256, "RIPEMD256"); 667- digestAlgs.put(CryptoProObjectIdentifiers.gostR3411, "GOST3411"); 668- digestAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.2.1"), "GOST3411"); 669+ // BEGIN android-removed 670+ // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd128, "RIPEMD128"); 671+ // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd160, "RIPEMD160"); 672+ // digestAlgs.put(TeleTrusTObjectIdentifiers.ripemd256, "RIPEMD256"); 673+ // digestAlgs.put(CryptoProObjectIdentifiers.gostR3411, "GOST3411"); 674+ // digestAlgs.put(new ASN1ObjectIdentifier("1.3.6.1.4.1.5849.1.2.1"), "GOST3411"); 675+ // END android-removed 676 } 677 678 /** 679diff -Naur bcpkix-jdk15on-152.orig/org/bouncycastle/cms/DefaultCMSSignatureEncryptionAlgorithmFinder.java bcpkix-jdk15on-152/org/bouncycastle/cms/DefaultCMSSignatureEncryptionAlgorithmFinder.java 680--- bcpkix-jdk15on-152.orig/org/bouncycastle/cms/DefaultCMSSignatureEncryptionAlgorithmFinder.java 2015-03-01 12:03:46.000000000 +0000 681+++ bcpkix-jdk15on-152/org/bouncycastle/cms/DefaultCMSSignatureEncryptionAlgorithmFinder.java 2013-09-26 18:06:21.000000000 +0000 682@@ -16,21 +16,27 @@ 683 684 static 685 { 686- RSA_PKCS1d5.add(PKCSObjectIdentifiers.md2WithRSAEncryption); 687- RSA_PKCS1d5.add(PKCSObjectIdentifiers.md4WithRSAEncryption); 688+ // BEGIN android-removed 689+ // RSA_PKCS1d5.add(PKCSObjectIdentifiers.md2WithRSAEncryption); 690+ // RSA_PKCS1d5.add(PKCSObjectIdentifiers.md4WithRSAEncryption); 691+ // END android-removed 692 RSA_PKCS1d5.add(PKCSObjectIdentifiers.md5WithRSAEncryption); 693 RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha1WithRSAEncryption); 694 RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha224WithRSAEncryption); 695 RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha256WithRSAEncryption); 696 RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha384WithRSAEncryption); 697 RSA_PKCS1d5.add(PKCSObjectIdentifiers.sha512WithRSAEncryption); 698- RSA_PKCS1d5.add(OIWObjectIdentifiers.md4WithRSAEncryption); 699- RSA_PKCS1d5.add(OIWObjectIdentifiers.md4WithRSA); 700+ // BEGIN android-removed 701+ // RSA_PKCS1d5.add(OIWObjectIdentifiers.md4WithRSAEncryption); 702+ // RSA_PKCS1d5.add(OIWObjectIdentifiers.md4WithRSA); 703+ // END android-removed 704 RSA_PKCS1d5.add(OIWObjectIdentifiers.md5WithRSA); 705 RSA_PKCS1d5.add(OIWObjectIdentifiers.sha1WithRSA); 706- RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128); 707- RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160); 708- RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256); 709+ // BEGIN android-removed 710+ // RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128); 711+ // RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160); 712+ // RSA_PKCS1d5.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256); 713+ // END android-removed 714 } 715 716 public AlgorithmIdentifier findEncryptionAlgorithm(AlgorithmIdentifier signatureAlgorithm) 717diff -Naur bcpkix-jdk15on-152.orig/org/bouncycastle/operator/DefaultDigestAlgorithmIdentifierFinder.java bcpkix-jdk15on-152/org/bouncycastle/operator/DefaultDigestAlgorithmIdentifierFinder.java 718--- bcpkix-jdk15on-152.orig/org/bouncycastle/operator/DefaultDigestAlgorithmIdentifierFinder.java 2015-03-01 12:03:46.000000000 +0000 719+++ bcpkix-jdk15on-152/org/bouncycastle/operator/DefaultDigestAlgorithmIdentifierFinder.java 2013-09-26 18:06:21.000000000 +0000 720@@ -5,7 +5,9 @@ 721 722 import org.bouncycastle.asn1.ASN1ObjectIdentifier; 723 import org.bouncycastle.asn1.DERNull; 724-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 725+// BEGIN android-removed 726+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 727+// END android-removed 728 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers; 729 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers; 730 import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers; 731@@ -25,16 +27,20 @@ 732 // 733 // digests 734 // 735- digestOids.put(OIWObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4); 736- digestOids.put(OIWObjectIdentifiers.md4WithRSA, PKCSObjectIdentifiers.md4); 737+ // BEGIN android-removed 738+ // digestOids.put(OIWObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4); 739+ // digestOids.put(OIWObjectIdentifiers.md4WithRSA, PKCSObjectIdentifiers.md4); 740+ // END android-removed 741 digestOids.put(OIWObjectIdentifiers.sha1WithRSA, OIWObjectIdentifiers.idSHA1); 742 743 digestOids.put(PKCSObjectIdentifiers.sha224WithRSAEncryption, NISTObjectIdentifiers.id_sha224); 744 digestOids.put(PKCSObjectIdentifiers.sha256WithRSAEncryption, NISTObjectIdentifiers.id_sha256); 745 digestOids.put(PKCSObjectIdentifiers.sha384WithRSAEncryption, NISTObjectIdentifiers.id_sha384); 746 digestOids.put(PKCSObjectIdentifiers.sha512WithRSAEncryption, NISTObjectIdentifiers.id_sha512); 747- digestOids.put(PKCSObjectIdentifiers.md2WithRSAEncryption, PKCSObjectIdentifiers.md2); 748- digestOids.put(PKCSObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4); 749+ // BEGIN android-removed 750+ // digestOids.put(PKCSObjectIdentifiers.md2WithRSAEncryption, PKCSObjectIdentifiers.md2); 751+ // digestOids.put(PKCSObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4); 752+ // END android-removed 753 digestOids.put(PKCSObjectIdentifiers.md5WithRSAEncryption, PKCSObjectIdentifiers.md5); 754 digestOids.put(PKCSObjectIdentifiers.sha1WithRSAEncryption, OIWObjectIdentifiers.idSHA1); 755 756@@ -50,12 +56,14 @@ 757 digestOids.put(NISTObjectIdentifiers.dsa_with_sha384, NISTObjectIdentifiers.id_sha384); 758 digestOids.put(NISTObjectIdentifiers.dsa_with_sha512, NISTObjectIdentifiers.id_sha512); 759 760- digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128, TeleTrusTObjectIdentifiers.ripemd128); 761- digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160, TeleTrusTObjectIdentifiers.ripemd160); 762- digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256, TeleTrusTObjectIdentifiers.ripemd256); 763- 764- digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, CryptoProObjectIdentifiers.gostR3411); 765- digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, CryptoProObjectIdentifiers.gostR3411); 766+ // BEGIN android-removed 767+ // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128, TeleTrusTObjectIdentifiers.ripemd128); 768+ // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160, TeleTrusTObjectIdentifiers.ripemd160); 769+ // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256, TeleTrusTObjectIdentifiers.ripemd256); 770+ // 771+ // digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, CryptoProObjectIdentifiers.gostR3411); 772+ // digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, CryptoProObjectIdentifiers.gostR3411); 773+ // END android-removed 774 775 digestNameToOids.put("SHA-1", OIWObjectIdentifiers.idSHA1); 776 digestNameToOids.put("SHA-224", NISTObjectIdentifiers.id_sha224); 777@@ -63,15 +71,19 @@ 778 digestNameToOids.put("SHA-384", NISTObjectIdentifiers.id_sha384); 779 digestNameToOids.put("SHA-512", NISTObjectIdentifiers.id_sha512); 780 781- digestNameToOids.put("GOST3411", CryptoProObjectIdentifiers.gostR3411); 782- 783- digestNameToOids.put("MD2", PKCSObjectIdentifiers.md2); 784- digestNameToOids.put("MD4", PKCSObjectIdentifiers.md4); 785+ // BEGIN android-removed 786+ // digestNameToOids.put("GOST3411", CryptoProObjectIdentifiers.gostR3411); 787+ // 788+ // digestNameToOids.put("MD2", PKCSObjectIdentifiers.md2); 789+ // digestNameToOids.put("MD4", PKCSObjectIdentifiers.md4); 790+ // END android-removed 791 digestNameToOids.put("MD5", PKCSObjectIdentifiers.md5); 792 793- digestNameToOids.put("RIPEMD128", TeleTrusTObjectIdentifiers.ripemd128); 794- digestNameToOids.put("RIPEMD160", TeleTrusTObjectIdentifiers.ripemd160); 795- digestNameToOids.put("RIPEMD256", TeleTrusTObjectIdentifiers.ripemd256); 796+ // BEGIN android-removed 797+ // digestNameToOids.put("RIPEMD128", TeleTrusTObjectIdentifiers.ripemd128); 798+ // digestNameToOids.put("RIPEMD160", TeleTrusTObjectIdentifiers.ripemd160); 799+ // digestNameToOids.put("RIPEMD256", TeleTrusTObjectIdentifiers.ripemd256); 800+ // END android-removed 801 } 802 803 public AlgorithmIdentifier find(AlgorithmIdentifier sigAlgId) 804diff -Naur bcpkix-jdk15on-152.orig/org/bouncycastle/operator/DefaultSignatureAlgorithmIdentifierFinder.java bcpkix-jdk15on-152/org/bouncycastle/operator/DefaultSignatureAlgorithmIdentifierFinder.java 805--- bcpkix-jdk15on-152.orig/org/bouncycastle/operator/DefaultSignatureAlgorithmIdentifierFinder.java 2015-03-01 12:03:46.000000000 +0000 806+++ bcpkix-jdk15on-152/org/bouncycastle/operator/DefaultSignatureAlgorithmIdentifierFinder.java 2014-07-28 19:51:54.000000000 +0000 807@@ -9,9 +9,11 @@ 808 import org.bouncycastle.asn1.ASN1Integer; 809 import org.bouncycastle.asn1.ASN1ObjectIdentifier; 810 import org.bouncycastle.asn1.DERNull; 811-import org.bouncycastle.asn1.bsi.BSIObjectIdentifiers; 812-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 813-import org.bouncycastle.asn1.eac.EACObjectIdentifiers; 814+// BEGIN android-removed 815+// import org.bouncycastle.asn1.bsi.BSIObjectIdentifiers; 816+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 817+// import org.bouncycastle.asn1.eac.EACObjectIdentifiers; 818+// END android-removed 819 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers; 820 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers; 821 import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers; 822@@ -34,13 +36,17 @@ 823 private static final ASN1ObjectIdentifier ENCRYPTION_DSA = X9ObjectIdentifiers.id_dsa_with_sha1; 824 private static final ASN1ObjectIdentifier ENCRYPTION_ECDSA = X9ObjectIdentifiers.ecdsa_with_SHA1; 825 private static final ASN1ObjectIdentifier ENCRYPTION_RSA_PSS = PKCSObjectIdentifiers.id_RSASSA_PSS; 826- private static final ASN1ObjectIdentifier ENCRYPTION_GOST3410 = CryptoProObjectIdentifiers.gostR3410_94; 827- private static final ASN1ObjectIdentifier ENCRYPTION_ECGOST3410 = CryptoProObjectIdentifiers.gostR3410_2001; 828+ // BEGIN android-removed 829+ // private static final ASN1ObjectIdentifier ENCRYPTION_GOST3410 = CryptoProObjectIdentifiers.gostR3410_94; 830+ // private static final ASN1ObjectIdentifier ENCRYPTION_ECGOST3410 = CryptoProObjectIdentifiers.gostR3410_2001; 831+ // END android-removed 832 833 static 834 { 835- algorithms.put("MD2WITHRSAENCRYPTION", PKCSObjectIdentifiers.md2WithRSAEncryption); 836- algorithms.put("MD2WITHRSA", PKCSObjectIdentifiers.md2WithRSAEncryption); 837+ // BEGIN android-removed 838+ // algorithms.put("MD2WITHRSAENCRYPTION", PKCSObjectIdentifiers.md2WithRSAEncryption); 839+ // algorithms.put("MD2WITHRSA", PKCSObjectIdentifiers.md2WithRSAEncryption); 840+ // END android-removed 841 algorithms.put("MD5WITHRSAENCRYPTION", PKCSObjectIdentifiers.md5WithRSAEncryption); 842 algorithms.put("MD5WITHRSA", PKCSObjectIdentifiers.md5WithRSAEncryption); 843 algorithms.put("SHA1WITHRSAENCRYPTION", PKCSObjectIdentifiers.sha1WithRSAEncryption); 844@@ -58,12 +64,14 @@ 845 algorithms.put("SHA256WITHRSAANDMGF1", PKCSObjectIdentifiers.id_RSASSA_PSS); 846 algorithms.put("SHA384WITHRSAANDMGF1", PKCSObjectIdentifiers.id_RSASSA_PSS); 847 algorithms.put("SHA512WITHRSAANDMGF1", PKCSObjectIdentifiers.id_RSASSA_PSS); 848- algorithms.put("RIPEMD160WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160); 849- algorithms.put("RIPEMD160WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160); 850- algorithms.put("RIPEMD128WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128); 851- algorithms.put("RIPEMD128WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128); 852- algorithms.put("RIPEMD256WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256); 853- algorithms.put("RIPEMD256WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256); 854+ // BEGIN android-removed 855+ // algorithms.put("RIPEMD160WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160); 856+ // algorithms.put("RIPEMD160WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160); 857+ // algorithms.put("RIPEMD128WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128); 858+ // algorithms.put("RIPEMD128WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128); 859+ // algorithms.put("RIPEMD256WITHRSAENCRYPTION", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256); 860+ // algorithms.put("RIPEMD256WITHRSA", TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256); 861+ // END android-removed 862 algorithms.put("SHA1WITHDSA", X9ObjectIdentifiers.id_dsa_with_sha1); 863 algorithms.put("DSAWITHSHA1", X9ObjectIdentifiers.id_dsa_with_sha1); 864 algorithms.put("SHA224WITHDSA", NISTObjectIdentifiers.dsa_with_sha224); 865@@ -76,22 +84,24 @@ 866 algorithms.put("SHA256WITHECDSA", X9ObjectIdentifiers.ecdsa_with_SHA256); 867 algorithms.put("SHA384WITHECDSA", X9ObjectIdentifiers.ecdsa_with_SHA384); 868 algorithms.put("SHA512WITHECDSA", X9ObjectIdentifiers.ecdsa_with_SHA512); 869- algorithms.put("GOST3411WITHGOST3410", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94); 870- algorithms.put("GOST3411WITHGOST3410-94", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94); 871- algorithms.put("GOST3411WITHECGOST3410", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001); 872- algorithms.put("GOST3411WITHECGOST3410-2001", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001); 873- algorithms.put("GOST3411WITHGOST3410-2001", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001); 874- algorithms.put("SHA1WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_SHA1); 875- algorithms.put("SHA224WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_SHA224); 876- algorithms.put("SHA256WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_SHA256); 877- algorithms.put("SHA384WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_SHA384); 878- algorithms.put("SHA512WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_SHA512); 879- algorithms.put("RIPEMD160WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_RIPEMD160); 880- algorithms.put("SHA1WITHCVC-ECDSA", EACObjectIdentifiers.id_TA_ECDSA_SHA_1); 881- algorithms.put("SHA224WITHPCVC-ECDSA", EACObjectIdentifiers.id_TA_ECDSA_SHA_224); 882- algorithms.put("SHA256WITHCVC-ECDSA", EACObjectIdentifiers.id_TA_ECDSA_SHA_256); 883- algorithms.put("SHA384WITHCVC-ECDSA", EACObjectIdentifiers.id_TA_ECDSA_SHA_384); 884- algorithms.put("SHA512WITHCVC-ECDSA", EACObjectIdentifiers.id_TA_ECDSA_SHA_512); 885+ // BEGIN android-removed 886+ // algorithms.put("GOST3411WITHGOST3410", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94); 887+ // algorithms.put("GOST3411WITHGOST3410-94", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94); 888+ // algorithms.put("GOST3411WITHECGOST3410", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001); 889+ // algorithms.put("GOST3411WITHECGOST3410-2001", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001); 890+ // algorithms.put("GOST3411WITHGOST3410-2001", CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001); 891+ // algorithms.put("SHA1WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_SHA1); 892+ // algorithms.put("SHA224WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_SHA224); 893+ // algorithms.put("SHA256WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_SHA256); 894+ // algorithms.put("SHA384WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_SHA384); 895+ // algorithms.put("SHA512WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_SHA512); 896+ // algorithms.put("RIPEMD160WITHPLAIN-ECDSA", BSIObjectIdentifiers.ecdsa_plain_RIPEMD160); 897+ // algorithms.put("SHA1WITHCVC-ECDSA", EACObjectIdentifiers.id_TA_ECDSA_SHA_1); 898+ // algorithms.put("SHA224WITHPCVC-ECDSA", EACObjectIdentifiers.id_TA_ECDSA_SHA_224); 899+ // algorithms.put("SHA256WITHCVC-ECDSA", EACObjectIdentifiers.id_TA_ECDSA_SHA_256); 900+ // algorithms.put("SHA384WITHCVC-ECDSA", EACObjectIdentifiers.id_TA_ECDSA_SHA_384); 901+ // algorithms.put("SHA512WITHCVC-ECDSA", EACObjectIdentifiers.id_TA_ECDSA_SHA_512); 902+ // END android-removed 903 // 904 // According to RFC 3279, the ASN.1 encoding SHALL (id-dsa-with-sha1) or MUST (ecdsa-with-SHA*) omit the parameters field. 905 // The parameters field SHALL be NULL for RSA based signature algorithms. 906@@ -110,8 +120,10 @@ 907 // 908 // RFC 4491 909 // 910- noParams.add(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94); 911- noParams.add(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001); 912+ // BEGIN android-removed 913+ // noParams.add(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94); 914+ // noParams.add(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001); 915+ // END android-removed 916 917 // 918 // PKCS 1.5 encrypted algorithms 919@@ -121,9 +133,11 @@ 920 pkcs15RsaEncryption.add(PKCSObjectIdentifiers.sha256WithRSAEncryption); 921 pkcs15RsaEncryption.add(PKCSObjectIdentifiers.sha384WithRSAEncryption); 922 pkcs15RsaEncryption.add(PKCSObjectIdentifiers.sha512WithRSAEncryption); 923- pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128); 924- pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160); 925- pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256); 926+ // BEGIN android-removed 927+ // pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128); 928+ // pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160); 929+ // pkcs15RsaEncryption.add(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256); 930+ // END android-removed 931 932 // 933 // explicit params 934@@ -150,15 +164,19 @@ 935 digestOids.put(PKCSObjectIdentifiers.sha256WithRSAEncryption, NISTObjectIdentifiers.id_sha256); 936 digestOids.put(PKCSObjectIdentifiers.sha384WithRSAEncryption, NISTObjectIdentifiers.id_sha384); 937 digestOids.put(PKCSObjectIdentifiers.sha512WithRSAEncryption, NISTObjectIdentifiers.id_sha512); 938- digestOids.put(PKCSObjectIdentifiers.md2WithRSAEncryption, PKCSObjectIdentifiers.md2); 939- digestOids.put(PKCSObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4); 940+ // BEGIN android-removed 941+ // digestOids.put(PKCSObjectIdentifiers.md2WithRSAEncryption, PKCSObjectIdentifiers.md2); 942+ // digestOids.put(PKCSObjectIdentifiers.md4WithRSAEncryption, PKCSObjectIdentifiers.md4); 943+ // END android-removed 944 digestOids.put(PKCSObjectIdentifiers.md5WithRSAEncryption, PKCSObjectIdentifiers.md5); 945 digestOids.put(PKCSObjectIdentifiers.sha1WithRSAEncryption, OIWObjectIdentifiers.idSHA1); 946- digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128, TeleTrusTObjectIdentifiers.ripemd128); 947- digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160, TeleTrusTObjectIdentifiers.ripemd160); 948- digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256, TeleTrusTObjectIdentifiers.ripemd256); 949- digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, CryptoProObjectIdentifiers.gostR3411); 950- digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, CryptoProObjectIdentifiers.gostR3411); 951+ // BEGIN android-removed 952+ // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd128, TeleTrusTObjectIdentifiers.ripemd128); 953+ // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd160, TeleTrusTObjectIdentifiers.ripemd160); 954+ // digestOids.put(TeleTrusTObjectIdentifiers.rsaSignatureWithripemd256, TeleTrusTObjectIdentifiers.ripemd256); 955+ // digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, CryptoProObjectIdentifiers.gostR3411); 956+ // digestOids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, CryptoProObjectIdentifiers.gostR3411); 957+ // END android-removed 958 } 959 960 private static AlgorithmIdentifier generate(String signatureAlgorithm) 961@@ -221,4 +239,4 @@ 962 { 963 return generate(sigAlgName); 964 } 965-} 966\ No newline at end of file 967+} 968diff -Naur bcpkix-jdk15on-152.orig/org/bouncycastle/operator/bc/BcDefaultDigestProvider.java bcpkix-jdk15on-152/org/bouncycastle/operator/bc/BcDefaultDigestProvider.java 969--- bcpkix-jdk15on-152.orig/org/bouncycastle/operator/bc/BcDefaultDigestProvider.java 2015-03-01 12:03:46.000000000 +0000 970+++ bcpkix-jdk15on-152/org/bouncycastle/operator/bc/BcDefaultDigestProvider.java 2013-09-26 18:06:21.000000000 +0000 971@@ -4,20 +4,26 @@ 972 import java.util.HashMap; 973 import java.util.Map; 974 975-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 976+// BEGIN android-removed 977+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 978+// END android-removed 979 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers; 980 import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers; 981 import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers; 982 import org.bouncycastle.asn1.teletrust.TeleTrusTObjectIdentifiers; 983 import org.bouncycastle.asn1.x509.AlgorithmIdentifier; 984 import org.bouncycastle.crypto.ExtendedDigest; 985-import org.bouncycastle.crypto.digests.GOST3411Digest; 986-import org.bouncycastle.crypto.digests.MD2Digest; 987-import org.bouncycastle.crypto.digests.MD4Digest; 988+// BEGIN android-removed 989+// import org.bouncycastle.crypto.digests.GOST3411Digest; 990+// import org.bouncycastle.crypto.digests.MD2Digest; 991+// import org.bouncycastle.crypto.digests.MD4Digest; 992+// END android-removed 993 import org.bouncycastle.crypto.digests.MD5Digest; 994-import org.bouncycastle.crypto.digests.RIPEMD128Digest; 995-import org.bouncycastle.crypto.digests.RIPEMD160Digest; 996-import org.bouncycastle.crypto.digests.RIPEMD256Digest; 997+// BEGIN android-removed 998+// import org.bouncycastle.crypto.digests.RIPEMD128Digest; 999+// import org.bouncycastle.crypto.digests.RIPEMD160Digest; 1000+// import org.bouncycastle.crypto.digests.RIPEMD256Digest; 1001+// END android-removed 1002 import org.bouncycastle.crypto.digests.SHA1Digest; 1003 import org.bouncycastle.crypto.digests.SHA224Digest; 1004 import org.bouncycastle.crypto.digests.SHA256Digest; 1005@@ -76,48 +82,50 @@ 1006 return new MD5Digest(); 1007 } 1008 }); 1009- table.put(PKCSObjectIdentifiers.md4, new BcDigestProvider() 1010- { 1011- public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1012- { 1013- return new MD4Digest(); 1014- } 1015- }); 1016- table.put(PKCSObjectIdentifiers.md2, new BcDigestProvider() 1017- { 1018- public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1019- { 1020- return new MD2Digest(); 1021- } 1022- }); 1023- table.put(CryptoProObjectIdentifiers.gostR3411, new BcDigestProvider() 1024- { 1025- public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1026- { 1027- return new GOST3411Digest(); 1028- } 1029- }); 1030- table.put(TeleTrusTObjectIdentifiers.ripemd128, new BcDigestProvider() 1031- { 1032- public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1033- { 1034- return new RIPEMD128Digest(); 1035- } 1036- }); 1037- table.put(TeleTrusTObjectIdentifiers.ripemd160, new BcDigestProvider() 1038- { 1039- public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1040- { 1041- return new RIPEMD160Digest(); 1042- } 1043- }); 1044- table.put(TeleTrusTObjectIdentifiers.ripemd256, new BcDigestProvider() 1045- { 1046- public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1047- { 1048- return new RIPEMD256Digest(); 1049- } 1050- }); 1051+ // BEGIN android-removed 1052+ // table.put(PKCSObjectIdentifiers.md4, new BcDigestProvider() 1053+ // { 1054+ // public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1055+ // { 1056+ // return new MD4Digest(); 1057+ // } 1058+ // }); 1059+ // table.put(PKCSObjectIdentifiers.md2, new BcDigestProvider() 1060+ // { 1061+ // public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1062+ // { 1063+ // return new MD2Digest(); 1064+ // } 1065+ // }); 1066+ // table.put(CryptoProObjectIdentifiers.gostR3411, new BcDigestProvider() 1067+ // { 1068+ // public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1069+ // { 1070+ // return new GOST3411Digest(); 1071+ // } 1072+ // }); 1073+ // table.put(TeleTrusTObjectIdentifiers.ripemd128, new BcDigestProvider() 1074+ // { 1075+ // public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1076+ // { 1077+ // return new RIPEMD128Digest(); 1078+ // } 1079+ // }); 1080+ // table.put(TeleTrusTObjectIdentifiers.ripemd160, new BcDigestProvider() 1081+ // { 1082+ // public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1083+ // { 1084+ // return new RIPEMD160Digest(); 1085+ // } 1086+ // }); 1087+ // table.put(TeleTrusTObjectIdentifiers.ripemd256, new BcDigestProvider() 1088+ // { 1089+ // public ExtendedDigest get(AlgorithmIdentifier digestAlgorithmIdentifier) 1090+ // { 1091+ // return new RIPEMD256Digest(); 1092+ // } 1093+ // }); 1094+ // END android-removed 1095 1096 return Collections.unmodifiableMap(table); 1097 } 1098diff -Naur bcpkix-jdk15on-152.orig/org/bouncycastle/operator/jcajce/OperatorHelper.java bcpkix-jdk15on-152/org/bouncycastle/operator/jcajce/OperatorHelper.java 1099--- bcpkix-jdk15on-152.orig/org/bouncycastle/operator/jcajce/OperatorHelper.java 2015-03-01 12:03:46.000000000 +0000 1100+++ bcpkix-jdk15on-152/org/bouncycastle/operator/jcajce/OperatorHelper.java 2015-04-09 13:10:16.000000000 +0000 1101@@ -24,9 +24,11 @@ 1102 import org.bouncycastle.asn1.ASN1Encodable; 1103 import org.bouncycastle.asn1.ASN1ObjectIdentifier; 1104 import org.bouncycastle.asn1.DERNull; 1105-import org.bouncycastle.asn1.bsi.BSIObjectIdentifiers; 1106-import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 1107-import org.bouncycastle.asn1.eac.EACObjectIdentifiers; 1108+// BEGIN android-removed 1109+// import org.bouncycastle.asn1.bsi.BSIObjectIdentifiers; 1110+// import org.bouncycastle.asn1.cryptopro.CryptoProObjectIdentifiers; 1111+// import org.bouncycastle.asn1.eac.EACObjectIdentifiers; 1112+// END android-removed 1113 import org.bouncycastle.asn1.kisa.KISAObjectIdentifiers; 1114 import org.bouncycastle.asn1.nist.NISTObjectIdentifiers; 1115 import org.bouncycastle.asn1.ntt.NTTObjectIdentifiers; 1116@@ -59,22 +61,26 @@ 1117 oids.put(PKCSObjectIdentifiers.sha256WithRSAEncryption, "SHA256WITHRSA"); 1118 oids.put(PKCSObjectIdentifiers.sha384WithRSAEncryption, "SHA384WITHRSA"); 1119 oids.put(PKCSObjectIdentifiers.sha512WithRSAEncryption, "SHA512WITHRSA"); 1120- oids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, "GOST3411WITHGOST3410"); 1121- oids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, "GOST3411WITHECGOST3410"); 1122- oids.put(BSIObjectIdentifiers.ecdsa_plain_SHA1, "SHA1WITHPLAIN-ECDSA"); 1123- oids.put(BSIObjectIdentifiers.ecdsa_plain_SHA224, "SHA224WITHPLAIN-ECDSA"); 1124- oids.put(BSIObjectIdentifiers.ecdsa_plain_SHA256, "SHA256WITHPLAIN-ECDSA"); 1125- oids.put(BSIObjectIdentifiers.ecdsa_plain_SHA384, "SHA384WITHPLAIN-ECDSA"); 1126- oids.put(BSIObjectIdentifiers.ecdsa_plain_SHA512, "SHA512WITHPLAIN-ECDSA"); 1127- oids.put(BSIObjectIdentifiers.ecdsa_plain_RIPEMD160, "RIPEMD160WITHPLAIN-ECDSA"); 1128- oids.put(EACObjectIdentifiers.id_TA_ECDSA_SHA_1, "SHA1WITHCVC-ECDSA"); 1129- oids.put(EACObjectIdentifiers.id_TA_ECDSA_SHA_224, "SHA224WITHCVC-ECDSA"); 1130- oids.put(EACObjectIdentifiers.id_TA_ECDSA_SHA_256, "SHA256WITHCVC-ECDSA"); 1131- oids.put(EACObjectIdentifiers.id_TA_ECDSA_SHA_384, "SHA384WITHCVC-ECDSA"); 1132- oids.put(EACObjectIdentifiers.id_TA_ECDSA_SHA_512, "SHA512WITHCVC-ECDSA"); 1133+ // BEGIN android-removed 1134+ // oids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_94, "GOST3411WITHGOST3410"); 1135+ // oids.put(CryptoProObjectIdentifiers.gostR3411_94_with_gostR3410_2001, "GOST3411WITHECGOST3410"); 1136+ // oids.put(BSIObjectIdentifiers.ecdsa_plain_SHA1, "SHA1WITHPLAIN-ECDSA"); 1137+ // oids.put(BSIObjectIdentifiers.ecdsa_plain_SHA224, "SHA224WITHPLAIN-ECDSA"); 1138+ // oids.put(BSIObjectIdentifiers.ecdsa_plain_SHA256, "SHA256WITHPLAIN-ECDSA"); 1139+ // oids.put(BSIObjectIdentifiers.ecdsa_plain_SHA384, "SHA384WITHPLAIN-ECDSA"); 1140+ // oids.put(BSIObjectIdentifiers.ecdsa_plain_SHA512, "SHA512WITHPLAIN-ECDSA"); 1141+ // oids.put(BSIObjectIdentifiers.ecdsa_plain_RIPEMD160, "RIPEMD160WITHPLAIN-ECDSA"); 1142+ // oids.put(EACObjectIdentifiers.id_TA_ECDSA_SHA_1, "SHA1WITHCVC-ECDSA"); 1143+ // oids.put(EACObjectIdentifiers.id_TA_ECDSA_SHA_224, "SHA224WITHCVC-ECDSA"); 1144+ // oids.put(EACObjectIdentifiers.id_TA_ECDSA_SHA_256, "SHA256WITHCVC-ECDSA"); 1145+ // oids.put(EACObjectIdentifiers.id_TA_ECDSA_SHA_384, "SHA384WITHCVC-ECDSA"); 1146+ // oids.put(EACObjectIdentifiers.id_TA_ECDSA_SHA_512, "SHA512WITHCVC-ECDSA"); 1147+ // END android-removed 1148 1149 oids.put(new ASN1ObjectIdentifier("1.2.840.113549.1.1.4"), "MD5WITHRSA"); 1150- oids.put(new ASN1ObjectIdentifier("1.2.840.113549.1.1.2"), "MD2WITHRSA"); 1151+ // BEGIN android-removed 1152+ // oids.put(new ASN1ObjectIdentifier("1.2.840.113549.1.1.2"), "MD2WITHRSA"); 1153+ // END android-removed 1154 oids.put(new ASN1ObjectIdentifier("1.2.840.10040.4.3"), "SHA1WITHDSA"); 1155 oids.put(X9ObjectIdentifiers.ecdsa_with_SHA1, "SHA1WITHECDSA"); 1156 oids.put(X9ObjectIdentifiers.ecdsa_with_SHA224, "SHA224WITHECDSA"); 1157