Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Генератор случ чисел


Страницы:   1 2 3

Kostik___ ©   (2005-02-12 12:37:00) 

может кто подкинет ссылки по тому как реализовать эффективный генератор случайных чисел
Или куски кода у кого завалялись....


Vit@ly   (2005-02-13 14:31:00) [21]

2 Kerk ©   (13.02.05 14:13) [20]

abcdeffedcba
Нфб3Нrб5ОУб7ОQб6Оцб4Н9б2


AlterEgo of WondeRu   (2005-02-13 14:16:00) [22]

Kostik___   (13.02.05 12:19) [17]
Ты просто не на мой вопрос ответил

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


Kerk   (2005-02-13 14:13:00) [23]

еще одно пожалуйста
abcdeffedcba


Vit@ly   (2005-02-13 13:41:00) [24]

2 Kostik___   (13.02.05 12:19) [17]
Пожалуй действительно это был ответ не на заданный вопрос

2 Kerk ©   (13.02.05 12:23) [18]

a b c d e f g h i j k l m n o q r s t u v w x y z НфбиНЦбиОдбиОСбиО биПЛбиПUбиРЁбиРOбиСАбиСIбиТ5биТDбиУ0биУxбиФrбиХюбиХlбиЦшбиЦfбиЧубиЧaбиШнбиШЪбиЩз

A B C D E F G H I J K L M N O Q R S T U V W X Y Z
Яша ЯFа a7а aJа bАа bNа cДа cRа dЗа dVа eЛа eZа fПа gва gУа hЦа iиа iЪа jма jЮа kра kcа lфа lgа mш

abcdefghijklmnoqrstuvwxyz
Нфб3Нrб5ОУб7П^б9РзбАРzбВСТбДТ.бЖУ?бИУUбКФЮбМХ:бОХN

Вопросами "упаковки" пока не занимался (здесь явно видно, что символ кодируется в два). Пока некогда


Kerk   (2005-02-13 12:23:00) [25]

зашифруй отдельно 3 строки :)
a b c d e f g h i j k l m n o q r s t u v w x y z

A B C D E F G H I J K L M N O Q R S T U V W X Y Z

abcdefghijklmnoqrstuvwxyz


Kostik___   (2005-02-13 12:19:00) [26]

Vit@ly
> Боюсь что не это главное (пройденный этап).

Я не спрашиваю пройденный это этап либо нет. Я спрашиваю людей о том могут ли мне они датьхотя бы названия алгоритмов генерирования сл. чисел, а лучше линки туда, где показано как все реализованно...
Ты просто не на мой вопрос ответил


Vit@ly   (2005-02-13 09:52:00) [27]

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
будет так:
!cбь?Кб.-юб!-Uб"_eб2!Eбы!Fбэ!Bбя!yб,!uб:!rб?!oб_ФВбM


Вовик   (2005-02-13 09:18:00) [28]

>>Vit@ly
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
..
100


Vit@ly   (2005-02-12 22:20:00) [29]

В7аAрlа9л8бйъa - это "Привет!"
БgаCн_а26ьа?Здаm Ба;_BаG!эаъsC - а это "Отвечаю тем же."
В7аxфЁаEуtаЗщПаЯ Zаiн_аnяуаЩыЩаnч_аВенвнлфвBял - означает "Попробуй расшифровать:)"
Ну а теперь можно поговорить и о генераторах случайных чисел.
Боюсь что не это главное (пройденный этап). Если кто-то сможет расшифровать эти простые фразы, ну просто не знаю, что предложить. Уверен, что никто не расшифрует, поскольку здесь совершенно другой подход к кодированию информации. Если необходимо могу выложить любые Ваши фразы (сообщения) в закодированном виде.
Если кого-то заинтересует выкладывайте сюда Ваши фразы для кодирования.


Kostik___   (2005-02-12 21:49:00) [30]

Я тут нарыл книгу по криптоанализу и криптографии и там есть то что меня интересует.
А на счет книг Кнута давно наслышен что там различных алгов полно... только вот  может кто линк кинет где его книги скачать можно...
спасибо всем

Да, palva, я знаком с азами криптографии и про гаммы знаю...

Kerk ©  , прозрачный - значит банальный, простой слишком значит как правило не представляющий ничего интересного


palva   (2005-02-12 18:27:00) [31]

Kostik___   (12.02.05 12:51) [4]
> Во - первых
> для криптографии он не подходит, являясь достаточно прозрачным

Генераторы для криптографии - это лучше читать не в Кнуте, а в книгах по криптоалгоритмам. Правда там изучаются не генераторы, а алгоритмы шифрования. Иногда состановй частю алгоритма является выработка случайной последовательности с дальнейшим наложением ее на шифруемый текст (гаммирование). Генераторы от таких алгоритмов можно использовать отдельно от самого алгоритма. Посмотрите алгоритм RC4, он очень простой и может служить основой для побайтной выработки случайных данных. Похожий на него SapphireII разработан сразу для нескольких вещей: шифрования, выработки чисел, хэширования. Вообще, произвольный шифровальный алгоритм может использоваться как генератор, если шифровать при его помощи нулевую последовательность байтов. Задание ключа шифрования служит аналогом функции Randomize.


Kerk   (2005-02-12 15:55:00) [32]

Kostik___   (12.02.05 12:51) [4]
для криптографии он не подходит, являясь достаточно прозрачным


