Topic: [SOLVED] MATCH_SUITE_ERROR using brainpoolP224r1
I want to do an mTLS connection between a server (STM32 board) and a client (linux) via UART.
When i was using secp224r1 on both the client and the server everything was working fine.
If i'm using an hardcoded certificate in the server that i generated with openssl i get MATCH_SUITE_ERROR on the server and FATAL_ERROR on the client.
If i'm generating a new certificate in the server i get ASN_PARSE_E in the server and OUT_OF_ORDER_E on the client, but this could be my fault, related to the fact that i am sending a csr to the client to sign it with openssl.
Server and client are using the same CA certificate.
I compiled wolfSSL on linux with
./configure --enable-ecc --enable-debug --enable-ecccustcurves=all
and on the board i have defined
HAVE_ECC WOLFSSL_CUSTOM_CURVES HAVE_ECC_BRAINPOOL
and
HAVE_ALL_CURVES
. The error seems to be in the PickHashSigAlgo(), wolfSSL doesn't find an "exact match" in the CmpEccStrength() function. Signature algorithm in the certificates is ecdsa-with-SHA256.