Fix returning public key for ECC.
Signed-off-by: Pol Henarejos <pol.henarejos@cttc.es>
This commit is contained in:
@@ -883,10 +883,12 @@ void make_rsa_response(mbedtls_rsa_context *rsa) {
|
||||
}
|
||||
|
||||
void make_ecdsa_response(mbedtls_ecdsa_context *ecdsa) {
|
||||
size_t plen = mbedtls_mpi_size(&ecdsa->grp.P);
|
||||
memcpy(res_APDU, "\x7f\x49\x81\x00", 4);
|
||||
res_APDU_size = 4;
|
||||
res_APDU[res_APDU_size++] = 0x86;
|
||||
size_t plen = mbedtls_mpi_size(&ecdsa->grp.P);
|
||||
res_APDU[res_APDU_size++] = 0x81;
|
||||
res_APDU[res_APDU_size++] = 2*plen+1;
|
||||
res_APDU[res_APDU_size++] = 0x04;
|
||||
mbedtls_mpi_write_binary(&ecdsa->Q.X, res_APDU+res_APDU_size, plen); res_APDU_size += plen;
|
||||
mbedtls_mpi_write_binary(&ecdsa->Q.Y, res_APDU+res_APDU_size, plen); res_APDU_size += plen;
|
||||
|
||||
Reference in New Issue
Block a user