To get the keys tested per year you get:
keys-per-second * seconds-per-year =
6.70E8 * (365 * 24 * 3600) =
Yes - that would be if the CPU were to go headon and try all the permutations of the key expansions.
But - there is another way - attempting to guess by trying each possible password - there is a significant setup-time however everytime you move to a new password - as there is the key-expansion process that needs to be done, where each password is stretched out from the password characters to a uniform length - its this expanded key thats used to decode the stream.
How long would it take a single Processor with the AES-NI Instruction Set to brute-force an >AES Key?
Because the way AES encodes blocks - the attacker would only need then to try every possible password to try decode the first few bytes of the encrypted data, rather than the whole file - and only if it looks like a good file-header or plain text - then he can test a few more blocks to verify the password is ok.
Using the new AES instructions on a low spec Intel laptop CPU- about 10 to 15 Million passwords attempts (Key Expansion + decrypt 16 bytes) per second per thread is easily achievable.
There are optimisations that can be applied (like doing several passwords at a time - using threading or pipelined mode) - and you have up to 12 threads to use in some really high power pcs.
So, its all down to the password that was chosen - a 6 digit password could be broken in a few minutes or even seconds - 7 digit in less than a day.
characters password can contain: 67 (a-z A-Z and usual 'leet' special characters)
Typical 7 digit password: 67 ^ 7
Passwords per sec per thread: 15,000,000
(67 ^ 7 / 15M/s )= 112 hours
Now use 4 threads of a I7 CPU: = 112/4 hours= about 28 hours (MAX time)
Longer passwords and more characters will make it harder
You can also get a similar or better result using CUDA (Graphics Card Computing).
More PCs of course will also reduce the time needed.
He could get lucky and get the password in the first few tries...