commit | ba1ba11a984703cd0fa8ec061254ac6147f8a93d | [log] [tgz] |
---|---|---|
author | Hanno Becker <hanno.becker@arm.com> | Fri Sep 29 11:48:23 2017 +0100 |
committer | Hanno Becker <hanno.becker@arm.com> | Fri Sep 29 11:54:05 2017 +0100 |
tree | 819e14bd3630c0b5aa5eedd834c599a5d587a363 | |
parent | 2f8f06aa25e9d5ee4fc9fe217543c872b39e4d05 [diff] [blame] |
Check that length is properly set in `mbedtls_rsa_check_pubkey`
diff --git a/library/rsa.c b/library/rsa.c index 8623011..ae4382b 100644 --- a/library/rsa.c +++ b/library/rsa.c
@@ -1028,6 +1028,9 @@ if( !ctx->N.p || !ctx->E.p ) return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED ); + if( ctx->len != mbedtls_mpi_size( &ctx->N ) ) + return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED ); + if( ( ctx->N.p[0] & 1 ) == 0 || ( ctx->E.p[0] & 1 ) == 0 ) return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );