The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Сгенерировать random число на 128 бит"
Отправлено Дениска, 22-Июн-06 08:59 
>>>>>>All, привет. Не подскажешь, как научиться генерировать random число на 128 бит
>>>>>>в своей програмке на C++? Да так, чтоб оно не за
>>>>>>что не повторялось...
>>>
>>>Так тебе случайное или уникальное?
>>>
>>>>>>Мож кусочек когда, или ман... кто чем может :)
>>>>>>
>>>>>
>>>>>/dev/(u)random?
>>>>>Либо если программно - завести какой-нибудь счетчик, брать его, время(ms), ии..md5-ый хэш
>>>>>еще никто не отменял, например...Правда, не факт, что будет равномерная псевдослучайная
>>>>>последовательность....
>>>>
>>>>Я незнаю что такое md5-ый хэш. И как мне это сделать так,
>>>>чтоб генерилось 128 битное число??? Нифига не понимаю
>>>
>>>128 бит = unsigned char buf[16];
>>>Дальше заполняй буфер случайностью...
>>>
>>>man rand() or rand_or()
>>>man srand()
>>>/dev/(u)random опять же простаивает...
>>>
>>>ЗЫ: Генирить можно псевдослучайные числа, для реально случайных нужен сертиф. ГСЧ :)
>>>
>>>
>>>ЗЫ2: Есть еще неожиданное число... :)
>>
>>приемлимый алгоритм получения длинных `хороших` псевдослучайных чисел -
>>сгенерить массив `плохих` псевдослучайных чисел, потом зашифровать.
>>Это когда важна не скорость, а качество:)
>>
>>Чем шифровать можно взять из mcrypt.
>>
>>
>
>Ну в общем думаю стоит объяснить смысл моих поисков. Мне просто напросто
>нужно идентифицировать множество соединений... Т.е. есть сервер, который будет раздавать уникальные
>id (128-битные) каждому новому соединению. Естественно критично чтобы ID не повторялись,
>так же важно что бы в их генерации небыло системы. Вот.
>Если честно, и немного стыдно за это, не совсем врубаюсь в
>смысл 128-битного числа random'а. 128 бит это получается что 16 цифр?
>Сори, но можно пояснить и это если конечно не сложно...

сдается мне не напишет человек прогу.
не 16 цифр, а 16 байт, или 8 слов. ибо сказано в писании сначало было слово, и слово было 2 байта(что, кстати, отражает используемую архитектуру в те времена).
Ну байт = 8 бит обычно, возьми калькулятор, помнож 8 на 16, и узри истину :)

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру