am 84c604d8: Merge "Fix Class#getField method"

* commit '84c604d8237889e2c43eeec4e76d31abcc93a5aa':
  Fix Class#getField method
diff --git a/dalvik/src/main/java/dalvik/system/DexFile.java b/dalvik/src/main/java/dalvik/system/DexFile.java
index 79f2912..52d5d8a 100644
--- a/dalvik/src/main/java/dalvik/system/DexFile.java
+++ b/dalvik/src/main/java/dalvik/system/DexFile.java
@@ -318,8 +318,6 @@
      * @throws java.io.IOException if fileName is not a valid apk/jar file or
      *         if problems occur while parsing it.
      * @throws java.lang.NullPointerException if fileName is null.
-     * @throws dalvik.system.StaleDexCacheError if the optimized dex file
-     *         is stale but exists on a read-only partition.
      */
     public static native boolean isDexOptNeeded(String fileName)
             throws FileNotFoundException, IOException;
@@ -368,8 +366,6 @@
      * @throws java.io.IOException if fileName is not a valid apk/jar file or
      *         if problems occur while parsing it.
      * @throws java.lang.NullPointerException if fileName is null.
-     * @throws dalvik.system.StaleDexCacheError if the optimized dex file
-     *         is stale but exists on a read-only partition.
      *
      * @hide
      */
diff --git a/dalvik/src/main/java/dalvik/system/StaleDexCacheError.java b/dalvik/src/main/java/dalvik/system/StaleDexCacheError.java
deleted file mode 100644
index 8bdd86a..0000000
--- a/dalvik/src/main/java/dalvik/system/StaleDexCacheError.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright (C) 2008 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package dalvik.system;
-
-/**
- * Is thrown when the VM determines that a DEX file's cache is out of date, and
- * that there is no way to recreate it.
- *
- * @hide
- */
-public class StaleDexCacheError extends VirtualMachineError {
-    /**
-     * Creates a new exception instance and initializes it with default values.
-     */
-    public StaleDexCacheError() {
-        super();
-    }
-
-    /**
-     * Creates a new exception instance and initializes it with a given message.
-     *
-     * @param detailMessage the error message
-     */
-    public StaleDexCacheError(String detailMessage) {
-        super(detailMessage);
-    }
-}
diff --git a/harmony-tests/src/test/java/org/apache/harmony/tests/javax/security/cert/X509CertificateTest.java b/harmony-tests/src/test/java/org/apache/harmony/tests/javax/security/cert/X509CertificateTest.java
index 26403f5..093e2e1 100644
--- a/harmony-tests/src/test/java/org/apache/harmony/tests/javax/security/cert/X509CertificateTest.java
+++ b/harmony-tests/src/test/java/org/apache/harmony/tests/javax/security/cert/X509CertificateTest.java
@@ -39,6 +39,7 @@
 import java.security.Provider;
 import java.security.PublicKey;
 import java.security.Security;
+import java.security.Signature;
 import java.security.SignatureException;
 import java.security.Provider.Service;
 import java.security.cert.CertificateFactory;
@@ -763,16 +764,16 @@
         }
         Security.addProvider(myProvider);
 
-        Provider[] providers = Security.getProviders("Signature.MD5withRSA");
-        if (providers == null || providers.length == 0) {
-            fail("no Provider for Signature.MD5withRSA");
-            return;
-        }
+        // Find the Provider which offers MD5withRSA for the certificate's
+        // public key.
+        Signature signature = Signature.getInstance("MD5withRSA");
+        signature.initVerify(javaxSSCert.getPublicKey());
+        Provider provider = signature.getProvider();
 
         // self signed cert: should verify with provider
         try {
             javaxSSCert.verify(javaxSSCert.getPublicKey(),
-                    providers[0].getName());
+                    provider.getName());
         } catch (SignatureException e) {
             fail("blu");
         }
