Algorithm-Design
這個簡單方案的強度和攻擊向量是什麼?
假設 Alice 想要傳達一些秘密值 $ S $ 通過公共渠道以其他人不知道價值是什麼的方式發送給 Bob。
為此,Alice 將該秘密值與 $ N-1 $ 其他值,列一個列表 $ L $ 其中有 $ N $ 裡面的物品。
在此通信之前,Alice 和 Bob 同意 Alice 想要與 Bob 通信的值是 $ L_M $ 在哪裡 $ M \in [0,N) $ .
這個方案有多安全?可以使用哪些攻擊向量?另外,這種技術有名字嗎?
我個人的一些想法:
- 該方案的安全性似乎與 $ N $ . 較大 $ N $ 值似乎更安全。
- 似乎如果您沒有仔細選擇列表的其他值,從統計上可以看出“一個數據點與其他數據點不匹配”,這可能會使關心的實際值更加明顯。
- 使值完全適合的一種想法可能是,如果秘密值 $ S $ 可以表示為 $ B $ 位,這可能是列表 $ L $ 可能是所有值的隨機洗牌 $ [0,2^B) $ ,但如果有人知道這一點,他們就會知道這個數字可能在值的較高端,所以這可能太天真了。
- 同意 $ M $ 提前有通常的密鑰生成/密鑰共享/密鑰儲存問題和攻擊向量。我對問題的那一部分不感興趣。
**簡短回答:**抱歉,不,不幸的是,您的概念既不是安全、實用也不是有效的加密方案。
**稍微長一點的答案:**為了說明您的方案不切實際,假設您正在發送一個完全隨機的位串 $ S $ 長度 $ B $ . 在這種情況下,為了完全保密,您至少必鬚髮送一份清單 $ L $ 包含所有可能的值 $ [0..2^B) $ 隨機順序,除了 $ S $ 固定在位置 $ M $ , 在哪裡 $ M $ 是您與收件人共享的密鑰。
現在,如果 $ M $ 從所有可能的值中完全隨機選擇,它也將是一個隨機元素 $ [0..2^B) $ 因此與消息一樣長,並且包含盡可能多的熵 $ S $ 你想發送。
密文 $ L $ 另一方面,將比純文字消息成倍增長 $ S $ . 這很糟糕,因為這意味著您安全發送消息的努力將與您希望對手嘗試暴力猜測密鑰或純文字所付出的努力一樣大。
此外,如果純文字 $ S $ 不是完全隨機的,安全地執行您的方案會變得更加複雜,但結論不會改變。如果您最大限度地提高安全性,您編碼和發送純文字的努力將不亞於您希望您的對手試圖破壞您的計劃所付出的努力。