This is an example of a bitlocker recovery key;
820042-335825-646573-481530-265253-688132-339900-822810
İs that key actually strong? It does not have any letters, it uses only numbers, so is it OK?
Cryptography Stack Exchange is a question and answer site for software developers, mathematicians and others interested in cryptography. It only takes a minute to sign up.
Sign up to join this communityBased on official doc here, unofficial doc there, and confirmed by some experiments:
-
) or space (
) signs. Each such number is of the form $11\times k$ with $k\in[0,2^{16})$, thus in $[000000,720885]$. Hence the question's example is not a valid Bitlocker recovery key: the first and last 6-digit numbers are out of range, and only the but-last is a multiple of 11.So that if a Bitlocker recovery key is competently and honestly generated (I have no idea), it's like 148-bit strong, which is expected to be very secure for some decades (save for Cryptographically Relevant Quantum Computers, which are quite hypothetical).
Note: When there is a Bitlocker recovery key (which is optional), the AES 256-bit Volume Master Key gets encrypted under that 148-bit strong stretched Bitlocker recovery key, and stored, theoretically reducing the strength of the overall encryption.
I've found this at this GitHub page that tries to specify the Bitlocker format from Microsoft:
A valid recovery password consists of 48 digits where every number is dividable by 11 with a remainder of 0. The result of a division by 11 of a number is a 16-bit value. The individual 16-bit values make up a 128-bit key.
This means that there is some error detection mechanism - this shows the importance of looking at the defined format rather than just a sample key.
If the digits and thus numbers would be fully random - which they are not - then they would be able to encode a $log_2(10^{48}) \approx 159$ bit key. So clearly the size of the password / key makes up for the small amount of possibilities per character. Both the calculated 159 bit and the indicated / correct answer of 128 bit strength are much stronger than a human generated password which averages about 42 bits or so if I remember correctly; such a password could be brute forced.
128 bit symmetric keys - which I assume is used here (apparently after a key stretching algorithm - see the other answer , which is not really needed for this kind of key strength) - are considered strong. They may not be fully protected against a pretty large quantum computer. We currently don't know if quantum computers can scale to that size; currently they are definitely not around, but you could store encrypted information until one becomes available, if ever. Normally Bitlocker uses AES as a block cipher.