diff --git a/luni/src/main/files/cacerts/0d5a4e1c.0 b/luni/src/main/files/cacerts/0d5a4e1c.0
new file mode 100644
index 0000000..2a40cf6
--- /dev/null
+++ b/luni/src/main/files/cacerts/0d5a4e1c.0
@@ -0,0 +1,82 @@
+-----BEGIN CERTIFICATE-----
+MIIEJzCCAw+gAwIBAgIHAI4X/iQggTANBgkqhkiG9w0BAQsFADCBsTELMAkGA1UE
+BhMCVFIxDzANBgNVBAcMBkFua2FyYTFNMEsGA1UECgxEVMOcUktUUlVTVCBCaWxn
+aSDEsGxldGnFn2ltIHZlIEJpbGnFn2ltIEfDvHZlbmxpxJ9pIEhpem1ldGxlcmkg
+QS7Fni4xQjBABgNVBAMMOVTDnFJLVFJVU1QgRWxla3Ryb25payBTZXJ0aWZpa2Eg
+SGl6bWV0IFNhxJ9sYXnEsWPEsXPEsSBINTAeFw0xMzA0MzAwODA3MDFaFw0yMzA0
+MjgwODA3MDFaMIGxMQswCQYDVQQGEwJUUjEPMA0GA1UEBwwGQW5rYXJhMU0wSwYD
+VQQKDERUw5xSS1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8
+dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLjFCMEAGA1UEAww5VMOcUktUUlVTVCBF
+bGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxIEg1MIIB
+IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApCUZ4WWe60ghUEoI5RHwWrom
+/4NZzkQqL/7hzmAD/I0Dpe3/a6i6zDQGn1k19uwsu537jVJp45wnEFPzpALFp/kR
+Gml1bsMdi9GYjZOHp3GXDSHHmflS0yxjXVW86B8BSLlg/kJK9siArs1mep5Fimh3
+4khon6La8eHBEJ/rPCmBp+EyCNSgBbGM+42WAA4+Jd9ThiI7/PS98wl+d+yG6w8z
+5UNP9FR1bSmZLmZaQ9/LXMrI5Tjxfjs1nQ/0xVqhzPMggCTTV+wVunUlm+hkS7M0
+hO8EuPbJbKoCPrZV4jI3X/xml1/N1p7HIL9Nxqw/dV8c7TKcfGkAaZHjIxhT6QID
+AQABo0IwQDAdBgNVHQ4EFgQUVpkHHtOsDGlktAxQR95DLL4gwPswDgYDVR0PAQH/
+BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAJ5FdnsX
+SDLyOIspve6WSk6BGLFRRyDN0GSxDsnZAdkJzsiZ3GglE9Rc8qPoBP5yCccLqh0l
+VX6Wmle3usURehnmp349hQ71+S4pL+f5bFgWV1Al9j4uPqrtd3GqqpmWRgqujuwq
+URawXs3qZwQcWDD1YIq9pr1N5Za0/EKJAWv2cMhQOQwt1WbZyNKzMrcbGW3LM/nf
+peYVhDfwwvJllpKQd/Ct9JDpEXjXk4nAPQu6KfTomZ1yju2dL+6SfaHx/126M2CF
+Yv4HAqGEVka+lgqaE9chTLd8B59OTj+RdPsnnRHM3eaxynFNExc5JsUpISuTKWqW
++qtB4Uu2NQvAmxU=
+-----END CERTIFICATE-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 156233699172481 (0x8e17fe242081)
+    Signature Algorithm: sha256WithRSAEncryption
+        Issuer: C=TR, L=Ankara, O=T\xC3\x9CRKTRUST Bilgi \xC4\xB0leti\xC5\x9Fim ve Bili\xC5\x9Fim G\xC3\xBCvenli\xC4\x9Fi Hizmetleri A.\xC5\x9E., CN=T\xC3\x9CRKTRUST Elektronik Sertifika Hizmet Sa\xC4\x9Flay\xC4\xB1c\xC4\xB1s\xC4\xB1 H5
+        Validity
+            Not Before: Apr 30 08:07:01 2013 GMT
+            Not After : Apr 28 08:07:01 2023 GMT
+        Subject: C=TR, L=Ankara, O=T\xC3\x9CRKTRUST Bilgi \xC4\xB0leti\xC5\x9Fim ve Bili\xC5\x9Fim G\xC3\xBCvenli\xC4\x9Fi Hizmetleri A.\xC5\x9E., CN=T\xC3\x9CRKTRUST Elektronik Sertifika Hizmet Sa\xC4\x9Flay\xC4\xB1c\xC4\xB1s\xC4\xB1 H5
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (2048 bit)
+                Modulus:
+                    00:a4:25:19:e1:65:9e:eb:48:21:50:4a:08:e5:11:
+                    f0:5a:ba:26:ff:83:59:ce:44:2a:2f:fe:e1:ce:60:
+                    03:fc:8d:03:a5:ed:ff:6b:a8:ba:cc:34:06:9f:59:
+                    35:f6:ec:2c:bb:9d:fb:8d:52:69:e3:9c:27:10:53:
+                    f3:a4:02:c5:a7:f9:11:1a:69:75:6e:c3:1d:8b:d1:
+                    98:8d:93:87:a7:71:97:0d:21:c7:99:f9:52:d3:2c:
+                    63:5d:55:bc:e8:1f:01:48:b9:60:fe:42:4a:f6:c8:
+                    80:ae:cd:66:7a:9e:45:8a:68:77:e2:48:68:9f:a2:
+                    da:f1:e1:c1:10:9f:eb:3c:29:81:a7:e1:32:08:d4:
+                    a0:05:b1:8c:fb:8d:96:00:0e:3e:25:df:53:86:22:
+                    3b:fc:f4:bd:f3:09:7e:77:ec:86:eb:0f:33:e5:43:
+                    4f:f4:54:75:6d:29:99:2e:66:5a:43:df:cb:5c:ca:
+                    c8:e5:38:f1:7e:3b:35:9d:0f:f4:c5:5a:a1:cc:f3:
+                    20:80:24:d3:57:ec:15:ba:75:25:9b:e8:64:4b:b3:
+                    34:84:ef:04:b8:f6:c9:6c:aa:02:3e:b6:55:e2:32:
+                    37:5f:fc:66:97:5f:cd:d6:9e:c7:20:bf:4d:c6:ac:
+                    3f:75:5f:1c:ed:32:9c:7c:69:00:69:91:e3:23:18:
+                    53:e9
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Subject Key Identifier: 
+                56:99:07:1E:D3:AC:0C:69:64:B4:0C:50:47:DE:43:2C:BE:20:C0:FB
+            X509v3 Key Usage: critical
+                Certificate Sign, CRL Sign
+            X509v3 Basic Constraints: critical
+                CA:TRUE
+    Signature Algorithm: sha256WithRSAEncryption
+         9e:45:76:7b:17:48:32:f2:38:8b:29:bd:ee:96:4a:4e:81:18:
+         b1:51:47:20:cd:d0:64:b1:0e:c9:d9:01:d9:09:ce:c8:99:dc:
+         68:25:13:d4:5c:f2:a3:e8:04:fe:72:09:c7:0b:aa:1d:25:55:
+         7e:96:9a:57:b7:ba:c5:11:7a:19:e6:a7:7e:3d:85:0e:f5:f9:
+         2e:29:2f:e7:f9:6c:58:16:57:50:25:f6:3e:2e:3e:aa:ed:77:
+         71:aa:aa:99:96:46:0a:ae:8e:ec:2a:51:16:b0:5e:cd:ea:67:
+         04:1c:58:30:f5:60:8a:bd:a6:bd:4d:e5:96:b4:fc:42:89:01:
+         6b:f6:70:c8:50:39:0c:2d:d5:66:d9:c8:d2:b3:32:b7:1b:19:
+         6d:cb:33:f9:df:a5:e6:15:84:37:f0:c2:f2:65:96:92:90:77:
+         f0:ad:f4:90:e9:11:78:d7:93:89:c0:3d:0b:ba:29:f4:e8:99:
+         9d:72:8e:ed:9d:2f:ee:92:7d:a1:f1:ff:5d:ba:33:60:85:62:
+         fe:07:02:a1:84:56:46:be:96:0a:9a:13:d7:21:4c:b7:7c:07:
+         9f:4e:4e:3f:91:74:fb:27:9d:11:cc:dd:e6:b1:ca:71:4d:13:
+         17:39:26:c5:29:21:2b:93:29:6a:96:fa:ab:41:e1:4b:b6:35:
+         0b:c0:9b:15
+SHA1 Fingerprint=C4:18:F6:4D:46:D1:DF:00:3D:27:30:13:72:43:A9:12:11:C6:75:FB
diff --git a/luni/src/main/files/cacerts/3c6676aa.0 b/luni/src/main/files/cacerts/3c6676aa.0
new file mode 100644
index 0000000..2905a24
--- /dev/null
+++ b/luni/src/main/files/cacerts/3c6676aa.0
@@ -0,0 +1,120 @@
+-----BEGIN CERTIFICATE-----
+MIIFcDCCA1igAwIBAgIEAJiWjTANBgkqhkiG9w0BAQsFADBYMQswCQYDVQQGEwJO
+TDEeMBwGA1UECgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSkwJwYDVQQDDCBTdGFh
+dCBkZXIgTmVkZXJsYW5kZW4gRVYgUm9vdCBDQTAeFw0xMDEyMDgxMTE5MjlaFw0y
+MjEyMDgxMTEwMjhaMFgxCzAJBgNVBAYTAk5MMR4wHAYDVQQKDBVTdGFhdCBkZXIg
+TmVkZXJsYW5kZW4xKTAnBgNVBAMMIFN0YWF0IGRlciBOZWRlcmxhbmRlbiBFViBS
+b290IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA48d+ifkkSzrS
+M4M1LGns3Amk41GoJSt5uAg94JG6hIXGhaTK5skuU6TJJB79VWZxXSzFYGgEt9nC
+UiY4iKTWO0Cmws0/zZiTs1QUWJZV1VD+hq2kY39ch/aO5ieSZxeSAgMs3NZmdO3d
+Z//BYY1jTw+bbRcwJu+r0h8QoPnFfxZpgQNH7R5ojXKhTbImxrpsX23Wr9GxE46p
+rfNeaXUmGD5BKyF/7otdBwadQ8QpCiv8Kj6GyzyDOvnJDdrFmeK8eEEzduG/L13l
+pJhQDBXd4Pqcfzho0LKmeqfRMb1+ilgnQ7O6M5HTp5gVXJrm0w912fxBmJc+qiXb
+j5IusHsMX/FjqTf5m3VpTCgmJdrV8hJwRVXj33NeN/UhbJCONVrJ0yPr08C+eKxC
+KFhmpUZtcALXEPlLVPxdhkqHz3/KRawRWrUgUY0viEeXOcDPusBCAUCZSCELa6fS
+/ZbV0b5GnUngC6agIk440ME8MLxwjyx1zNDFjFE7PZQIZCZhfbnDZY8UnCHQqv0X
+cgOPvZuM5l5Tnrmd74K74bzickFbIZTTRTeU0d8JOV3nI6qaHcptqAqGhYqCvkIH
+1vI4gnPah1vlPNOePqc7nvQDs/nxfRN0Av+7oeX6AHkcpmZBiFxgV6YuCcS6/ZrP
+px9Aw7vMWgpVSzs4dlG4Y4uElBbmVvMCAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB
+/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFP6rAJCYniT8qcwaivsnuL8wbqg7
+MA0GCSqGSIb3DQEBCwUAA4ICAQDPdyxuVr5Os7aEAJSrR8kN0nbHhp8dB9O2tLsI
+eK9p0gtJ3jPFrK3CiAJ9Brc1AsFgyb/E6JTe1NOpEyVa/m6irn0F3H3zbPB+po3u
+2dfOWBfoqSmuc0iH55vKbimhZF8ZE/euBhD/UcabTVUlT5OZEAFTdfETzsemQUHS
+v4ilf0X8rLiltTMMgsT7B/Zq5SWEXwbKwYY5EdtYzXc7LMJMD16a4/CrPmEbUCTC
+wPTxGfARKbalGAKb12NMcIxHowNDXLldRqANb/9Zjr7dn3LDWyvfjFvO5QxGbJKy
+CqNMVEIYFRIYvdr8unRu/8G2oGTYqV9Vrp9canaW2HNnh/tNf1zuacpzEPuKqf2e
+vTY4SUmH9A4U8OmHuD+nT3pajnnUk+S7aFKErGzp85hwVXIy+TSrK0m1zSBi5Dp6
+Z2Orltxtrpfs/J92VoguZs9btsmksNcFuuEnL5O7Jiqik7Ab846+HUCjuTaPPoIa
+Gl6I6lD4WeKDRikL40Rc4ZW2aZCaFG+XroHPaO+Zmr615+F/+PoTRxZMzG0IQOeL
+eG9QgkRQP2YGiqtDhFZKDyAthg710tvSeopLzaXoTvFeJiUBWSOgftL2fiFX1ye8
+FVdMpEbB4IMeDExNH08GGeL5qPQ6gqGyeUN51q1veieQA6TqJIc/2b3Z6fJfUEkc
+7uzXLg==
+-----END CERTIFICATE-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 10000013 (0x98968d)
+    Signature Algorithm: sha256WithRSAEncryption
+        Issuer: C=NL, O=Staat der Nederlanden, CN=Staat der Nederlanden EV Root CA
+        Validity
+            Not Before: Dec  8 11:19:29 2010 GMT
+            Not After : Dec  8 11:10:28 2022 GMT
+        Subject: C=NL, O=Staat der Nederlanden, CN=Staat der Nederlanden EV Root CA
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (4096 bit)
+                Modulus:
+                    00:e3:c7:7e:89:f9:24:4b:3a:d2:33:83:35:2c:69:
+                    ec:dc:09:a4:e3:51:a8:25:2b:79:b8:08:3d:e0:91:
+                    ba:84:85:c6:85:a4:ca:e6:c9:2e:53:a4:c9:24:1e:
+                    fd:55:66:71:5d:2c:c5:60:68:04:b7:d9:c2:52:26:
+                    38:88:a4:d6:3b:40:a6:c2:cd:3f:cd:98:93:b3:54:
+                    14:58:96:55:d5:50:fe:86:ad:a4:63:7f:5c:87:f6:
+                    8e:e6:27:92:67:17:92:02:03:2c:dc:d6:66:74:ed:
+                    dd:67:ff:c1:61:8d:63:4f:0f:9b:6d:17:30:26:ef:
+                    ab:d2:1f:10:a0:f9:c5:7f:16:69:81:03:47:ed:1e:
+                    68:8d:72:a1:4d:b2:26:c6:ba:6c:5f:6d:d6:af:d1:
+                    b1:13:8e:a9:ad:f3:5e:69:75:26:18:3e:41:2b:21:
+                    7f:ee:8b:5d:07:06:9d:43:c4:29:0a:2b:fc:2a:3e:
+                    86:cb:3c:83:3a:f9:c9:0d:da:c5:99:e2:bc:78:41:
+                    33:76:e1:bf:2f:5d:e5:a4:98:50:0c:15:dd:e0:fa:
+                    9c:7f:38:68:d0:b2:a6:7a:a7:d1:31:bd:7e:8a:58:
+                    27:43:b3:ba:33:91:d3:a7:98:15:5c:9a:e6:d3:0f:
+                    75:d9:fc:41:98:97:3e:aa:25:db:8f:92:2e:b0:7b:
+                    0c:5f:f1:63:a9:37:f9:9b:75:69:4c:28:26:25:da:
+                    d5:f2:12:70:45:55:e3:df:73:5e:37:f5:21:6c:90:
+                    8e:35:5a:c9:d3:23:eb:d3:c0:be:78:ac:42:28:58:
+                    66:a5:46:6d:70:02:d7:10:f9:4b:54:fc:5d:86:4a:
+                    87:cf:7f:ca:45:ac:11:5a:b5:20:51:8d:2f:88:47:
+                    97:39:c0:cf:ba:c0:42:01:40:99:48:21:0b:6b:a7:
+                    d2:fd:96:d5:d1:be:46:9d:49:e0:0b:a6:a0:22:4e:
+                    38:d0:c1:3c:30:bc:70:8f:2c:75:cc:d0:c5:8c:51:
+                    3b:3d:94:08:64:26:61:7d:b9:c3:65:8f:14:9c:21:
+                    d0:aa:fd:17:72:03:8f:bd:9b:8c:e6:5e:53:9e:b9:
+                    9d:ef:82:bb:e1:bc:e2:72:41:5b:21:94:d3:45:37:
+                    94:d1:df:09:39:5d:e7:23:aa:9a:1d:ca:6d:a8:0a:
+                    86:85:8a:82:be:42:07:d6:f2:38:82:73:da:87:5b:
+                    e5:3c:d3:9e:3e:a7:3b:9e:f4:03:b3:f9:f1:7d:13:
+                    74:02:ff:bb:a1:e5:fa:00:79:1c:a6:66:41:88:5c:
+                    60:57:a6:2e:09:c4:ba:fd:9a:cf:a7:1f:40:c3:bb:
+                    cc:5a:0a:55:4b:3b:38:76:51:b8:63:8b:84:94:16:
+                    e6:56:f3
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Basic Constraints: critical
+                CA:TRUE
+            X509v3 Key Usage: critical
+                Certificate Sign, CRL Sign
+            X509v3 Subject Key Identifier: 
+                FE:AB:00:90:98:9E:24:FC:A9:CC:1A:8A:FB:27:B8:BF:30:6E:A8:3B
+    Signature Algorithm: sha256WithRSAEncryption
+         cf:77:2c:6e:56:be:4e:b3:b6:84:00:94:ab:47:c9:0d:d2:76:
+         c7:86:9f:1d:07:d3:b6:b4:bb:08:78:af:69:d2:0b:49:de:33:
+         c5:ac:ad:c2:88:02:7d:06:b7:35:02:c1:60:c9:bf:c4:e8:94:
+         de:d4:d3:a9:13:25:5a:fe:6e:a2:ae:7d:05:dc:7d:f3:6c:f0:
+         7e:a6:8d:ee:d9:d7:ce:58:17:e8:a9:29:ae:73:48:87:e7:9b:
+         ca:6e:29:a1:64:5f:19:13:f7:ae:06:10:ff:51:c6:9b:4d:55:
+         25:4f:93:99:10:01:53:75:f1:13:ce:c7:a6:41:41:d2:bf:88:
+         a5:7f:45:fc:ac:b8:a5:b5:33:0c:82:c4:fb:07:f6:6a:e5:25:
+         84:5f:06:ca:c1:86:39:11:db:58:cd:77:3b:2c:c2:4c:0f:5e:
+         9a:e3:f0:ab:3e:61:1b:50:24:c2:c0:f4:f1:19:f0:11:29:b6:
+         a5:18:02:9b:d7:63:4c:70:8c:47:a3:03:43:5c:b9:5d:46:a0:
+         0d:6f:ff:59:8e:be:dd:9f:72:c3:5b:2b:df:8c:5b:ce:e5:0c:
+         46:6c:92:b2:0a:a3:4c:54:42:18:15:12:18:bd:da:fc:ba:74:
+         6e:ff:c1:b6:a0:64:d8:a9:5f:55:ae:9f:5c:6a:76:96:d8:73:
+         67:87:fb:4d:7f:5c:ee:69:ca:73:10:fb:8a:a9:fd:9e:bd:36:
+         38:49:49:87:f4:0e:14:f0:e9:87:b8:3f:a7:4f:7a:5a:8e:79:
+         d4:93:e4:bb:68:52:84:ac:6c:e9:f3:98:70:55:72:32:f9:34:
+         ab:2b:49:b5:cd:20:62:e4:3a:7a:67:63:ab:96:dc:6d:ae:97:
+         ec:fc:9f:76:56:88:2e:66:cf:5b:b6:c9:a4:b0:d7:05:ba:e1:
+         27:2f:93:bb:26:2a:a2:93:b0:1b:f3:8e:be:1d:40:a3:b9:36:
+         8f:3e:82:1a:1a:5e:88:ea:50:f8:59:e2:83:46:29:0b:e3:44:
+         5c:e1:95:b6:69:90:9a:14:6f:97:ae:81:cf:68:ef:99:9a:be:
+         b5:e7:e1:7f:f8:fa:13:47:16:4c:cc:6d:08:40:e7:8b:78:6f:
+         50:82:44:50:3f:66:06:8a:ab:43:84:56:4a:0f:20:2d:86:0e:
+         f5:d2:db:d2:7a:8a:4b:cd:a5:e8:4e:f1:5e:26:25:01:59:23:
+         a0:7e:d2:f6:7e:21:57:d7:27:bc:15:57:4c:a4:46:c1:e0:83:
+         1e:0c:4c:4d:1f:4f:06:19:e2:f9:a8:f4:3a:82:a1:b2:79:43:
+         79:d6:ad:6f:7a:27:90:03:a4:ea:24:87:3f:d9:bd:d9:e9:f2:
+         5f:50:49:1c:ee:ec:d7:2e
+SHA1 Fingerprint=76:E2:7E:C1:4F:DB:82:C1:C0:A6:75:B5:05:BE:3D:29:B4:ED:DB:BB
diff --git a/luni/src/main/files/cacerts/4be590e0.0 b/luni/src/main/files/cacerts/4be590e0.0
new file mode 100644
index 0000000..788aff7
--- /dev/null
+++ b/luni/src/main/files/cacerts/4be590e0.0
@@ -0,0 +1,120 @@
+-----BEGIN CERTIFICATE-----
+MIIFZjCCA06gAwIBAgIQCgFCgAAAAUUjz0Z8AAAAAjANBgkqhkiG9w0BAQsFADBN
+MQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MSowKAYDVQQDEyFJZGVu
+VHJ1c3QgUHVibGljIFNlY3RvciBSb290IENBIDEwHhcNMTQwMTE2MTc1MzMyWhcN
+MzQwMTE2MTc1MzMyWjBNMQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0
+MSowKAYDVQQDEyFJZGVuVHJ1c3QgUHVibGljIFNlY3RvciBSb290IENBIDEwggIi
+MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2IpT8pEiv6EdrCvsnduTyP4o7
+ekosMSqMjbCpwzFrqHd2hCa2rIFCDQjrVVi7evi8ZX3yoG2LqEfpYnYeEe4IFNGy
+RBb06tD6Hi9e28tzQa68ALBKK0CyrOE7S8ItneShm+waOh7wCLPQ5CQ1B5+ctMlS
+bdsHyo+1W/CD80/HLaXIrcuVIKQxKFdYWuSNG5qrng0M8gozOSI5Cpcu81N3uURF
+/YTLNiCBWS2ab21ISGHKTN9T0a9SvESfqy9rg3LvdYDaBjMbXcjaY8ZNzaxmMc3R
+3j6HEDbhuaR672BQssvKplbgN6+rNBM5Jeg5ZuSYeqoSmJxZZoY+rfGwyj4GD3vw
+EUs3oERte8uojHH01bWRNszwFcYr3lEXsZdMUD2xlVl8BX0tIdUAvwFnol57plzy
+9yLxkA2T26pEUWbMfXYD62qoKjgZl3YNa4ph+bz27nb9cCvdKTz4Ch5bQhyLVi9V
+GxyhLrXHFub4qjySjmm2AcG1hp2JDws4lFTo6tyePSW8Uybt1as5qsVATFSrsrTZ
+2fjXctscvG29ZV/viDUqZi/u9rNl8DONfJhBaUYPQxxp+pu10GFqzcpL2UyQRqsV
+WaFHVCkugyhfHMKiq3IXAAaOReyL4jM9f9oZRORicsPfIsbyVtTdX5Vy7W1f90gD
+W/3FKqD2cyOEEBsB5wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/
+BAUwAwEB/zAdBgNVHQ4EFgQU43HgntinQtnbcZFrlJPrw6PRFKMwDQYJKoZIhvcN
+AQELBQADggIBAEf63QqwEZE4rU1d9+UOl1QZgkiHVIyqZJnYWv6IAcVYpZmxI1Qj
+t2odIFflAWJBF9MJ23XLblSQdf4an4EKwt3X9wnQW3IV5B4Jaj0z8yGa5hV+rVHV
+DRDtfULAj+7AmgjVQdZcDiFpboBhDhXAuM/FSRJSzL46zNQuOAXeNf0fb7iAaJg9
+TaDKQGXSc3z1i9kKlT/YPyNtGtEqJBnZhbMX73huqVjRI9PHE+1yJX9dsXNw0H8G
+lwmEKYBhHfpe/3OsoOOJuBxxFcbeMX8S3OFtm6/n6J91eEyrRjuazr8FGF1NFTwW
+mhlQBJqymm9li1JfPFgEKCXAZmExfrngdbkaqIHWchezxQMxNRF4eKLg6TCMf4Df
+WN88uieW4oA0beOY02QnrEh+KHdcxiVhJfiFDGX6xDIvpZgF5PgLZxYWxoK4Mhn5
++bl53B/N66+rDt0b20XkeucC4pVd/GnwU2lhlXV5C15V5jgclKlZM57IcXR5f1GJ
+tshquDDIajjDbp7hNxbqBWJMWxJH7ae0s1hWx0nzfxJoCTFx8G34Tkf71oXuxVhA
+GaQdp/lLQzfcaFpPz+vCZHTetBXZ9FRUGi8c15dxVJCO2SCdUyt/q4/i6jC8UDfv
+8Ue1fXwsBOxonbRJRBD0ckscZOf85muQ3Wl9af0AVqW3rLatt8o+Ae+c
+-----END CERTIFICATE-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number:
+            0a:01:42:80:00:00:01:45:23:cf:46:7c:00:00:00:02
+    Signature Algorithm: sha256WithRSAEncryption
+        Issuer: C=US, O=IdenTrust, CN=IdenTrust Public Sector Root CA 1
+        Validity
+            Not Before: Jan 16 17:53:32 2014 GMT
+            Not After : Jan 16 17:53:32 2034 GMT
+        Subject: C=US, O=IdenTrust, CN=IdenTrust Public Sector Root CA 1
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (4096 bit)
+                Modulus:
+                    00:b6:22:94:fc:a4:48:af:e8:47:6b:0a:fb:27:76:
+                    e4:f2:3f:8a:3b:7a:4a:2c:31:2a:8c:8d:b0:a9:c3:
+                    31:6b:a8:77:76:84:26:b6:ac:81:42:0d:08:eb:55:
+                    58:bb:7a:f8:bc:65:7d:f2:a0:6d:8b:a8:47:e9:62:
+                    76:1e:11:ee:08:14:d1:b2:44:16:f4:ea:d0:fa:1e:
+                    2f:5e:db:cb:73:41:ae:bc:00:b0:4a:2b:40:b2:ac:
+                    e1:3b:4b:c2:2d:9d:e4:a1:9b:ec:1a:3a:1e:f0:08:
+                    b3:d0:e4:24:35:07:9f:9c:b4:c9:52:6d:db:07:ca:
+                    8f:b5:5b:f0:83:f3:4f:c7:2d:a5:c8:ad:cb:95:20:
+                    a4:31:28:57:58:5a:e4:8d:1b:9a:ab:9e:0d:0c:f2:
+                    0a:33:39:22:39:0a:97:2e:f3:53:77:b9:44:45:fd:
+                    84:cb:36:20:81:59:2d:9a:6f:6d:48:48:61:ca:4c:
+                    df:53:d1:af:52:bc:44:9f:ab:2f:6b:83:72:ef:75:
+                    80:da:06:33:1b:5d:c8:da:63:c6:4d:cd:ac:66:31:
+                    cd:d1:de:3e:87:10:36:e1:b9:a4:7a:ef:60:50:b2:
+                    cb:ca:a6:56:e0:37:af:ab:34:13:39:25:e8:39:66:
+                    e4:98:7a:aa:12:98:9c:59:66:86:3e:ad:f1:b0:ca:
+                    3e:06:0f:7b:f0:11:4b:37:a0:44:6d:7b:cb:a8:8c:
+                    71:f4:d5:b5:91:36:cc:f0:15:c6:2b:de:51:17:b1:
+                    97:4c:50:3d:b1:95:59:7c:05:7d:2d:21:d5:00:bf:
+                    01:67:a2:5e:7b:a6:5c:f2:f7:22:f1:90:0d:93:db:
+                    aa:44:51:66:cc:7d:76:03:eb:6a:a8:2a:38:19:97:
+                    76:0d:6b:8a:61:f9:bc:f6:ee:76:fd:70:2b:dd:29:
+                    3c:f8:0a:1e:5b:42:1c:8b:56:2f:55:1b:1c:a1:2e:
+                    b5:c7:16:e6:f8:aa:3c:92:8e:69:b6:01:c1:b5:86:
+                    9d:89:0f:0b:38:94:54:e8:ea:dc:9e:3d:25:bc:53:
+                    26:ed:d5:ab:39:aa:c5:40:4c:54:ab:b2:b4:d9:d9:
+                    f8:d7:72:db:1c:bc:6d:bd:65:5f:ef:88:35:2a:66:
+                    2f:ee:f6:b3:65:f0:33:8d:7c:98:41:69:46:0f:43:
+                    1c:69:fa:9b:b5:d0:61:6a:cd:ca:4b:d9:4c:90:46:
+                    ab:15:59:a1:47:54:29:2e:83:28:5f:1c:c2:a2:ab:
+                    72:17:00:06:8e:45:ec:8b:e2:33:3d:7f:da:19:44:
+                    e4:62:72:c3:df:22:c6:f2:56:d4:dd:5f:95:72:ed:
+                    6d:5f:f7:48:03:5b:fd:c5:2a:a0:f6:73:23:84:10:
+                    1b:01:e7
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Key Usage: critical
+                Certificate Sign, CRL Sign
+            X509v3 Basic Constraints: critical
+                CA:TRUE
+            X509v3 Subject Key Identifier: 
+                E3:71:E0:9E:D8:A7:42:D9:DB:71:91:6B:94:93:EB:C3:A3:D1:14:A3
+    Signature Algorithm: sha256WithRSAEncryption
+         47:fa:dd:0a:b0:11:91:38:ad:4d:5d:f7:e5:0e:97:54:19:82:
+         48:87:54:8c:aa:64:99:d8:5a:fe:88:01:c5:58:a5:99:b1:23:
+         54:23:b7:6a:1d:20:57:e5:01:62:41:17:d3:09:db:75:cb:6e:
+         54:90:75:fe:1a:9f:81:0a:c2:dd:d7:f7:09:d0:5b:72:15:e4:
+         1e:09:6a:3d:33:f3:21:9a:e6:15:7e:ad:51:d5:0d:10:ed:7d:
+         42:c0:8f:ee:c0:9a:08:d5:41:d6:5c:0e:21:69:6e:80:61:0e:
+         15:c0:b8:cf:c5:49:12:52:cc:be:3a:cc:d4:2e:38:05:de:35:
+         fd:1f:6f:b8:80:68:98:3d:4d:a0:ca:40:65:d2:73:7c:f5:8b:
+         d9:0a:95:3f:d8:3f:23:6d:1a:d1:2a:24:19:d9:85:b3:17:ef:
+         78:6e:a9:58:d1:23:d3:c7:13:ed:72:25:7f:5d:b1:73:70:d0:
+         7f:06:97:09:84:29:80:61:1d:fa:5e:ff:73:ac:a0:e3:89:b8:
+         1c:71:15:c6:de:31:7f:12:dc:e1:6d:9b:af:e7:e8:9f:75:78:
+         4c:ab:46:3b:9a:ce:bf:05:18:5d:4d:15:3c:16:9a:19:50:04:
+         9a:b2:9a:6f:65:8b:52:5f:3c:58:04:28:25:c0:66:61:31:7e:
+         b9:e0:75:b9:1a:a8:81:d6:72:17:b3:c5:03:31:35:11:78:78:
+         a2:e0:e9:30:8c:7f:80:df:58:df:3c:ba:27:96:e2:80:34:6d:
+         e3:98:d3:64:27:ac:48:7e:28:77:5c:c6:25:61:25:f8:85:0c:
+         65:fa:c4:32:2f:a5:98:05:e4:f8:0b:67:16:16:c6:82:b8:32:
+         19:f9:f9:b9:79:dc:1f:cd:eb:af:ab:0e:dd:1b:db:45:e4:7a:
+         e7:02:e2:95:5d:fc:69:f0:53:69:61:95:75:79:0b:5e:55:e6:
+         38:1c:94:a9:59:33:9e:c8:71:74:79:7f:51:89:b6:c8:6a:b8:
+         30:c8:6a:38:c3:6e:9e:e1:37:16:ea:05:62:4c:5b:12:47:ed:
+         a7:b4:b3:58:56:c7:49:f3:7f:12:68:09:31:71:f0:6d:f8:4e:
+         47:fb:d6:85:ee:c5:58:40:19:a4:1d:a7:f9:4b:43:37:dc:68:
+         5a:4f:cf:eb:c2:64:74:de:b4:15:d9:f4:54:54:1a:2f:1c:d7:
+         97:71:54:90:8e:d9:20:9d:53:2b:7f:ab:8f:e2:ea:30:bc:50:
+         37:ef:f1:47:b5:7d:7c:2c:04:ec:68:9d:b4:49:44:10:f4:72:
+         4b:1c:64:e7:fc:e6:6b:90:dd:69:7d:69:fd:00:56:a5:b7:ac:
+         b6:ad:b7:ca:3e:01:ef:9c
+SHA1 Fingerprint=BA:29:41:60:77:98:3F:F4:F3:EF:F2:31:05:3B:2E:EA:6D:4D:45:FD
diff --git a/luni/src/main/files/cacerts/5a250ea7.0 b/luni/src/main/files/cacerts/5a250ea7.0
new file mode 100644
index 0000000..4561d51
--- /dev/null
+++ b/luni/src/main/files/cacerts/5a250ea7.0
@@ -0,0 +1,120 @@
+-----BEGIN CERTIFICATE-----
+MIIFdDCCA1ygAwIBAgIEAJiiOTANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJO
+TDEeMBwGA1UECgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFh
+dCBkZXIgTmVkZXJsYW5kZW4gUm9vdCBDQSAtIEczMB4XDTEzMTExNDExMjg0MloX
+DTI4MTExMzIzMDAwMFowWjELMAkGA1UEBhMCTkwxHjAcBgNVBAoMFVN0YWF0IGRl
+ciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5lZGVybGFuZGVuIFJv
+b3QgQ0EgLSBHMzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAL4yolQP
+cPssXFnrbMSkUeiFKrPMSjTysF/zDsccPVMeiAho2G89rcKezIJnByeHaHE6n3WW
+IkYFsO2tx1ueKt6c/DrGlaf1F2cY5y9JCAxcz+bMNO14+1Cx3Gsy8KL+tjzk7FqX
+xz8ecAgwoNzFs21v0IJyEavSgWhZghe3eJJg+szeP4TrjTgzkApyI/o1zCZxMdFy
+KJLZWyNtZrVtB0LrpjPOktvA9mxjeM3KTj215VKb8b475lRgsGYeCasH/lSJEULR
+9yS6YHgamPfJEf0WwTUaVHXvQ9Plrk7O53vDxk5hUUurmkVLoR9BvUhTFXFkC4az
+5S6+zqQbwSmEorXLCCN2QyIkHxcE1G6cxvx/K2Ya7Irl1s9N9WMJtxU51nus6+N8
+6U78dULI7ViVDAZCopz35HCz33JvWjdAidiFpNfxC95DGdRKWCyMijmev4SH8RY7
+Ngzp07TKbBlBUgmhHbBqv4LvcFEhMtwFdozL92TkA1CvjJFnq8Xy7ljY3r735zHP
+bMk7ccHViLVlvMDoFxcHErVc0qsgk7TmgoNwNsXNo42ti+yjwUOH5kPiNL6VizXt
+BznaqB16nzaeErAMZRKQFWDZJkBE41ZgpRDUajz9QdwOWke275dhdU/Z/seyHdTt
+XUmzqWrLZoQT1Vyg3N9udwbRcXXIV2+vD3dbAgMBAAGjQjBAMA8GA1UdEwEB/wQF
+MAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRUrfrHkleuyjWcLhL75Lpd
+INyUVzANBgkqhkiG9w0BAQsFAAOCAgEAMJmdBTLIXg47mAE6iqTnB/d6+Oea31BD
+U5cqPco8R5gu4RV78ZLzYdqQJRZlwJ9UXQ4DO1t3ApyEtg2YXzTdO2PCwyiBwpwp
+LiniyMMB8jPqKqrMCQj3ZWfGzd/TtiunvczRDnBfuCPRy5FOCvTIeuXZYzbB1N/8
+Ipf3YF3qKS9Ysr1YvY2WTxB1v0h7PVGHoTx0IsL8B3+A3MSs/mrBcDCw6Y5p4ixp
+gZQJut3+TcCDjJRYwEYgr5wfAvg1VUkvRtTA8KCWAg8zxXHzniN9lLf9OtMJgwYh
+/WA9rjLA0u6NpvDntIJ8CsxwyXmA+P5M9zWEGYox+wrZ13+b8KKaa8MFSu1BYBQw
+0aoRQm7TIwIEC8Zl3d1Sd9qBa7Ko+gE4uZbqKmxnl4mUnrzhVNXkanjvSr0rmj1A
+fsbAddJu+2gw7OyLnflJNZoaLNmzlTnVHpL3prllL+U9bTpITAjc5CgSKL59NVzq
+4BZ+Extq1z7XnvwtdbLBFNUjA9tbbws+eC8N3jONFrdI54OagQ97wUNNVQQXOEpR
+1VmiiXTTn74eS9fGbbeIJG9gkaSChVtWQbzQRKtqE77RLFi3EjNYsjdj3BP1lB0/
+QFH1T/U67cjF68IeHRaVesd+QnGTbksVtzDfqu1XhUisHWrdOWnk4Xl4vs4Fv6EM
+94B7IWcnMFk=
+-----END CERTIFICATE-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 10003001 (0x98a239)
+    Signature Algorithm: sha256WithRSAEncryption
+        Issuer: C=NL, O=Staat der Nederlanden, CN=Staat der Nederlanden Root CA - G3
+        Validity
+            Not Before: Nov 14 11:28:42 2013 GMT
+            Not After : Nov 13 23:00:00 2028 GMT
+        Subject: C=NL, O=Staat der Nederlanden, CN=Staat der Nederlanden Root CA - G3
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (4096 bit)
+                Modulus:
+                    00:be:32:a2:54:0f:70:fb:2c:5c:59:eb:6c:c4:a4:
+                    51:e8:85:2a:b3:cc:4a:34:f2:b0:5f:f3:0e:c7:1c:
+                    3d:53:1e:88:08:68:d8:6f:3d:ad:c2:9e:cc:82:67:
+                    07:27:87:68:71:3a:9f:75:96:22:46:05:b0:ed:ad:
+                    c7:5b:9e:2a:de:9c:fc:3a:c6:95:a7:f5:17:67:18:
+                    e7:2f:49:08:0c:5c:cf:e6:cc:34:ed:78:fb:50:b1:
+                    dc:6b:32:f0:a2:fe:b6:3c:e4:ec:5a:97:c7:3f:1e:
+                    70:08:30:a0:dc:c5:b3:6d:6f:d0:82:72:11:ab:d2:
+                    81:68:59:82:17:b7:78:92:60:fa:cc:de:3f:84:eb:
+                    8d:38:33:90:0a:72:23:fa:35:cc:26:71:31:d1:72:
+                    28:92:d9:5b:23:6d:66:b5:6d:07:42:eb:a6:33:ce:
+                    92:db:c0:f6:6c:63:78:cd:ca:4e:3d:b5:e5:52:9b:
+                    f1:be:3b:e6:54:60:b0:66:1e:09:ab:07:fe:54:89:
+                    11:42:d1:f7:24:ba:60:78:1a:98:f7:c9:11:fd:16:
+                    c1:35:1a:54:75:ef:43:d3:e5:ae:4e:ce:e7:7b:c3:
+                    c6:4e:61:51:4b:ab:9a:45:4b:a1:1f:41:bd:48:53:
+                    15:71:64:0b:86:b3:e5:2e:be:ce:a4:1b:c1:29:84:
+                    a2:b5:cb:08:23:76:43:22:24:1f:17:04:d4:6e:9c:
+                    c6:fc:7f:2b:66:1a:ec:8a:e5:d6:cf:4d:f5:63:09:
+                    b7:15:39:d6:7b:ac:eb:e3:7c:e9:4e:fc:75:42:c8:
+                    ed:58:95:0c:06:42:a2:9c:f7:e4:70:b3:df:72:6f:
+                    5a:37:40:89:d8:85:a4:d7:f1:0b:de:43:19:d4:4a:
+                    58:2c:8c:8a:39:9e:bf:84:87:f1:16:3b:36:0c:e9:
+                    d3:b4:ca:6c:19:41:52:09:a1:1d:b0:6a:bf:82:ef:
+                    70:51:21:32:dc:05:76:8c:cb:f7:64:e4:03:50:af:
+                    8c:91:67:ab:c5:f2:ee:58:d8:de:be:f7:e7:31:cf:
+                    6c:c9:3b:71:c1:d5:88:b5:65:bc:c0:e8:17:17:07:
+                    12:b5:5c:d2:ab:20:93:b4:e6:82:83:70:36:c5:cd:
+                    a3:8d:ad:8b:ec:a3:c1:43:87:e6:43:e2:34:be:95:
+                    8b:35:ed:07:39:da:a8:1d:7a:9f:36:9e:12:b0:0c:
+                    65:12:90:15:60:d9:26:40:44:e3:56:60:a5:10:d4:
+                    6a:3c:fd:41:dc:0e:5a:47:b6:ef:97:61:75:4f:d9:
+                    fe:c7:b2:1d:d4:ed:5d:49:b3:a9:6a:cb:66:84:13:
+                    d5:5c:a0:dc:df:6e:77:06:d1:71:75:c8:57:6f:af:
+                    0f:77:5b
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Basic Constraints: critical
+                CA:TRUE
+            X509v3 Key Usage: critical
+                Certificate Sign, CRL Sign
+            X509v3 Subject Key Identifier: 
+                54:AD:FA:C7:92:57:AE:CA:35:9C:2E:12:FB:E4:BA:5D:20:DC:94:57
+    Signature Algorithm: sha256WithRSAEncryption
+         30:99:9d:05:32:c8:5e:0e:3b:98:01:3a:8a:a4:e7:07:f7:7a:
+         f8:e7:9a:df:50:43:53:97:2a:3d:ca:3c:47:98:2e:e1:15:7b:
+         f1:92:f3:61:da:90:25:16:65:c0:9f:54:5d:0e:03:3b:5b:77:
+         02:9c:84:b6:0d:98:5f:34:dd:3b:63:c2:c3:28:81:c2:9c:29:
+         2e:29:e2:c8:c3:01:f2:33:ea:2a:aa:cc:09:08:f7:65:67:c6:
+         cd:df:d3:b6:2b:a7:bd:cc:d1:0e:70:5f:b8:23:d1:cb:91:4e:
+         0a:f4:c8:7a:e5:d9:63:36:c1:d4:df:fc:22:97:f7:60:5d:ea:
+         29:2f:58:b2:bd:58:bd:8d:96:4f:10:75:bf:48:7b:3d:51:87:
+         a1:3c:74:22:c2:fc:07:7f:80:dc:c4:ac:fe:6a:c1:70:30:b0:
+         e9:8e:69:e2:2c:69:81:94:09:ba:dd:fe:4d:c0:83:8c:94:58:
+         c0:46:20:af:9c:1f:02:f8:35:55:49:2f:46:d4:c0:f0:a0:96:
+         02:0f:33:c5:71:f3:9e:23:7d:94:b7:fd:3a:d3:09:83:06:21:
+         fd:60:3d:ae:32:c0:d2:ee:8d:a6:f0:e7:b4:82:7c:0a:cc:70:
+         c9:79:80:f8:fe:4c:f7:35:84:19:8a:31:fb:0a:d9:d7:7f:9b:
+         f0:a2:9a:6b:c3:05:4a:ed:41:60:14:30:d1:aa:11:42:6e:d3:
+         23:02:04:0b:c6:65:dd:dd:52:77:da:81:6b:b2:a8:fa:01:38:
+         b9:96:ea:2a:6c:67:97:89:94:9e:bc:e1:54:d5:e4:6a:78:ef:
+         4a:bd:2b:9a:3d:40:7e:c6:c0:75:d2:6e:fb:68:30:ec:ec:8b:
+         9d:f9:49:35:9a:1a:2c:d9:b3:95:39:d5:1e:92:f7:a6:b9:65:
+         2f:e5:3d:6d:3a:48:4c:08:dc:e4:28:12:28:be:7d:35:5c:ea:
+         e0:16:7e:13:1b:6a:d7:3e:d7:9e:fc:2d:75:b2:c1:14:d5:23:
+         03:db:5b:6f:0b:3e:78:2f:0d:de:33:8d:16:b7:48:e7:83:9a:
+         81:0f:7b:c1:43:4d:55:04:17:38:4a:51:d5:59:a2:89:74:d3:
+         9f:be:1e:4b:d7:c6:6d:b7:88:24:6f:60:91:a4:82:85:5b:56:
+         41:bc:d0:44:ab:6a:13:be:d1:2c:58:b7:12:33:58:b2:37:63:
+         dc:13:f5:94:1d:3f:40:51:f5:4f:f5:3a:ed:c8:c5:eb:c2:1e:
+         1d:16:95:7a:c7:7e:42:71:93:6e:4b:15:b7:30:df:aa:ed:57:
+         85:48:ac:1d:6a:dd:39:69:e4:e1:79:78:be:ce:05:bf:a1:0c:
+         f7:80:7b:21:67:27:30:59
+SHA1 Fingerprint=D8:EB:6B:41:51:92:59:E0:F3:E7:85:00:C0:3D:B6:88:97:C9:EE:FC
diff --git a/luni/src/main/files/cacerts/6645de82.0 b/luni/src/main/files/cacerts/6645de82.0
new file mode 100644
index 0000000..4b1ee7b
--- /dev/null
+++ b/luni/src/main/files/cacerts/6645de82.0
@@ -0,0 +1,82 @@
+-----BEGIN CERTIFICATE-----
+MIIEJjCCAw6gAwIBAgIGfaHyZeyKMA0GCSqGSIb3DQEBCwUAMIGxMQswCQYDVQQG
+EwJUUjEPMA0GA1UEBwwGQW5rYXJhMU0wSwYDVQQKDERUw5xSS1RSVVNUIEJpbGdp
+IMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSBB
+LsWeLjFCMEAGA1UEAww5VMOcUktUUlVTVCBFbGVrdHJvbmlrIFNlcnRpZmlrYSBI
+aXptZXQgU2HEn2xhecSxY8Sxc8SxIEg2MB4XDTEzMTIxODA5MDQxMFoXDTIzMTIx
+NjA5MDQxMFowgbExCzAJBgNVBAYTAlRSMQ8wDQYDVQQHDAZBbmthcmExTTBLBgNV
+BAoMRFTDnFJLVFJVU1QgQmlsZ2kgxLBsZXRpxZ9pbSB2ZSBCaWxpxZ9pbSBHw7x2
+ZW5sacSfaSBIaXptZXRsZXJpIEEuxZ4uMUIwQAYDVQQDDDlUw5xSS1RSVVNUIEVs
+ZWt0cm9uaWsgU2VydGlmaWthIEhpem1ldCBTYcSfbGF5xLFjxLFzxLEgSDYwggEi
+MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCdsGjW6L0UlqMACprx9MfMkU1x
+eHe59yEmFXNRFpQJRwXiM/VomjX/3EsvMsew7eKC5W/a2uqsxgbPJQ1BgfbBOCK9
++bGlprMBvD9QFyv26WZV1DOzXPhDIHiTVRZwGTLmiddk671IUP320EEDwnS3/faA
+z1vFq6TWlRKb55cTMgPp1KtDWxbtMyJkKbbSk60vbNg9tvYdDjTu0n2pVQ8g9P0p
+u5FbHH3GQjhtQiht1AH7zYiXSX6484P4tZgvsycLSF5W506jM7NE1qXyGJTtHB6p
+lVxiSvgNZ1GpryHV+DKdeboaX+UEVU0TRv/yz3THGmNtwx8XEsMeED5gCLMxAgMB
+AAGjQjBAMB0GA1UdDgQWBBTdVRcT9qzoSCHK77Wv0QAy7Z6MtTAOBgNVHQ8BAf8E
+BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAb1gNl0Oq
+FlQ+v6nfkkU/hQu7VtMMUszIv3ZnXuaqs6fvuay0EBQNdH49ba3RfdCaqaXKGDsC
+QC4qnFAUi/5XfldcEQlLNkVS9z2sFP1E34uXI9TDwe7UU5X+LEr+DXCqu4svLcsy
+o4LyVN/Y8t3XSHLuSqMplsNEzm61kod2pLv0kmzOLBQJZo6NrRa1xxsJYTvjIKID
+gI6tflEATseWhvtDmHd9KMeP2Cpu54Rvl0EpABZeTeIT6lnAY2c6RPuY/ATTMHKm
+9ocJV612ph1jmv3XZch4gyt1O6VbuA1df74jrlZVlFjvH4GMKrLN5ptjnhi85WsG
+tAuYSyher4hYyw==
+-----END CERTIFICATE-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 138134509972618 (0x7da1f265ec8a)
+    Signature Algorithm: sha256WithRSAEncryption
+        Issuer: C=TR, L=Ankara, O=T\xC3\x9CRKTRUST Bilgi \xC4\xB0leti\xC5\x9Fim ve Bili\xC5\x9Fim G\xC3\xBCvenli\xC4\x9Fi Hizmetleri A.\xC5\x9E., CN=T\xC3\x9CRKTRUST Elektronik Sertifika Hizmet Sa\xC4\x9Flay\xC4\xB1c\xC4\xB1s\xC4\xB1 H6
+        Validity
+            Not Before: Dec 18 09:04:10 2013 GMT
+            Not After : Dec 16 09:04:10 2023 GMT
+        Subject: C=TR, L=Ankara, O=T\xC3\x9CRKTRUST Bilgi \xC4\xB0leti\xC5\x9Fim ve Bili\xC5\x9Fim G\xC3\xBCvenli\xC4\x9Fi Hizmetleri A.\xC5\x9E., CN=T\xC3\x9CRKTRUST Elektronik Sertifika Hizmet Sa\xC4\x9Flay\xC4\xB1c\xC4\xB1s\xC4\xB1 H6
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (2048 bit)
+                Modulus:
+                    00:9d:b0:68:d6:e8:bd:14:96:a3:00:0a:9a:f1:f4:
+                    c7:cc:91:4d:71:78:77:b9:f7:21:26:15:73:51:16:
+                    94:09:47:05:e2:33:f5:68:9a:35:ff:dc:4b:2f:32:
+                    c7:b0:ed:e2:82:e5:6f:da:da:ea:ac:c6:06:cf:25:
+                    0d:41:81:f6:c1:38:22:bd:f9:b1:a5:a6:b3:01:bc:
+                    3f:50:17:2b:f6:e9:66:55:d4:33:b3:5c:f8:43:20:
+                    78:93:55:16:70:19:32:e6:89:d7:64:eb:bd:48:50:
+                    fd:f6:d0:41:03:c2:74:b7:fd:f6:80:cf:5b:c5:ab:
+                    a4:d6:95:12:9b:e7:97:13:32:03:e9:d4:ab:43:5b:
+                    16:ed:33:22:64:29:b6:d2:93:ad:2f:6c:d8:3d:b6:
+                    f6:1d:0e:34:ee:d2:7d:a9:55:0f:20:f4:fd:29:bb:
+                    91:5b:1c:7d:c6:42:38:6d:42:28:6d:d4:01:fb:cd:
+                    88:97:49:7e:b8:f3:83:f8:b5:98:2f:b3:27:0b:48:
+                    5e:56:e7:4e:a3:33:b3:44:d6:a5:f2:18:94:ed:1c:
+                    1e:a9:95:5c:62:4a:f8:0d:67:51:a9:af:21:d5:f8:
+                    32:9d:79:ba:1a:5f:e5:04:55:4d:13:46:ff:f2:cf:
+                    74:c7:1a:63:6d:c3:1f:17:12:c3:1e:10:3e:60:08:
+                    b3:31
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Subject Key Identifier: 
+                DD:55:17:13:F6:AC:E8:48:21:CA:EF:B5:AF:D1:00:32:ED:9E:8C:B5
+            X509v3 Key Usage: critical
+                Certificate Sign, CRL Sign
+            X509v3 Basic Constraints: critical
+                CA:TRUE
+    Signature Algorithm: sha256WithRSAEncryption
+         6f:58:0d:97:43:aa:16:54:3e:bf:a9:df:92:45:3f:85:0b:bb:
+         56:d3:0c:52:cc:c8:bf:76:67:5e:e6:aa:b3:a7:ef:b9:ac:b4:
+         10:14:0d:74:7e:3d:6d:ad:d1:7d:d0:9a:a9:a5:ca:18:3b:02:
+         40:2e:2a:9c:50:14:8b:fe:57:7e:57:5c:11:09:4b:36:45:52:
+         f7:3d:ac:14:fd:44:df:8b:97:23:d4:c3:c1:ee:d4:53:95:fe:
+         2c:4a:fe:0d:70:aa:bb:8b:2f:2d:cb:32:a3:82:f2:54:df:d8:
+         f2:dd:d7:48:72:ee:4a:a3:29:96:c3:44:ce:6e:b5:92:87:76:
+         a4:bb:f4:92:6c:ce:2c:14:09:66:8e:8d:ad:16:b5:c7:1b:09:
+         61:3b:e3:20:a2:03:80:8e:ad:7e:51:00:4e:c7:96:86:fb:43:
+         98:77:7d:28:c7:8f:d8:2a:6e:e7:84:6f:97:41:29:00:16:5e:
+         4d:e2:13:ea:59:c0:63:67:3a:44:fb:98:fc:04:d3:30:72:a6:
+         f6:87:09:57:ad:76:a6:1d:63:9a:fd:d7:65:c8:78:83:2b:75:
+         3b:a5:5b:b8:0d:5d:7f:be:23:ae:56:55:94:58:ef:1f:81:8c:
+         2a:b2:cd:e6:9b:63:9e:18:bc:e5:6b:06:b4:0b:98:4b:28:5e:
+         af:88:58:cb
+SHA1 Fingerprint=8A:5C:8C:EE:A5:03:E6:05:56:BA:D8:1B:D4:F6:C9:B0:ED:E5:2F:E0
diff --git a/luni/src/main/files/cacerts/9282e51c.0 b/luni/src/main/files/cacerts/9282e51c.0
new file mode 100644
index 0000000..f2a9f94
--- /dev/null
+++ b/luni/src/main/files/cacerts/9282e51c.0
@@ -0,0 +1,123 @@
+-----BEGIN CERTIFICATE-----
+MIIFjTCCA3WgAwIBAgIEGErM1jANBgkqhkiG9w0BAQsFADBWMQswCQYDVQQGEwJD
+TjEwMC4GA1UECgwnQ2hpbmEgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9y
+aXR5MRUwEwYDVQQDDAxDRkNBIEVWIFJPT1QwHhcNMTIwODA4MDMwNzAxWhcNMjkx
+MjMxMDMwNzAxWjBWMQswCQYDVQQGEwJDTjEwMC4GA1UECgwnQ2hpbmEgRmluYW5j
+aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRUwEwYDVQQDDAxDRkNBIEVWIFJP
+T1QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDXXWvNED8fBVnVBU03
+sQ7smCuOFR36k0sXgiFxEFLXUWRwFsJVaU2OFW2fvwwbwuCjZ9YMrM8irq93VCpL
+TIpTUnrD7i7es3ElweldPe6hL6P3KjzJIx1qqx2hp/Hz7KDVRM8Vz3IvHWOX6Jn5
+/ZOkVIBMUtRSqy5J35DNuF++P96hyk0g1CXohClTt7GIH//62pCfCqktQT+x8Rgp
+7hZZLDRJGqgG16iI0gNyejLi6mhNbiyWZXvKWfry4t3uMCz7zEasxGPrb382KzRz
+EpR/38wmnvFyXVBlWY9ps4deMm/DGIq1lY+wejfeWkU7xzbh72fROdOXW3NiGUgt
+hxwG+3SYIElz8AXSG7Ggo7cbcNOIabla1jj0Ytwli3i/+Oh+uFzJlU9fpy25IGvP
+a931DfSCt/SyZi4QKPaXWnuWFo8BGS1sbn85WAZkgwGDg8NNkt0yxoekN+kWzqot
+aK8KgWU6cMGbrU1tVMoqLUuFG7OA5nBFDWteNfB/O7ic5ARwiRIlk9oKmSJgamNg
+TnYGmE69g60dWIolhdLHZR4tjsbftsbhf4oEIRUpdPA+nJCdDC7xij5aqgwJHsfV
+PKPtl8MeNPo4+QgO48BdK4PRVmrJtqhUUy54Mmc9gn900PvhtgVguXDbjgv5E1hv
+cWAQUhC5wUEJ73IfZzF4/5YFjQIDAQABo2MwYTAfBgNVHSMEGDAWgBTj/i39KNAL
+tbq2osS/BqoFjJP7LzAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAd
+BgNVHQ4EFgQU4/4t/SjQC7W6tqLEvwaqBYyT+y8wDQYJKoZIhvcNAQELBQADggIB
+ACXGumvrh8vegjmWPfBEp2uEcwPenStPuiB/vHiyz5ewG5zz13ku9Ui20vsXiObT
+ej/tUxPQ4i9qecsAIyjmHjdXNYmEwnZPNDatZ8POQQaIxffu2Bq41gt/UP+TqhdL
+jOztUmCypAbqTuv0axn96/Ua4CUqmtzHQTb3yHQFhDmVOdYLO6Qn+gjYXB74BGBS
+ESgoA//vU2YApUo0FmZ8/Qmkrp5nGm9BC2sGE5uPhnEFtC+NiWYzKXZUmhH4J/qy
+P5Hgzg0b8zAarb8iXRvTvyUFTeGSGn+ZnzxEk8rUQElsgIfXBDrDMlI1Dlb4pd19
+xIsNER9Tyx6yF7Zod1rg1MvIB671Oi6ON7fQAUtDKXeMOZePglr4UeWJoBjnaH9d
+Ci77o0cOPaYjesYBx4/IXr9tgFa+iiS6M+qf4TIRnvHST4D2G0CvOJ4RUHlzEhLN
+5mydLIhyPDCBBpEi6lmt2hkuIsKNuYyH4Ga8cyNfIWRjgEj1oDwYPZTISEEdQLpe
+/v5WOaHIz16eGWRGENoXkbcFgKyLmZJ956LYBws2J+dIeWCKw9cTXPhyQN9Ky8+Z
+AAoACxGV2lZFA4gKn2fQ1XmxqI1AbQ3CekD6819kR5LLU7m7Wc5P/dAVUwHY3+vZ
+5nbv0CO7O6l5s9UCKc2Jo5YPSjXnTkLAdc0Hz+Ys63su
+-----END CERTIFICATE-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 407555286 (0x184accd6)
+    Signature Algorithm: sha256WithRSAEncryption
+        Issuer: C=CN, O=China Financial Certification Authority, CN=CFCA EV ROOT
+        Validity
+            Not Before: Aug  8 03:07:01 2012 GMT
+            Not After : Dec 31 03:07:01 2029 GMT
+        Subject: C=CN, O=China Financial Certification Authority, CN=CFCA EV ROOT
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (4096 bit)
+                Modulus:
+                    00:d7:5d:6b:cd:10:3f:1f:05:59:d5:05:4d:37:b1:
+                    0e:ec:98:2b:8e:15:1d:fa:93:4b:17:82:21:71:10:
+                    52:d7:51:64:70:16:c2:55:69:4d:8e:15:6d:9f:bf:
+                    0c:1b:c2:e0:a3:67:d6:0c:ac:cf:22:ae:af:77:54:
+                    2a:4b:4c:8a:53:52:7a:c3:ee:2e:de:b3:71:25:c1:
+                    e9:5d:3d:ee:a1:2f:a3:f7:2a:3c:c9:23:1d:6a:ab:
+                    1d:a1:a7:f1:f3:ec:a0:d5:44:cf:15:cf:72:2f:1d:
+                    63:97:e8:99:f9:fd:93:a4:54:80:4c:52:d4:52:ab:
+                    2e:49:df:90:cd:b8:5f:be:3f:de:a1:ca:4d:20:d4:
+                    25:e8:84:29:53:b7:b1:88:1f:ff:fa:da:90:9f:0a:
+                    a9:2d:41:3f:b1:f1:18:29:ee:16:59:2c:34:49:1a:
+                    a8:06:d7:a8:88:d2:03:72:7a:32:e2:ea:68:4d:6e:
+                    2c:96:65:7b:ca:59:fa:f2:e2:dd:ee:30:2c:fb:cc:
+                    46:ac:c4:63:eb:6f:7f:36:2b:34:73:12:94:7f:df:
+                    cc:26:9e:f1:72:5d:50:65:59:8f:69:b3:87:5e:32:
+                    6f:c3:18:8a:b5:95:8f:b0:7a:37:de:5a:45:3b:c7:
+                    36:e1:ef:67:d1:39:d3:97:5b:73:62:19:48:2d:87:
+                    1c:06:fb:74:98:20:49:73:f0:05:d2:1b:b1:a0:a3:
+                    b7:1b:70:d3:88:69:b9:5a:d6:38:f4:62:dc:25:8b:
+                    78:bf:f8:e8:7e:b8:5c:c9:95:4f:5f:a7:2d:b9:20:
+                    6b:cf:6b:dd:f5:0d:f4:82:b7:f4:b2:66:2e:10:28:
+                    f6:97:5a:7b:96:16:8f:01:19:2d:6c:6e:7f:39:58:
+                    06:64:83:01:83:83:c3:4d:92:dd:32:c6:87:a4:37:
+                    e9:16:ce:aa:2d:68:af:0a:81:65:3a:70:c1:9b:ad:
+                    4d:6d:54:ca:2a:2d:4b:85:1b:b3:80:e6:70:45:0d:
+                    6b:5e:35:f0:7f:3b:b8:9c:e4:04:70:89:12:25:93:
+                    da:0a:99:22:60:6a:63:60:4e:76:06:98:4e:bd:83:
+                    ad:1d:58:8a:25:85:d2:c7:65:1e:2d:8e:c6:df:b6:
+                    c6:e1:7f:8a:04:21:15:29:74:f0:3e:9c:90:9d:0c:
+                    2e:f1:8a:3e:5a:aa:0c:09:1e:c7:d5:3c:a3:ed:97:
+                    c3:1e:34:fa:38:f9:08:0e:e3:c0:5d:2b:83:d1:56:
+                    6a:c9:b6:a8:54:53:2e:78:32:67:3d:82:7f:74:d0:
+                    fb:e1:b6:05:60:b9:70:db:8e:0b:f9:13:58:6f:71:
+                    60:10:52:10:b9:c1:41:09:ef:72:1f:67:31:78:ff:
+                    96:05:8d
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Authority Key Identifier: 
+                keyid:E3:FE:2D:FD:28:D0:0B:B5:BA:B6:A2:C4:BF:06:AA:05:8C:93:FB:2F
+
+            X509v3 Basic Constraints: critical
+                CA:TRUE
+            X509v3 Key Usage: critical
+                Certificate Sign, CRL Sign
+            X509v3 Subject Key Identifier: 
+                E3:FE:2D:FD:28:D0:0B:B5:BA:B6:A2:C4:BF:06:AA:05:8C:93:FB:2F
+    Signature Algorithm: sha256WithRSAEncryption
+         25:c6:ba:6b:eb:87:cb:de:82:39:96:3d:f0:44:a7:6b:84:73:
+         03:de:9d:2b:4f:ba:20:7f:bc:78:b2:cf:97:b0:1b:9c:f3:d7:
+         79:2e:f5:48:b6:d2:fb:17:88:e6:d3:7a:3f:ed:53:13:d0:e2:
+         2f:6a:79:cb:00:23:28:e6:1e:37:57:35:89:84:c2:76:4f:34:
+         36:ad:67:c3:ce:41:06:88:c5:f7:ee:d8:1a:b8:d6:0b:7f:50:
+         ff:93:aa:17:4b:8c:ec:ed:52:60:b2:a4:06:ea:4e:eb:f4:6b:
+         19:fd:eb:f5:1a:e0:25:2a:9a:dc:c7:41:36:f7:c8:74:05:84:
+         39:95:39:d6:0b:3b:a4:27:fa:08:d8:5c:1e:f8:04:60:52:11:
+         28:28:03:ff:ef:53:66:00:a5:4a:34:16:66:7c:fd:09:a4:ae:
+         9e:67:1a:6f:41:0b:6b:06:13:9b:8f:86:71:05:b4:2f:8d:89:
+         66:33:29:76:54:9a:11:f8:27:fa:b2:3f:91:e0:ce:0d:1b:f3:
+         30:1a:ad:bf:22:5d:1b:d3:bf:25:05:4d:e1:92:1a:7f:99:9f:
+         3c:44:93:ca:d4:40:49:6c:80:87:d7:04:3a:c3:32:52:35:0e:
+         56:f8:a5:dd:7d:c4:8b:0d:11:1f:53:cb:1e:b2:17:b6:68:77:
+         5a:e0:d4:cb:c8:07:ae:f5:3a:2e:8e:37:b7:d0:01:4b:43:29:
+         77:8c:39:97:8f:82:5a:f8:51:e5:89:a0:18:e7:68:7f:5d:0a:
+         2e:fb:a3:47:0e:3d:a6:23:7a:c6:01:c7:8f:c8:5e:bf:6d:80:
+         56:be:8a:24:ba:33:ea:9f:e1:32:11:9e:f1:d2:4f:80:f6:1b:
+         40:af:38:9e:11:50:79:73:12:12:cd:e6:6c:9d:2c:88:72:3c:
+         30:81:06:91:22:ea:59:ad:da:19:2e:22:c2:8d:b9:8c:87:e0:
+         66:bc:73:23:5f:21:64:63:80:48:f5:a0:3c:18:3d:94:c8:48:
+         41:1d:40:ba:5e:fe:fe:56:39:a1:c8:cf:5e:9e:19:64:46:10:
+         da:17:91:b7:05:80:ac:8b:99:92:7d:e7:a2:d8:07:0b:36:27:
+         e7:48:79:60:8a:c3:d7:13:5c:f8:72:40:df:4a:cb:cf:99:00:
+         0a:00:0b:11:95:da:56:45:03:88:0a:9f:67:d0:d5:79:b1:a8:
+         8d:40:6d:0d:c2:7a:40:fa:f3:5f:64:47:92:cb:53:b9:bb:59:
+         ce:4f:fd:d0:15:53:01:d8:df:eb:d9:e6:76:ef:d0:23:bb:3b:
+         a9:79:b3:d5:02:29:cd:89:a3:96:0f:4a:35:e7:4e:42:c0:75:
+         cd:07:cf:e6:2c:eb:7b:2e
+SHA1 Fingerprint=E2:B8:29:4B:55:84:AB:6B:58:C2:90:46:6C:AC:3F:B8:39:8F:84:83
diff --git a/luni/src/main/files/cacerts/d18e9066.0 b/luni/src/main/files/cacerts/d18e9066.0
new file mode 100644
index 0000000..fd686a6
--- /dev/null
+++ b/luni/src/main/files/cacerts/d18e9066.0
@@ -0,0 +1,120 @@
+-----BEGIN CERTIFICATE-----
+MIIFYDCCA0igAwIBAgIQCgFCgAAAAUUjyES1AAAAAjANBgkqhkiG9w0BAQsFADBK
+MQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MScwJQYDVQQDEx5JZGVu
+VHJ1c3QgQ29tbWVyY2lhbCBSb290IENBIDEwHhcNMTQwMTE2MTgxMjIzWhcNMzQw
+MTE2MTgxMjIzWjBKMQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MScw
+JQYDVQQDEx5JZGVuVHJ1c3QgQ29tbWVyY2lhbCBSb290IENBIDEwggIiMA0GCSqG
+SIb3DQEBAQUAA4ICDwAwggIKAoICAQCnUBneP5k91DNG8W9RYYKyqU+PZ4ldhNlT
+3Qwo2dfw/66VQ3KZ+bVdfIrBQuExUHTRgQ18zZshq0PirK1ehm7zCYofWjK9ouuU
++ehcCuz/mNKvcbO0U59Oh++SvL3sTzIwiEsXXlfEU8L2ApeN2WIrvyQfYo3fw7gp
+S0l4PJNgiCL8mdo2yMKi1CxUAGc1bnO/AljwpN3lsKImesrgNqUZFvX9t++uP0D1
+bVoE/c40yiTcdCMbXTMTEl3EASX2MN0CXZ/g1Ue9tOsbobtJSdifWwLziuQkkORi
+T0/Br4sOdBeo0XKIanoBScy0RnnGF7HamB4HWfp1IYVl3ZBWzvurpWCdxJ35UrCL
+vYf5jysjCiN2O/cz4ckA82n5S6LgTrx+kzmEB/dEcH7+B1rlsazRGMzyNeVJSQjK
+Vsk9+w8YfYs7wRPCTY/JTw436R+hDmrfYi7LNQZReSzIJTj0+kuniVyc0uMNOYZK
+dHzVWYfCP04MXFL0PfdSgvHqo6z9STQaKPNBiDoT7uje/5kdX7rL6B7yuVBgwDHT
+c+XvvqDtMwt0viAgxGds8AgDelWAf0ZOlqf0Hj7h9tgJ4TNkK2PXMl6f+cB7D3hv
+l7yTmvmcEpB4eoCHFddydJxVdHixuuFucAS6T6C6aMN7/zHwcz09lCqxC0EOoP5N
+iGVreTO01wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB
+/zAdBgNVHQ4EFgQU7UQZwNPwBovupHu+QucmVMiONnYwDQYJKoZIhvcNAQELBQAD
+ggIBAA2ukDL2pkt8RHYZYR4nKM1eVO8lvOMIkPkp165oCOGUAFjvLi5+U1KMtlwH
+6oi6mYtQlNeCgN9hCQCTrQ0U5s7B8jeUeLBfnLOic7iPBZM4zY0+sLj7wM+x8uwt
+LRvM7Kqas6pgghstO8OEPVeKlh6cdbjTMM1gCIOQ045U8U1mwF10A0Cj7oV+wh93
+nAbowacYXVKV7cndJZ5t+qntozo00Fl72u1Q8zW/7esUTTHHYPTa8Yec4kjixsU3
++wYQ+nVZZjFHKdp2mhzpgq7vmrlR94gjmmmVYjzlVYA211QC//G5Xc7UI2/YRYRK
+W2XviQzdFKcgyxilJbQN+QHwotL0AMh0jqEqSI5l2xPE4iUXfeu+h1sXIFRRk0pT
+AwvsXcoz7WL9RccvW9xYoIA55vrX/hMUpu09lEpCdNTDd1lzzY9GvlU47/rokTLq
+l1gEIt44w8y8bckzOmoKaT+gyOpyj4xjhiO9bTyWnpXgSUyqorkqG5w2gXjtw+hG
+4iZZRHUe2XWJUc0QhJ1hYMtd+ZciTY6Y5uN/9lu7rs3KSoFrXgvzUeF0K+l+J6fZ
+mUlO+KWA2yUPHGNiiskzZ2s8EIPGrd6ozRaOjfAHN3Gf8qv8QfXBi+wAN10J5U6A
+7/qxXDgGpRtK4dw4LTzcqx+QGtVKnO7RcGzM7vRX+Bi6hG6H
+-----END CERTIFICATE-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number:
+            0a:01:42:80:00:00:01:45:23:c8:44:b5:00:00:00:02
+    Signature Algorithm: sha256WithRSAEncryption
+        Issuer: C=US, O=IdenTrust, CN=IdenTrust Commercial Root CA 1
+        Validity
+            Not Before: Jan 16 18:12:23 2014 GMT
+            Not After : Jan 16 18:12:23 2034 GMT
+        Subject: C=US, O=IdenTrust, CN=IdenTrust Commercial Root CA 1
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (4096 bit)
+                Modulus:
+                    00:a7:50:19:de:3f:99:3d:d4:33:46:f1:6f:51:61:
+                    82:b2:a9:4f:8f:67:89:5d:84:d9:53:dd:0c:28:d9:
+                    d7:f0:ff:ae:95:43:72:99:f9:b5:5d:7c:8a:c1:42:
+                    e1:31:50:74:d1:81:0d:7c:cd:9b:21:ab:43:e2:ac:
+                    ad:5e:86:6e:f3:09:8a:1f:5a:32:bd:a2:eb:94:f9:
+                    e8:5c:0a:ec:ff:98:d2:af:71:b3:b4:53:9f:4e:87:
+                    ef:92:bc:bd:ec:4f:32:30:88:4b:17:5e:57:c4:53:
+                    c2:f6:02:97:8d:d9:62:2b:bf:24:1f:62:8d:df:c3:
+                    b8:29:4b:49:78:3c:93:60:88:22:fc:99:da:36:c8:
+                    c2:a2:d4:2c:54:00:67:35:6e:73:bf:02:58:f0:a4:
+                    dd:e5:b0:a2:26:7a:ca:e0:36:a5:19:16:f5:fd:b7:
+                    ef:ae:3f:40:f5:6d:5a:04:fd:ce:34:ca:24:dc:74:
+                    23:1b:5d:33:13:12:5d:c4:01:25:f6:30:dd:02:5d:
+                    9f:e0:d5:47:bd:b4:eb:1b:a1:bb:49:49:d8:9f:5b:
+                    02:f3:8a:e4:24:90:e4:62:4f:4f:c1:af:8b:0e:74:
+                    17:a8:d1:72:88:6a:7a:01:49:cc:b4:46:79:c6:17:
+                    b1:da:98:1e:07:59:fa:75:21:85:65:dd:90:56:ce:
+                    fb:ab:a5:60:9d:c4:9d:f9:52:b0:8b:bd:87:f9:8f:
+                    2b:23:0a:23:76:3b:f7:33:e1:c9:00:f3:69:f9:4b:
+                    a2:e0:4e:bc:7e:93:39:84:07:f7:44:70:7e:fe:07:
+                    5a:e5:b1:ac:d1:18:cc:f2:35:e5:49:49:08:ca:56:
+                    c9:3d:fb:0f:18:7d:8b:3b:c1:13:c2:4d:8f:c9:4f:
+                    0e:37:e9:1f:a1:0e:6a:df:62:2e:cb:35:06:51:79:
+                    2c:c8:25:38:f4:fa:4b:a7:89:5c:9c:d2:e3:0d:39:
+                    86:4a:74:7c:d5:59:87:c2:3f:4e:0c:5c:52:f4:3d:
+                    f7:52:82:f1:ea:a3:ac:fd:49:34:1a:28:f3:41:88:
+                    3a:13:ee:e8:de:ff:99:1d:5f:ba:cb:e8:1e:f2:b9:
+                    50:60:c0:31:d3:73:e5:ef:be:a0:ed:33:0b:74:be:
+                    20:20:c4:67:6c:f0:08:03:7a:55:80:7f:46:4e:96:
+                    a7:f4:1e:3e:e1:f6:d8:09:e1:33:64:2b:63:d7:32:
+                    5e:9f:f9:c0:7b:0f:78:6f:97:bc:93:9a:f9:9c:12:
+                    90:78:7a:80:87:15:d7:72:74:9c:55:74:78:b1:ba:
+                    e1:6e:70:04:ba:4f:a0:ba:68:c3:7b:ff:31:f0:73:
+                    3d:3d:94:2a:b1:0b:41:0e:a0:fe:4d:88:65:6b:79:
+                    33:b4:d7
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Key Usage: critical
+                Certificate Sign, CRL Sign
+            X509v3 Basic Constraints: critical
+                CA:TRUE
+            X509v3 Subject Key Identifier: 
+                ED:44:19:C0:D3:F0:06:8B:EE:A4:7B:BE:42:E7:26:54:C8:8E:36:76
+    Signature Algorithm: sha256WithRSAEncryption
+         0d:ae:90:32:f6:a6:4b:7c:44:76:19:61:1e:27:28:cd:5e:54:
+         ef:25:bc:e3:08:90:f9:29:d7:ae:68:08:e1:94:00:58:ef:2e:
+         2e:7e:53:52:8c:b6:5c:07:ea:88:ba:99:8b:50:94:d7:82:80:
+         df:61:09:00:93:ad:0d:14:e6:ce:c1:f2:37:94:78:b0:5f:9c:
+         b3:a2:73:b8:8f:05:93:38:cd:8d:3e:b0:b8:fb:c0:cf:b1:f2:
+         ec:2d:2d:1b:cc:ec:aa:9a:b3:aa:60:82:1b:2d:3b:c3:84:3d:
+         57:8a:96:1e:9c:75:b8:d3:30:cd:60:08:83:90:d3:8e:54:f1:
+         4d:66:c0:5d:74:03:40:a3:ee:85:7e:c2:1f:77:9c:06:e8:c1:
+         a7:18:5d:52:95:ed:c9:dd:25:9e:6d:fa:a9:ed:a3:3a:34:d0:
+         59:7b:da:ed:50:f3:35:bf:ed:eb:14:4d:31:c7:60:f4:da:f1:
+         87:9c:e2:48:e2:c6:c5:37:fb:06:10:fa:75:59:66:31:47:29:
+         da:76:9a:1c:e9:82:ae:ef:9a:b9:51:f7:88:23:9a:69:95:62:
+         3c:e5:55:80:36:d7:54:02:ff:f1:b9:5d:ce:d4:23:6f:d8:45:
+         84:4a:5b:65:ef:89:0c:dd:14:a7:20:cb:18:a5:25:b4:0d:f9:
+         01:f0:a2:d2:f4:00:c8:74:8e:a1:2a:48:8e:65:db:13:c4:e2:
+         25:17:7d:eb:be:87:5b:17:20:54:51:93:4a:53:03:0b:ec:5d:
+         ca:33:ed:62:fd:45:c7:2f:5b:dc:58:a0:80:39:e6:fa:d7:fe:
+         13:14:a6:ed:3d:94:4a:42:74:d4:c3:77:59:73:cd:8f:46:be:
+         55:38:ef:fa:e8:91:32:ea:97:58:04:22:de:38:c3:cc:bc:6d:
+         c9:33:3a:6a:0a:69:3f:a0:c8:ea:72:8f:8c:63:86:23:bd:6d:
+         3c:96:9e:95:e0:49:4c:aa:a2:b9:2a:1b:9c:36:81:78:ed:c3:
+         e8:46:e2:26:59:44:75:1e:d9:75:89:51:cd:10:84:9d:61:60:
+         cb:5d:f9:97:22:4d:8e:98:e6:e3:7f:f6:5b:bb:ae:cd:ca:4a:
+         81:6b:5e:0b:f3:51:e1:74:2b:e9:7e:27:a7:d9:99:49:4e:f8:
+         a5:80:db:25:0f:1c:63:62:8a:c9:33:67:6b:3c:10:83:c6:ad:
+         de:a8:cd:16:8e:8d:f0:07:37:71:9f:f2:ab:fc:41:f5:c1:8b:
+         ec:00:37:5d:09:e5:4e:80:ef:fa:b1:5c:38:06:a5:1b:4a:e1:
+         dc:38:2d:3c:dc:ab:1f:90:1a:d5:4a:9c:ee:d1:70:6c:cc:ee:
+         f4:57:f8:18:ba:84:6e:87
+SHA1 Fingerprint=DF:71:7E:AA:4A:D9:4E:C9:55:84:99:60:2D:48:DE:5F:BC:F0:3A:25
diff --git a/luni/src/main/files/cacerts/d6e6eab9.0 b/luni/src/main/files/cacerts/d6e6eab9.0
new file mode 100644
index 0000000..aff6bdf
--- /dev/null
+++ b/luni/src/main/files/cacerts/d6e6eab9.0
@@ -0,0 +1,123 @@
+-----BEGIN CERTIFICATE-----
+MIIFkjCCA3qgAwIBAgIBATANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJGUjET
+MBEGA1UEChMKQ2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxHTAb
+BgNVBAMTFENlcnRpbm9taXMgLSBSb290IENBMB4XDTEzMTAyMTA5MTcxOFoXDTMz
+MTAyMTA5MTcxOFowWjELMAkGA1UEBhMCRlIxEzARBgNVBAoTCkNlcnRpbm9taXMx
+FzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMR0wGwYDVQQDExRDZXJ0aW5vbWlzIC0g
+Um9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANTMCQosP5L2
+fxSeC5yaah1AMGT9qt8OHgZbn1CF6s2Nq0Nn3rD6foCWnoR4kkjW4znuzuRZWJfl
+LieY6pOod5tK8O90gC3rMB+12ceAnGInkYjwSond3IjmFPnVAy//ldu9n+ws+hQV
+WZUKxkd8aRi5pwP5ynapz8dvtF4F/u7BUrJ1Mofs7SlmO/NKFoL21prbcpjp3vDF
+TKWrteoB4owuZH9kb/2jJZOLyKIOSY008B/sWEUuNKqEUL3nskoTuLAPrjhdsKkb
+5nPJWqHZZkCqqU2mNAKthH6yI8H7KsZn9DS2sJVqM09xRLWtwHkziOC/7aOgFLSc
+CbAK42C++PhmiM1b8XcF4LVzbsF9Ri6OSyemzTUK/eVNfaoqoynHWmgE6OXWk6Ri
+wsXm9E/G+Z8ajYJJGYrKWUM66A0ywfRMEwNvbqY/kXPLynNvEiCL7sCCeN5LLsJJ
+wx3tFvYk9CcbXFcx3FXuqB5vbKziRcxXV4p1VxngtViZSTYxPDMBbRZKzbgqg4SG
+m/lg0h9tkQPTYKbVPZrdd5A9NaSfD171UkRpucC63M9933zZxKyGIjK8e2uR73r4
+F2iw4lNVYC2vPsKD2NkJK/DAZNuHi5HMkesE/Xa0lZrmFAYb1TQdvtj/dBxThZng
+WVJKYe2InmtJiUZ+IFrZ50rlau7SZRFDAgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIB
+BjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTvkUz1pcMw6C8I6tNxIqSSaHh0
+2TAfBgNVHSMEGDAWgBTvkUz1pcMw6C8I6tNxIqSSaHh02TANBgkqhkiG9w0BAQsF
+AAOCAgEAfj1U2iJdGlg+O1QnurrMyOMaauo++RLrVl89UM7g6kgmJs95Vn6RHJk/
+0KGRHCwPT5iVWVO90CLYiF2cN/z7ZMF4jIuaYAnq1fohX9B0ZedQxb8uuQsLrbWw
+F6YSjNRieOpWauwK0kDDPAUwPk2Ut59KA9N9J0u2/kTO+hkzGm2kQtHdzMjI1xZS
+g081lLMSVX3l4kLr5JyTCcBMWwerx20RoFAXlCOotQqSD7J6wWAsOMwaplv/8gzj
+qh8c3LigkyfeY+N/IZ865Z764BNqdeuWXGKRlI5nU7aJ+BIJy29SWwNyhlCVCNSN
+h4YVH5Uk2KRvms6knZtt0rJ2BobGVgjF6wnaNsIbW0G+YSrjcOa4pvi2WsS9Iff/
+ql+hbHY5ZtbqTFXhADObE5hjyW/QASAJN1LnDE8+zbz1X5YnpyACleAu6AdBBR8V
+btaw5BngDwKTACdyxYvRVB9dSsNAl35VpnzBMwQUAR1JIGkLGZOdblgi90AMRgwj
+Y/M50n92Uaf0yKHxDHYiI0ZSKS3io0EHVmmY0gUJvGnHWmHNj4FgFU2A3ZDifcRQ
+8ow7bkrHxuaAKzyBvBGAFhAn1/DNP3nMcyrDflOR1m749fPH0FFNjkulW+YZFzvW
+gQncItzujrnEj1PhZ7szuIgVRs/taTX/dQ1G885x4cVrhkIGuUE=
+-----END CERTIFICATE-----
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 1 (0x1)
+    Signature Algorithm: sha256WithRSAEncryption
+        Issuer: C=FR, O=Certinomis, OU=0002 433998903, CN=Certinomis - Root CA
+        Validity
+            Not Before: Oct 21 09:17:18 2013 GMT
+            Not After : Oct 21 09:17:18 2033 GMT
+        Subject: C=FR, O=Certinomis, OU=0002 433998903, CN=Certinomis - Root CA
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                Public-Key: (4096 bit)
+                Modulus:
+                    00:d4:cc:09:0a:2c:3f:92:f6:7f:14:9e:0b:9c:9a:
+                    6a:1d:40:30:64:fd:aa:df:0e:1e:06:5b:9f:50:85:
+                    ea:cd:8d:ab:43:67:de:b0:fa:7e:80:96:9e:84:78:
+                    92:48:d6:e3:39:ee:ce:e4:59:58:97:e5:2e:27:98:
+                    ea:93:a8:77:9b:4a:f0:ef:74:80:2d:eb:30:1f:b5:
+                    d9:c7:80:9c:62:27:91:88:f0:4a:89:dd:dc:88:e6:
+                    14:f9:d5:03:2f:ff:95:db:bd:9f:ec:2c:fa:14:15:
+                    59:95:0a:c6:47:7c:69:18:b9:a7:03:f9:ca:76:a9:
+                    cf:c7:6f:b4:5e:05:fe:ee:c1:52:b2:75:32:87:ec:
+                    ed:29:66:3b:f3:4a:16:82:f6:d6:9a:db:72:98:e9:
+                    de:f0:c5:4c:a5:ab:b5:ea:01:e2:8c:2e:64:7f:64:
+                    6f:fd:a3:25:93:8b:c8:a2:0e:49:8d:34:f0:1f:ec:
+                    58:45:2e:34:aa:84:50:bd:e7:b2:4a:13:b8:b0:0f:
+                    ae:38:5d:b0:a9:1b:e6:73:c9:5a:a1:d9:66:40:aa:
+                    a9:4d:a6:34:02:ad:84:7e:b2:23:c1:fb:2a:c6:67:
+                    f4:34:b6:b0:95:6a:33:4f:71:44:b5:ad:c0:79:33:
+                    88:e0:bf:ed:a3:a0:14:b4:9c:09:b0:0a:e3:60:be:
+                    f8:f8:66:88:cd:5b:f1:77:05:e0:b5:73:6e:c1:7d:
+                    46:2e:8e:4b:27:a6:cd:35:0a:fd:e5:4d:7d:aa:2a:
+                    a3:29:c7:5a:68:04:e8:e5:d6:93:a4:62:c2:c5:e6:
+                    f4:4f:c6:f9:9f:1a:8d:82:49:19:8a:ca:59:43:3a:
+                    e8:0d:32:c1:f4:4c:13:03:6f:6e:a6:3f:91:73:cb:
+                    ca:73:6f:12:20:8b:ee:c0:82:78:de:4b:2e:c2:49:
+                    c3:1d:ed:16:f6:24:f4:27:1b:5c:57:31:dc:55:ee:
+                    a8:1e:6f:6c:ac:e2:45:cc:57:57:8a:75:57:19:e0:
+                    b5:58:99:49:36:31:3c:33:01:6d:16:4a:cd:b8:2a:
+                    83:84:86:9b:f9:60:d2:1f:6d:91:03:d3:60:a6:d5:
+                    3d:9a:dd:77:90:3d:35:a4:9f:0f:5e:f5:52:44:69:
+                    b9:c0:ba:dc:cf:7d:df:7c:d9:c4:ac:86:22:32:bc:
+                    7b:6b:91:ef:7a:f8:17:68:b0:e2:53:55:60:2d:af:
+                    3e:c2:83:d8:d9:09:2b:f0:c0:64:db:87:8b:91:cc:
+                    91:eb:04:fd:76:b4:95:9a:e6:14:06:1b:d5:34:1d:
+                    be:d8:ff:74:1c:53:85:99:e0:59:52:4a:61:ed:88:
+                    9e:6b:49:89:46:7e:20:5a:d9:e7:4a:e5:6a:ee:d2:
+                    65:11:43
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Key Usage: critical
+                Certificate Sign, CRL Sign
+            X509v3 Basic Constraints: critical
+                CA:TRUE
+            X509v3 Subject Key Identifier: 
+                EF:91:4C:F5:A5:C3:30:E8:2F:08:EA:D3:71:22:A4:92:68:78:74:D9
+            X509v3 Authority Key Identifier: 
+                keyid:EF:91:4C:F5:A5:C3:30:E8:2F:08:EA:D3:71:22:A4:92:68:78:74:D9
+
+    Signature Algorithm: sha256WithRSAEncryption
+         7e:3d:54:da:22:5d:1a:58:3e:3b:54:27:ba:ba:cc:c8:e3:1a:
+         6a:ea:3e:f9:12:eb:56:5f:3d:50:ce:e0:ea:48:26:26:cf:79:
+         56:7e:91:1c:99:3f:d0:a1:91:1c:2c:0f:4f:98:95:59:53:bd:
+         d0:22:d8:88:5d:9c:37:fc:fb:64:c1:78:8c:8b:9a:60:09:ea:
+         d5:fa:21:5f:d0:74:65:e7:50:c5:bf:2e:b9:0b:0b:ad:b5:b0:
+         17:a6:12:8c:d4:62:78:ea:56:6a:ec:0a:d2:40:c3:3c:05:30:
+         3e:4d:94:b7:9f:4a:03:d3:7d:27:4b:b6:fe:44:ce:fa:19:33:
+         1a:6d:a4:42:d1:dd:cc:c8:c8:d7:16:52:83:4f:35:94:b3:12:
+         55:7d:e5:e2:42:eb:e4:9c:93:09:c0:4c:5b:07:ab:c7:6d:11:
+         a0:50:17:94:23:a8:b5:0a:92:0f:b2:7a:c1:60:2c:38:cc:1a:
+         a6:5b:ff:f2:0c:e3:aa:1f:1c:dc:b8:a0:93:27:de:63:e3:7f:
+         21:9f:3a:e5:9e:fa:e0:13:6a:75:eb:96:5c:62:91:94:8e:67:
+         53:b6:89:f8:12:09:cb:6f:52:5b:03:72:86:50:95:08:d4:8d:
+         87:86:15:1f:95:24:d8:a4:6f:9a:ce:a4:9d:9b:6d:d2:b2:76:
+         06:86:c6:56:08:c5:eb:09:da:36:c2:1b:5b:41:be:61:2a:e3:
+         70:e6:b8:a6:f8:b6:5a:c4:bd:21:f7:ff:aa:5f:a1:6c:76:39:
+         66:d6:ea:4c:55:e1:00:33:9b:13:98:63:c9:6f:d0:01:20:09:
+         37:52:e7:0c:4f:3e:cd:bc:f5:5f:96:27:a7:20:02:95:e0:2e:
+         e8:07:41:05:1f:15:6e:d6:b0:e4:19:e0:0f:02:93:00:27:72:
+         c5:8b:d1:54:1f:5d:4a:c3:40:97:7e:55:a6:7c:c1:33:04:14:
+         01:1d:49:20:69:0b:19:93:9d:6e:58:22:f7:40:0c:46:0c:23:
+         63:f3:39:d2:7f:76:51:a7:f4:c8:a1:f1:0c:76:22:23:46:52:
+         29:2d:e2:a3:41:07:56:69:98:d2:05:09:bc:69:c7:5a:61:cd:
+         8f:81:60:15:4d:80:dd:90:e2:7d:c4:50:f2:8c:3b:6e:4a:c7:
+         c6:e6:80:2b:3c:81:bc:11:80:16:10:27:d7:f0:cd:3f:79:cc:
+         73:2a:c3:7e:53:91:d6:6e:f8:f5:f3:c7:d0:51:4d:8e:4b:a5:
+         5b:e6:19:17:3b:d6:81:09:dc:22:dc:ee:8e:b9:c4:8f:53:e1:
+         67:bb:33:b8:88:15:46:cf:ed:69:35:ff:75:0d:46:f3:ce:71:
+         e1:c5:6b:86:42:06:b9:41
+SHA1 Fingerprint=9D:70:BB:01:A5:A4:A0:18:11:2E:F7:1C:01:B9:32:C5:34:E7:88:A8
diff --git a/luni/src/main/java/android/system/OsConstants.java b/luni/src/main/java/android/system/OsConstants.java
index f0d77de..08a0ba8 100644
--- a/luni/src/main/java/android/system/OsConstants.java
+++ b/luni/src/main/java/android/system/OsConstants.java
@@ -458,15 +458,15 @@
     public static final int STDERR_FILENO = placeholder();
     public static final int STDIN_FILENO = placeholder();
     public static final int STDOUT_FILENO = placeholder();
-    /** @hide */ public static final int ST_MANDLOCK = placeholder();
-    /** @hide */ public static final int ST_NOATIME = placeholder();
-    /** @hide */ public static final int ST_NODEV = placeholder();
-    /** @hide */ public static final int ST_NODIRATIME = placeholder();
-    /** @hide */ public static final int ST_NOEXEC = placeholder();
-    /** @hide */ public static final int ST_NOSUID = placeholder();
-    /** @hide */ public static final int ST_RDONLY = placeholder();
-    /** @hide */ public static final int ST_RELATIME = placeholder();
-    /** @hide */ public static final int ST_SYNCHRONOUS = placeholder();
+    public static final int ST_MANDLOCK = placeholder();
+    public static final int ST_NOATIME = placeholder();
+    public static final int ST_NODEV = placeholder();
+    public static final int ST_NODIRATIME = placeholder();
+    public static final int ST_NOEXEC = placeholder();
+    public static final int ST_NOSUID = placeholder();
+    public static final int ST_RDONLY = placeholder();
+    public static final int ST_RELATIME = placeholder();
+    public static final int ST_SYNCHRONOUS = placeholder();
     public static final int S_IFBLK = placeholder();
     public static final int S_IFCHR = placeholder();
     public static final int S_IFDIR = placeholder();
diff --git a/luni/src/main/java/java/util/Locale.java b/luni/src/main/java/java/util/Locale.java
index bffa293..dc20986 100644
--- a/luni/src/main/java/java/util/Locale.java
+++ b/luni/src/main/java/java/util/Locale.java
@@ -99,6 +99,10 @@
  *     <td><a href="http://site.icu-project.org/download/53">ICU 53</a></td>
  *     <td><a href="http://cldr.unicode.org/index/downloads/cldr-25">CLDR 25</a></td>
  *     <td><a href="http://www.unicode.org/versions/Unicode6.3.0/">Unicode 6.3</a></td></tr>
+ * <tr><td>Android 6.0 (Marshmallow)</td>
+ *     <td><a href="http://site.icu-project.org/download/55">ICU 55.1</a></td>
+ *     <td><a href="http://cldr.unicode.org/index/downloads/cldr-27">CLDR 27.0.1</a></td>
+ *     <td><a href="http://www.unicode.org/versions/Unicode7.0.0/">Unicode 7.0</a></td></tr>
  * </table>
  *
  * <a name="default_locale"></a><h3>Be wary of the default locale</h3>
diff --git a/luni/src/main/java/libcore/util/HexEncoding.java b/luni/src/main/java/libcore/util/HexEncoding.java
index f883a73..4c7e7a2 100644
--- a/luni/src/main/java/libcore/util/HexEncoding.java
+++ b/luni/src/main/java/libcore/util/HexEncoding.java
@@ -24,7 +24,7 @@
     /** Hidden constructor to prevent instantiation. */
     private HexEncoding() {}
 
