密碼學(xué)原理

ButATree
ButATree
對稱加密算法中,數(shù)據(jù)發(fā)信方將明文和加密密鑰一起經(jīng)過特殊加密算法處理后,發(fā)送出去。收信方收到密文后,若想解讀原文,則需要使用加密用過的密鑰及相同算法的逆算法對密文進(jìn)行解密,才能使其恢復(fù)成可讀明文。

密碼學(xué)原理

Tags:

1、加密算法分類

2、對稱算法<原理、特征、算法>

3、非對稱算法<原理、特征、算法>

4、對稱算法vs非對稱算法<結(jié)合體>

1、加密算法概述

用于對用戶數(shù)據(jù)進(jìn)行加密,常用算法有DES、3DES、AES、RSA、DH算法。

根據(jù)密鑰特征,分為對稱和非對稱算法。

2、對稱算法

(1)原理

對稱加密算法中,數(shù)據(jù)發(fā)信方將明文和加密密鑰一起經(jīng)過特殊加密算法處理后,發(fā)送出去。收信方收到密文后,若想解讀原文,則需要使用加密用過的密鑰及相同算法的逆算法對密文進(jìn)行解密,才能使其恢復(fù)成可讀明文。在對稱加密算法中,使用的密鑰只有一個(gè),發(fā)收信雙方都使用這個(gè)密鑰對數(shù)據(jù)進(jìn)行加密和解密,這就要求解密方事先必須知道加密密鑰。

(2)對稱算法

DES、3DES、AES

(3)算法特征

安全性

緊湊性(加密前后的數(shù)據(jù)大小變化不大)

速度快

3、非對稱算法

(1)原理(公鑰私鑰對)

非對稱加密算法需要兩個(gè)密鑰:公開密鑰(publickey:簡稱公鑰)和私有密鑰(privatekey:簡稱私鑰)。公鑰與私鑰是一對,如果用公鑰對數(shù)據(jù)進(jìn)行加密,只有用對應(yīng)的私鑰才能解密。因?yàn)榧用芎徒饷苁褂玫氖莾蓚€(gè)不同的密鑰,所以這種算法叫作非對稱加密算法。非對稱加密算法實(shí)現(xiàn)機(jī)密信息交換的基本過程是:甲方生成一對密鑰并將公鑰公開,需要向甲方發(fā)送信息的其他角色(乙方)使用該密鑰(甲方的公鑰)對機(jī)密信息進(jìn)行加密后再發(fā)送給甲方;甲方再用自己私鑰對加密后的信息進(jìn)行解密。甲方想要回復(fù)乙方時(shí)正好相反,使用乙方的公鑰對數(shù)據(jù)進(jìn)行加密,同理,乙方使用自己的私鑰來進(jìn)行解密。

另一方面,甲方可以使用自己的私鑰對機(jī)密信息進(jìn)行簽名后再發(fā)送給乙方;乙方再用甲方的公鑰對甲方發(fā)送回來的數(shù)據(jù)進(jìn)行驗(yàn)簽。

甲方只能用其私鑰解密由其公鑰加密后的任何信息。非對稱加密算法的保密性比較好,它消除了最終用戶交換密鑰的需要。

密鑰對:公鑰+私鑰,公鑰大家都知道,私鑰只有本地知道,

公鑰加密私鑰解,私鑰加密公鑰解。加解密雙方各有

一對密鑰對。發(fā)給誰就用誰的公鑰!

(2)非對稱算法

RSA、DH

(3)特征

速度慢

安全性

密鑰管理方便

支持?jǐn)?shù)字簽名

支持不可否認(rèn)性(不可抵賴性)

4、對稱+非對稱算法

對稱算法用來對數(shù)據(jù)加密

非對稱算法用來實(shí)現(xiàn)密鑰分發(fā)

安全

緊湊

速度快

密鑰管理方便

支持?jǐn)?shù)字簽名

支持不可否認(rèn)性

哈希算法

Tags:

1、哈希算法分類

2、哈希算法原理和特征

3、哈希算法應(yīng)用

1、哈希算法分類

MD5、SHA,用于實(shí)現(xiàn)數(shù)據(jù)完整性校驗(yàn)。

2、哈希算法原理和特征

哈希算法將任意長度的二進(jìn)制值映射為較短的固定長度的二進(jìn)制值,這個(gè)小的二進(jìn)制值稱為哈希值。哈希值是一段數(shù)據(jù)唯一且極其緊湊的數(shù)值表示形式。如果散列一段明文而且哪怕只更改該段落的一個(gè)字母,隨后的哈希都將產(chǎn)生不同的值。要找到散列為同一個(gè)值的兩個(gè)不同的輸入,在計(jì)算上是不可能的,所以數(shù)據(jù)的哈希值可以檢驗(yàn)數(shù)據(jù)的完整性。一般用于快速查找和加密算法。

特征:

1、雪崩效應(yīng):明文有任何的修改,hash全局改變;

2、不可逆向:無法根據(jù)哈希值得到明文;

3、固定輸出:128bit、160bit

功能:

1、完整性校驗(yàn)

2、安全性校驗(yàn)

3、哈希算法應(yīng)用

哈希算法可以檢驗(yàn)信息是否是相同的,這樣的優(yōu)勢可以節(jié)省重復(fù)文件傳送的時(shí)間。

比如:我們在生活工作中會(huì)使用一些軟件給別人傳送文件數(shù)據(jù),如果有人傳送了一份文件給一個(gè)人,然后又有一個(gè)人傳送了相同的文件給了另外一個(gè)人,那么這個(gè)社交軟件在第二次傳送文件的時(shí)候會(huì)對比兩次傳送的哈希值,發(fā)現(xiàn)是相同的,該軟件就不會(huì)再次上傳文件給服務(wù)器了。

除此之外,哈希算法還可以檢驗(yàn)信息的擁有者是否真實(shí)。

比如:我們在一個(gè)網(wǎng)站注冊一個(gè)賬號,如果網(wǎng)站把密碼保存起來,那這個(gè)網(wǎng)站不論有多安全,也會(huì)有被盜取的風(fēng)險(xiǎn)。但是如果用保存密碼的哈希值代替保存密碼,就沒有這個(gè)風(fēng)險(xiǎn)了,因?yàn)楣V导用苓^程是不不可逆的。

THEEND

最新評論(評論僅代表用戶觀點(diǎn))

更多
暫無評論