summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorDmitry Belyavskiy <beldmit@gmail.com>2021-01-22 13:44:16 +0100
committerTomas Mraz <tomas@openssl.org>2021-02-18 11:02:25 +0100
commitebcaf110b250cd55281500fa1debef806ab490f0 (patch)
treed6db2bbc18da315336c95170ab54435294aea464 /test
parente36b3c2f757cc7d68dc24174a00476104428b099 (diff)
DSA parameter check using pkeyparam
Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/14148)
Diffstat (limited to 'test')
-rw-r--r--test/recipes/15-test_dsaparam.t78
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1862.pem9
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1862_gind1.pem9
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1864.pem9
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1864_gind1.pem9
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p1024_q224_t1862.pem9
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p1024_q224_t1862_gind1.pem9
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p1024_q256_t1862.pem9
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p1024_q256_t1862_gind1.pem9
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p2048_q160_t1862.pem14
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p2048_q160_t1862_gind1.pem14
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1862.pem14
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1862_gind1.pem14
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1864.pem14
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1864_gind1.pem14
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1862.pem14
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1862_gind1.pem14
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1864.pem14
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1864_gind1.pem14
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p3072_q160_t1862.pem19
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p3072_q160_t1862_gind1.pem19
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p3072_q224_t1862.pem19
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p3072_q224_t1862_gind1.pem19
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1862.pem19
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1862_gind1.pem19
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1864.pem19
-rw-r--r--test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1864_gind1.pem19
27 files changed, 442 insertions, 0 deletions
diff --git a/test/recipes/15-test_dsaparam.t b/test/recipes/15-test_dsaparam.t
new file mode 100644
index 0000000000..c0c73841bd
--- /dev/null
+++ b/test/recipes/15-test_dsaparam.t
@@ -0,0 +1,78 @@
+#! /usr/bin/env perl
+# Copyright 2017-2020 The OpenSSL Project Authors. All Rights Reserved.
+#
+# Licensed under the Apache License 2.0 (the "License"). You may not use
+# this file except in compliance with the License. You can obtain a copy
+# in the file LICENSE in the source distribution or at
+# https://www.openssl.org/source/license.html
+
+use strict;
+use warnings;
+
+use File::Spec;
+use OpenSSL::Glob;
+use OpenSSL::Test qw/:DEFAULT data_file/;
+use OpenSSL::Test::Utils;
+
+setup("test_dsaparam");
+
+=pod Generation script
+
+#!/bin/sh
+
+TESTDIR=test/recipes/15-test_dsaparam_data/valid
+rm -rf $TESTDIR
+mkdir -p $TESTDIR
+
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:1024 -pkeyopt qbits:160 -pkeyopt type:fips186_4 -out $TESTDIR/p1024_q160_t1864.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:2048 -pkeyopt qbits:224 -pkeyopt type:fips186_4 -out $TESTDIR/p2048_q224_t1864.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:2048 -pkeyopt qbits:256 -pkeyopt type:fips186_4 -out $TESTDIR/p2048_q256_t1864.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:3072 -pkeyopt qbits:256 -pkeyopt type:fips186_4 -out $TESTDIR/p3072_q256_t1864.pem
+
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:1024 -pkeyopt qbits:160 -pkeyopt type:fips186_4 -pkeyopt gindex:1 -out $TESTDIR/p1024_q160_t1864_gind1.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:2048 -pkeyopt qbits:224 -pkeyopt type:fips186_4 -pkeyopt gindex:1 -out $TESTDIR/p2048_q224_t1864_gind1.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:2048 -pkeyopt qbits:256 -pkeyopt type:fips186_4 -pkeyopt gindex:1 -out $TESTDIR/p2048_q256_t1864_gind1.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:3072 -pkeyopt qbits:256 -pkeyopt type:fips186_4 -pkeyopt gindex:1 -out $TESTDIR/p3072_q256_t1864_gind1.pem
+
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:1024 -pkeyopt qbits:160 -pkeyopt type:fips186_2 -out $TESTDIR/p1024_q160_t1862.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:1024 -pkeyopt qbits:224 -pkeyopt type:fips186_2 -out $TESTDIR/p1024_q224_t1862.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:1024 -pkeyopt qbits:256 -pkeyopt type:fips186_2 -out $TESTDIR/p1024_q256_t1862.pem
+
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:2048 -pkeyopt qbits:160 -pkeyopt type:fips186_2 -out $TESTDIR/p2048_q160_t1862.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:2048 -pkeyopt qbits:224 -pkeyopt type:fips186_2 -out $TESTDIR/p2048_q224_t1862.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:2048 -pkeyopt qbits:256 -pkeyopt type:fips186_2 -out $TESTDIR/p2048_q256_t1862.pem
+
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:3072 -pkeyopt qbits:160 -pkeyopt type:fips186_2 -out $TESTDIR/p3072_q160_t1862.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:3072 -pkeyopt qbits:224 -pkeyopt type:fips186_2 -out $TESTDIR/p3072_q224_t1862.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:3072 -pkeyopt qbits:256 -pkeyopt type:fips186_2 -out $TESTDIR/p3072_q256_t1862.pem
+
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:1024 -pkeyopt qbits:160 -pkeyopt type:fips186_2 -pkeyopt gindex:1 -out $TESTDIR/p1024_q160_t1862_gind1.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:1024 -pkeyopt qbits:224 -pkeyopt type:fips186_2 -pkeyopt gindex:1 -out $TESTDIR/p1024_q224_t1862_gind1.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:1024 -pkeyopt qbits:256 -pkeyopt type:fips186_2 -pkeyopt gindex:1 -out $TESTDIR/p1024_q256_t1862_gind1.pem
+
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:2048 -pkeyopt qbits:160 -pkeyopt type:fips186_2 -pkeyopt gindex:1 -out $TESTDIR/p2048_q160_t1862_gind1.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:2048 -pkeyopt qbits:224 -pkeyopt type:fips186_2 -pkeyopt gindex:1 -out $TESTDIR/p2048_q224_t1862_gind1.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:2048 -pkeyopt qbits:256 -pkeyopt type:fips186_2 -pkeyopt gindex:1 -out $TESTDIR/p2048_q256_t1862_gind1.pem
+
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:3072 -pkeyopt qbits:160 -pkeyopt type:fips186_2 -pkeyopt gindex:1 -out $TESTDIR/p3072_q160_t1862_gind1.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:3072 -pkeyopt qbits:224 -pkeyopt type:fips186_2 -pkeyopt gindex:1 -out $TESTDIR/p3072_q224_t1862_gind1.pem
+./util/opensslwrap.sh genpkey -genparam -algorithm DSA -pkeyopt dsa_paramgen_bits:3072 -pkeyopt qbits:256 -pkeyopt type:fips186_2 -pkeyopt gindex:1 -out $TESTDIR/p3072_q256_t1862_gind1.pem
+
+=cut
+
+plan skip_all => "DSA isn't supported in this build"
+ if disabled("dsa");
+
+my @valid = glob(data_file("valid", "*.pem"));
+#my @invalid = glob(data_file("invalid", "*.pem"));
+
+my $num_tests = scalar @valid;
+plan tests => $num_tests;
+
+foreach (@valid) {
+ ok(run(app([qw{openssl pkeyparam -noout -check -in}, $_])));
+}
+
+#foreach (@invalid) {
+# ok(!run(app([qw{openssl pkeyparam -noout -check -in}, $_])));
+#}
diff --git a/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1862.pem b/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1862.pem
new file mode 100644
index 0000000000..a348548d69
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1862.pem
@@ -0,0 +1,9 @@
+-----BEGIN DSA PARAMETERS-----
+MIIBHgKBgQD9xYIlQ/DsVYRe/mLETy7f7U3uKakTOPPDUcmd1Oyaopii0hKek+kN
+Uo8gKEMrakJfJcWQmHwGrxbbPRndY7t/3VcNDukETNlrTeHenkIUOfGzE/+mMsr/
+yS0r8xKjsZU886tWU22ngQoftPZ3a+P4sm84yjBzWbOKMKKSw3G3TQIVAMiAYpYu
+M8Yh1gu5xsa6GHugzBBTAoGAOxWSatlBZLsMYzqJmzlhzQpc3yJ4RTu2tBZKZbP0
+1AOfLCOD3XXgvVWBEaY0t3sfTqv+iJw5qvmtfkYGeFyU6U3z/pTtDUcSenykU2Rf
++FM00ZgsjHSFCV80V95SaHIEEjqsrvfq6g3GHElxaSJ1ov/D9UrB4fiFJk15B4jd
+vP8=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1862_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1862_gind1.pem
new file mode 100644
index 0000000000..9b8522f847
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1862_gind1.pem
@@ -0,0 +1,9 @@
+-----BEGIN DSA PARAMETERS-----
+MIIBHgKBgQDSK3iZ8B7b7aqw8u4h5frUf0245I7CqfIP1smwcCPuPpsrGAIpto2R
+/VjaPxTljGyg+DoKBHh8+g3GyIDTCF95KZITZFnNhdgszulUMOBo6BVIcow2xb5P
+5OuEEs8SI8msPJ+DELktb4k7R7ErmQkFJkw+js7Cp+OynJXFEeM1/QIVAP0eH8DN
+0CVrbBWIKTni5GYMq9w1AoGAS71s2Qtb3i18BTjQpvircllI1JJg2KM0PSrd395l
+U5QzWLlOiagq3VxZasl/xVPRWLEjsjJvW0br0+etaK/RUCRh9umiKtAA6ej0CU8H
+en/LyRimo/62jB9OUGmNeIlMbDCmTBj0wSicbxTFnyMmnExyRhpmpwxB4R5D1Do9
+7no=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1864.pem b/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1864.pem
new file mode 100644
index 0000000000..2ee282a775
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1864.pem
@@ -0,0 +1,9 @@
+-----BEGIN DSA PARAMETERS-----
+MIIBHwKBgQC0mfNiG3j2s4OVjBSfxcHRAKm0Pq1EMInOH08H6rGDv2z+jxjpcV8M
+trTPH+edBXpcPIfj/g8W4uHzQbrhkgBD5oVFgxeNkdx4XFs6hYR/+Rffoz1yCyrK
+Y3u6KuliLh78b35nrD8a60c+sdEeyqyQyityC/DLfDPsHsaDoci/pQIVAKVuzcUl
+eLXk7fMosqqyWdRYuqT/AoGBAKA1RycVanmWQDK0GC+qz7YWK9pbN6jOTor+0lYZ
+X+ZOOgOJfd2VxN6BRMLrLZzwyZzLkLxCfGewtIESt7VOinJXlV/GQOaw4jSVUpMZ
+Vk3XXGzlCREZ3Io3/RB38jvK5L0GAvdlCHC2+SRz3zJv/xsu6jp5YUDyKA6BCpSc
+Z1dn
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1864_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1864_gind1.pem
new file mode 100644
index 0000000000..64abf5ed23
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1864_gind1.pem
@@ -0,0 +1,9 @@
+-----BEGIN DSA PARAMETERS-----
+MIIBHwKBgQDAs/X8j/GO88thl0UtbO1yzQd1rmDrZDuCz9u7KGb8nih4FMqRvqZq
+6SZ/jsgWVVmKSz4BR+pBXYhtzjWk9hJwtyDDMKgb/aQ+A6ceN3Q+56+wyrtq4IHn
+GSxq1qos6OGUo2eJ/OnwrFcssmdhsPJh+mRbksFlj4ioOiWFZP6EdwIVAKTxLxHR
+1mqrb8VzuKQtF4v29OX9AoGBALIvy95r7pNVU21AvWdgiqZ/0KgOl6Ltw39a4YoB
+1KJvAB7w3A+++Y9dJ2KSOcDleea/vOB/zke6Gn8tchTLxC+5wgxqJYWQyIJ2ayU+
+kuGbg73x25ZbxwOf/L/LXawlbYw96K/q8gHtTAemegbg3mA5FdB980PT4QO7r/Wk
+8pE8
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p1024_q224_t1862.pem b/test/recipes/15-test_dsaparam_data/valid/p1024_q224_t1862.pem
new file mode 100644
index 0000000000..a6ac0a106d
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p1024_q224_t1862.pem
@@ -0,0 +1,9 @@
+-----BEGIN DSA PARAMETERS-----
+MIIBJwKBgQCYF3IejaKxzlgFtW2qEHTuciYxEwQDK9wQoJXqnoeCfc0ZzyW0p/1y
+ykjmyQibL425XHDqa8n4juHVDlR7sdkWQgCxU9Y476zHMAllJiMRLb0YWd3htG8e
+4RrZdBp2ja/axeY0Yt4Y3tpLt8a1Wm6h6E17ZDkWJOHsiyhS0/A3GQIdAPFwM2kA
+z0GDenrDrTZReA1en6dw7ks5zyWkpO0CgYEAhULB2zCf7nKNmnbMAZM1M+UyooV7
+9x0esJ0nD192zQSfp5bLMFRobHw8ZJRNwwaxNvGj7T6kN1v0JbF2kD6CQ5qR+VQ0
+B5kPnrLEe1rEnMI5GY3mUEhuXT39aaEZgSZlr6Y28UGMaVPsLK/tUHQRv7NgbSSF
+VKxcAFZi3K4b2jQ=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p1024_q224_t1862_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p1024_q224_t1862_gind1.pem
new file mode 100644
index 0000000000..0a2f828a14
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p1024_q224_t1862_gind1.pem
@@ -0,0 +1,9 @@
+-----BEGIN DSA PARAMETERS-----
+MIIBJgKBgQCS0aAy145AKj1XTv8Xn0iBHRdJCHNue94IhsSuOLfqi1Usj1uff+Ti
+mV3Rb2EPvGAMoGVnenvH7X3MjO1qWUW1hHPVfZZ6cEJwMoOEht/2X5rv9r8TZiEU
+iMIMQNSwdGeRUqsCCEWhGKVhVVkZmHSRhwmG9Y9b2YibPDWEk+8o/QIdAOaZ2Kx/
+nK8OMtoJ7nY51gt6qk8BaLk6JELdsLUCgYAUUhmgW95kcJt15TZqFsVV0CXADHqc
+LYT4WcPsXuJdiQorZqeyRXNPzGoRvk9s1nqrDwoIwTcl2rArLPq5phcIEGtATR8B
+inIIAPB3v+i6vuZ5TfqdVpA9E4NDNr/hTKR+Jn6hNLzliETHwAXiC+cuAq32sUiW
+Ec0eJs9/vgTiOg==
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p1024_q256_t1862.pem b/test/recipes/15-test_dsaparam_data/valid/p1024_q256_t1862.pem
new file mode 100644
index 0000000000..075b1fb785
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p1024_q256_t1862.pem
@@ -0,0 +1,9 @@
+-----BEGIN DSA PARAMETERS-----
+MIIBKgKBgQD2JhtE0H2GzUgkWXHSj4aLIMdpLhbpcNeM8UR+GCr/QMv9YDmNmdyr
+imWHrgc8RhPECHAYkhMT6CbRp7X0eOJH/+Z+wYezCzbj6tWSMhXv0cNmD2qJFNNr
+g4ps0xfA2EljAzwQP+GifJuaZXcDrPvolSCaTIirOXUgWWZhRuPUhwIhAJhvIt08
+R98NOzAtFpzE1zIUCLPmCchNpPOLTbzOockVAoGALCWqChas4A2gweHVumUFYk8f
+1IEQUsiw/79hQwYk6vGETs0sxHwd+XXAAUhs0ogHmg1pV9FF0cktSgp8IPXQMf3x
+/pSfhyAexSY3DWhuFcYkYCrhDHfqMoyylrbdvjPnFONw4RqQWN0Skhwq+/Kdki5P
+hf8w4xPcc+HNB76vpd0=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p1024_q256_t1862_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p1024_q256_t1862_gind1.pem
new file mode 100644
index 0000000000..6cd9a27adb
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p1024_q256_t1862_gind1.pem
@@ -0,0 +1,9 @@
+-----BEGIN DSA PARAMETERS-----
+MIIBKgKBgQD02ixBdDQoEc5FADUTwlD7DMVb0EkZRlEuC78fH2xorsBBam/3JS84
+x5uiV5UpdyGEZaORTHOmQFC3DvtwojkCEpOzbITYft34ngXGrANdkAAYkfmtbkWH
+Oudses211ciLVNEtcvnWp9koyMwaiW8UJS8VXZPPdrF+5Sk7yUWYtwIhAK68pcA1
++/GbxzchcTcOEd1UzrhnJiQuWhCLAbrF8TjPAoGAVethgbgs116PQGJVwsRwCW+j
+dz609/2baEKKVfKnUCSbngA2nZ2EUw8fQjZvvkGeEnGc3noJkDthjxiEITvcXgQT
+59qRury4mxPPJ6bKp1U4SpJlmpNl/Uigm3olF45YOjOPrlyj5mIn/fHKvXp+9VH8
+KRjGRfDduSvStNrSQWU=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p2048_q160_t1862.pem b/test/recipes/15-test_dsaparam_data/valid/p2048_q160_t1862.pem
new file mode 100644
index 0000000000..4f247195a5
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p2048_q160_t1862.pem
@@ -0,0 +1,14 @@
+-----BEGIN DSA PARAMETERS-----
+MIICIAKCAQEAy4AQqY3+v5g3hulKvCH9iUzGOprsNag0knEt+xdSS7z2kpxj1ab3
+8DJDtIBfn1B92X6GjaiCKuH1FX2acIEq0DOvl4zNYQ7WSTA7Z5+MXK8Zk7slxr9y
+MhDj4xyOAnxZ3Rlkuv7H5HgNzS2lP3bZLiFFWw4YYqOLZxzjHDcaTVqU6orNmIJX
+6d9qW1MIxhVtKCjPsCqfY3qY206so3dxi+bK8EsweTBP03HO/SmcYIhFVStekE5v
+LoCSzTjDOK0DisW4SGF42m3Yh3m52Hk2fOckhc1si/JHA3Tko0VnRqUYz6gP2vWs
+7SkJzZSlwQFmxKkUXPdypyn+bA0XAyfQFwIVAMxf1UMfNLp0iajYC/liKwUgS7uT
+AoIBABA1H4tJZyvC7+J/xUf2jxIgHlGiJq3G70CXgHr3LKHhLWK/WHSJAsXGKYsl
+ZFB/pQmjocwthHYGicwB7pwYHotEv+JNMAWLiZjwb1MckGCZW6HcVsfXw52abqUP
+tqGAJu/KbuJEVtoDz3m7umI/S0IHSW8kRY4I96jL+uPXvGOTgnAHtjaxYCEZL3iK
+/vRpjuE7A52a52IZGZ+GlQxmfT3cOnHLTZpKaQhFJ6mZyrOYzaLVVnC2JJDMeUuK
+w34pH6dqmxPL41uwPyv0cCuzCfAlXbrWPs2AkFbBuKnyD8+hxpy1rz6EK1dVleLW
+mgxBLFL2D3yc59rp1hZU/bwIcSs=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p2048_q160_t1862_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p2048_q160_t1862_gind1.pem
new file mode 100644
index 0000000000..e839783209
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p2048_q160_t1862_gind1.pem
@@ -0,0 +1,14 @@
+-----BEGIN DSA PARAMETERS-----
+MIICIAKCAQEAvGtt/0832RbWBAXM9y3ubL7Hj/VZuQo318k8DUbTv1/886isw4uX
+Sphv6TsLO9qb7Ma1k18L4bK04NNQheSfvq5LZbMtX/VHWaoCSuzMj73Z+XTWTr/N
+aYwVAUq1J/XrX+P5F9b2KCEJ7iLAL0BkZXnIMVMwWcqmY7JthdQYzCwOc6S93aiV
+MEHKtekj5KtxhmD5o6tPs1GrVdnCUGXAZZbi1eVHbUro114SyWGflvnaxC+4WGRz
+GN9EoqtPZhOKlsAHaEZilf8tJDVOi7rnYw9gFvQH6PUWOV6U2fuYBmUBD8fSx1YE
+xv1dd/rawmKJ40ILXxOM2zzMYXwHse/qQwIVAP/hJF3q0imEjGKYSxaJ3cVZ7agp
+AoIBABRqCTro/ynhun43xrU/FRhsUIK1ewp5NEBOsaUMjm7w5HBVHfytwyGB+WJp
+h3Og73szKv2JsNNWOc+ASw116/mTosO49AJWk3YYdcoIiOpZbO41+4BWAIxE0ZqT
+Bjq6uQ3FR6EE+yQk486uIR4KqQ3Uj+BfQ6qJ+hOQI2gpNUkIxNNXVmYYgRZM9H1U
+oYTqeJYACR2spZYTRwwzUMFQzfBVyT7if/zHYi5NSAdeK/sjGT+XXAFw52e839nK
+7P5UUjCaqsduLuRkYcWE7f6hqgi2O2Rgn4kTaRrL7c4FBLmz+vlEffJJKNnjyX1k
+m+RhuXnP8UzBtsUdz+7Z+EioRB4=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1862.pem b/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1862.pem
new file mode 100644
index 0000000000..113aca5427
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1862.pem
@@ -0,0 +1,14 @@
+-----BEGIN DSA PARAMETERS-----
+MIICKQKCAQEAkv8C0SmPpJc0mQ6yVzDzQr2jIO3Gj2n7MSJ4EN816CecMmO8vBRz
+8x8W1BvjYDJiyFW7KIJcgI48D7rBndKqd2A8r9ErPJrFx/7AnPD5/b77vRKcJ14S
+8DNjSm+9Qg8281TeIztUrmUjWHIPj1ZNSev1yaprK5u01BSi+YIAxNOST4RrMurZ
+wz75VW4QZ/JkAwYy/r9LSmqeli3Hqy1sS52B1Ew/c1tVj6th+dPlprOPiPCzj6KD
+BkxDU2wjJJE2rYiMZqq3wKHlkuNl54T211DrYY0tM1YWSrPO/KjQU6lNP6DQK0WM
+w414Rt2MpXipr3+eSNGIx+evNOS2qJ84YQIdAPTt4hrsGeHjF2/fhkWJm+LP9FCM
+4fiSw79D9D8CggEBAI75tDjL8/Eipou9X61x9ZobVyubG/VaLWCV5mv4Wn4j22Gn
+T9OABbmZUAJAp18CTouXXU7zjR6f5mFgC/h/fgOqVqe5M9rAyZ0h/2TZ5cwnya/n
+8NydZzJCDPihpk2BXuxWVqX8J0R8MuaOQSSh+LqTd0FgW+by6i9jJm4ZREp6h5v/
+Bam4BPtNdLVKUDk09B0ILfry5St+hFdFdU7HtTgTIBb8buNaNGbiTYgDPaz2YjLT
+Nuaq71RU37PBxmbmgCz/rwAdNzQ/eGylfIPNO68YkFTY0zhYKBZfLEtpKN5s8gPT
+wpXU8+lm3EnkoG9h7+qbCIs6G5PUu+FartqzPpQ=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1862_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1862_gind1.pem
new file mode 100644
index 0000000000..c7071a2856
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1862_gind1.pem
@@ -0,0 +1,14 @@
+-----BEGIN DSA PARAMETERS-----
+MIICKQKCAQEA5uZxsPfUbcP0YBjVZ8QTc8b0Vv1kphd4FnoqMZgW3aGYL4iTN/I8
+av157vC6PW1x2YeHyjktd3yVJGZidqzfnoYuQdZi3wrJDST8BrGLgh0fuRNjH/RD
+/OUdCPCJteobUpRn6myPscvAQyHsWisKpFJcOnmqBlZNfommoXD+a5weABA0KAay
+MJu1+ahTaTjWCSGQCQ/JqSHFmYVy88l09yqFaHfvG3L62tATvqvuJZ2cshl5RCYQ
+ajXZS0moA7mk3ApShLdvskD9yLZVzPLb4gaG0gT/h36d/gqgZi8pq4KdlSxuAIDa
+7QRYWQqLWB/NgHsSvbSoxPN+ibfyyDPzIwIdAJu0noHZp7BCtEhtqSZkVSvGfrL3
+HQh+JP1TMtcCggEBAJlFpiWZ+n0W9dqHZ35QG1e5goMQusyJ0Oke31hCEyKVY1gu
+1gdxUVirhQwNpdfeBJMHzMNFpD3ocC3lMKRwEN2oZMXECkjzAPbqyvNs55i38CGn
+NW/5aAqkBnJvG4/O+ANwB+r64hgUiwIxlBW3w6TQri3Wa/c5xCvThneRFTFGuDWi
+r7hPDIeIyUYzgE6bJelX09ruhQEzeyFj2snfr0uCPjf2lqqy3FnoTVjrZtkSr+Av
+/esxiZjLfuqZQhYJtQsAIbuu83rD6VUnMF5X0XqQugMMJXxJgcBgomE6cHlrpqXL
+hJD6l77XftHNokshhCQxk7w/N/pH2j4Pxidfj28=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1864.pem b/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1864.pem
new file mode 100644
index 0000000000..9b65430b58
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1864.pem
@@ -0,0 +1,14 @@
+-----BEGIN DSA PARAMETERS-----
+MIICKAKCAQEA126Pk1rYEEQXV5E2hdg+uS+KfbEdtOncGOoMiCUajJgIdpmPycUh
+R5VE66AuwjryRaBAezW71UVfgEKyu5521aTl0SB9N62EkVQ0KtRErSiynZ9jOC58
+4zeRsRUquzbl7OyaYqgZz0N+AuKQYeS/SZUhvFUONJ9wQgVEpLF3Gfeq1xFx1TgM
+JTCyMyh6lZwvZvYa3bXcoxfCpsyo/mHmKZB63n+AKy2YRWfMpGFTc0osygaoLFRe
+hgo928CU5rcGq3uhkBIRRkYvjq7v1wPNgkdydtPxzsJ/2slZmoD1l92TK0XJGP58
+FP+o9ThvAg8wobLP/rIW/IerL/v0jo4URwIdAPuKgUfEDIyRPWaL3ZqRGrd9xm1o
+S8t/0jlAJ0UCggEATxHNhkSCNWypeGWe6SQH7VZBdlcVO4gDu6g04Ui+XaIaMAKg
+WtYBlmeyzvArfyZxG/o3mrFL/B1/d3boNkgu850M5Ijz5qY1O4NO2Dof4uLXi+vy
+zBJ4ThHF+5p4mr7JSIjVGHpTHCOQEQTAI44LcIdFij8cqQXRUB5MVERkRqY+5lEe
+c6oqildf8Gd99xOIdp/R2hD0tRkwMH+zFKYFuDlmX35X4tagzvQRNYBx/KMgFuXl
+ZbSMoBIEbF8SvzeJp04FwxjE+OpBur2EMuyjWyxbho42Mque+mAqwJQ8xNLzC1QY
+S2CHPTT22NehGZOLK4YtSoU8GUTiQT8xDUitXw==
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1864_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1864_gind1.pem
new file mode 100644
index 0000000000..e715e4836a
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1864_gind1.pem
@@ -0,0 +1,14 @@
+-----BEGIN DSA PARAMETERS-----
+MIICKQKCAQEA18dE+jFlsFpb68u1HSpjkDsOfBpimo24pBPUPstH5bg1vZNUFXwj
+J3BgLw0qOQ4COO9UvLxthcNr/tirW8txqBoVVB0iw+gScPeZQCkSOhwB9MZq15hd
+us3a8bBrXe1MXSJ6HMsCJFo3VUM3grLg3IIvMZT13MDlEFre/Ttds4UupSl/WEiv
+PjZnUEY6BD9JXNTWAzmHq2gIzQFLd9vLun/KpStotiBitUwXZXy3WTvz25dRpRnA
+XCa4MXBAGHsKhFOL1ccLpHgiX2ELWkyopjWEErFLyyAJcynhx2PrQTrIhfv4rgdE
+1ecqOi6I2oxntmFyjIjFJ4e8h2GKwxL8WwIdAN8WQLZ6RfMm2Zl3tGVJVldNKaMW
+2r0cQuKFL2cCggEBANBlnziHSTcuv7L2SK/nqbivto5xjnnJg8XGGL3ZqWCbbNyv
+PJ/XyromDzuMcGBIokn9n6g4YXqh2ik0in3ntOycP5D/JYzANJW7hGefHQ8zonSb
+VgncDeX5DfqhPVFvsGhRCPxWehVzvYf/6TPEI1Mhoodj5cOf1+ZQLk31Jhnj62Uj
+OC+++GU78p2Ys9vtZXKdpGkHxh5ad/PwyAsbk1a7hNFxPBqm8kZt4GPfslz1e2ZA
+QtQENIs3Xd56yzSZM34Q/H1eDREr6vqd5wpNoERMtdvD5cthgpp4cureCDEmaKRr
+iLG0Z9vWn6sUCnbHH5ieZ/q6lodfKE1aR/dUkDM=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1862.pem b/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1862.pem
new file mode 100644
index 0000000000..773ef4fd93
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1862.pem
@@ -0,0 +1,14 @@
+-----BEGIN DSA PARAMETERS-----
+MIICLAKCAQEAgp20bAUCq6LO/qtRdecf1jBrQQSIN7RkiciGLqS6lZsC48EzSbmu
+XfSMybc/zsid4D5qwKBwNedEeL7IO1hHESBZ6qD8Hfk02V7QbyatxDX7i6/XkcCo
+R9a2pbRDQA149pI13lBSINUAygLk33ez8HviDg27/WeCRaB6QgSMBK3p3XmSCuzz
+yVwA59XblCgxqfXWCHyMP6i7o97s/I+CoEryGBtoY2pXpRFakaFzzvMymiU8z4eX
+TWjAx4RMkwjDgQvgFEd4na32V0C6NMvQTVVoiPNf85YC9cP2zsoMCS7Yn1OAvn6u
+rKr++eLJKJbOtagRyC9hKCFIL/XXB31FNwIhAOUwm8S5B/PqQmjLAP1NRQCjScxd
+MNhND3vLSiO2DtS/AoIBADt/4Matb9qA/hKmDj3YxsEKElUUrPkhF/fSyVU12SIp
+cT6B860JJ6dUD5PefAwQA47DxJ+T/LTyYyJGK+xw0jKlIH+e1zmhxd6fZyQ82UES
+Cb5bulzEsMIZFV2BdKlLppHw6yhUE0qr3nl9gr/4TPULNpT8rVKZhW3MdA7u08PW
+7dV2XhY0PliYByGZr1ZjKJM7bpjkWLvJAN1WrwSlHjcJV9vdD6tqIRbVzjOqrcN5
+xlP3JdkQV5iXs3RlZ8JrH1M+MWp6udt4TqkkPkn9VzG4Kkzw9BKn/643Aei14Jet
+bucs20eyianZeBHqkH/sMw/tfM1e3GwdnH+I714WTH0=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1862_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1862_gind1.pem
new file mode 100644
index 0000000000..a405a4a38b
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1862_gind1.pem
@@ -0,0 +1,14 @@
+-----BEGIN DSA PARAMETERS-----
+MIICLAKCAQEAyKq4F2lBf+8YckEU6JW+pfOqViJjtpOdVlZGDq65sYeUs6hUo+Qs
+biO6mZy8m3XyEWnSR/d0suL93xkjtoo82M5jYkz49I7rAHWRJV2WLjWz37asjBzN
+F1dYg0RtEio+mEQv2mzLzr5mNeh7XcjRtTMW6iNH3GAQ/kuFjKY2nEPvJc8m4Udx
+RYGjGSyL2vdWJf6iQsxv7YmbsF9P0ZQhvLu9VhoZhtNaujqAl+fsfno2cgfDyf31
+Ppsnkl1WuBM3eD8ZWPB7mjsxS1z7Fxh3OxaqTbA1Hd8Fj0ixNG+D6kDoErSnZjg5
+Bc4bjLG10o+B3bCiRx/3ozM9IRGSrpI/ZQIhAMNuTbIp8SR1EtifRudeNiM9Tlk3
+0CmrVR2hzRUSpKPNAoIBADuHBrhuKj93By8DgllwZ/cJOXKV32frVdocX5PAOEIv
+2jDFd2ya2Gyi/nS/AE1UimvjAFP9nofyzvDJG0xOhqvwmVU2kdj7632JdSFj/Lzj
+twtqNDve2OYdcZ4GCBiH6XOoURX3HOhJqqYtEJHkW7OKFzhlAYZWreELm9RaiuFU
++QgMmVZ6wdbnNoOBpjCjzjtMf+7pX7Whh1g/siYo0fR+LVHHfqHpxBuXWGbbOL04
+cSV0/JF2xqynH74ySqvuoEA3o7K+2Xo0JRGcwE/lkJZTEYaahJmeVQ3Nf2NOrOFY
+J0NRY9hOCEz8oQOC0AmBj4OaKaoFQKkP3DQWFNjK4jQ=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1864.pem b/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1864.pem
new file mode 100644
index 0000000000..36674bf95c
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1864.pem
@@ -0,0 +1,14 @@
+-----BEGIN DSA PARAMETERS-----
+MIICLAKCAQEA/nlxxQ86nKiHEsmMT5OtmxXp2tHw//Kz+9089krs/fN+KT8mxUlC
+5Czyx3Y8NPCratNfxrB9/74BVFedkt18GMVRUaQNRQw0q0aWrrzPhZpXxBskiXOA
+mQelUKdMmuK7ZbulrNjInWIAV9Pr3yO7FOWO272VhoBGL3nasp+5znGLLBUZm+kZ
+MEnk8Us1/8KEn4/5Q7bzvaN/Pge2kBF6JPkPprtsCJgy7aJO3ydDc0/GZIfB68Q7
+RbTMvCCLuMzgYdeLc20y0d5CZ570gPBU7zl/ix+a8Plyue9hX5NHt1aHFTGpLNyl
+tH2WCiHhJNLcyacbOVK9Gz7XMMeFDR5/AwIhANY0MlY3BTnv9wp4cnACCzNGskxc
+XKxwqCalKyQJtRbLAoIBAD1HVMIL/zH5PcEu7hCFkd5O6cJYR5ETRWYk3VQw/i5r
+P4jQhoQH/ztY84pr2cd7/maGSbz9O0D6o1M/im3TX2+NrjzwlTNYTRaPI2vV1Z4N
+wb/3zczBshhwpZ6heFxIfnchejw9hAXERz94AWfKPN+e4mIGII62Udna5AeOJufM
+9KW2PGd9GP0n1HlziDUYtZXlgCqgQvYlfPp3fj6Cdy49MsY7ZeEfEljXWM5+mX8u
+lVLTqN0uwkLudAuN51nphaIJI+AJ+TR7rFgYEoG2O/6uoqxBVgMoTKkkJqHM3UhE
+5pd7AMkOUpUzuw1YDCW9mdUY1dAgOJr8GZnknWAdjvQ=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1864_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1864_gind1.pem
new file mode 100644
index 0000000000..398b266940
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1864_gind1.pem
@@ -0,0 +1,14 @@
+-----BEGIN DSA PARAMETERS-----
+MIICLQKCAQEA2Drds0DjRV8ht73dVp44MMtcjvSxugNuElrwheVB5Bm1wsmrEVnt
+MSGdZJ5FpndQD/ndqSctTssjW+cxjJ4mHjVTXpTZURQZW0MNkn7+qVw6oFrnd+qq
+tDkh0jnaTYTNiEp6qm5QmnEC/Ccvr3YZuY9EHurzVptJuoRIMgFGCz4CHj5q2vQ/
+CPvBohUSvC9EmKGveWGFID+tmFWuHZ9d9pF/GWjA2rdW//uRiStssbN24jscsbZ6
+XnNrJpgyGYYjugsl+catrMkodstrLsk7YvEYcE6YYN0TwZc9kjJ5f3ydQnI35Y/s
+EQPtP7DdA8aLaOC1ra2Nakm2ZW+pkygPMQIhAI2NF0GuR7NjD7lXx6gnVyk3p6gR
+l7u+BNIhHFVJP2/9AoIBAQCvGDoQ9S6So58RDz15ghYjpdNSzCBtA6ixYszesSJU
+DksnEDV34AEB2C8/uvzcSIca3314dDsE2R0ubTrh4J/2JNbNE9M5UYEaJh0oK7LW
+h7YZ2XI5j08/aAApRsR84kcZdE3r+QYFHTuEnoc0ADkC3J9uIuQwl/CgTkw56OBP
+MmA1GD79/MeYc/mvJujujWG0Y+tyuQCORzcYccEpYR8q6kf1r7+IUy1L8r4XFIwM
+oW9eB4XyTrA8wKtWQfEpSAo+PX59hfafuOG8wKUPbTANSFK2ePQRJO/6T81rofOF
+Bz9oeTjZV0f0EkJIcF14V2rksGVT0kAHndBw73w27ofj
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p3072_q160_t1862.pem b/test/recipes/15-test_dsaparam_data/valid/p3072_q160_t1862.pem
new file mode 100644
index 0000000000..c8d172b13d
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p3072_q160_t1862.pem
@@ -0,0 +1,19 @@
+-----BEGIN DSA PARAMETERS-----
+MIIDIAKCAYEAzEjKQVdMNYbt8uE5P5znYqjWHP+G6Bp6Q93i0eE9NG15G+cBlcke
+OJoYQr2fc3ypl6zjO6g8uZQHYvbQGY1zmYnGPikL+AgYqCpbFZHvZ2pG56TJ+2I/
++d2zmsZifqkXsgQIRa6Hqp+JMW3y53PZjIEn2JYK1pTMRKfIWrfeYwoiZwi1rbeP
+l+0D1MgT5AuLXw5H0wWNdKGScbbftRVNm3K3RwukICOvbpEQXIeI04I9wh2oS7x+
+evjZ0YXfN0HsUWYQ8rfA3i2OU9gUVFcbSgdpoSqtkicGJ/6AyyCENr2AuKFAkZ1A
+BWYAJn2Nd4apsMflZckq8XdxX77juprjCsZ1DVn4X3hMRz4rnwqq6yPF31/KWyTx
+s33PK0JixJCnOzpponSljC8Bo+iTmE9GvBBsxCFZXmKK1bWQpaedUpqcX4eaQHGK
+fr7s0R9Ga+Z7LRvD2HeiZUSq+2fk9oW8nTzac/yFiQGlAq82WvQGIV3puYHtxHnZ
+Ii24PuTDgy1BAhUAjyumRyUZPh0vSI+VGAJDqiMcmBUCggGAR+j+RHswsFB+TaHv
+z8/b9zEBYOUvBfNeX3zs7teQnjRlTZJz2pwo0V2vv503Gv0s9d4Pzsw+ccDikqTr
+je3HV8h4iEwb2meh4oFNmUUFuyk5RgEJ8yDPgWgcKTV5bX62QRg0Uch8hRPYCKjn
+2hrLWCAc9qIHJY++s08uc1m799sn4chffNkb+fds2DOzzHKkKtj2WXzNyvFBnDOx
+qFArr2H+g7Xfx+ykIjMpG3jxKClT+n2a0tiqDYD3HG4gxD2keTBpE/YinEm/6CnT
+tLPi8K5wg22GxBpwB/MSBN2W7Q5fw9DnZLk6ROITMmYJE4NU7gEilkNaEmiajBXu
+FfyfZdvc+GqpdH64TuzbbvaXckKfEpYEnYSJbIi3WX/71MtSAe4wIWAkU5xB/ujl
+3gjX4qJQpm5k5aRVdJJ0IyVz7HaePpO7cdgKbcXiYPCdYIno8eDnUntDEwymmgnU
+wsxOzNKiKkXRnku8Or34DiJvgIz5yyZGpIYI2keKNF2A0ins
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p3072_q160_t1862_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p3072_q160_t1862_gind1.pem
new file mode 100644
index 0000000000..e8d10f776b
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p3072_q160_t1862_gind1.pem
@@ -0,0 +1,19 @@
+-----BEGIN DSA PARAMETERS-----
+MIIDIAKCAYEAyu7VtPuTmkampDvDUwh9tXFDrwrTDOKf7KbokrFNoT3xRjeIce8g
+2t2q62jMrk2JnVziGBwq4vRCB6nUTxNnaKry6hF1h2sitlhONHcnNPWW1pXZ8SNZ
+W7/YlsATYd3rfsVdtQ1VLnDmoGmSWjsJ0Oh5+XNw/v+DUvl2zaTtaMDl6ST+tH2w
+K39RMEWJuUxBMFurWgcqc8jUcvVXSJcL+1Wf1DrVDEG1b6LgCTZeDnfpKaPMzHfW
+BnxFMgA9SGek7CwSSOs5L9TmKeQHO2zKZ+pdQejITim5LnzsozgU/Fu66vE9shzu
+d9ogHPlAqIpUFKyF4cJPXTNMpsBcsu2pJ0hJ6GoMINl6lTVWRNjWOtVeAn4mHLVQ
+oA5OSHHq3nTALETGWkQabC28qh7OK3EbYdjyF4M+gaPWhR5X7qqSy9tUwfLcxc9Z
+ngFsrRIDGWywofV3p+PRGSz/HAX4PB9bD3du4cDlT7F5MQsEpoQ0UaaMHp/RzeTo
+yiIJDS9fBhtZAhUA4pXEvfNK1n84nAesZsnGmSHB+M0CggGAHQhfqwV7g8UT/JPX
+5pJ9cBtLkeTdm0FhrkdoZ5mrfXJuml5mhdQwHh/gT5mQG8ilweaVh1P4GwR3CQ+o
+1xqmoKzmu6B68exIXnW9JXrSC0HvthVzjve04P98VZWVzSPMAtfuFDa/XbXMqLdj
+evZpBKTeAK1AO0R41t1By30epWazajHNZi5FmV5uwZsJPAqHe0asRhWALAWYK1gK
+kdhJhPAlaYTpYnSgrUqM1svnO7T4JLGrzR+ijrs1B8R4EnYsrldQUnqzi5mdweAw
+wugnvJTkFOmVn1iAnR0FIpFLzLh/pkp3Ajb4iK7R4hfAqHqlqhhqjHTPzjvKRdMn
+bXpAiY8CAC47dNd4t/bIymv4bLXjMxrecd9Ar1LZe3Chcr1egPuOjdOFEcK1MP6w
+wIPXJqtYulXjCfd3WR6uQSu/AsyCpOmzyR8EFZN10KoWLAEnGzdRXI5GQ9ddZl5o
+tNBAwCGTXg6tTv8FscyLLFbfJ3WOSbe+rNb1MrVHshFBzvG8
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p3072_q224_t1862.pem b/test/recipes/15-test_dsaparam_data/valid/p3072_q224_t1862.pem
new file mode 100644
index 0000000000..40e8e120da
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p3072_q224_t1862.pem
@@ -0,0 +1,19 @@
+-----BEGIN DSA PARAMETERS-----
+MIIDKQKCAYEAxzGWJFWDGakaCqZHIekcTxRN6axWx6rTOyV1ZSljtuqNtGR4gZVW
+BAxKs5eFqykkLl0JmiBJJ8hHpNEWLxU0CG/ZDh7OhlmgUL/o1TeVHHXChyGL4dwn
+ds6VXAyBR7lSKoCfvdDpPkQb193XoXnjkt8qLwu4KVT+Xdv4F5oaulCbbMojqoP/
+VEyiYQhPVImIluiEYqjo3xQPAe1vgQ5gAqPnfmcppeHFkUWEGFn7qTTf+9EnUBtu
+LTLfwzedwMQhJ32lBqouPqv7QB74KcvzYIJJKb3WTskiLcYOO7dcYEv02q3KYLrY
+ij89nU3So5E60GLeQhFvQJA+kaAWC9bOpZT3pMsw9EDvHcbs+jNHNeZgrP9sgxya
+X8/sW4QVjsQC3GC5L/wmEC6TtdXLZjr1z8aYi2HPO1VmSR26+Q+jwXfWT7mjrvZH
+A1MIB9p8D3CcKOf0bgTSPq9J+NrUuTOQ/vL2JiQDqRiIfWACd3T8SSNANx9H08xg
+fHpaurhi3703Ah0AhS3fDX9qc3nH8NDghaBjTNG4+EiSq7q59dH5WwKCAYEAjd0c
+DFowwG/lKDDkBOP+ei7HNHizE/N5pJnrw8EFWwHbqgA6q0oihPlb+FIsEOFEJ13E
+yQOX0gdotBhUaNFenNgq0XgT6Ji4PTqkd8PE7IqkO6RXSnHRaCbgAW+KlHgQlMpc
+12KnRxPFbVErK75hfnGyDyIZ/7GZSvQ2pEdJutwyigCFmb+u69Ri+bOcV3OwtdHS
+PfYXum0SF7UzDGYBlYvk6zVlFyMRMdq3Ulyk337zSHY8cwX3sEbSBASh5PrMm1SP
+Z1kq23Uo+2sr/nRr3ZiLrJeGIbMaFVbpH59AaYbDBlpJHiUGlRfR9ogAgxDlwjqh
+M1a/UZZfcGItFYSGwrLqv/NIHdrk6T4G/LiQsfj1n2TMzUTpSBXYOGdnVy1JyqBq
+5T0bPbyRI3yyogpcMYIzbf5xwTXzTRl5IuesLKpDepjfnlG9OKNx8Tr7qcC/jtt2
++eDnp0G/JEJRvKv6uMzNALaMTGkdVgtG21JrsBEvIH6tRGKOzXq3sGwOz9fE
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p3072_q224_t1862_gind1.pem b/test/recipes/15-test_dsaparam_data/valid/p3072_q224_t1862_gind1.pem
new file mode 100644
index 0000000000..19087a0735
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p3072_q224_t1862_gind1.pem
@@ -0,0 +1,19 @@
+-----BEGIN DSA PARAMETERS-----
+MIIDKAKCAYEApa4oiH+yG20EaPlCODyXW0tys6dCwztUH4bK0IA8Ld/nhHImQzJ2
+co0twe51KwMDJrw8OCPXOQWe1S6MRrqhv04jkVO37dIdBrlEKQggL+8XFxWrzFtk
+RsuGyAxPXcG7tprXCKIkXmJ4ZH4HziVPDr0dv9LBAtoOCqTh7P1Srr48IJsQbRPc
+Rf74f5TtGZ41OqfJGK9uHZwpteG4uHK10ferEuSPzDY3I0DOgCYYmGjc6N4MKEOU
+10TSUO2ye8IaXPdoayRincRRO/mKF+b62w27cbdn9hrq8aPyw2E7ehZyAduILevt
+qEDRJyOxJ/oM7pRAbALytKz0wkCeNL+TxEM92mkLkrqdn3Hhl4xOUHG9W1odtwKJ
+36YQMM0ubIy/ISHiwBzVAquiP1aSUudtNRf68g+WwuvRuMaic05j0nizubgtegew
+9741+fdKKYRT+aOMsouEnqrOyUht9HnAHzdBVAoNymrvnuX+Ylnu77/D9PwoVhMl
+3ttfx/omQzN5Ah0AgOSripFvRSJSWlDK22X8pfYa+QLmLgWMUxtYNwKCAYBlGgar
+o2cx8BF839UFfvn4JOY5Sptc+EMBgdJFM+g+9DMUxq1gFkVjDPM8JR/rC5XJf22L
+HlxrYAo6/0LZbyPQqm2MjjQJ6onH74nZG8Nn9qk6X2d4wmrMH41uIzd3NG3BEAK0
+9Bhq9TTYBEOduZIR8z4CNONYpom2/tcOBzNqMlQMJDJ5x/hkAlD+1bKlaZoFmwT/
+qhfkp5Z7WcLEq8TVzweSp4EzUtaftcprNVGXExF2nFiBH0NkOIXymOFht+BLgxKh
+7xZFYGjc7H4aSQEap5vtKEkQMFoRB24zkrg2e/Wc/eUOEslGw37XTUsZLIg2U8Cl
++EeAm2VxGaZsh0EFmXOwLchwqttP4Tjf02t4CZh8T3I91GNutUaPV/K2QkUcuCLM
+BLs+5et5hQiVMM9wp7psXoaexh9YMGx+nhfkIcPtxTAA6ERsg6muVsUAaEE+TxRk
+EVqBR86jbmwYUTGMTYU44owlufenclS0W0aB6Flin2wxfgxzo9enIVRHmME=
+-----END DSA PARAMETERS-----
diff --git a/test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1862.pem b/test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1862.pem
new file mode 100644
index 0000000000..c6352818d0
--- /dev/null
+++ b/test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1862.pem
@@ -0,0 +1,19 @@
+-----BEGIN DSA PARAMETERS-----
+MIIDLAKCAYEA9y+7nMniLiXibpJ2MiTdolb4D3SclBqXgnT00VhgqUrx3rSfkQxZ
+hljKyzZc2+Ijc7qnW5NvABRFwz/vZuEWUje8qRI6b+rydzK8X26A+RbbbC28xDLV
+beKMh1Hx9O4zGVLBL3u66onoJSXhIiG4hu8wkympc9jGAmRIfIF2Uixy15387e1E
+mFj7UH2F5frBxiSnPwZ3lFjPSB/U6nLzGgvIsl4xhZb0Txxn/TtECsyzdQnorixh
+p5oMnqGa7/Bz1dCswUwTTmkJlqKW8qlJXO52+1+H0mqWCB3JC9EIvlerVgnUa+x9
+uDDya2gvwImH8PxReslOhn8hNqxL6/1v7yxoQvATOwBblkgUrv3jdBerppQV6Yb7
+p3/JnfPGnpF3q/9A4NuTmhXd+lhmx5sT06SNIQ1VCBqYJhTobHTHkNxVJuPwL+Fc
+u2jBKXsyzFy6W+ac7yUY58Zi6WFcybx/Sp5zrLUa5EDABfWtyvsCYTgptIRq9AHe
+EQIQUvDxgsLjAiEA8KuUTAHKlPQJvd2P8LFblBCyMRTZdemRjTLiy2zO3QsCggGA
+bUzbh6SCW1qq0yacP+gPVKikYEmrtsAUphMF5nq3OivstvZ0TZ2M6bp3MIbrVznm
+I69/8QnrSDGNqCCKAaoDjoTHWABlRnFKMa3HNhY5Wa0zpzch1ZMx339JmWwRmZOj
+UeqlzDiSsD58oMG0VBW0gCssvhCaf6K9XlizJ4JkEG44WGZJX9iw6luiqWcO8QjS
+tpwAh1WLgRO2JnrJ4adCF7XoGSptGDfV7oT1+w9IRWFGY3WJWz7c2fEY9hyzvwOM
+/QUDEqk7jMxTatX6fzREiQLVflnNf4aO8Ioolt29b5xgOskdRfoX5OsFCS1WemV6