что значит прозрачным? другие непрозрачные?


> мне предвидиться что мне вскоре понадобиться реальный
> генератор

Random - не реальный?

Почитай что-нибудь на эту тему лучше... а то это:

> Создание Генераторов сл. чисел - отдельная ветвь
> математики, физики и програмирования

на словоблудие смахивает, хотя и верно.


Eraser   (2005-02-12 15:48:00) [33]

Kostik___
Для каких целей нужен генератор? От него требуется производительность или "случайность" в бОльшей мере?


Leonid Troyanovsky   (2005-02-12 14:27:00) [34]


> Kostik___   (12.02.05 13:44) [7]


> Ну что я могу сказать:
> 1) период этого генератора от 7000 до 9000 псевдослучайных
> чисел

Не верю.

AT> Утверждается также, что период этого чуда, называемого
AT> MWC1029 превосходит 10^9824. Чтоб я жил столько :)

Вот это мне трудно проверить, а 9000 - это несерьезно.

> 2) в его основе лежит стандартный генератор (а это плохо),
> т.к. надо инициализировать массив с помощью ф-ции RND

В основе не лежит стандартный генератор.
Можешь взять любой другой (приличный) генератор для
заполнения 1019 DWORD.

> линейный коэнгруентный генератор мне кажеться не хуже этого

"Кажется" - это несерьезный критерий для интересующихся
математикой, физикой и програмированием.

--
С уважением, LVT.


Anatoly Podgoretsky   (2005-02-12 14:26:00) [35]

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


Kostik___   (2005-02-12 13:44:00) [36]

Leonid Troyanovsky,
Ну что я могу сказать:
1) период этого генератора от 7000 до 9000 псевдослучайных чисел
2) в его основе лежит стандартный генератор (а это плохо), т.к. надо инициализировать массив с помощью ф-ции RND

линейный коэнгруентный генератор мне кажеться не хуже этого

а так спасибо за помощь.


Kostik___   (2005-02-12 13:16:00) [37]

Leonid Troyanovsky, я сейчас все это просмотрю, посчитаю на сколько там хорошо с дисперсией корреляцией... и период надо бы узнать


Leonid Troyanovsky   (2005-02-12 12:55:00) [38]


> Kostik___   (12.02.05 12:37)  
> может кто подкинет ссылки по тому как реализовать эффективный
> генератор случайных чисел
> Или куски кода у кого завалялись....


Вот, что писал Max Alekseyev (Max.Alekseyev@f60.n5015.z2.fidonet.org)
__
Заголовок:random
Группы новостей:fido7.ru.algorithms
Число:2001-03-08 13:12:08 PST

Replying to a message of Alexander Tsyplakov to All:

AT> Тут недавно в sci.math.num-analysis небезызвестный Джордж
AT> Марсалья предложил свой новый алгоритм.

AT> static unsigned long Q[1019];
AT> unsigned long MWC1019(void)
AT> {unsigned long long t;
AT>  static unsigned long c = 362436, i = 1018;
AT>  t = 147669672LL*Q[i] + c; c = (t>>32);
AT>  if(i>0) return(Q[i--] = t);
AT>  i = 1018;  return(Q[0] = t);
AT> }

AT> Честно говоря, я этот птичий язык не до конца понимаю.
AT> Может, кто-нибудь переведет на Паскаль и запостит сюда.
AT> Плиз.

{// type cardinal=longint;}
var Q:array[0..1018] of cardinal;
const c:cardinal=362436; i:cardinal=1018;
function MWC1019:cardinal;
var t_:array[0..1] of cardinal;
   t:comp absolute t_;
begin
 t := 147669672.*Q[i] + c; c:=t_[1];
 Q[i] := t_[0];
 if i>0 then dec(i) else i:=1018;
 MWC1019 := t_[0];
end;

AT> Утверждается, что этот небольшой кусок кода выдает 32-битные
AT> целые числа со скоростью 300 миллионов в секунду на машине
AT> 850MHz.
AT> Утверждается также, что период этого чуда, называемого
AT> MWC1029 превосходит 10^9824. Чтоб я жил столько :)

Хаароший период...

AT> Предварительно требуется заполнить массив
AT> Q[0],Q[1],...Q[1018] 32-битными случайными целыми числами.
AT> Для этого нужно использовать просто хороший стандартный
AT> генератор. Марсалья предложил KISS. Что такое KISS не знаю.

AT> Генератор проходит все тесты из "батареи тестов Diehard".
AT> Diehard тоже придумал Марсалья. См.
AT>           http://stat.fsu.edu/pub/diehard

Regards, Max
--

См. также
http://groups.google.com/groups?selm=1760656504%40p2.f175.n5020.z2.ftn

--
Regards, LVT.


Kostik___   (2005-02-12 12:51:00) [39]

Во - первых
для криптографии он не подходит, являясь достаточно прозрачным

Во - вторых
мне предвидиться что мне вскоре понадобиться реальный генератор

В третьих Стало интересно

Создание Генераторов сл. чисел - отдельная ветвь математики, физики и програмирования


Kerk   (2005-02-12 12:44:00) [40]

Kostik___   (12.02.05 12:43) [2]
меня не устраивает стандартный генератор


чем? он дает равномерное распределение.. тебе другое распределение нужно? так получи его из равномерного.


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо