現在我知道這是一個非常開放的問題,比如「一段串有多長」,但我是這個遊戲的新手。什麼是加密/解密數據最安全的方式?
從我的基本認識(之前我深入探討這個問題)我相信AES 256位加密是非常安全的。
我的需求是爲使用.NET中使用最安全的加密可能私鑰和公鑰。
現在我但從這也許是幼稚的問題的專家指出知道,但請幫我擴大我的知識和建議的最佳方法,算法以及其他任何在這種類型的項目來考慮。
非常感謝。
現在我知道這是一個非常開放的問題,比如「一段串有多長」,但我是這個遊戲的新手。什麼是加密/解密數據最安全的方式?
從我的基本認識(之前我深入探討這個問題)我相信AES 256位加密是非常安全的。
我的需求是爲使用.NET中使用最安全的加密可能私鑰和公鑰。
現在我但從這也許是幼稚的問題的專家指出知道,但請幫我擴大我的知識和建議的最佳方法,算法以及其他任何在這種類型的項目來考慮。
非常感謝。
您不需要加密來生成公鑰/私鑰。這是一個數學運算。密鑰然後用於加密。
的它們是如何鏈接在一起,是產生
第2部分將使用哈希和簽名等方案來確保通信的真實性和未被篡改。 PKI非常慢,所以儘管您可以在實踐中使用它來保護通信,但它通常只在開始時使用,然後使用更快的方案(如AES)。
很多,這應該是維基百科上,並檢查了布魯斯的作品。
可能沒有這樣的東西可用。您的加密級別應與與數據關聯的線程成比例。請記住,通常由人類創造的任何東西都可以被人類破壞。
如果你想使用一對密鑰來加密/解密數據,你最有可能非對稱加密的道路上 - google it。從.NET點,你可以看看的RSA algorithm實施,這是considered to be secure爲 2048位以上的密鑰大小。
AES是對稱算法 - 這意味着一個關鍵...如果你想密鑰對查找的RSA庫....一個快速谷歌搜索提供了以下鏈接:
說得直白地說:只要你*做到了,它就不會安全。正如Bruce Schneier寫道:「密碼很難,密碼很難,密碼是很容易的部分。」瞭解該主題並使用高品質的圖書館。 *您的代碼*將成爲薄弱環節,而不是密碼。 –
你的問題顯示加密技術的缺乏。這意味着你*不會*正確地執行它,它*將被打破。我總是弄錯密碼,而且我一直在*年*。我建議你在試圖干預這些事情之前至少閱讀一些關於基本密碼學原理的文獻。 – Polynomial
@KerrekSB你是說像.Net庫這樣的東西http://msdn.microsoft.com/en-us/library/system.security.cryptography.rijndaelmanaged%28v=VS。90%29.aspx很弱? – Jon