Доведення безпеки генератора псевдовипадкових чисел Нісана-Вігдерсона


13

Нехай - часткове ( m , k ) -дизайн, а f : { 0 , 1 } m{ 0 , 1 } - булева функція. Генератор Нісана-Вігдерсона G f : { 0 , 1 } l{ 0 , 1 } n визначається так:S={Si}1in(m,k)f:{0,1}m{0,1}Gf:{0,1}l{0,1}n

Gf(x)=(f(x|S1),,f(x|Sn))

Для обчислення го біта G f беремо біти x з індексами в S i, а потім застосовуємо до них f .iGfxSif

Припустимо, що дорівнює 1f твердий для ланцюгів розміромnc,деc- константа. Як ми можемо довести, щоGfє(nc1ncnccGf-безпечний генератор псевдовипадкових чисел?(nc2,2nc)

Визначення:

Часткове -проектування - це сукупність підмножин S 1 , , S n[ l ] = { 1 , , l } таких, що(m,k)S1,,Sn[l]={1,,l}

  • для всіх : | S i | = m , іi|Si|=m
  • для всіх : | S iS j | k .ij|SiSj|k

Функція є ε -Жорсткий для ланцюгів розміром з МФЛ НЕ ланцюга розміру s може передбачити п з імовірністю е краще , ніж жеребкування.fϵssfϵ

Функція є ( s , ϵ ) -безпечний генератор псевдовипадкових чисел, якщо жодна схема розміру s не може розрізнити випадкове число і число, породжене G f за допомогою ймовірність краща, ніж ϵ .G:{0,1}l{0,1}n(s,ϵ)sGfϵ

Ми використовуємо Для рядка , що складається з ї біт «и з індексами в A .x|AxA


ps: це насправді не моє домашнє завдання, але, будь ласка, ставитесь до нього так, як ви ставитесь до домашнього завдання, його іноді дають студентам, які ознайомлюються з криптовалютою.
Каве

3
і нехай розпочнеться бій CS.SE проти crypto.SE! (:
Ран Г.

1
google дає досить приємні результати: 1 , 2
Ран Г.

Це не гарна відповідь - це лише пошук у Google. Можливо, ви хочете зробити відповідь на це?
Ран Г.

@RanG., Хороший момент.
Каве

Відповіді:


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.