一系列三角形反射可以用於密碼學嗎?
(我想沒有,但為什麼會這樣?有什麼辦法可以做到嗎?)
在給定的等邊三角形 T1 中(他的 3 個頂點 A、B、C 位於有限域中 $ \mathbb F_N^D $ ) 另一個等邊三角形 T2 可以通過在其他兩個頂點之間的邊緣處鏡像 3 個頂點中的一個來構造。這將重複多次。
只給定兩個隨機三角形 T1 和 T2(和 $ \mathbb F_N^D $ ) 對手能否計算出從 T1 到 T2 的最短路徑?
(假設有一種方式和模 $ N $ 和尺寸 $ D $ 選擇得足夠高,以至於測試所有三角形都需要很長時間)
或者他能比一步一步地應用它(快得多)嗎?
(例如在 EC 的發電機 $ g $ 不需要申請 $ m $ 如果我們想計算時間 $ g^m $ . 我正在尋找一種不能簡化為一維問題並且需要逐步計算的多維技術。“最短方式”的“長度”將是所需的(三角形)計算次數)
為了在邊 BC 鏡像點 A,我們正在尋找一個點 $ S $ 和變數 $ r $ 和 $$ S = B + r (C-B) $$ 讓 $ v $ 邊 BC 的方向: $$ v = \vec{v} = C-B $$
這個 $ S $ 將允許我們計算方向 $ A $ 至 $ BC $ 並以此計算鏡像點 $ A_M $ $$ A_M = A + 2(S-A) $$
去做這個 $ S-A $ 需要正交於 $ v $ . 所以標量積需要為 0: $$ (S-A)’ v = 0 $$ $$ (B+rv-A)’ v = 0 $$ $$ (B-A)’ v = -rv’v $$ $$ r = \frac{(B-A)‘v}{-(v’v)} $$
(除了有限域外,與歐幾里得空間中的相同 $ r $ 需要逆運算 $ (-(v’v))^{-1} $ 超過 $ N $ )
編輯:fgrieu 指出還有一種更簡單的方法來計算等邊三角形的反射: $$ A_M = A’ = B+C-A $$ (編輯結束)
我對二維和素數做了一些測試 $ N $ .
有限域 $ \mathbb F_N^2 $ 只能產生一個等邊三角形,如果 $ N $ 有根 $ 3 $ .
具有給定邊長的等邊三角形能夠產生 $ 2 N^2 $ 其他三角形(每個都具有相同的邊長)。每個邊長都有兩個這樣的集合。總共 $ 2(N-1) (2N^2) $ 它們彼此脫節。
(我剛剛計算了歐幾里得空間中兩點之間的平方邊長)
在歐幾里得空間中鏡像一個圍繞點的三角形 ( $ C $ ) 看起來像這樣:
第一面鏡子 $ A $ 在 $ CB $ . 然後鏡像 $ B $ 在 $ CA_M $ 等等。如果它是一個等邊三角形,它會在這樣做 6 次後再次匹配。
在有限域中 $ \mathbb F_{11}^2 $ 它看起來像這樣:
在這樣做 6 次(大約 1 分)後它也匹配。
只朝一個方向做它會在之後匹配 $ 2N $
是否存在類似的密碼算法?
為什麼這不安全?或者是嗎?更多維度會有所幫助嗎?
有什麼想法可以讓它更安全嗎?
從第二個三角形中,我們可以找到與第一個三角形具有相同方向的相鄰三角形(所有點都將移動相同的向量)。所以我們有興趣在一個顯著的角或兩個三角形之間找到一條路徑。它形成一個二維點陣:例如 $ A_M $ 可以去 $ A $ 或它的上層對應物(繼續 $ BC $ )。這兩個向量構成一個基礎。我們還可以包括第三個向量(從 $ A_M $ 向下穿過兩個三角形):它是“冗餘的”,但我們需要它,因為我們想找到短座標,這三個向量涵蓋了所有 6 個方向。
現在我們只想在我們的(冗餘)基礎上表示連接兩個三角形的可區分角的向量。這已經暗示了問題的弱點,因為我們“只”需要找到 3 個數字(基中的座標),即步驟的順序無關緊要。
這導致了 CVP(關閉向量問題)實例,可以通過 Babai 的算法和 LLL 解決(您將有一些額外的座標維度並將模減少添加到晶格中)。
進入更高的維度可能會降低 LLL 的效率。我不知道這方面的細節,但似乎我們擁有的基礎已經相當不錯,因此 LLL 應該找到非常好的路徑分解。