1. java aes加密與網上在線加密不同。誰能告訴我為什麼求個正確的例子,謝謝了!
Cipher.getInstance("AES/ECB/PKCS5Padding");
就是這個東西有很多標準的,你得看下線上用的是什麼標准
AES/CBC/NoPadding (128)
AES/CBC/PKCS5Padding (128)
AES/ECB/NoPadding (128)
AES/ECB/PKCS5Padding (128)
DES/CBC/NoPadding (56)
DES/CBC/PKCS5Padding (56)
DES/ECB/NoPadding (56)
DES/ECB/PKCS5Padding (56)
DESede/CBC/NoPadding (168)
DESede/CBC/PKCS5Padding (168)
DESede/ECB/NoPadding (168)
DESede/ECB/PKCS5Padding (168)
RSA/ECB/PKCS1Padding (1024, 2048)
RSA/ECB/OAEPWithSHA-1AndMGF1Padding (1024, 2048)
RSA/ECB/OAEPWithSHA-256AndMGF1Padding (1024, 2048)
2. des加密解密演算法的完整程序
到VCKBase上找
http://www.vckbase.com/document/viewdoc/?id=623
http://www.vckbase.com/document/viewdoc/?id=624
3. DES演算法 真的不能破解么現在有不能破解的加密方法么
DES演算法全稱為Data Encryption Standard,即數據加密演算法,它是IBM公司於1975年研究成功並公開發表的。DES演算法的入口參數有三個:Key、Data、Mode。其中Key為8個位元組共64位,是DES演算法的工作密鑰;Data也為8個位元組64位,是要被加密或被解密的數據;Mode為DES的工作方式,有兩種:加密或解密。
DES演算法把64位的明文輸入塊變為64位的密文輸出塊,它所使用的密鑰也是64位,其演算法主要分為兩步:
1�初始置換
其功能是把輸入的64位數據塊按位重新組合,並把輸出分為L0、R0兩部分,每部分各長3 2位,其置換規則為將輸入的第58位換到第一位,第50位換到第2位……依此類推,最後一位是原來的第7位。L0、R0則是換位輸出後的兩部分,L0是輸出的左32位,R0是右32位,例:設置換前的輸入值為D1D2D3……D64,則經過初始置換後的結果為:L0=D58D50……D8;R0=D57D49……D7。
2�逆置換
經過16次迭代運算後,得到L16、R16,將此作為輸入,進行逆置換,逆置換正好是初始置換的逆運算,由此即得到密文輸出。
沒有絕對不能破解的加密方法,只是在當前的技術下,破解需要很長的時間,比如1000台大型機100年的時間,這樣破解就沒有意義了
4. 求救啊,IOS,DES加密 CBC模式的,即帶key和iv的加密
openssl;自己編譯一個庫
5. 如何解決DES加密演算法中KEY和IV的8位元組限制
DES是70年代的東西,本身就只能支持64位密鑰,實際只是56位,最後8位是奇偶校驗
並且非常容易破,就算是brute force方式,也可以在1天之內破解
所以換Rijndael吧,有n個好處:
1) Rijndael的現成實現RijndaelManaged是託管類,不需要用Windows的CSP
2) 支持更長的密鑰
3) 是國際新標准,叫做AES
6. 在DES加密里邊,ECB和CBC有什麼區別
一、優點不同:
ECB模式
1、簡單;
2、有利於並行計算;
3、誤差不會被傳送;
CBC模式:
1、不容易主動攻擊,安全性好於ECB,適合傳輸長度長的報文,是SSL、IPSec的標准。
二、缺點不同:
ECB模式
1、不能隱藏明文的模式;
2、可能對明文進行主動攻擊;
CBC模式:
1、不利於並行計算;
2、誤差傳遞;
3、需要初始化向量IV
三、概念不同
1、ECB模式又稱電子密碼本模式:Electronic codebook,是最簡單的塊密碼加密模式,加密前根據加密塊大小(如AES為128位)分成若干塊,之後將每塊使用相同的密鑰單獨加密,解密同理。
2、密碼分組鏈接(CBC,Cipher-block chaining)模式,由IBM於1976年發明,每個明文塊先與前一個密文塊進行異或後,再進行加密。在這種方法中,每個密文塊都依賴於它前面的所有明文塊。同時,為了保證每條消息的唯一性,在第一個塊中需要使用初始化向量IV。
(6)desiv在線加密擴展閱讀:
1976年,IBM發明了密碼分組鏈接(CBC,Cipher-block chaining)模式。在CBC模式中,每個明文塊先與前一個密文塊進行異或後,再進行加密。在這種方法中,每個密文塊都依賴於它前面的所有明文塊。同時,為了保證每條消息的唯一性,在第一個塊中需要使用初始化向量。
若第一個塊的下標為1,則CBC模式的加密過程為:
Ci = Ek (P ⊕ Ci-1), C0 = IV.
而其解密過程則為:
Pi = Dk (Ci) ⊕Ci-1, C0 = IV.
CBC是最為常用的工作模式。它的主要缺點在於加密過程是串列的,無法被並行化,而且消息必須被填充到塊大小的整數倍。解決後一個問題的一種方法是利用密文竊取。
注意在加密時,明文中的微小改變會導致其後的全部密文塊發生改變,而在解密時,從兩個鄰接的密文塊中即可得到一個明文塊。因此,解密過程可以被並行化,而解密時,密文中一位的改變只會導致其對應的明文塊完全改變和下一個明文塊中對應位發生改變,不會影響到其它明文的內容。
7. 關於C# DES加密時密鑰問題
1)DES加密程序中,保存key和iv有兩種做法
【Ⅰ】將key和iv「寫死」在在程序中,一旦程序編譯發布後,key和iv就無法改變
【Ⅱ】將保存key和iv保存在配置文件中,程序發布後,可以隨時改變配置文件中的key和iv
為了增加安全性,在第二種方法中,配置文件中保存的不是key和iv的明文,而是用md5加密後的key和iv。這樣,即使你的程序發布出去,別人也無法知道程序中真正使用的key和iv是什麼,增加了安全性。
System.Web.Security.FormsAuthentication.(sKey, "md5").Substring(0, 8)的作用是從配置文件取出加密的key和iv,然後用md5將解密,從而得到真正的key和iv
2)明白了1)後,第二個問題就容易理解了。
8. DES演算法怎麼用來加密文件(圖片、文檔、音頻、視頻等)
這個我不清楚。
加密文件(圖片、文檔、音頻、視頻等),我使用的是超級加密3000.
超級加密3000的主要功能有文件加密(保護文本,文檔,電子表,圖片,網頁等內容),文件夾加密、隱藏、加鎖,文件隱藏、粉碎等。可滿足日常工作和生活中的安全保密需求,您盡可放心使用。