Matlab scripts 1.0 for RainbowCrack update Zhu Shuanglei http://www.antsight.com/zsl/rainbowcrack/ There is a problem in script "calc_success_probability.m". When key space is small, the calc_success_probability.m script works well. However, the formula in the script is not in a good form and the error accumulates so much when key space is large. I have written another version of the script to fix this: -------------------- calc_success_probability.m -------------------- function ret = calc_success_probability(N, t, m) arr = zeros(1, t - 1); arr(1) = N * (1 - exp(-m/N)); for i = 2 : t - 1 arr(i) = N * (1 - exp(-arr(i-1)/N)); end; ret = 1; for i = 1 : t - 1 ret = ret * (1 - arr(i)/N); end; ret = 1 - ret; ----------------------------- cut here ----------------------------- You can replace the corresponding script in package rainbowcrack-matlabscripts-1.0.zip with this one. some results of the old calc_success_probability.m script: 1 - (1 - calc_success_probability(8353082582, 2100, 8000000 )) ^ 5 = 0.9990 1 - (1 - calc_success_probability(80603140212, 2400, 40000000 )) ^ 5 = 0.9904 1 - (1 - calc_success_probability(797193877550, 5700, 200000000 )) ^ 6 = 0.9990 1 - (1 - calc_success_probability(6823331935124, 9000, 1000000000 )) ^ 8 = 0.9990 some results of the updated calc_success_probability.m script: 1 - (1 - calc_success_probability(8353082582, 2100, 8000000 )) ^ 5 = 0.9990 1 - (1 - calc_success_probability(80603140212, 2400, 40000000 )) ^ 5 = 0.9906 1 - (1 - calc_success_probability(797193877550, 5700, 200000000 )) ^ 6 = 0.9985 1 - (1 - calc_success_probability(6823331935124, 9000, 1000000000 )) ^ 8 = 0.9997 In configuration #3, the accurate success rate is 0.9985, instead of 0.9990. In configuration #4, it seems the success rate 0.9997 is unnecessarily high. For example, if we use l = 7 1 - (1 - calc_success_probability(6823331935124, 9000, 1000000000 )) ^ 7 = 0.9992 We can still control the success rate above 0.999, saving 15GB of disk space at the same time. Thanks "I Am" for pointing out this problem. 2004/01/25