17. A computer system comprising: a computer processor; and a computer-readable storage medium comprising instructions executable by the processor and when executed performing actions comprising: identifying sub-string repetition in a pass phrase; generating a sub-string index; determining the number of bits required to represent each character in the pass phrase; assigning an entropy value to each character in the pass phrase in accordance with a probability function that assigns highest probabilities at boundaries of an interval for the entropy of a character; and computing a total entropy value for the pass phrase.
20. The computer system of claim 17 , wherein the entropy value is assigned in accordance with a probability function that assigns the lowest probability when the ratio of the number of pass phrase characters to pass phrase length is equal to the ratio of the size the interval to the sum of interval sizes.