Я запускаю сразу 3 потока, т.к. 1 поток не грузит процессор на 100%. Если в 3 потока, то получается где-то в 2,5 раза быстрее. Поэтому возможно ваш вариант еще быстрее, если несколько копий запустить одновременно. Я просто запускал 1 копию, засекал минуту, выключал и считал сколько адресов сгенерировалось. Потом 2 копии одновременно и считал общее кол-во сгенерированных адресов. На моем проце вышло, что оптимально 3 копии, а если больше, то уже не рационально.
Да, в многопоточном режиме в 3 раза быстрее. Попробуйте
https://yadi.sk/d/qMh5yB0w3LGcBQ (архив, один экзешник и криптобиблиотека, требуется .Net framework 4.5).
10 000 - число вариантов
Случайные строки - генерирует случайные строки длинной 100 байт в файл, заданный ниже (D:\\output.txt)
Генерировать случайно - генерирует случайную строку в 100 байт а из неё адрес, выводит в текстовое поле
Генерировать из файла - читает из заданного файла строки и из них генерирует адреса - сколько строк - столько адресов. Выводит в поле. Разделитель между приватным ключем и адресом можно задать, по умолчанию стоит " | ".
Попробуйте если что.