針對對稱加密,非對稱加密,雜湊,三種,進行說明。
在對稱加密演算法中,資料發信方將明文(原始資料)和加密金鑰一起經過特殊加密演算法處理後,使其變成複雜的加密密文傳送出去。收信方收到密文後,若想解讀原文,則需要使用加密用過的金鑰及相同演算法的逆演算法對密文進行解密,才能使其恢復成可讀明文。在對稱加密演算法中,使用的金鑰只有乙個,發收信雙方都使用這個金鑰對資料進行加密和解密,這就要求解密方事先必須知道加密金鑰。常用的對稱加密有:
des、idea、rc2、rc4、skipjack、rc5、aes演算法等。
des演算法把64位的明文輸入塊變為64位的密文輸出塊,他所使用的金鑰也是64位,des對64 位的明文分組進行操作。通過乙個初始置換,將明文分組分成左半部分和右半部分,各32位 長。然後進行16輪相同的運算,這些相同的運算被稱為函式f,在運算過程中資料和密 鑰相結合。經過16輪運算後左、右部分在一起經過乙個置換(初始置換的逆置換),這樣算 法就完成了。在非對稱性加密中,加密和解密使用不同的金鑰。需要兩個金鑰:公開金鑰(publickey)和私有金鑰(privatekey)。公開金鑰與私有金鑰是一對,如果用公開金鑰對資料進行加密,只有用對應的私有金鑰才能解密;如果用私有金鑰對資料進行加密,那麼只有用對應的公開金鑰才能解密。非對稱加密的典型應用是數字簽名。
rsa的演算法涉及三個引數,n、e1、e2。
其中,n是兩個大質數p、q的積,n的二進位制表示時所占用的位數,就是所謂的金鑰長度。e1和e2是一對相關的值,e1可以任意取,但要求e1與(p-1)*(q-1)互質;再選擇e2,要求(e2*e1)mod((p-1)*(q-1))=1。(n及e1),(n及e2)就是金鑰對。rsa加解密的演算法完全相同,設a為明文,b為密文,則:a=b^e1 mod n;b=a^e2 mod n。
雜湊與加密事實上是不同的(參考:但是使用hash來處理網路資料很好。因為它不可逆。根本無需儲存密碼的原始資料。如常用的md5.
《web應用程式安全性剖析》 管理使用者
之前都沒有仔細想過使用者管理這裡有這麼多需要考慮的部分。使用者通過賬號以及密碼來登陸,這裡的機制對於安全的設定也值得研究。最重要的是密碼的管理。密碼可以通過暴力攻擊等方式來進行。或者像之前csdn出現的問題,由於使用明文儲存,導致破解後的災難。亦或者是做對映關係。比如在a 使用這個郵箱和密碼,在另乙...
Office 2010 應用程式安全性
為什麼害怕開啟 office 文件?對於複雜軟體的任何片段,隨著時間的推移,或許都能找到針對該片段的新的檔案分析漏洞利用情況。舊的 office 二進位制檔案格式很容易受到此類攻擊。在過去幾年中,黑客們找到了操縱 office 二進位制檔案的方法,只要這些檔案一開啟和進行分析,他們就能讓自己的 嵌入...
利用Httponly提公升應用程式安全性
隨著www服務的興起,越來越多的應用程式轉向了b s結構,這樣只需要乙個瀏覽器就可以訪問各種各樣的web服務,但是這樣也越來越導致了越來越多的web安全問題。www服務依賴於htpp協議實現,http是無狀態的協議,所以為了在各個會話之間傳遞資訊,就不可避免地用到cookie或者session等技術...