We know that the biggest human rights violators in human history are capable of one trillion password guesses per second as of approximately January 2013.
Assume that the 1 trillion guesses per second is not a dictionary attack, but a brute force search of all possible permutations of the available characters in the password.
Assume this rate of password guessing is the same speed regardless of their computing equipment. Assume they have special equipment e.g. GPUs/ASICs capable of performing the industry standard Password Based Key Derivation Function (PBKDF2-SHA2 with large number of iterations) for each password guess and they can still guess 1 trillion password combinations per second. Therefore their actual hardware will not factor into the equation, just the 1 trillion guesses per second they can perform.
Discard the assumption of weak passwords and assume the password is very strong and made up of uniformly and randomly selected characters available on a standard US keyboard layout including special characters (95 possible characters total).
We also know from Moore's law that transistor count on an integrated circuit doubles every two years, which loosely translates to doubling of computing power every two years. So in January 2015 they will be able to guess 2 trillion passwords per second. In January 2017 they can guess 4 trillion per second and so on. Assume this trend will continue regardless of speculation that this law may come to an end and it needs to be factored into the formula.
To successfully guess a password, it often only requires 2^n-1 attempts. That needs to be factored into the equation. Please also factor this into the formula.
What I would like is a reusable formula which takes into account the known adversary power of 1 trillion guesses per second as of January 2013 and its future power with regards to Moore's law. I would like to dynamically enter in the total number of password characters and the current date. The formula will return a calculation of how many years this password will be secure from brute force search from that current date.
Apologies if this is the incorrect StackExchange forum, but I think it is in the right place as I am after a correct mathematical formula which I can then turn into a software function. Feel free to move it if that is more appropriate.