Аннотация:
В статье исследуется механизм работы WinAPI-функции UuidCreate, работающей в роли UUID-генератора в ОС Windows, а также вопрос применимости его в качестве генератора псевдослучайных чисел. Разбираются версии библиотеки rpcrt4.dll, входящие в ОС Windows XP, Vista и Windows Server 2008.
Re: Устройство и криптоанализ UUID-генератора в ОС Windows
НД>Авторы: НД> Николай Денищенко
НД>Аннотация: НД>В статье исследуется механизм работы WinAPI-функции UuidCreate, работающей в роли UUID-генератора в ОС Windows, а также вопрос применимости его в качестве генератора псевдослучайных чисел. Разбираются версии библиотеки rpcrt4.dll, входящие в ОС Windows XP, Vista и Windows Server 2008.
Это что за последовательность:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc]
"UuidSequenceNumber"=dword:6ef778dd
Она должна влиять на генерацию UUID.
Если сменить UuidSequenceNumber, то не полетят ли ваши расчеты?
Re[2]: Устройство и криптоанализ UUID-генератора в ОС Window
Здравствуйте, xmen, Вы писали:
X>Это что за последовательность: X>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc] X>"UuidSequenceNumber"=dword:6ef778dd
X>Она должна влиять на генерацию UUID. X>Если сменить UuidSequenceNumber, то не полетят ли ваши расчеты?
Почему вы так уверенны, что этот ключ должен влиять на результат работы UuidCreate?
В статье я практически полностью привёл восстановленный код, относящийся к UuidCreate, и никаких обращений к UuidSequenceNumber мне там обнаружить не удалось (по крайней мере, это относится к тем версиям библиотек, что указаны в статье). На точность расчётов значение UuidSequenceNumber также не оказывает никакого влияния.
НД
Re[3]: Устройство и криптоанализ UUID-генератора в ОС Window
Здравствуйте, denish, Вы писали:
D>Здравствуйте, xmen, Вы писали:
X>>Это что за последовательность: X>>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc] X>>"UuidSequenceNumber"=dword:6ef778dd
X>>Она должна влиять на генерацию UUID. X>>Если сменить UuidSequenceNumber, то не полетят ли ваши расчеты?
D>Почему вы так уверенны, что этот ключ должен влиять на результат работы UuidCreate? D>В статье я практически полностью привёл восстановленный код, относящийся к UuidCreate, и никаких обращений к UuidSequenceNumber мне там обнаружить не удалось (по крайней мере, это относится к тем версиям библиотек, что указаны в статье). На точность расчётов значение UuidSequenceNumber также не оказывает никакого влияния.
D>НД
Я думаю если менять UuidSequenceNumber, то можно будет только предсказать значение UUID на короткий промежуток времени.
Могу ошибаться, я ведь человек
ReactOS-0.3.6\ntoskrnl\ex\uuid.c
-----------------------------------------------------
NTSTATUS
NTAPI
NtAllocateUuids(OUT PULARGE_INTEGER Time,
OUT PULONG Range,
OUT PULONG Sequence,
OUT PUCHAR Seed)
{
ULARGE_INTEGER IntTime;
ULONG IntRange;
NTSTATUS Status;
PAGED_CODE();
ExAcquireFastMutex(&UuidMutex);
if (!UuidSequenceInitialized)
{
Status = ExpLoadUuidSequence(&UuidSequence);
if (NT_SUCCESS(Status))
{
UuidSequence++;
}
else
{
ExpGetRandomUuidSequence(&UuidSequence);
}
UuidSequenceInitialized = TRUE;
UuidSequenceChanged = TRUE;
}
Status = ExpCreateUuids(&IntTime,
&IntRange,
&UuidSequence);
if (!NT_SUCCESS(Status))
{
ExReleaseFastMutex(&UuidMutex);
return Status;
}
if (UuidSequenceChanged)
{
Status = ExpSaveUuidSequence(&UuidSequence);
if (NT_SUCCESS(Status))
UuidSequenceChanged = FALSE;
}
ExReleaseFastMutex(&UuidMutex);
Time->QuadPart = IntTime.QuadPart;
*Range = IntRange;
*Sequence = UuidSequence;
RtlCopyMemory(Seed,
UuidSeed,
SEED_BUFFER_SIZE);
return STATUS_SUCCESS;
}
Re[4]: Устройство и криптоанализ UUID-генератора в ОС Window
А при чём тут ReactOS и этот код?!! Если уж говорить о ReactOS, то UuidCreate у них реализует 1-ю версию генератора, которая использует MAC-адрес сетевого адаптера (UuidCreate). В Windows сейчас имплементирован СОВСЕМ другой алгоритм, от MAC-адреса отказались сто лет назад.
X>Я думаю если менять UuidSequenceNumber, то можно будет только предсказать значение UUID на короткий промежуток времени. X>Могу ошибаться, я ведь человек
я вам уже сказал, что никаких обращений к значению ключа UuidSequenceNumber в коде UuidCreate нет, поэтому на предсказания оно никак повлиять не может.
Re: Устройство и криптоанализ UUID-генератора в ОС Windows
От:
Аноним
Дата:
25.12.08 09:40
Оценка:
Здравствуйте, Николай Денищенко, Вы писали:
НД>Аннотация: НД>В статье исследуется механизм работы WinAPI-функции UuidCreate, работающей в роли UUID-генератора в ОС Windows, а также вопрос применимости его в качестве генератора псевдослучайных чисел. Разбираются версии библиотеки rpcrt4.dll, входящие в ОС Windows XP, Vista и Windows Server 2008.
т.е. таким же образом можно предсказать и выход CryptGenRandom?
Re: Устройство и криптоанализ UUID-генератора в ОС Windows
НД>Авторы: НД> Николай Денищенко
НД>Аннотация: НД>В статье исследуется механизм работы WinAPI-функции UuidCreate, работающей в роли UUID-генератора в ОС Windows, а также вопрос применимости его в качестве генератора псевдослучайных чисел. Разбираются версии библиотеки rpcrt4.dll, входящие в ОС Windows XP, Vista и Windows Server 2008.
Термин "ректальный криптоанализ" более правильно звучит как "терморектальный криптоанализ"
Народная мудрось
всем все никому ничего(с).
Re[2]: Устройство и криптоанализ UUID-генератора в ОС Window
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Николай Денищенко, Вы писали:
НД>>Аннотация: НД>>В статье исследуется механизм работы WinAPI-функции UuidCreate, работающей в роли UUID-генератора в ОС Windows, а также вопрос применимости его в качестве генератора псевдослучайных чисел. Разбираются версии библиотеки rpcrt4.dll, входящие в ОС Windows XP, Vista и Windows Server 2008. А>т.е. таким же образом можно предсказать и выход CryptGenRandom?
НД>>Авторы: НД>> Николай Денищенко
НД>>Аннотация: НД>>В статье исследуется механизм работы WinAPI-функции UuidCreate, работающей в роли UUID-генератора в ОС Windows, а также вопрос применимости его в качестве генератора псевдослучайных чисел. Разбираются версии библиотеки rpcrt4.dll, входящие в ОС Windows XP, Vista и Windows Server 2008.
Tom>Термин "ректальный криптоанализ" более правильно звучит как "терморектальный криптоанализ"
Это чрезвычайно важное замечание. Спасибо!
Н.Д.
Re: Устройство и криптоанализ UUID-генератора в ОС Windows