diff options
author | Alex Klyubin <klyubin@google.com> | 2013-03-19 12:26:57 -0700 |
---|---|---|
committer | Alex Klyubin <klyubin@google.com> | 2013-03-19 12:33:06 -0700 |
commit | b4d3d296c30f59214c961c928dc708889ceba3d4 (patch) | |
tree | 0bc91df784eacb96d6ec664a8e81741d157953a3 | |
parent | 43be13a7c7968ba079c87fed7143ec4b6c642b2e (diff) | |
download | bouncycastle-b4d3d296c30f59214c961c928dc708889ceba3d4.tar.gz |
Make ECDH KeyAgreement reject AlgorithmParameterSpec.
This makes the BouncyCastle JCA Provider pass
libcore.javax.crypto.ECDHKeyAgreementTest.
Change-Id: I462c93a19c5dfc00733deb76351631ab4b4601da
-rw-r--r-- | bcprov/src/main/java/org/bouncycastle/jcajce/provider/asymmetric/ec/KeyAgreementSpi.java | 6 | ||||
-rw-r--r-- | patches/bcprov.patch | 19 |
2 files changed, 22 insertions, 3 deletions
diff --git a/bcprov/src/main/java/org/bouncycastle/jcajce/provider/asymmetric/ec/KeyAgreementSpi.java b/bcprov/src/main/java/org/bouncycastle/jcajce/provider/asymmetric/ec/KeyAgreementSpi.java index cc9b2dbe..cade2288 100644 --- a/bcprov/src/main/java/org/bouncycastle/jcajce/provider/asymmetric/ec/KeyAgreementSpi.java +++ b/bcprov/src/main/java/org/bouncycastle/jcajce/provider/asymmetric/ec/KeyAgreementSpi.java @@ -221,6 +221,12 @@ public class KeyAgreementSpi SecureRandom random) throws InvalidKeyException, InvalidAlgorithmParameterException { + // BEGIN android-added + if (params != null) + { + throw new InvalidAlgorithmParameterException("No algorithm parameters supported"); + } + // END android-added initFromKey(key); } diff --git a/patches/bcprov.patch b/patches/bcprov.patch index c1d1bccc..695215bd 100644 --- a/patches/bcprov.patch +++ b/patches/bcprov.patch @@ -1954,7 +1954,7 @@ diff -Naur bcprov-jdk15on-148.orig/org/bouncycastle/jcajce/provider/asymmetric/e return name; diff -Naur bcprov-jdk15on-148.orig/org/bouncycastle/jcajce/provider/asymmetric/ec/KeyAgreementSpi.java bcprov-jdk15on-148/org/bouncycastle/jcajce/provider/asymmetric/ec/KeyAgreementSpi.java --- bcprov-jdk15on-148.orig/org/bouncycastle/jcajce/provider/asymmetric/ec/KeyAgreementSpi.java 2013-02-10 00:37:58.000000000 +0000 -+++ bcprov-jdk15on-148/org/bouncycastle/jcajce/provider/asymmetric/ec/KeyAgreementSpi.java 2013-01-31 02:26:40.000000000 +0000 ++++ bcprov-jdk15on-148/org/bouncycastle/jcajce/provider/asymmetric/ec/KeyAgreementSpi.java 2013-03-19 19:26:57.000000000 +0000 @@ -23,20 +23,26 @@ import org.bouncycastle.crypto.CipherParameters; import org.bouncycastle.crypto.DerivationFunction; @@ -2121,7 +2121,20 @@ diff -Naur bcprov-jdk15on-148.orig/org/bouncycastle/jcajce/provider/asymmetric/e { // TODO Should we be ensuring the key is the right length? } -@@ -219,35 +235,37 @@ +@@ -205,6 +221,12 @@ + SecureRandom random) + throws InvalidKeyException, InvalidAlgorithmParameterException + { ++ // BEGIN android-added ++ if (params != null) ++ { ++ throw new InvalidAlgorithmParameterException("No algorithm parameters supported"); ++ } ++ // END android-added + initFromKey(key); + } + +@@ -219,35 +241,37 @@ private void initFromKey(Key key) throws InvalidKeyException { @@ -2188,7 +2201,7 @@ diff -Naur bcprov-jdk15on-148.orig/org/bouncycastle/jcajce/provider/asymmetric/e { if (!(key instanceof PrivateKey)) { -@@ -278,39 +296,41 @@ +@@ -278,39 +302,41 @@ } } |