一定の時間と空間のみを使用して、[n]にkワイズの独立した置換を構築できますか?


10

してみましょう固定一定です。整数与えられた場合、次のような順列を作成します。N σ S Nk>0nσSn

  1. 構築には一定の時間とスペースが使用されます(つまり、前処理には一定の時間とスペースがかかります)。ランダム化を使用できます。

  2. 所与、、一定時間と空間で計算することができます。σ I i[n]σ(i)

  3. 順列は方向に独立しています。つまり、すべてのについて、確率変数は独立しており、に均一に分散されます。kはiが1... iがkを σ I 1... σ I K[ N ]σki1,,ikσ(i1),,σ(ik)[n]

私が現在知っている唯一のことは、擬似ランダムジェネレーターを使用して値ごとに対数空間と多項式計算時間を使用することです。σ(i)


バックグラウンド

最近の作業には上記のようなものが必要でしたが、結局もっと弱いものを使用することになりました。繰り返し入力を許可し、必要なすべての数がカバーされていることを確認しました(つまり、混乱)。具体的には、時間で計算でき、定数空間を使用して方向の独立したシーケンスを取得しました。もっと単純なものを持っているか、知られていることを知っているだけでいいでしょう。O 1 kO(1)

仮定

単価RAMモデルを想定しています。メモリ/レジスタのすべてのワードのサイズはであり、すべての基本的な算術演算には時間かかります。私は、合理的な暗号化の仮定(一方向関数、離散ログなど)を想定します。O 1 O(logn)O(1)

現在のもの

Kavehが提案したように、これは私が現在持っている「簡単な」ハックです(これはかなり標準的です):ましょう素数多項式である(をと考えてください)。ここで、各はから均一かつランダムにサンプリングされます。それことを確認することは容易である反復を有する配列であるが、それは独立-wise、及びおおよその数のがこのシーケンスに表示されます。ただし、数値はこの順序で繰り返されるため、順列ではないことに注意してください。P P N I [ P ] σ 1 σ 2 ... σ N K N 1 - 1 / Eを[ n ]σ(x)=i=0k+2aiximodpppnai[p]σ(1),σ(2),,σ(n)kn(11/e)[n]


1
いいえ。一定時間では、一定量の出力しか与えることができないため、一定時間アルゴリズムでは、が十分に大きい、条件3の確率変数のサポートは厳密なサブセットになります。[ n ]n[n]

2
順列のエントリごとに一定量の計算が必要です。そのため、全体の計算時間は、順列全体に対して線形になります。
Sariel Har-Peled

1
スペースについては-私は単語モデルを想定しています-したがって、対数のビット数であっても、すべての単語は一定量のスペースを取ります。
Sariel Har-Peled 2015年

1
部分解:が素数でます。してみましょう持つフィールドで。セットランダムためのと。次に、は、「一定の時間」で計算できる要素のペアワイズ独立置換です。多分これは一般化します。k = 2 F | F | = N σ X = A X + B B F0 、σ nはnk=2F|F|=nσ(x)=ax+ba,bFa0σn
Thomas

1
うん。私はこれを知っていました;)。問題は、をはるかに大きくする必要があり、線形多項式のみが置換であり、高次のものではないことです。k
Sariel Har-Peled

回答:


3

暗号化技術を使用し、暗号化の前提に依存し、単位の独立性の計算概念を受け入れることをいとわない場合は、フォーマット保持暗号化(FPE)が役立つ可能性があります。この種のいくつかの異なる構造をスケッチしましょう。k

