Ⅰ 公鑰加密與數字簽名的聯系與區別
一、密鑰加密:密鑰加密也稱不對稱加密,其常用演算法是RSA、ElGamal。 不對稱加密演算法不對稱加密演算法使用兩把完全不同但又是完全匹配的一對鑰匙—公鑰和私鑰。在使用不對稱加密演算法加密文件時,只有使用匹配的一對公鑰和私鑰,才能完成對明文的加密和解密過程。加密明文時採用公鑰加密,解密密文時使用私鑰才能完成,而且發信方(加密者)知道收信方的公鑰,只有收信方(解密者)才是唯一知道自己私鑰的人。不對稱加密演算法的基本原理是,如果發信方想發送只有收信方才能解讀的加密信息,發信方必須首先知道收信方的公鑰,然後利用收信方的公鑰來加密原文;收信方收到加密密文後,使用自己的私鑰才能解密密文。顯然,採用不對稱加密演算法,收發信雙方在通信之前,收信方必須將自己早已隨機生成的公鑰送給發信方,而自己保留私鑰。由於不對稱演算法擁有兩個密鑰,因而特別適用於分布式系統中的數據加密。廣泛應用的不對稱加密演算法有RSA演算法和美國國家標准局提出的DSA。以不對稱加密演算法為基礎的加密技術應用非常廣泛。
二、數字簽名: 數字簽名技術是不對稱加密演算法的典型應用。數字簽名的應用過程是,數據源發送方使用自己的私鑰對數據校驗和或其他與數據內容有關的變數進行加密處理,完成對數據的合法「簽名」,數據接收方則利用對方的公鑰來解讀收到的「數字簽名」,並將解讀結果用於對數據完整性的檢驗,以確認簽名的合法性。數字簽名技術是在網路系統虛擬環境中確認身份的重要技術,完全可以代替現實過程中的「親筆簽字」,在技術和法律上有保證。在公鑰與私鑰管理方面,數字簽名應用與加密郵件PGP技術正好相反。在數字簽名應用中,發送者的公鑰可以很方便地得到,但他的私鑰則需要嚴格保密。通俗地說,就是A用自己的私鑰機密,B用A的公鑰解密來確定是否是A發送的。
可是實際的情況是,用雙鑰密碼體制加密消息非常慢,單鑰加密比雙鑰加密要快1000倍,所以實際應用中,不是直接加密消息,而是先通過散列函數處理消息,得到消息摘要,然後用雙鑰密碼體制中的私鑰來加密這個消息摘要,就得到了數字簽名。
三、兩者的區別:密鑰加密是用來數據加密與解密的一種手段,增強了密文的安全性。而數字簽名是一種類似寫在紙上的普通的物理簽名,但是使用了公鑰加密領域的技術實現,用於鑒別數字信息的方法。一套數字簽名通常定義兩種互補的運算,一個用於簽名,另一個用於驗證。
四、從兩者的定義及兩者的區別中,我們也可以看出兩者之間的聯系其實也是很緊密的。在公鑰加密的基礎上附加數字簽名,不僅保證了密文的安全性,同時也可以驗證密文是否由真實的發送方發送的,從而做到不輕易被解密。數字簽名僅僅只能保證消息的來源,卻不能加密消息本身,而公鑰加密恰恰彌補了這一缺陷。兩者的關系,簡單地說,這就類似一封寫好的信和一個簽上了名字的信封一樣。
Ⅱ 加密和簽名的區別
加密是對信息的加密,比如A給B發消息則會使用b的公鑰加密,發送後只能使用B的私鑰才能解密。
簽名,是給信息加個身份,是由誰發送的。一般用私鑰生成。A給B發送,A使用自己的私鑰簽名,B收到後用A的公鑰解密,來確認是不是A發的。
對稱加密:是加密解密使用相同的密鑰。
優使用簡卜薯單快捷高效。
缺加密強度不高,密鑰分發困難
DES採用替換和移位,密鑰56位,每次對64位數據塊加密。
3DES使喚弊鬧用兩個密鑰K1,k2,
加密時k1加密,k2解密,k1加密
解密時k1解密,k2加密,k1解密
rc-5:rsa 數據安全公司很多產品使用了rc-5
idea:密鑰是128位每次對64位數據塊加密。
非對稱加密:一個公鑰一個私鑰
優:解決了加密強度不高,密鑰分發困難的問題
缺:加密速度慢
rsa:512位密鑰,計算量大,難破解。
ecc:橢圓體制曲線密碼
信息摘要:一份長文件的數字指紋,可以用於創建數字簽名
md5 128位散列值
sha 160位散列值
md5+salt
簡單的md5密碼加和罩密,黑客可以通過密碼md5比較,可以輕松試出密碼。
如果加上salt,密碼加密之前拼接上salt,之後再散列。
黑客用自己密碼和salt值試,就很難找到密碼。