我必須製作一個應用程序,它可以使用Java或C#中的IDEA(國際數據加密算法)對文本文件進行加密和解密。我知道在java中有內置的JCE(Java Cryptography Extension),但是如何繼續下去,有人會給我一些建議嗎?如何實現IDEA?
謝謝。
我必須製作一個應用程序,它可以使用Java或C#中的IDEA(國際數據加密算法)對文本文件進行加密和解密。我知道在java中有內置的JCE(Java Cryptography Extension),但是如何繼續下去,有人會給我一些建議嗎?如何實現IDEA?
謝謝。
您可以嘗試使用BouncyCastle,它可用於Java和C#。但是,你需要獲得IDEA支持的權利罐子(假設的Java),根據該note:
從版本1.40的IDEA加密算法的實現 被 從正常的jar文件在刪除 許多用戶的請求。罐子 與形式-ext-仍然 的名稱包括IDEA實施。
編輯(添加指針爲例): 我還沒有試過,但我認爲DESExample可以適應可能通過更換DESedeEngine
做你想要什麼,我IDEAEngine
(以及類似其他類)。
低調選民的關懷能解釋這個答案有什麼問題嗎? (我不介意接受錯誤,但我有興趣知道爲什麼。) – Bruno 2010-09-20 13:25:11
不能評論任何原因,所以我張貼此作爲答覆。
IDEA是一種專利算法,專利僅在2011和2012年(取決於國家)過期。而且這根本不是最佳表現。所以除非你有使用IDEA的要求,否則我會建議看一下AES或RC4(ARCFOUR,因爲RC4名稱是註冊商標)算法。 RC4速度更快,但很大程度上取決於加密密鑰的質量。
尤金對於IDEA是正確的。如果是在您選擇的範圍內,避免使用IDEA並選擇其他算法是合理的。由於專利問題,IDEA很少使用,因此密碼分析人員對其進行了較少的調查。此外,IDEA密鑰的長度受限於128位,可能會很快變得不足。
大多數(並非絕對全部)開發框架包括對標準加密算法的支持。事實上,使用標準化算法總是好的,因爲它們是由密碼分析師進行最好的研究。 AES128/256是首選。 RC4密鑰的最大長度,以及IDEA密鑰是128位;此外,它也是一種奇特的東西,可能不被某些框架所支持。
到目前爲止IDEA專利已經過期。
好的謝謝你:)。 – Supereme 2010-08-23 12:42:25