Пусть фиксированная константа. Для целого числа мы хотим построить перестановку такую, что:
Конструкция использует постоянное время и пространство (т.е. предварительная обработка требует постоянного времени и пространства). Мы можем использовать рандомизацию.
Учитывая , может быть вычислено в постоянном времени и пространстве.
Перестановки есть -wise независимы, то есть, для всех , случайные величины независимы и равномерно распределены по .
Единственное, что я в настоящее время знаю, использует логарифмическое пространство и время полиномиального вычисления на значение с использованием псевдослучайных генераторов.
Фон
Для недавней работы мне понадобилось что-то похожее на вышеприведенное, и в итоге я использовал что-то более слабое: я разрешил повторные записи и убедился, что все числа, которые мне нужны, были покрыты (т.е. беспорядок). В частности, я получил независимую последовательность, которая может быть вычислена за времени и с использованием постоянного пространства. Было бы неплохо иметь что-то попроще или просто знать, что известно.
Предположения
Я предполагаю модель оперативной памяти за единицу стоимости. Каждое слово в памяти / регистре имеет размер , и каждая основная арифметическая операция занимает O ( 1 ) время. Я готов принять любое разумное криптографическое предположение (односторонняя функция, дискретный журнал и т. Д.).
Ток чтоли
p p n a i [ p ] σ ( 1 ) , σ ( 2 ) , … , σ ( n ) k n ( 1 - 1 / e ) [ п ] появляются в этой последовательности. Обратите внимание, однако, что, поскольку числа повторяются в этой последовательности, это не перестановка.
Ответы:
Если вы готовы использовать криптографические методы и полагаться на криптографические предположения и принять вычислительное представление о независимости от , возможно, что шифрование с сохранением формата (FPE) может оказаться полезным. Позвольте мне набросать несколько различных конструкций такого рода.К
(Под «вычислительным понятием образной независимости» я имею в виду, что ни один злоумышленник с разумным временем выполнения не сможет отличить σ от k- независимой перестановки, кроме как с незначительным преимуществом. Эти схемы не будут теоретически информационными k- образными независимые, но они будут "по существу столь же хороши, как и k- независимые", если предположить, что все вычисления в пределах видимости ограничены в вычислительном отношении.)К σ К К К
Практическая схема, для меньшегоN
В частности, используйте конструкцию FPE для построения блочного шифра (псевдослучайная перестановка, PRP) с сигнатурой . Для значений n , меньших, чем 2 128 , вероятно, наилучшей схемой является использование конструкции Фейстеля с фиксированным числом циклов (скажем, 10) и функцией округления, которая является PRF, полученной из AES. Время работы , чтобы оценить сг К ( я ) для одного значения буду АЕС вызовы. Каждый вызов AES выполняется в постоянное время.σК: [ n ] → [ n ] N 2128 σК(i) O ( 1 )i O(1)
Наконец, отметим, что любая псевдослучайная перестановка автоматически независима. В частности, теорема Луби-Рэкоффа гарантирует, что по крайней мере с 3 раундами вы получите (приблизительную) независимость, если , предполагая, что AES безопасен. С большим количеством раундов, вероятно, будет более сильный результат, но теоремы труднее доказать и они станут более техническими, хотя широко распространено мнение, что для получения чрезвычайно высокого уровня безопасности должно быть достаточно постоянного количества раундов (и, следовательно, по существу идеального - мудрая независимость для всех разумных значений ).к к ≪k k к кk≪n1/4 k k
Обобщая это на большееn
Когда больше, вещи становятся более странными, потому что модель оперативной памяти неявно допускает параллелизм до бесплатно. Мне не ясно, какой должна быть стоимость PRP в этой модели (постоянная, с ростом , не знаю).n nO(lgn) n
Третья возможная конструкция
Пусть будет модулем RSA, который немного больше, чем . Определим как подгруппу содержащую элементы, чей символ Якоби равен . Определить как2 n G ( Z / m Z ) ∗ + 1 π : G → Gm 2n G (Z/mZ)∗ +1 π:G→G
Затем определите помощьюσ
где - случайные биективные 2-независимые хеш-функции.f,g
Я подозреваю, что эта конструкция имеет шанс быть (приблизительно) независимой в предположении, подобном RSA. У меня нет доказательств, только интуиция. Основная известная регулярность состоит в том, что он мультипликативно гомоморфен: . Я не знаю каких-либо других соответствующих закономерностей, даже зависимость от . Применение 2-независимого хэша до и после доказуемо устраняет эту закономерность: если является зависимой независимостью, за исключением мультипликативной гомоморфности, то 2-мудрые независимые хэши кажутся такими, что должны обеспечить полноеπ π ( x y ) = π ( x ) π ( y ) k π π k k kk π π(xy)=π(x)π(y) k π π k k независимость Но это супер-отрывочные и световые годы от доказательства независимости от .k
Обратите внимание, что вам нужно будет использовать методы шифрования, сохраняющие формат (например, метод циклического воспроизведения), чтобы работали с а не с . Эта схема должна иметь (ожидаемое) время выполнения для оценки на заданном входе с подходящим выбором .G ( Z / m Z ) O ( 1 ) σ ( i ) i f , gf,g G (Z/mZ) O(1) σ(i) i f,g
Кроме того, в некотором смысле эта конструкция-кандидат злоупотребляет моделью ОЗУ с единичной стоимостью, полагаясь на способность работать с битными числами за времени для больших значений , что на самом деле нецелесообразно в практика. (Эта последняя конструкция не будет безопасна для малых значений , поэтому последний подход в основном полагается на режим с большими чтобы у него был шанс работать ... именно тот режим, в котором модель ОЗУ с единичной стоимостью наиболее сомнительное.)O ( 1 )lgn O(1) N Nn n n
Я свободно признаю, что это довольно натянуто, но я упомяну об этом на случай, если оно вызовет некоторое вдохновение для лучшего решения.
Например, возможно заменить подходящей группой эллиптических кривых, так что мы имеем над (напомним, что группы эллиптических кривых обычно используют аддитивные обозначения, а не мультипликативные обозначения). Хорошая вещь об этом состоит в том, что вполне разумно предположить, что, если группа эллиптической кривой выбрана правильно, будет вести себя как «группа черного ящика», что, я думаю, может эффективно подразумевать, что будет независимый от всех «за исключением эффектов, подразумеваемых мультипликативным гомоморфизмом». У меня нет готовой конструкции, готовой предложить (недостающий фрагмент - как выбратьπ ( x ) = e x G G G π k G f , g kG π(x)=ex G G G π k G и как построить и как доказать way независимость от этого), но можно было бы как-то собрать кусочки вместе.f,g К
источник