}
-RUNNER_TEST(T6110_yaca_sign_get_property_invalid_param)
-{
- KeyPtr key = generate_key(YACA_KEY_TYPE_RSA_PRIV, YACA_KEY_LENGTH_512BIT);
- KeyPtr key_pub = extract_public_key(key);
- KeyPtr key_dsa = generate_key(YACA_KEY_TYPE_DSA_PRIV, YACA_KEY_LENGTH_512BIT);
- KeyPtr key_sym = generate_key(YACA_KEY_TYPE_SYMMETRIC, YACA_KEY_LENGTH_192BIT);
- CtxPtr ctx_sgn = sign_init(YACA_DIGEST_SHA1, key);
- CtxPtr ctx_vrf = verify_init(YACA_DIGEST_SHA1, key_pub);
- CtxPtr ctx_dsa = sign_init(YACA_DIGEST_SHA1, key_dsa);
- CtxPtr ctx_hmac = hmac_init(YACA_DIGEST_SHA1, key_sym);
- CtxPtr ctx_digest = digest_init(YACA_DIGEST_SHA1);
- yaca_padding_e *padding;
- size_t padding_len;
-
- std::vector<CtxPtr> contexts;
- contexts.push_back(std::move(ctx_sgn));
- contexts.push_back(std::move(ctx_vrf));
- for (const CtxPtr &ctx: contexts) {
- YACA_INVALID_PARAM(yaca_context_get_property(ctx.get(), YACA_PROPERTY_GCM_TAG,
- (void**)&padding, &padding_len));
- YACA_INVALID_PARAM(yaca_context_get_property(ctx.get(), YACA_PROPERTY_PADDING,
- nullptr, &padding_len));
- }
-
- YACA_INVALID_PARAM(yaca_context_get_property(ctx_dsa.get(), YACA_PROPERTY_PADDING,
- (void**)&padding, &padding_len));
- YACA_INVALID_PARAM(yaca_context_get_property(ctx_hmac.get(), YACA_PROPERTY_PADDING,
- (void**)&padding, &padding_len));
- YACA_INVALID_PARAM(yaca_context_get_property(ctx_digest.get(), YACA_PROPERTY_PADDING,
- (void**)&padding, &padding_len));
-
-}
-
RUNNER_TEST(T6120_yaca_sign_get_output_length)
{
const std::vector<yaca_digest_algorithm_e> digests = {
}
}
-RUNNER_TEST(T6170_yaca_sign_get_set_property, YacaTest)
-{
- KeyPtr key = generate_key(YACA_KEY_TYPE_RSA_PRIV, YACA_KEY_LENGTH_1024BIT);
- CtxPtr ctx = sign_init(YACA_DIGEST_SHA1, key);
- yaca_padding_e *padding_get;
- size_t padding_len;
-
- YACA_SUCCESS(yaca_context_get_property(ctx.get(), YACA_PROPERTY_PADDING,
- (void**)&padding_get, &padding_len));
- YACA_ASSERT_MSG(*padding_get == YACA_PADDING_PKCS1, "The default padding is not PKCS1");
- YACA_ASSERT_MSG(padding_len == sizeof(yaca_padding_e), "The property length returned is incorrect");
- yaca_free(padding_get);
-
- std::vector<yaca_padding_e> paddings = {
- YACA_PADDING_PKCS1_PSS,
- YACA_PADDING_X931,
- YACA_PADDING_PKCS1
- };
-
- for (auto padding: paddings) {
- YACA_SUCCESS(yaca_context_set_property(ctx.get(), YACA_PROPERTY_PADDING,
- static_cast<void*>(&padding), sizeof(yaca_padding_e)));
- YACA_SUCCESS(yaca_context_get_property(ctx.get(), YACA_PROPERTY_PADDING,
- (void**)&padding_get, &padding_len));
- YACA_ASSERT_MSG(*padding_get == padding, "Failed to properly set padding to " <<
- padding2str(padding));
- YACA_ASSERT_MSG(padding_len == sizeof(yaca_padding_e), "The property length returned is incorrect");
- yaca_free(padding_get);
- }
-}
-
RUNNER_TEST(T6180_yaca_sign_verify_padding_test_vectors, YacaTest)
{
auto tvv = loadTestVector("sign_verify_ascii.txt");