added length option to getRandomValue
added validateKey and improved deriveKey
added android support