информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
За кого нас держат?Spanning Tree Protocol: недокументированное применение
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Крупный взлом GoDaddy 
 Просроченный сертификат ломает... 
 Phrack #70/0x46 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Да. По определению. 05.04.07 18:03  Число просмотров: 1177
Автор: tatar_0x4e Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
<programming>
[Win32] Нормально ли использовать функцию RPC API UuidCreate для создания GUID'ов? 05.04.07 14:03  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 05.04.07 14:04  Количество правок: 1
<"чистая" ссылка> <обсуждение закрыто>
Насколько я понял, именно через эту функцию генерятся ключевые поля для репликации в M$ SQL Server. Я вот на досуге погенерил их немного...
{00912EED-C1A5-4FE9-946B-F8D2054733F0}
{009EEE43-40FB-4CDC-8C2A-1747E0BB330D}
{00A75E83-765F-4651-91ED-C059A586FE90}
{00B0D6DA-4F12-450C-A769-4E3796909E55}
{00C8E6D1-3346-46E3-A566-01C457933353}
{00DD5EDB-6A37-4B27-84AD-390F5BD0C1AD}
{00F7FDC2-E7D3-40E8-BD99-436195594299}
{010278C8-B959-478F-9B0E-DCDA9FEEEDAD}
{010F0780-657E-4E03-A677-E324A6365E09}
{013A31B3-798B-42CB-80FA-11ACD6170C9C}
{014366F8-4E8B-4CE8-B44F-9E1EDD05BD9B}

---
Вопрос: почему первая цифра в третьей группе всегда равна 4, GUID'ы вроде как должны быть чем случайнее, тем лучше?
Заранее всем огромное спасибо за ответы.
Не совсем. GUID состоит из нескольких полей и некоторые из... 05.04.07 15:06  
Автор: tatar_0x4e Статус: Member
Отредактировано 05.04.07 15:07  Количество правок: 2
<"чистая" ссылка> <обсуждение закрыто>
> Вопрос: почему первая цифра в третьей группе всегда равна
> 4, GUID'ы вроде как должны быть чем случайнее, тем лучше?
> Заранее всем огромное спасибо за ответы.

Не совсем. GUID состоит из нескольких полей и некоторые из них отнюдь не случайны. Насколько я знаю есть несколько алгоритмов для генерации UUID и если в твоем случае используется что-то типа
http://www.itu.int/ITU-T/studygroups/com17/oid/X.667-E.pdf то это поле означает версию GUID:

1 The time-based version specified in this Recommendation
2 Reserved for DCE Security version, with embedded POSIX UUIDs
3 The name-based version specified in this Recommendation
4 The random-number-based version specified in this <<<<<<<<<<<<<<<<<<-------
5 The name-based version specified in this Recommendation
Что-то где-то опять кривит M$... Как-то всё-таки странно предлагать использовать для генерации GUID RPCшный uuid. Ну да ладно. 05.04.07 15:28  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
Читайте википедию - кладязь мудрости :-) 05.04.07 19:11  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
http://en.wikipedia.org/wiki/Globally_Unique_Identifier

Во-первых "The term GUID usually refers to Microsoft's implementation of the Universally Unique Identifier (UUID) standard". Так что ничего странного.

Во-вторых "The OSF-specified algorithm used by Microsoft for generating new GUIDs has been widely criticized. In these (V1) GUIDs, the user's network card MAC address is used as a base for the last group of GUID digits, which means, for example, that a document can be tracked back to the computer that created it. This privacy hole was used when locating the creator of the Melissa worm. Most of the other digits are based on the time while generating the GUID.

V1 GUIDs which contain a MAC address and time can be identified by the digit "1" in the first position of the third group of digits, for example {2f1e4fc0-81fd-11da-9156-00036a0f876a}. GUIDs using the later algorithm, which is mostly a random number, have a "4" in the same position, for example {38a52be4-9352-453e-af97-5c3b448652f0}. More specifically, the 'data3' bit pattern would be 0001xxxxxxxxxxxx in the first case, and 0100xxxxxxxxxxxx in the second."

Короче, использовать сгенеренные тобой гуиды в вирусах нельзя.
У него V4 так что все в порядке. 05.04.07 19:25  
Автор: tatar_0x4e Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
Точно. Написал ответ не заглядывая в корневой пост. Почему то в памяти отложилась именно 1 06.04.07 10:54  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
Всем спасибо, всё стало ясно. 06.04.07 12:28  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
Похоже, это у них традиция. Для COM есть еще такая... 05.04.07 15:36  
Автор: tatar_0x4e Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
Похоже, это у них традиция. Для COM есть еще такая CoCreateGuid, но она тоже вызывает UuidCreate AFAIK :)
Есть стандартный MFC-шный сэмпл guidgen 05.04.07 18:48  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка> <обсуждение закрыто>
> Похоже, это у них традиция. Для COM есть еще такая
> CoCreateGuid, но она тоже вызывает UuidCreate AFAIK :)

Поставляется (в бинарном виде) в том числе в составе DDK/WDK

Для генерации GUID-ов используется все та же UuidCreate

Но вообще не вижу ничего странного. Ну нужен глобально уникальный идентификатор, почему бы не использовать в качестве оного универсальный уникальный идентификатор, стандартизированный и обладающий всеми необходимыми свойствами.

http://msdn2.microsoft.com/en-us/library/kw069h38VS.80.aspx
Подводя итог: создавая механизм репликации сложных объектов древовидной структуры, можно ли надеяться на то, что UuidCreate _никогда_ не выдаст 2 одинаковых GUID по крайней мере за время моей жизни? :) 05.04.07 17:12  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 05.04.07 17:12  Количество правок: 1
<"чистая" ссылка> <обсуждение закрыто>
Да. По определению. 05.04.07 18:03  
Автор: tatar_0x4e Статус: Member
<"чистая" ссылка> <обсуждение закрыто>
1






Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2021 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach