[英]Determining a Private Key (Diffie-Hellman)
我遇到了一個挑戰,它與測試朋友的加密過程有關。
這是一個 Diffie-Hellman 交換過程,這里是已知的變量/常量:
P
G
查看我的私鑰時 - P
和G
都在其中。 例如,前 'x' 字節似乎與任何東西無關,然后接下來的 'y' 字節是P
,接下來的兩個字節是 static ,接下來的 'z' 字節是G
,其余的都是可變的。
該過程是加密文件,然后將其發送到設備,然后設備將對其進行解密-我的攻擊思路是:
嘗試復制秘密共享密鑰。 這里的問題是只要我知道我生成的私鑰就可以了,在這種情況下 - 我不喜歡他給我的文件。
嘗試找到收件人的私鑰。 在這里,我可以蠻力闖入——但除非我有某種超級計算機,否則我會花很長時間。
嘗試攻擊時還有其他選擇嗎?
我可能應該閉嘴,但對於那些對 Diffie-Hellman 感興趣的人來說,這也是一個學習一些東西的機會:
Diffie-Hellman 生成共享密鑰的簡單實現容易受到中間人攻擊。 但是,大多數 DH 實現通過在 Alice 和 Bob 之間添加身份驗證來正確解決這個問題。
如果您的 DH 實現允許聲明一組新的 PQG,您可以請求其他對等方使用新的弱集。 如果 Bob 不驗證這個集合的質量,那么它很容易受到攻擊。
DH 要求 Alice 發送 X = g^x,如果 Bob 不檢查 X 的質量,他很容易受到攻擊,因為中間的 Eve 可以顯着減少密鑰可能值的空間。
如果你的實現不記得泄露的密鑰,它們可以被 Eve 重新使用。
如果你的實現不記得被泄露的證書,它們可以被 Eve 重新使用。
如果你的實現不檢查證書,Eve 肯定會很開心。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.