Здравствуйте, Disappear, Вы писали:
D>Не подскажете ли алгоритм, который бы генерировал уникальные (в ближайшие лет 100) числа? Например, как это делает CoCreateGUID. Только хочется, что-нибудь отличное от GUID.
Если скорость не важна, то самое простое – это взять что либо физически случайное из компьютера.
Например показания датчиков (температур, скорости вентиляторов, напряжений), шум звуковой платы, асинхронность генераторов в СМОS и MB.
Я считаю, что очень хороший результат даёт RDTSC in CPU PENTIUM.
Точнее, хорим некоторое время, большее чем время между прерываниями, последовательные результаты RDTSC, затем хорим все биты результата и получаем случайный бит.
За счёт асинхронности современных компьютеров получается очень хороший результат.
Тесты это подтверждают.
Далее, берём таких битов столько, сколько надо, и получаем уверенно уникальный GUID. На 100 лет хватит 64 бит.
Пример с исходником (Генератор паролей) здесь:
http://www.isan.troitsk.ru/~panfilov/Rus/Programs.htm