diff options
author | Peter Dettman <peter.dettman@bouncycastle.org> | 2014-01-05 15:48:43 +0400 |
---|---|---|
committer | Peter Dettman <peter.dettman@bouncycastle.org> | 2014-01-05 15:48:43 +0400 |
commit | aad3520281888f8228bb4da67d23d1cd0e9cd9f8 (patch) | |
tree | 68ac36de1696c61c5af3a36d7923c8c2e10ae5a0 /core/src/main/java/org/bouncycastle/asn1 | |
parent | 584df7351aa65334ac7ea87958bf4960ed5ae2d8 (diff) |
Add guards to make sure the k values are sensible
Diffstat (limited to 'core/src/main/java/org/bouncycastle/asn1')
-rw-r--r-- | core/src/main/java/org/bouncycastle/asn1/x9/X9FieldID.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/core/src/main/java/org/bouncycastle/asn1/x9/X9FieldID.java b/core/src/main/java/org/bouncycastle/asn1/x9/X9FieldID.java index c1edcf4b..cb74234e 100644 --- a/core/src/main/java/org/bouncycastle/asn1/x9/X9FieldID.java +++ b/core/src/main/java/org/bouncycastle/asn1/x9/X9FieldID.java @@ -69,11 +69,21 @@ public class X9FieldID if (k2 == 0) { + if (k3 != 0) + { + throw new IllegalArgumentException("inconsistent k values"); + } + fieldIdParams.add(tpBasis); fieldIdParams.add(new ASN1Integer(k1)); } else { + if (k2 <= k1 || k3 <= k2) + { + throw new IllegalArgumentException("inconsistent k values"); + } + fieldIdParams.add(ppBasis); ASN1EncodableVector pentanomialParams = new ASN1EncodableVector(); pentanomialParams.add(new ASN1Integer(k1)); |