#include "sa_crypto_sign_common.h"
#include "client_test_helpers.h"
INSTANTIATE_TEST_SUITE_P(
SaCryptoSignEC,
SaCryptoSign,
::testing::Combine(
::testing::Values(SA_SIGNATURE_ALGORITHM_ECDSA),
::testing::Values(SA_ELLIPTIC_CURVE_NIST_P192, SA_ELLIPTIC_CURVE_NIST_P224, SA_ELLIPTIC_CURVE_NIST_P256,
SA_ELLIPTIC_CURVE_NIST_P384, SA_ELLIPTIC_CURVE_NIST_P521),
::testing::Values(SA_DIGEST_ALGORITHM_SHA1, SA_DIGEST_ALGORITHM_SHA256, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA512),
::testing::Values(SA_DIGEST_ALGORITHM_SHA1),
::testing::Values(0),
::testing::Values(true, false)));
INSTANTIATE_TEST_SUITE_P(
SaCryptoSignED,
SaCryptoSign,
::testing::Combine(
::testing::Values(SA_SIGNATURE_ALGORITHM_EDDSA),
::testing::Values(SA_ELLIPTIC_CURVE_ED25519, SA_ELLIPTIC_CURVE_ED448),
::testing::Values(SA_DIGEST_ALGORITHM_SHA1),
::testing::Values(SA_DIGEST_ALGORITHM_SHA1),
::testing::Values(0),
::testing::Values(false)));
INSTANTIATE_TEST_SUITE_P(
SaCryptoSignRsaPkcs1v15,
SaCryptoSign,
::testing::Combine(
::testing::Values(SA_SIGNATURE_ALGORITHM_RSA_PKCS1V15),
::testing::Values(RSA_1024_BYTE_LENGTH, RSA_2048_BYTE_LENGTH, RSA_3072_BYTE_LENGTH,
RSA_4096_BYTE_LENGTH),
::testing::Values(SA_DIGEST_ALGORITHM_SHA1, SA_DIGEST_ALGORITHM_SHA256, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA512),
::testing::Values(SA_DIGEST_ALGORITHM_SHA1),
::testing::Values(0),
::testing::Values(true, false)));
INSTANTIATE_TEST_SUITE_P(
SaCryptoSignRsaPss,
SaCryptoSign,
::testing::Combine(
::testing::Values(SA_SIGNATURE_ALGORITHM_RSA_PSS),
::testing::Values(RSA_1024_BYTE_LENGTH, RSA_2048_BYTE_LENGTH, RSA_3072_BYTE_LENGTH,
RSA_4096_BYTE_LENGTH),
::testing::Values(SA_DIGEST_ALGORITHM_SHA1, SA_DIGEST_ALGORITHM_SHA256, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA512),
::testing::Values(SA_DIGEST_ALGORITHM_SHA1, SA_DIGEST_ALGORITHM_SHA256, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA512),
::testing::Values(0, 32),
::testing::Values(true, false)));
INSTANTIATE_TEST_SUITE_P(
SaCryptoSignRsaPssMax,
SaCryptoSign,
::testing::Values(
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_1024_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA1,
SA_DIGEST_ALGORITHM_SHA1, 106, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_1024_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA256,
SA_DIGEST_ALGORITHM_SHA256, 94, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_1024_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA384, 78, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_1024_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA512,
SA_DIGEST_ALGORITHM_SHA512, 62, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_2048_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA1,
SA_DIGEST_ALGORITHM_SHA1, 234, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_2048_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA256,
SA_DIGEST_ALGORITHM_SHA256, 222, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_2048_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA384, 206, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_2048_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA512,
SA_DIGEST_ALGORITHM_SHA512, 190, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_3072_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA1,
SA_DIGEST_ALGORITHM_SHA1, 362, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_3072_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA256,
SA_DIGEST_ALGORITHM_SHA256, 350, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_3072_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA384, 334, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_3072_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA512,
SA_DIGEST_ALGORITHM_SHA512, 318, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_4096_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA1,
SA_DIGEST_ALGORITHM_SHA1, 490, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_4096_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA256,
SA_DIGEST_ALGORITHM_SHA256, 478, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_4096_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA384, 462, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_4096_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA512,
SA_DIGEST_ALGORITHM_SHA512, 446, true),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_1024_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA1,
SA_DIGEST_ALGORITHM_SHA1, 106, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_1024_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA256,
SA_DIGEST_ALGORITHM_SHA256, 94, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_1024_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA384, 78, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_1024_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA512,
SA_DIGEST_ALGORITHM_SHA512, 62, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_2048_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA1,
SA_DIGEST_ALGORITHM_SHA1, 234, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_2048_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA256,
SA_DIGEST_ALGORITHM_SHA256, 222, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_2048_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA384, 206, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_2048_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA512,
SA_DIGEST_ALGORITHM_SHA512, 190, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_3072_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA1,
SA_DIGEST_ALGORITHM_SHA1, 362, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_3072_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA256,
SA_DIGEST_ALGORITHM_SHA256, 350, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_3072_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA384, 334, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_3072_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA512,
SA_DIGEST_ALGORITHM_SHA512, 318, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_4096_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA1,
SA_DIGEST_ALGORITHM_SHA1, 490, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_4096_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA256,
SA_DIGEST_ALGORITHM_SHA256, 478, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_4096_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA384,
SA_DIGEST_ALGORITHM_SHA384, 462, false),
std::make_tuple(SA_SIGNATURE_ALGORITHM_RSA_PSS, RSA_4096_BYTE_LENGTH, SA_DIGEST_ALGORITHM_SHA512,
SA_DIGEST_ALGORITHM_SHA512, 446, false)));