-    private static final char[] HEX_DIGITS = "0123456789abcdef".toCharArray();
+    private static final char[] HEX_DIGITS = "0123456789ABCDEF".toCharArray();
 
     /**
      * Encodes the provided data as a sequence of hexadecimal characters.
diff --git a/luni/src/main/native/java_util_jar_StrictJarFile.cpp b/luni/src/main/native/java_util_jar_StrictJarFile.cpp
index 13a4db38..09dc5a0 100644
--- a/luni/src/main/native/java_util_jar_StrictJarFile.cpp
+++ b/luni/src/main/native/java_util_jar_StrictJarFile.cpp
@@ -60,6 +60,7 @@
   ZipArchiveHandle handle;
   int32_t error = OpenArchive(fileChars.c_str(), &handle);
   if (error) {
+    CloseArchive(handle);
     throwIoException(env, error);
     return static_cast<jlong>(-1);
   }
diff --git a/luni/src/test/java/com/android/org/bouncycastle/jce/provider/CertBlacklistTest.java b/luni/src/test/java/com/android/org/bouncycastle/jce/provider/CertBlacklistTest.java
index 8627225..48a175c 100644
--- a/luni/src/test/java/com/android/org/bouncycastle/jce/provider/CertBlacklistTest.java
+++ b/luni/src/test/java/com/android/org/bouncycastle/jce/provider/CertBlacklistTest.java
@@ -401,11 +401,6 @@
         assertEquals(bl, getCurrentSerialBlacklist());
     }
 
-    public void testTurkTrustIntermediate1SerialBlacklist() throws Exception {
-        CertBlacklist bl = new CertBlacklist();
-        assertEquals(bl.isSerialNumberBlackListed(createSerialNumber(TURKTRUST_1)), true);
-    }
-
     public void testTurkTrustIntermediate1PubkeyBlacklist() throws Exception {
         // build the public key
         PublicKey pk = createPublicKey(TURKTRUST_1);
@@ -417,11 +412,6 @@
         assertEquals(bl.isPublicKeyBlackListed(pk), true);
     }
 
-    public void testTurkTrustIntermediate2SerialBlacklist() throws Exception {
-        CertBlacklist bl = new CertBlacklist();
-        assertEquals(bl.isSerialNumberBlackListed(createSerialNumber(TURKTRUST_2)), true);
-    }
-
     public void testTurkTrustIntermediate2PubkeyBlacklist() throws Exception {
         // build the public key
         PublicKey pk = createPublicKey(TURKTRUST_2);
@@ -431,11 +421,6 @@
         assertEquals(bl.isPublicKeyBlackListed(pk), true);
     }
 
-    public void testANSSISerialBlacklist() throws Exception {
-        CertBlacklist bl = new CertBlacklist();
-        assertEquals(bl.isSerialNumberBlackListed(createSerialNumber(ANSSI)), true);
-    }
-
     public void testANSSIIntermediatePubkeyBlacklist() throws Exception {
         // build the public key
         PublicKey pk = createPublicKey(ANSSI);
diff --git a/luni/src/test/java/libcore/java/security/SignatureTest.java b/luni/src/test/java/libcore/java/security/SignatureTest.java
index 272dc21..f8ab870 100644
--- a/luni/src/test/java/libcore/java/security/SignatureTest.java
+++ b/luni/src/test/java/libcore/java/security/SignatureTest.java
@@ -297,6 +297,12 @@
     public void test_getInstance() throws Exception {
         Provider[] providers = Security.getProviders();
         for (Provider provider : providers) {
+            // Do not test AndroidKeyStore's Signature. It needs an AndroidKeyStore-specific key.
+            // It's OKish not to test AndroidKeyStore's Signature here because it's tested
+            // by cts/tests/test/keystore.
+            if (provider.getName().startsWith("AndroidKeyStore")) {
+                continue;
+            }
             Set<Provider.Service> services = provider.getServices();
             for (Provider.Service service : services) {
                 String type = service.getType();
diff --git a/luni/src/test/java/libcore/java/security/cert/X509CertificateTest.java b/luni/src/test/java/libcore/java/security/cert/X509CertificateTest.java
index 5ddbed3..df87aae 100644
--- a/luni/src/test/java/libcore/java/security/cert/X509CertificateTest.java
+++ b/luni/src/test/java/libcore/java/security/cert/X509CertificateTest.java
@@ -343,6 +343,13 @@
 
         Provider[] providers = Security.getProviders("Signature." + c.getSigAlgName());
         for (Provider p : providers) {
+            // Do not test AndroidKeyStore Provider. It does not accept vanilla public keys for
+            // signature verification. It's OKish not to test here because it's tested by
+            // cts/tests/tests/keystore.
+            if (p.getName().startsWith("AndroidKeyStore")) {
+                continue;
+            }
+
             c.verify(signer, p.getName());
 
             try {
diff --git a/luni/src/test/java/libcore/javax/crypto/ECDHKeyAgreementTest.java b/luni/src/test/java/libcore/javax/crypto/ECDHKeyAgreementTest.java
index cabe5c9..cc29640 100644
--- a/luni/src/test/java/libcore/javax/crypto/ECDHKeyAgreementTest.java
+++ b/luni/src/test/java/libcore/javax/crypto/ECDHKeyAgreementTest.java
@@ -38,7 +38,9 @@
 import java.security.spec.PKCS8EncodedKeySpec;
 import java.security.spec.X509EncodedKeySpec;
 import java.util.Arrays;
+import java.util.ArrayList;
 import java.util.Comparator;
+import java.util.List;
 
 import javax.crypto.KeyAgreement;
 import javax.crypto.SecretKey;
@@ -374,8 +376,8 @@
         if (providers == null) {
             return new Provider[0];
         }
-        // Sort providers by name to guarantee non-determinism in the order in which providers are
-        // used in the tests.
+        // Sort providers by name to guarantee deterministic order in which providers are used in
+        // the tests.
         return sortByName(providers);
     }
 
@@ -384,8 +386,21 @@
         if (providers == null) {
             return new Provider[0];
         }
-        // Sort providers by name to guarantee non-determinism in the order in which providers are
-        // used in the tests.
+
+        // Do not test AndroidKeyStore's KeyFactory. It only handles Android Keystore-backed keys.
+        // It's OKish not to test AndroidKeyStore's KeyFactory here because it's tested by
+        // cts/tests/test/keystore.
+        List<Provider> filteredProvidersList = new ArrayList<Provider>(providers.length);
+        for (Provider provider : providers) {
+            if ("AndroidKeyStore".equals(provider.getName())) {
+                continue;
+            }
+            filteredProvidersList.add(provider);
+        }
+        providers = filteredProvidersList.toArray(new Provider[filteredProvidersList.size()]);
+
+        // Sort providers by name to guarantee deterministic order in which providers are used in
+        // the tests.
         return sortByName(providers);
     }
 
diff --git a/luni/src/test/java/libcore/util/HexEncodingTest.java b/luni/src/test/java/libcore/util/HexEncodingTest.java
index ef79f5c..f5cfb3e 100644
--- a/luni/src/test/java/libcore/util/HexEncodingTest.java
+++ b/luni/src/test/java/libcore/util/HexEncodingTest.java
@@ -26,8 +26,10 @@
   public void testEncode() {
     final byte[] avocados = "avocados".getBytes(StandardCharsets.UTF_8);
 
-    assertArraysEqual("61766f6361646f73".toCharArray(), encode(avocados));
+    assertArraysEqual("61766F6361646F73".toCharArray(), encode(avocados));
     assertArraysEqual(avocados, decode(encode(avocados), false));
+    // Make sure we can handle lower case hex encodings as well.
+    assertArraysEqual(avocados, decode("61766f6361646f73".toCharArray(), false));
   }
 
   public void testDecode_allow4Bit() {
@@ -45,7 +47,7 @@
 
   public void testDecode_invalid() {
     try {
-      decode("deadbard".toCharArray(), false);
+      decode("DEADBARD".toCharArray(), false);
       fail();
     } catch (IllegalArgumentException expected) {
     }
@@ -54,13 +56,13 @@
     // commons uses Character.isDigit and would successfully decode a string with
     // arabic and devanagari characters.
     try {
-      decode("६१٧٥٥f6361646f73".toCharArray(), false);
+      decode("६१٧٥٥F6361646F73".toCharArray(), false);
       fail();
     } catch (IllegalArgumentException expected) {
     }
 
     try {
-      decode("#%6361646f73".toCharArray(), false);
+      decode("#%6361646F73".toCharArray(), false);
       fail();
     } catch (IllegalArgumentException expected) {
     }
diff --git a/luni/src/test/java/org/apache/harmony/crypto/tests/javax/crypto/MacTest.java b/luni/src/test/java/org/apache/harmony/crypto/tests/javax/crypto/MacTest.java
index e90452d..48d945b 100644
--- a/luni/src/test/java/org/apache/harmony/crypto/tests/javax/crypto/MacTest.java
+++ b/luni/src/test/java/org/apache/harmony/crypto/tests/javax/crypto/MacTest.java
@@ -76,8 +76,13 @@
 
     static {
         for (int i = 0; i < validAlgorithmsMac.length; i++) {
-            defaultProvider = SpiEngUtils.isSupport(validAlgorithmsMac[i],
-                    srvMac);
+            try {
+                Mac mac = Mac.getInstance(validAlgorithmsMac[i]);
+                mac.init(new SecretKeySpec(new byte[64], validAlgorithmsMac[i]));
+                defaultProvider = mac.getProvider();
+            } catch (NoSuchAlgorithmException ignored) {
+            } catch (InvalidKeyException ignored) {}
+
             DEFSupported = (defaultProvider != null);
             if (DEFSupported) {
                 defaultAlgorithm = validAlgorithmsMac[i];
@@ -103,7 +108,7 @@
             // Do not test AndroidKeyStore's Mac. It cannot be initialized without providing an
             // AndroidKeyStore-backed SecretKey instance. It's OKish not to test here because it's
             // tested by cts/tests/test/keystore.
-            if ("AndroidKeyStore".equals(p.getName())) {
+            if (p.getName().startsWith("AndroidKeyStore")) {
                 continue;
             }
             macList.add(Mac.getInstance(defaultAlgorithm, p));
@@ -854,7 +859,7 @@
             // Do not test AndroidKeyStore's Mac. It cannot be initialized without providing an
             // AndroidKeyStore-backed SecretKey instance. It's OKish not to test here because it's
             // tested by cts/tests/test/keystore.
-            if ("AndroidKeyStore".equals(providers[i].getName())) {
+            if (providers[i].getName().startsWith("AndroidKeyStore")) {
                 continue;
             }
 
diff --git a/support/src/test/java/libcore/java/security/StandardNames.java b/support/src/test/java/libcore/java/security/StandardNames.java
index d54d506..efeeeaa 100644
--- a/support/src/test/java/libcore/java/security/StandardNames.java
+++ b/support/src/test/java/libcore/java/security/StandardNames.java
@@ -397,12 +397,23 @@
             provide("Signature", "NONEwithRSA");
             provide("Cipher", "RSA/ECB/NOPADDING");
             provide("Cipher", "RSA/ECB/PKCS1PADDING");
+            provide("Cipher", "RSA/ECB/OAEPPadding");
+            provide("Cipher", "RSA/ECB/OAEPWithSHA-1AndMGF1Padding");
+            provide("Cipher", "RSA/ECB/OAEPWithSHA-224AndMGF1Padding");
+            provide("Cipher", "RSA/ECB/OAEPWithSHA-256AndMGF1Padding");
+            provide("Cipher", "RSA/ECB/OAEPWithSHA-384AndMGF1Padding");
+            provide("Cipher", "RSA/ECB/OAEPWithSHA-512AndMGF1Padding");
             provide("SecretKeyFactory", "AES");
             provide("SecretKeyFactory", "HmacSHA1");
             provide("SecretKeyFactory", "HmacSHA224");
             provide("SecretKeyFactory", "HmacSHA256");
             provide("SecretKeyFactory", "HmacSHA384");
             provide("SecretKeyFactory", "HmacSHA512");
+            provide("Signature", "SHA1withRSA/PSS");
+            provide("Signature", "SHA224withRSA/PSS");
+            provide("Signature", "SHA256withRSA/PSS");
+            provide("Signature", "SHA384withRSA/PSS");
+            provide("Signature", "SHA512withRSA/PSS");
 
             // different names: ARCFOUR vs ARC4
             unprovide("Cipher", "ARCFOUR");
diff --git a/tzdata/update_test_app/AndroidManifest.xml b/tzdata/update_test_app/AndroidManifest.xml
index 67a8450..081aae5 100644
--- a/tzdata/update_test_app/AndroidManifest.xml
+++ b/tzdata/update_test_app/AndroidManifest.xml
@@ -2,8 +2,7 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="libcore.tzdata.update_test_app.installupdatetestapp" >
 
-    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
-    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
+    <uses-permission android:name="android.permission.UPDATE_CONFIG" />
 
     <application
         android:allowBackup="false"
diff --git a/tzdata/update_test_app/src/libcore/tzdata/update_test_app/installupdatetestapp/MainActivity.java b/tzdata/update_test_app/src/libcore/tzdata/update_test_app/installupdatetestapp/MainActivity.java
index f9d911b..2348e43 100644
--- a/tzdata/update_test_app/src/libcore/tzdata/update_test_app/installupdatetestapp/MainActivity.java
+++ b/tzdata/update_test_app/src/libcore/tzdata/update_test_app/installupdatetestapp/MainActivity.java
@@ -29,17 +29,12 @@
 import android.widget.EditText;
 import android.widget.TextView;
 
-import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import java.security.KeyFactory;
-import java.security.PrivateKey;
-import java.security.Signature;
-import java.security.spec.PKCS8EncodedKeySpec;
 import java.util.Date;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
@@ -47,45 +42,9 @@
 
 public class MainActivity extends Activity implements View.OnClickListener {
 
-    private static final String UPDATE_CERTIFICATE_KEY = "config_update_certificate";
     private static final String EXTRA_REQUIRED_HASH = "REQUIRED_HASH";
-    private static final String EXTRA_SIGNATURE = "SIGNATURE";
     private static final String EXTRA_VERSION_NUMBER = "VERSION";
 
-    public static final String TEST_CERT = "" +
-            "MIIDsjCCAxugAwIBAgIJAPLf2gS0zYGUMA0GCSqGSIb3DQEBBQUAMIGYMQswCQYDVQQGEwJVUzET" +
-            "MBEGA1UECBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEPMA0GA1UEChMGR29v" +
-            "Z2xlMRAwDgYDVQQLEwd0ZXN0aW5nMRYwFAYDVQQDEw1HZXJlbXkgQ29uZHJhMSEwHwYJKoZIhvcN" +
-            "AQkBFhJnY29uZHJhQGdvb2dsZS5jb20wHhcNMTIwNzE0MTc1MjIxWhcNMTIwODEzMTc1MjIxWjCB" +
-            "mDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDU1vdW50YWluIFZp" +
-            "ZXcxDzANBgNVBAoTBkdvb2dsZTEQMA4GA1UECxMHdGVzdGluZzEWMBQGA1UEAxMNR2VyZW15IENv" +
-            "bmRyYTEhMB8GCSqGSIb3DQEJARYSZ2NvbmRyYUBnb29nbGUuY29tMIGfMA0GCSqGSIb3DQEBAQUA" +
-            "A4GNADCBiQKBgQCjGGHATBYlmas+0sEECkno8LZ1KPglb/mfe6VpCT3GhSr+7br7NG/ZwGZnEhLq" +
-            "E7YIH4fxltHmQC3Tz+jM1YN+kMaQgRRjo/LBCJdOKaMwUbkVynAH6OYsKevjrOPk8lfM5SFQzJMG" +
-            "sA9+Tfopr5xg0BwZ1vA/+E3mE7Tr3M2UvwIDAQABo4IBADCB/TAdBgNVHQ4EFgQUhzkS9E6G+x8W" +
-            "L4EsmRjDxu28tHUwgc0GA1UdIwSBxTCBwoAUhzkS9E6G+x8WL4EsmRjDxu28tHWhgZ6kgZswgZgx" +
-            "CzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3" +
-            "MQ8wDQYDVQQKEwZHb29nbGUxEDAOBgNVBAsTB3Rlc3RpbmcxFjAUBgNVBAMTDUdlcmVteSBDb25k" +
-            "cmExITAfBgkqhkiG9w0BCQEWEmdjb25kcmFAZ29vZ2xlLmNvbYIJAPLf2gS0zYGUMAwGA1UdEwQF" +
-            "MAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAYiugFDmbDOQ2U/+mqNt7o8ftlEo9SJrns6O8uTtK6AvR" +
-            "orDrR1AXTXkuxwLSbmVfedMGOZy7Awh7iZa8hw5x9XmUudfNxvmrKVEwGQY2DZ9PXbrnta/dwbhK" +
-            "mWfoepESVbo7CKIhJp8gRW0h1Z55ETXD57aGJRvQS4pxkP8ANhM=";
-
-
-    public static final String TEST_KEY = "" +
-            "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAKMYYcBMFiWZqz7SwQQKSejwtnUo" +
-            "+CVv+Z97pWkJPcaFKv7tuvs0b9nAZmcSEuoTtggfh/GW0eZALdPP6MzVg36QxpCBFGOj8sEIl04p" +
-            "ozBRuRXKcAfo5iwp6+Os4+TyV8zlIVDMkwawD35N+imvnGDQHBnW8D/4TeYTtOvczZS/AgMBAAEC" +
-            "gYBxwFalNSwZK3WJipq+g6KLCiBn1JxGGDQlLKrweFaSuFyFky9fd3IvkIabirqQchD612sMb+GT" +
-            "0t1jptW6z4w2w6++IW0A3apDOCwoD+uvDBXrbFqI0VbyAWUNqHVdaFFIRk2IHGEE6463mGRdmILX" +
-            "IlCd/85RTHReg4rl/GFqWQJBANgLAIR4pWbl5Gm+DtY18wp6Q3pJAAMkmP/lISCBIidu1zcqYIKt" +
-            "PoDW4Knq9xnhxPbXrXKv4YzZWHBK8GkKhQ0CQQDBQnXufQcMew+PwiS0oJvS+eQ6YJwynuqG2ejg" +
-            "WE+T7489jKtscRATpUXpZUYmDLGg9bLt7L62hFvFSj2LO2X7AkBcdrD9AWnBFWlh/G77LVHczSEu" +
-            "KCoyLiqxcs5vy/TjLaQ8vw1ZQG580/qJnr+tOxyCjSJ18GK3VppsTRaBznfNAkB3nuCKNp9HTWCL" +
-            "dfrsRsFMrFpk++mSt6SoxXaMbn0LL2u1CD4PCEiQMGt+lK3/3TmRTKNs+23sYS7Ahjxj0udDAkEA" +
-            "p57Nj65WNaWeYiOfTwKXkLj8l29H5NbaGWxPT0XkWr4PvBOFZVH/wj0/qc3CMVGnv11+DyO+QUCN" +
-            "SqBB5aRe8g==";
-
     private EditText actionEditText;
     private EditText versionEditText;
     private EditText contentPathEditText;
@@ -137,27 +96,10 @@
                 }
                 publishProgress("Created copy of " + contentFile + " at " + copyOfContentFile);
 
-                String originalCert = null;
                 try {
-                    originalCert = overrideCert(TEST_CERT);
-                    sleep(1000);
-                    publishProgress("Overridden update cert");
-
-                    String signature = createSignature(copyOfContentFile, version, requiredHash);
-                    sendIntent(copyOfContentFile, action, version, requiredHash, signature);
-                    publishProgress("Sent update intent");
+                    sendIntent(copyOfContentFile, action, version, requiredHash);
                 } catch (Exception e) {
                     publishProgress("Error", exceptionToString(e));
-                } finally {
-                    if (originalCert != null) {
-                        sleep(1000);
-                        try {
-                            overrideCert(originalCert);
-                            publishProgress("Reverted update cert");
-                        } catch (Exception e) {
-                            publishProgress("Unable to revert update cert", exceptionToString(e));
-                        }
-                    }
                 }
                 publishProgress("Update intent sent successfully");
                 return null;
@@ -172,15 +114,6 @@
         }.executeOnExecutor(executor);
     }
 
-    private String overrideCert(String cert) throws Exception {
-        final String key = UPDATE_CERTIFICATE_KEY;
-        String originalCert = Settings.Secure.getString(getContentResolver(), key);
-        if (!Settings.Secure.putString(getContentResolver(), key, cert)) {
-            throw new Exception("Unable to override update certificate");
-        }
-        return originalCert;
-    }
-
     private void sleep(long millisDelay) {
         try {
             Thread.sleep(millisDelay);
@@ -190,7 +123,7 @@
     }
 
     private void sendIntent(
-            File contentFile, String action, String version, String required, String sig) {
+            File contentFile, String action, String version, String required) {
         Intent i = new Intent();
         i.setAction(action);
         Uri contentUri =
@@ -201,7 +134,6 @@
         i.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
         i.putExtra(EXTRA_VERSION_NUMBER, version);
         i.putExtra(EXTRA_REQUIRED_HASH, required);
-        i.putExtra(EXTRA_SIGNATURE, sig);
         sendBroadcast(i);
     }
 
@@ -220,36 +152,6 @@
         logView.scrollTo(0, scrollAmount);
     }
 
-    private static String createSignature(File contentFile, String version, String requiredHash)
-            throws Exception {
-        byte[] contentBytes = readBytes(contentFile);
-        Signature signer = Signature.getInstance("SHA512withRSA");
-        signer.initSign(createKey());
-        signer.update(contentBytes);
-        signer.update(version.trim().getBytes());
-        signer.update(requiredHash.getBytes());
-        return new String(Base64.encode(signer.sign(), Base64.DEFAULT));
-    }
-
-    private static byte[] readBytes(File contentFile) throws IOException {
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        try (FileInputStream fis = new FileInputStream(contentFile)) {
-            int count;
-            byte[] buffer = new byte[8192];
-            while ((count = fis.read(buffer)) != -1) {
-                baos.write(buffer, 0, count);
-            }
-        }
-        return baos.toByteArray();
-    }
-
-    private static PrivateKey createKey() throws Exception {
-        byte[] derKey = Base64.decode(TEST_KEY.getBytes(), Base64.DEFAULT);
-        PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(derKey);
-        KeyFactory keyFactory = KeyFactory.getInstance("RSA");
-        return keyFactory.generatePrivate(keySpec);
-    }
-
     private static String exceptionToString(Exception e) {
         StringWriter writer = new StringWriter();
         e.printStackTrace(new PrintWriter(writer));