在公元1578年,瑪麗女王被伊麗莎白女王軟禁。1586年1月6日瑪麗女王收到一批秘密信件堡妒,得知安東尼的計劃:安東尼和幾個同黨營救瑪麗女王,并計劃行刺伊麗莎白女王溉卓。他們的信件被轉成密碼,并藏在啤酒桶的木塞以掩人耳目搬泥。
但卻被英格蘭大臣華興翰從中截獲桑寨、復制,并由菲力普·馬尼斯破解信件忿檩。信件破解后尉尾,華興翰要菲力普摹擬瑪麗的筆跡引誘安東尼行動,將叛逆者一網成擒燥透,審判并處死瑪麗女王沙咏。
瑪麗與安東尼的加密方式被敵人破解,卻沒聽過比特幣的交易數據被篡改班套。他們都使用密碼學的原理肢藐,是什么造成不一樣結局呢?
蘇格蘭瑪麗女王事件使用古典密碼學吱韭,而比特幣系統使用現代密碼學吆豹。維基百科對古典密碼學和現代密碼學分別定義如下:
古典密碼學:主要關注信息的保密書寫和傳遞,以及與其相對應的破譯方法。
現代密碼學:不只關注信息保密問題痘煤,還同時涉及信息完整性驗證(消息驗證碼)凑阶、信息發(fā)布的不可抵賴性(數字簽名)、以及在分布式計算中產生的來源于內部和外部的攻擊的所有信息安全問題衷快。
古典密碼學缺乏系統理論宙橱,雙方約定好加密方式。計算機和電子學發(fā)展為現代密碼學提供良好條件蘸拔,促使形成系統且嚴格的科學养匈。逐漸衍生出當今非常重要三類加密算法:對稱加密、非對稱加密以及哈希算法《嘉保現代加密算法三要素有:加解密算法呕乎、公鑰、私鑰陨晶。
簡單講解下加解密流程:加密過程中猬仁,利用加密算法和加密密鑰,對明文進行加密先誉,獲得密文湿刽。解密過程中,利用解密算法和解密密鑰褐耳,對密文進行解密诈闺,獲得明文。
對稱加密
對稱加密是指加密和解密時使用相同的密鑰铃芦。參與加解密的合作者必須約定好密鑰雅镊。
Alice和Bob提前約定使用對稱加密對通訊內容加密,同時刃滓,Alice和Bob都擁有密鑰K仁烹。Bob是消息接收方,Alice是消息發(fā)送方咧虎。Alice使用密鑰K加密消息并將其發(fā)送給Bob卓缰,Bob收到加密的消息后,使用密鑰K對其解密得到明文砰诵。
對稱加密的優(yōu)勢是:加密速度快征唬。
對稱加密的缺陷是:需提前共享密鑰,容易造成密鑰的泄露茁彭,或被第三方暴力破解总寒。被他人盜取密鑰,可以冒充發(fā)送密文或者對密文解密尉间。
非對稱加密
由于對稱加密在通信加密領域的缺陷偿乖,1976年W.Diffie和M.Hellman提出了“非對稱加密”的概念击罪。這種加密算法的秘鑰分為“公鑰”和“私鑰”。
私鑰和公鑰成對出現贪薪,公鑰是公開的媳禁,任何人都可以獲取。私鑰是保密的画切,只有擁有者才能使用竣稽。
非對稱加密(公鑰加密)是利用公鑰對信息進行加密,而使用私鑰對接受信息進行解密霍弹。
Alice和Bob提前約定好通訊內容使用非對稱加密毫别,Bob是消息接收方,Alice是消息發(fā)送方典格。Bob使用工具生成公鑰K1和私鑰K2岛宦,把公鑰K1發(fā)給Alice,私鑰K2留給自己保管耍缴。Alice使用公鑰K1加密消息并將其發(fā)送給Bob砾肺,Bob收到加密的消息后,使用私鑰K2對其解密以恢復原始消息防嗡。
非對稱加密算法優(yōu)勢是:私鑰不需要共享变汪。降低(只能降低,無法避免蚁趁,要考慮人為因素)私鑰泄密的可能性裙盾。
非對稱加密算法缺陷是:加解密速度慢。
應用
在介紹對稱算法和非對稱算法時他嫡,也說明它們各自優(yōu)劣勢番官。它們的優(yōu)劣勢恰好是互補的關系,兩種算法適用不同需求涮瞻。
我們看到有些網址是以http開頭鲤拿,有些是以https開頭,http和https都是協議署咽。HTTPS經由HTTP進行通信,但利用SSL/TLS來加密數據包生音。https加密同時使用對稱宁否、非對稱加密算法對通訊內容加解密,這里不詳細說使用方式缀遍,詳見聊聊對稱/非對稱加密在HTTPS中的應用慕匠。
結語
文章主要講述對稱加密和非對稱加密原理,各自優(yōu)缺點域醇,應用場景台谊。
比特幣錢包是私鑰和公鑰集蓉媳,在錢包客戶端創(chuàng)建一個新地址時,公鑰和私鑰也被創(chuàng)建锅铅。主要用于數字簽名酪呻,數字簽名是使用非對稱加密算法和摘要算法。而哈希算法是摘要算法其中一種盐须,我們講解完哈希算法后玩荠,再講述數字簽名。