(「の計算の概念により、 -wiseの独立性」、私は合理的な実行時間とは敵対者が区別できないことを意味から無視できる利点を除いて、独立した順列-wiseこれらのスキームは、情報理論的にはありません。 -賢明な独立性ですが、それらは「本質的に賢明な独立性と同じくらい優れています」。σ K K Kkσkkk

が小さい実用的なスキームn

特に、FPE構成を使用して、署名ブロック暗号(疑似ランダム置換、PRP)を構築します。より小さい値の、おそらく最良のスキームは、固定数のラウンド(たとえば、10)と、AESから派生したPRFであるラウンド関数を使用したFeistel構造を使用することです。評価する実行している時間単一の値のためになります AES呼び出し。各AES呼び出しは一定の時間で実行されます。N 2 128 σのKI I O 1 σk:[n][n]n2128σk(i)iO(1)

最後に、疑似ランダム置換は自動的に方向に独立していることに注意してください。特に、Luby-Rackoffの定理は、AESが安全であると仮定すると、場合、少なくとも3ラウンドで(おおよそ)独立性が得られることを保証します。より多くのラウンドで、それは強力な結果があるだろうと考えですが、定理を証明し、広くラウンドの一定の数が非常に高いセキュリティ(したがって、本質的に完璧な取得するために十分であると考えられていますが、より技術的になることを難しくしている -すべての妥当な値に対する賢明な独立性)。K K « N 1 / 4 K Kkkkn1/4kk

これをより大きな一般化するn

とき大きい単位コストのRAMモデルは暗黙的にアップすることができますので、物事は、奇妙得る無料で並列処理。このモデルでPRPのコストがどうあるべきかははっきりしていません(定数?と共に増加する?わからない)。O lg n nnO(lgn)n

3番目の可能な構造

してみましょうより少し大きいRSAモジュラスこと。を、ヤコビ記号がである要素を含むのサブグループになるように定義します。定義 by2 nはG Z / M Z * + 1 π G Gm2nG(Z/mZ)+1π:GG

π(x)=x3modm.

次に、をσ

σ(i)=g(π(f(i)),

ここで、はランダムな全単射2に依存しないハッシュ関数です。f,g

この構造には、RSAのような仮定の下で、(ほぼ)方向に独立している可能性があると思います。私には証明がなく、直感があります。の主な既知の規則性は、乗法的に準同型であることです:。他の関連する規則性、依存性についてさえ知りません。前後に2独立ハッシュを適用すると、この規則性がおそらく排除されます。が乗法準同型性を除いて独立である場合、2独立ハッシュは完全なを提供するように見えますkππ(xy)=π(x)π(y)kππkk-賢明な独立。しかし、これはワイズの独立性の証明からの非常にスケッチ風で光年です。k

ではなくで機能するようにするには、形式を保持する暗号化手法(たとえば、循環手法)を使用する必要があることに注意してください。このスキームは、所定の入力でを評価するために(予想)実行時間を持ち、適切な選択する必要があります。f,gG(Z/mZ)O(1)σ(i)if,g

また、ある意味では、この候補構築は、大きな値のに対して時間でビットの数値を操作する能力に依存することにより、単位コストのRAMモデルを悪用しています。練習。(この最後の建設は、の値が小さいために安全ではないでしょう、この最後のアプローチは基本的に大に依存しているので、それは作業の機会を持つようにするためのユニットコストのRAMモデルが最もある正確政権...政権怪しい。)lgnO(1)nnn

私はこれがかなりの範囲であることを自由に認めますが、より良い解決策へのインスピレーションをトリガーする場合に備えて言及します。

例えば、交換することが可能かもしれない私たちは持っていることを、適切な楕円曲線群によって上(楕円曲線群は、通常、添加物の表記はなく、乗法表記法を使用することを想起されたいです)。これについての良いところは、楕円曲線群ならば、という推測とは全く不合理ではないということである右側に選択され、私は効果的にすることを意味するものではありかもしれないと思う「ブラックボックス・グループ」、のように動作しますになります -独立した「乗法準同型による影響を除いて」。提案できる完全な構造がありません(不足している部分は選択方法です)π X = E X G G G π K G F G 、KGπ(x)=exGGGπkGそして、どのようにを構築しこれからごとの独立性を証明するか)、しかし、いくつかの方法でピースを組み合わせることが可能かもしれません。f,gk


これは非常に興味深いことです。私は次の数週間旅行しますが、戻ってきたらそれを調べます。ありがとう!
Sariel Har-Peled 2015年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.