Use openssl or mt_rand for random
Previously it used "rand" for generating the pseudorandom in the googleauthenticator helper class. This has now been replaced with an implementation that will create a random either from openssl if it's present or otherwise use the mt_rand option (not as good, but better then just rand).