【密碼學】基礎知識-1-數字簽名與數字證書在基于非對稱密鑰加密的通信程序的應用
非對稱密鑰加密:???
又稱公鑰加密,公鑰加密有一對密鑰對,公鑰和私鑰,公鑰即為公開(告訴別人)的密鑰,私鑰則不公開,(私鑰一般是亂數生成器生成的,就像你注冊一個賬號時,密碼是自己設定的)在密鑰對中,一種密鑰加密的資料必定能使用另一種密鑰解密,其中,公鑰用來給資料加密,私鑰用來解密公鑰加密的資料,
場景1:
現在假設你是吳彥祖分祖,有一對密鑰對(公鑰+私鑰),你把你的公鑰廣播給你的朋友們和女朋友,私鑰自己保留,
摘要演算法(哈希/散列演算法):
通過一個函式(哈希函式),把任意長度的資料轉換為一個長度固定的資料串,就是說,無論你輸入是任意型別 任意長度的明文,輸出的密文的長度都是固定的,?數字簽名:假如你想要傳輸一封信給你女朋友時,先將信的內容通過摘要演算法生成信件內容的摘要??,再用自己的私鑰對摘要進行加密,加密所生成的內容就是數字簽名,然后把數字簽名附在信件上,?簽名驗證:你的女朋友收到了你的信件后,取下你的數字簽名,然后用你廣播出去的公鑰解開數字簽名,得到摘要(姑且稱摘要1),證明了這封信是你發送的,然后你朋友再對信件內容使用哈希函式并得到一個摘要(姑且稱摘要2),用摘要2與上面的摘要1對比,若兩個摘要相同,則證明了信件內容沒有被修改,
場景2:
由于你長得很帥,此時冒出一個綠茶🍵婊?,用盡“愛情三十六計”接近你女朋友并和你女朋友成為了好盆友,然后她偷偷用了你女朋友的電腦,用自己的公鑰換走了你女朋友的公鑰…… 此時你女朋友擁有的是綠茶的公鑰,但是你女朋友渾然不知并且還認為這是你的公鑰,因此,綠茶就可以用她的私鑰做出“數字簽名”寫信給你女朋友,讓你女朋友用假的公鑰解密(綠茶的公鑰并非是你的公鑰)……
搖搖欲墜的愛情~ (????ε???)
后來你女朋友覺得不對勁,發現了這個bug—沒辦法確認她手中的公鑰是否是你的,她就想出一個辦法:,讓你去找一個“證書中心”(結婚證?)……
數字證書:?
可認為是一種身份證,用于標識你的身份,數字證書由權威機構(certificate authority,簡稱CA)頒發?并且用非對稱加密演算法加密,權威機構中的認證者擁有屬于自己的密鑰對(公鑰和私鑰)?,如果某個小可愛需要生成自己的數字證書,就將本人的公鑰和一些個人資訊提交給認證機構,(私鑰自己保留,別傻傻的交出去)然后,認證者將你的公鑰和個人資訊用他的私鑰加密,生成的就是數字證書,
整個通信程序總結:
你給你女朋友發資訊:
1.你先用自己的私鑰對資訊(一般是資訊的摘要)進行簽名
2.你接著使用你女朋友的公鑰對資訊內容和簽名資訊進行加密,
你女朋友收到你的信件:
1.你女朋友用自己的私鑰解密你用她的公鑰加密的內容,得到信件內容和數字簽名,
2、你女朋友得到解密后的明文再用你的公鑰解簽你用自己的私鑰加密的簽名,(分界線)
場景3:?你很贊成你女朋友的辦法,就去找了相關的權威機構(CA),把自己的公鑰和一些個人資訊交給CA,CA用自己的私鑰加密你的公鑰和個人資訊,生成數字證書,于是你寫信的時候不僅在信件上附上了數字簽名,還附上了數字證書,當你女朋友收到你“愛的信件”時,她用CA的公鑰解開數字證書,把綠茶的公鑰(此時你女朋友傻乎乎的認為這是你的公鑰)和數字證書中你的公鑰一對比,發現不匹配,于是,綠茶的陰謀不攻自破,然后,天雷繼續勾地火,你們又繼續幸福快樂的生活在一起……(u guys 最喜歡的happy ending~)┑( ̄_ ̄)┍
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/272298.html
標籤:區塊鏈
