Здравствуйте, adontz, Вы писали:
A>Здравствуйте, Ka3a4oK, Вы писали:
KK>>Является ли распределение UUID равномерным? А вернее, меня интересует реализация от Microsoft — GUID.
A>Не совсем. UUID генерируется в том числе и на основе времени, а значит в каждый конкретный момент распределение UUID не равномерно, так как может быть сгенерированно лишь некоторое подмножемтво 128битных чисел.
В виндах начиная с 2k все уже совсем не так, буквально несколько месяцев назад дизасемблил код генерации UUID'а. Теперь там используется RC4, в качестве seed'а используется RC4(прошлый UUID) где для второго RC4 в качетсве seed'а используется псевдо-случайная последовательность от Kerberos'овского драйвера. Эта последовательность изменяется либо после определенного количества генераций UUID'ов, либо просто через некоторый промежуток времени. Какой алгоритм генерации псевдослучайной последовательности в драйвере изучать не стал, думаю что MS там много чего накрутила.