Reject 128-byte keys that are not 1024-bit

When we added the check for key size, we required that the keys be
128 bytes.  But RSA_size (which defers to BN_num_bytes) will return
128 for keys of length 1017..1024.  This patch adds a new
crypto_pk_num_bits() that returns the actual number of significant
bits in the modulus, and uses that to enforce key sizes.

Also, credit the original bug3318 in the changes file.
This commit is contained in:
Nick Mathewson
2011-06-02 12:32:59 -04:00
parent 1d8bcba067
commit bbf2fee8ff
5 changed files with 21 additions and 3 deletions
+5 -1
View File
@@ -1,3 +1,7 @@
o Minor bugfixes:
- Fix a log message that said "bits" while displaying a value in
bytes. Fixes bug 3318; bugfix on 0.2.0.1-alpha.
bytes. Found by wanoskarnet. Fixes bug 3318; bugfix on
0.2.0.1-alpha.
- When checking for 1024-bit keys, check for 1024 bits, not 128
bytes. This allows Tor to correctly discard keys of length
1017 through 1023. Bugfix on 0.0.9pre5.