version 1.8, 2014/01/09 23:20:00 |
version 1.9, 2014/02/02 03:44:31 |
|
|
} |
} |
|
|
sig = ECDSA_do_sign(digest, dlen, key->ecdsa); |
sig = ECDSA_do_sign(digest, dlen, key->ecdsa); |
memset(digest, 'd', sizeof(digest)); |
explicit_bzero(digest, sizeof(digest)); |
|
|
if (sig == NULL) { |
if (sig == NULL) { |
error("%s: sign failed", __func__); |
error("%s: sign failed", __func__); |
|
|
buffer_free(&bb); |
buffer_free(&bb); |
|
|
/* clean up */ |
/* clean up */ |
memset(sigblob, 0, len); |
explicit_bzero(sigblob, len); |
free(sigblob); |
free(sigblob); |
|
|
/* hash the data */ |
/* hash the data */ |
|
|
} |
} |
|
|
ret = ECDSA_do_verify(digest, dlen, sig, key->ecdsa); |
ret = ECDSA_do_verify(digest, dlen, sig, key->ecdsa); |
memset(digest, 'd', sizeof(digest)); |
explicit_bzero(digest, sizeof(digest)); |
|
|
ECDSA_SIG_free(sig); |
ECDSA_SIG_free(sig); |
|
|