Быстрые и хорошие rng для пейсюков

Programs, sources, embedded, demomaking, whatsoever related to subj :)

Postby lvd » 07 Apr 2014, 16:19

Xorshift RNGs
George Marsaglia
The Florida State University

xorshift.pdf
(45.44 KB) Downloaded 432 times
F̞͖̭̿̔ͯu̐̅cͬ̑ͩk̨̤̳͇̮̭̪̠̽̿̓̆ͭͩ ̷̩̰͎̩͓̘̾̀ͬ̊ͭ͛ͅda̝̺͙̬͎̝̾͟ ̰̜̝̯͉̯̖̓̎́ͨ̽ͫ͟f̟͇̭̀ͬͨͭ̐̚u̹̼̹̗̞͑̔͂͐̚cͭ̅̊̆̒̆ǩ̝̩̯́ͥ̔̍̑ḭ͓͍̳̬ͦ̽͂n͍͎͈̈̅ͩͬ ̊ͫ̂̾̑̈́f̲͚͉͓͗̋́ͧͦ̅ȗ͇̲̻͈̲̅̎͗͒ͭ͡c̬̟̠̹̯̈́ͩ͘ͅk̫̠̻̋͜a̲͒̾̇!͙͕̺͉̗̩̲̂̏̄̀
User avatar
lvd
 
Posts: 7227
Joined: 07 Apr 2007, 21:28
Group: Registered users

Postby fk0 » 08 Apr 2014, 23:43

Нигде не написано, что они криптографически стойкие. Будть у них хоть какой период. Если зная N чисел вычисляется N+1, то получается какой-то KeeLoq. С LFSR такая же история. Я соорудил для того конструкцию из LFSR (я тут пример приводил) и MD5. LFSR потому, что быстрый. В него периодически энтропия из АЦП и т.п. скармливавется (не жрёт много ЦПУ). А когда нужно случайное число, то берётся из LFSR биты, добавляется счётчик (конкатенацией) и над этим всем считается MD5 -- это результат. Счётчик увеличивается и между выключениями питания сохраняется в ЭСППЗУ (чтоб не стартовать тупо всё время с одного места, как батарейка села -- так в андроиде сделали, бугага...)

PS: в линуксе аналогичная история. Только там всё сильно круче и без бутылки не разберёшься.
* Origin: зип файл! (2:5030/1559)
User avatar
fk0
 
Posts: 1533
Joined: 07 Apr 2007, 01:08
Group: Registered users

Postby DimkaM » 09 Apr 2014, 07:42

Я ж говорил, что надо герцы и вольты в розетке мерить. Самый тру рнд
N>"Идите нахуй" со своей политикой...
DimkaM
 
Posts: 1010
Joined: 24 Mar 2010, 12:42
Location: г.Щёлково М.О.
Group: Registered users

Postby lvd » 09 Apr 2014, 11:12

а ничо шо мд5 давно как поломали, любой мд5 на заказ можно сделать без перебора?
security through obscurity...
F̞͖̭̿̔ͯu̐̅cͬ̑ͩk̨̤̳͇̮̭̪̠̽̿̓̆ͭͩ ̷̩̰͎̩͓̘̾̀ͬ̊ͭ͛ͅda̝̺͙̬͎̝̾͟ ̰̜̝̯͉̯̖̓̎́ͨ̽ͫ͟f̟͇̭̀ͬͨͭ̐̚u̹̼̹̗̞͑̔͂͐̚cͭ̅̊̆̒̆ǩ̝̩̯́ͥ̔̍̑ḭ͓͍̳̬ͦ̽͂n͍͎͈̈̅ͩͬ ̊ͫ̂̾̑̈́f̲͚͉͓͗̋́ͧͦ̅ȗ͇̲̻͈̲̅̎͗͒ͭ͡c̬̟̠̹̯̈́ͩ͘ͅk̫̠̻̋͜a̲͒̾̇!͙͕̺͉̗̩̲̂̏̄̀
User avatar
lvd
 
Posts: 7227
Joined: 07 Apr 2007, 21:28
Group: Registered users

Postby fk0 » 09 Apr 2014, 23:29

В MD5 научились искать коллизии. Для заданного текста (или MD5) подобрать другой текст с таким же MD5. Теперь скажи -- как это применить? Реверсить MD5 в обратную сторону не научились. Научились только через rainbow tables и со словарём. Для паролей -- хорошо (до десятка символов), дальше плохо. Да и для паролей: use of a key derivation function that employs a salt makes this attack unfeasible (C). Считай, что счётчик или состояние LFSR -- это salt.
* Origin: зип файл! (2:5030/1559)
User avatar
fk0
 
Posts: 1533
Joined: 07 Apr 2007, 01:08
Group: Registered users

Postby lvd » 10 Apr 2014, 07:13

fk0 wrote: Теперь скажи -- как это применить?

Откуда я знаю, я чо криптолог шоле? Ты в криптографической стойкости своего изобретения как убеждался? или всё та же security through obscurity?
fk0 wrote:Я соорудил для того конструкцию из LFSR (я тут пример приводил) и MD5. LFSR потому, что быстрый.

Кстати, на фоне тормозилищ мд5 выбор лфср 'потому что быстрый' смотрится забавно. Особенно если учесть, что за раз он даёт единственный БИТ.
fk0 wrote:В него периодически энтропия из АЦП и т.п. скармливавется

А вдруг скормится так, что лфср случайно нулём станет?
F̞͖̭̿̔ͯu̐̅cͬ̑ͩk̨̤̳͇̮̭̪̠̽̿̓̆ͭͩ ̷̩̰͎̩͓̘̾̀ͬ̊ͭ͛ͅda̝̺͙̬͎̝̾͟ ̰̜̝̯͉̯̖̓̎́ͨ̽ͫ͟f̟͇̭̀ͬͨͭ̐̚u̹̼̹̗̞͑̔͂͐̚cͭ̅̊̆̒̆ǩ̝̩̯́ͥ̔̍̑ḭ͓͍̳̬ͦ̽͂n͍͎͈̈̅ͩͬ ̊ͫ̂̾̑̈́f̲͚͉͓͗̋́ͧͦ̅ȗ͇̲̻͈̲̅̎͗͒ͭ͡c̬̟̠̹̯̈́ͩ͘ͅk̫̠̻̋͜a̲͒̾̇!͙͕̺͉̗̩̲̂̏̄̀
User avatar
lvd
 
Posts: 7227
Joined: 07 Apr 2007, 21:28
Group: Registered users


Return to Coding

Who is online

Users browsing this forum: No registered users and 0 guests

cron