數(shù)據(jù)加密
在互聯(lián)網(wǎng)中,由于它聯(lián)結(jié)的是全世界范圍的企業(yè)和個人,所以會面臨很多需要對數(shù)據(jù)進行加密處理的情況。就比如在網(wǎng)店購物時用戶輸入的信用卡卡號,就是應(yīng)該被加密傳輸?shù)拇硇詳?shù)據(jù)。假設(shè)卡號和密碼未經(jīng)加密就被發(fā)送出去,那么就會面臨卡號被同樣接入互聯(lián)網(wǎng)的某人盜取,信用卡被其用來肆意購物的危險。想想就很恐怖吧。。
所以我們上網(wǎng)時注意網(wǎng)頁要是以https:// 開頭,表示數(shù)據(jù)正在使用加密的方式進行傳輸。所以呢,大家在不知不覺中就已經(jīng)都是加密技術(shù)的受益者了。
加密原理
雖然存在各種各樣的加密技術(shù),但是其中的基本手段無外乎還是字符編碼的變換,即將構(gòu)成明文的每個字符的編碼分別變換成其他的數(shù)值。通過反轉(zhuǎn)這種變換過程,加密后的文本數(shù)據(jù)可以還原。通過把密文還原成明文的過程就是“解密”。
另外注意,密鑰越長,解密也就越困難了。
對稱密鑰加密技術(shù)
這種加密技術(shù)的特征是在加密和解密的過程中使用數(shù)值相同的密鑰。因此,要使用這種技術(shù),就必須事先把密鑰的值作為只有發(fā)送者和接收者才知道的秘密保護好??墒腔ヂ?lián)網(wǎng)上的數(shù)據(jù)加過密以后我要怎么把密鑰告訴我需要告訴的人呢?寄信,這也太慢了吧。所以對稱密鑰加密技術(shù)不適合在互聯(lián)網(wǎng)中使用。
公開密鑰加密技術(shù)
為了解決對稱密鑰加密技術(shù)的麻煩,牛人們想到只要讓解密時的密鑰不同于加密時的密鑰,就可以克服對稱密鑰加密技術(shù)的缺點,而這種加密技術(shù)就被稱為“公開密鑰加密技術(shù)”。在公開密鑰加密技術(shù)中,用于加密的密鑰可以公開給全世界,因此稱為“公鑰”,而用于解密的密鑰是只有自己才知道的秘密,因此稱為“私鑰”。
數(shù)字簽名
數(shù)字簽名是一種公開密鑰加密技術(shù)的實際應(yīng)用。數(shù)字簽名使用私鑰進行加密、使用公鑰進行解密。
發(fā)送者用構(gòu)成文件的所有字符的編碼生成了信息摘要,就證明發(fā)送者從頭到尾檢查了文件并承認其內(nèi)容完整有效。
如果接收者重新算出的信息摘要和經(jīng)過發(fā)送者加密的信息摘要匹配,就證明文件在傳輸過程中沒有被篡改,并且的確是發(fā)送者本人發(fā)送的。正因為數(shù)據(jù)是用發(fā)送者的私鑰加密的,接收者才能用發(fā)送者的公鑰進行解密。
MD5
而在實際中計算數(shù)字簽名時,使用的是通過更加復(fù)雜的公式計算得出的、被稱作MD5(Message Digest5)的信息摘要。由于MD5 經(jīng)過了精心的設(shè)計,所以使得兩段明文即使只有略微的差異,計算后也能得出不同的信息摘要。
現(xiàn)實生活實例
- 壓縮軟件可以加密,然后用同樣的密碼解密。
- doc文檔可以加密,然后用同樣的密碼解密。
- https:// 開頭,表示數(shù)據(jù)正在使用加密的方式進行傳輸。
- 支付寶上的數(shù)字簽名就是加密。
- 下載一個軟件或源碼,一般都有提供MD5值,用一個md5校驗工具校驗該軟件或源碼,得出其MD5值與提供的一致,則說明OK。