西西軟件園多重安全檢測下載網(wǎng)站、值得信賴的軟件下載站!
西西首頁 電腦軟件 安卓軟件 電腦游戲 安卓游戲 排行榜 專題合集

AES文件加密軟件

1.1 綠色版
  • AES文件加密軟件1.1 綠色版
  • 軟件大小:24KB
  • 更新時間:2013-06-08 10:11
  • 軟件語言:中文
  • 軟件廠商:
  • 軟件類別:國產(chǎn)軟件 / 免費軟件 / 加密解密
  • 軟件等級:3級
  • 應(yīng)用平臺:WinAll, WinXP
  • 官方網(wǎng)站:elephantinaurance.com
  • 應(yīng)用備案:
好評:50%
壞評:50%

軟件介紹

aes是高級加密標(biāo)準(zhǔn),又稱Rijndael加密法,本篇提供的AES加密小工具可以輕松的添加多文件,不涉及個人對加密算法的實現(xiàn),也就是說,是微軟實現(xiàn)的成熟方法,安全可靠。

AES文件加密功能:

1、對多文件加密進(jìn)行了線程優(yōu)化。但沒有對單文件進(jìn)行優(yōu)化。(目測90個文件,140M,耗時20S,880M單文件耗時2M)
2、沒有對密碼做驗證機制。因為采用了緩沖流操作(一次加解密512kb,所以即使密碼不正確解密也不會浪費多少時間,會拋出異常并且彈出提示框),操作上比較方便了。
3、由于主要目的不是為了學(xué)習(xí)加密算法,所以沒深究,只有AES一種算法。等有空了再添加RC4算法。不嘮叨鳥。用了幾天沒發(fā)現(xiàn)BUG。
4、文件名中的標(biāo)簽“(已加密)”,是不能改的哦。否則會進(jìn)行排除。

AES文件加密使用說明:

1、直接拖拽文件到程序的列表控件中
2、可在設(shè)置列表中勾選-刪除原文件
3、沒有文件粉碎功能

AES文件加密更新內(nèi)容:

增加了文件夾的加密。方式就是直接把目錄拖到界面中,就會循環(huán)解析成里面所有的子文件。沒有增設(shè)按鈕了。反正拖拽方便些。估計下次更新就是增加算法了。雖然更新的比較慢,嘿嘿。隨著時間的推移讓它更為強大。

相關(guān)內(nèi)容—AES加密原理:

隨著對稱密碼的發(fā)展,DES數(shù)據(jù)加密標(biāo)準(zhǔn)算法由于密鑰長度較小(56位),已經(jīng)不適應(yīng)當(dāng)今分布式開放網(wǎng)絡(luò)對數(shù)據(jù)加密安全性的要求,因此1997年NIST公開征集新的數(shù)據(jù)加密標(biāo)準(zhǔn),即AES[1]。經(jīng)過三輪的篩選,比利時Joan Daeman和Vincent Rijmen提交的Rijndael算法被提議為AES的最終算法。此算法將成為美國新的數(shù)據(jù)加密標(biāo)準(zhǔn)而被廣泛應(yīng)用在各個領(lǐng)域中。盡管人們對AES還有不同的看法,但總體來說,AES作為新一代的數(shù)據(jù)加密標(biāo)準(zhǔn)匯聚了強安全性、高性能、高效率、易用和靈活等優(yōu)點。AES設(shè)計有三個密鑰長度:128,192,256位,相對而言,AES的128密鑰比DES的56密鑰強1021倍[2]。AES算法主要包括三個方面:輪變化、圈數(shù)和密鑰擴(kuò)展。本文以128為例,介紹算法的基本原理;結(jié)合AVR匯編語言,實現(xiàn)高級數(shù)據(jù)加密算法AES! 

AES是分組密鑰,算法輸入128位數(shù)據(jù),密鑰長度也是128位。用Nr表示對一個數(shù)據(jù)分組加密的輪數(shù)(加密輪數(shù)與密鑰長度的關(guān)系如表1所列)。每一輪都需要一個與輸入分組具有相同長度的擴(kuò)展密鑰Expandedkey(i)的參與。由于外部輸入的加密密鑰K長度有限,所以在算法中要用一個密鑰擴(kuò)展程序(Keyexpansion)把外部密鑰K擴(kuò)展成更長的比特串,以生成各輪的加密和解密密鑰。

1.1圈變化
AES每一個圈變換由以下三個層組成:
非線性層——進(jìn)行Subbyte變換;
線行混合層——進(jìn)行ShiftRow和MixColumn運算;
密鑰加層——進(jìn)行AddRoundKey運算。

① Subbyte變換是作用在狀態(tài)中每個字節(jié)上的一種非線性字節(jié)轉(zhuǎn)換,可以通過計算出來的S盒進(jìn)行映射。

② ShiftRow是一個字節(jié)換位。它將狀態(tài)中的行按照不同的偏移量進(jìn)行循環(huán)移位,而這個偏移量也是根據(jù)Nb的不同而選擇的[3]

③ 在MixColumn變換中,把狀態(tài)中的每一列看作GF(28)上的多項式a(x)與固定多項式c(x)相乘的結(jié)果。 b(x)=c(x)*a(x)的系數(shù)這樣計算:

*運算不是普通的乘法運算,而是特殊的運算,即 b(x)=c(x)·a(x)(mod x4+1) 對于這個運算 b0=02。a0+03。a1+a2+a3 令xtime(a0)=02。a0

其中,符號“。”表示模一個八次不可約多項式的同余乘法[3]。


對于逆變化,其矩陣C要改變成相應(yīng)的D,即b(x)=d(x)*a(x)。

④ 密鑰加層運算(addround)是將圈密鑰狀態(tài)中的對應(yīng)字節(jié)按位“異或”。

⑤ 根據(jù)線性變化的性質(zhì)[1],解密運算是加密變化的逆變化。這里不再詳細(xì)敘述。

1.2輪變化

對不同的分組長度,其對應(yīng)的輪變化次數(shù)是不同的,如表1所列。

1.3密鑰擴(kuò)展  

AES算法利用外部輸入密鑰K(密鑰串的字?jǐn)?shù)為Nk),通過密鑰的擴(kuò)展程序得到共計4(Nr+1)字的擴(kuò)展密鑰。它涉及如下三個模塊:

① 位置變換(rotword)——把一個4字節(jié)的序列[A,B,C,D]變化成[B,C,D,A];

② S盒變換(subword)——對一個4字節(jié)進(jìn)行S盒代替;

③ 變換Rcon[i]——Rcon[i]表示32位比特字[xi-1,00,00,00]。

這里的x是(02),如 Rcon[1]=[01000000];Rcon[2]=[02000000];Rcon[3]=[04000000]……   

擴(kuò)展密鑰的生成:擴(kuò)展密鑰的前Nk個字就是外部密鑰K;以后的字W[[i]]等于它前一個字W[[i-1]]與前第Nk個字W[[i-Nk]]的“異或”,即W[[i]]=W[[i-1]]W[[i- Nk]]。但是若i為Nk的倍數(shù),則W[i]=W[i-Nk]Subword(Rotword(W[[i-1]]))Rcon[i/Nk]。

AES的加密與解密流程如圖1所示。

軟件標(biāo)簽: AES加密

其他版本下載

發(fā)表評論

昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
查看所有(0)條評論 > 字?jǐn)?shù): 0/500

TOP
軟件下載