http --- 密碼、密鑰、對稱(公開)密鑰加密系統、數字簽名、數字證書的一些概念

密碼(cipher)

// 密碼是一套編碼方案和使用相應解碼方式的結合體
// *明文:使用密碼加密之前的稱為明文
// *密文:使用密碼進行加密的稱為密文

最初的密碼是相當簡單的,很容易就可以破解,于是產生了密碼機:

// 密碼機可以用復雜得多得密碼來快速、精確地對報文進行編碼.它們可以替換字符、改變字符順序、將報文切片,總之是密碼變得更難破解
// *密鑰:要在密碼機中輸入正確地密鑰,解密過程才能正確進行

數字密鑰與編碼函數:

// *數字密鑰只是一些數字,這些數字密鑰值是編 / 解碼算法的輸入
// *編碼算法就是一些函數,這些函數會讀取一塊數據,并根據算法和密鑰值對其進行編 / 解碼
// 給定一段明文P、一個編碼函數E和一個數字編碼密鑰e,就可以生成一段經過編碼的密文C
// 通過解碼函數D和解碼密鑰d,可以將密文C解碼為原始的明文P

對稱密鑰加密技術:

// 在上文中使用的e和d是相等的
// 即,編碼和解碼使用的是同一個密鑰的技術,稱為對稱密鑰加密技術

對稱密鑰加密技術的一個不好地方在于:如果有N個人同時想與服務器進行對話,需要N*N個保密密鑰,這樣管理起來特別困難.
一個更好一點的方案是,使用公開密鑰加密技術:

// 公開密鑰加密技術
// 編碼密鑰是眾所周知的
// 解碼密鑰在各個主機中式不同的
// 這樣,每個人都能找到某個特定主機的公開密鑰,密鑰的建立變得更加簡單.
// 但解碼密鑰是保密的,因此只有接收端才能對發送給它的報文進行解碼

數字簽名:

// 數字簽名是附加在報文上的特殊加密校驗碼.
// 當節點A向節點B發送一條報文時,節點A對摘要應用了一個簽名函數,這個函數用戶的私有密鑰作為參數,計算出簽名
// 一旦計算出簽名,節點A就將其附加在報文的末尾,并將報文和簽名都發送給B
// 節點B接收到報文后,就使用公開密鑰的反函數對簽名進行解碼,并拆包報文得到摘要進行比較

數字證書:

// 數字證書中包含了由某個受信任組織擔保的用戶或公司的相關信息
// 數字證書中一些常見的內容:對象的名稱、過期時間、證書發布者、來自證書發布者的數字簽名
// 服務器證書中包括:Web站點的名稱和主機名、Web站點的公開密鑰、簽名頒發機構的名稱、來自簽名頒發機構的簽名// 通過HTTPS建立了一個Web事務后,現代瀏覽器會自動獲取所鏈接服務器的數字證書
// 瀏覽器在收到證書時,會對簽名辦法機構進行檢查,若是很有權威的公共簽名機構,就進行簽名驗證
// 若對簽名頒發機構一無所知,瀏覽器就會向用戶顯示一個對話框,看看他是否相信這個簽名發布者.

參考《HTTP權威指南》P327~P338

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/251121.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/251121.shtml
英文地址,請注明出處:http://en.pswp.cn/news/251121.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

elasticsearch5.x:查詢建議介紹、Suggester 介紹以及Java-api實現

elasticsearch5.x:查詢建議介紹、Suggester 介紹 參考:http://www.cnblogs.com/leeSmall/p/9206646.html 參考(重點):https://elasticsearch.cn/article/142 參考(官網):https://www.elastic.co/guide/en/e…

DOM-2 document對象、獲取元素、節點、遍歷樹

一、document獲取元素 1. 方法 document.getElementById(‘box’) // 在IE8及以下是不分大小寫的,而且name值也能匹配上document.getElementsByClassName(’’) // IE8及以下是用不了的document.getElementsByTagName() 都兼容document.getElementsByName() 用的非…

javascript --- js中的事件

事件實現松耦合: // JS和HTML之間的交互是通過事件實現的. // 事件,就是文檔或瀏覽器窗口中發生一些特定的交互瞬間. // 可以使用偵聽器來預定事件,以便事件發生時執行相應的代碼. // 這種在傳統軟件工程中被稱為觀察員模式的模型,支持頁面的行為與頁面的外觀之間的松耦合事件…

centos系統設置局域網靜態IP

---恢復內容開始--- centos系統設置局域網靜態IP 很多時候,我們并不希望漏油器重啟之后,自己的服務器動態的獲取IP,這樣很不利,因為你可能裝了mysql,redis,等軟件,然后需要遠程去訪問這臺服務器…

SQLServer數據庫(二)

數據庫設計:就是將數據庫中的數據庫實體及這些數據庫實體之間的關系,進行規劃和結構化的過程。 項目開發過程: 需求分析 概要設計 詳細設計 代碼編寫 運行測試 打包發行 數據庫的系統分析基本步驟:收集信息、標識實體、標識每個實…

DOM-3 【utils/待講評】節點屬性、方法、封裝方法、DOM結構

講評 節點屬性 nodeType 元素節點 1 大寫 屬性節點 2 文本節點 3 #text 注釋節點 8 #comment document 9 DocumentFragment 11 nodeName是只讀屬性元素節點的nodeName是大寫的其余的是#小寫的元素節點沒有nodeValue屬性,null,是可寫的其余有&#xff08…

javascript --- DOM0級、DOM2級、跨瀏覽器 的事件處理程序

DOM0級事件處理程序: // 使用DOM0級方法指定的事件處理程序被認為是元素的方法 // 這個時候的事件處理程序是在元素的作用域中運行: <div id "myBtn" >DOM0</div> <script>var btn document.getElementById("myBtn");btn.onclick fun…

collections deque隊列及其他隊列

from collections import dequedq deque(range(10),maxlen10) dq.rotate(3)#隊列旋轉操作接受一個參數N&#xff0c;讓N>0時&#xff0c;隊列的最右邊N個元素會被移動到隊列最左邊&#xff0c;反之會移到隊列最右邊 dq.appendleft(-1)#頭部添加dq.extend([11,22,33])#尾部添…

002 模板實參推斷、重載與模板

模板實參推斷 一、模板函數顯示實參 情況1&#xff1a; template <typename T1, typename T2, typename T3> T1 sum(T2 a, T3 b) {return a b; } 分析&#xff1a;調用的時候就需要指定T1的類型&#xff0c;如&#xff1a;sum<float>(1, 2); 于是sum函數的返回類型…

DOM-4 【utils/待講評】節點創建刪除、元素屬性設置獲取、節點屬性

講評 節點創建 Document.prototype ← document.createElement(div)document.createTextNode(xxx) // 創建文本節點document.createComment(xxx) // 創建注釋節點 增加/剪切子節點 Node.prototype ← node.appendChild(node)總是在父元素的最后增加&#xff08;類似push&am…

javascript --- 事件對象和事件類型

// 無論程序使用"DOM0級"規范還是"DOM2級"規范,都會在局部產生一個event對象, // 將其打印出來研究: <div id"divBtn"><button id"rawBtn" >Click Me!</button></div> <script>const divBtn document…

關于APP更新,兩包共存的解決方案

大多數是由于包名不一致導致的&#xff0c;一定要注意包名一致、不然手機會認為是兩個app&#xff0c;導致兩個包共存 查看包名的方法 1、hbuilder打包時會有提示 2、手機打開設置->應用->正在運行->對應app即可查看 轉載于:https://www.cnblogs.com/zz-0128/p/827969…

DOM-5【兼容】滾動距離與高度、兼容模式、可視尺寸

查看滾動條的距離 方法版本window.pageXOffset / pageYOffsetIE9/IE8及以下不支持(常規)document.body.scrollLeft/scrollTopIE9/IE8及以下(部分支持&#xff0c;具體看模式)document.documentElement.scrollLeft/scrollTopIE9/IE8及以下(部分支持&#xff0c;具體看模式)wind…

python中with及closing

推薦使用 "with"語句 以管理文件:with open("hello.txt") as hello_file: for line in hello_file: print line對于不支持使用"with"語句的類似文件的對象,使用 contextlib.closing():import contextlibwith contextlib.closing(urlli…

http --- Web頁面請求的歷程(如何根據URL尋找到需要的資源)

HTTP概況: // 超文本傳輸協議(HyperText Transfer Protocol,HTTP):是Web的應用層協議,它是Web的核心. // 客戶端和服務器運行在不同的端系統中,通過交換HTTP報文進行會話 // HTTP定義了這些報文的結構以及客戶和服務器進行報文交換的方式 // HTTP定義了Web客戶向Web服務器請求…

DOM-6 【兼容】讀寫樣式屬性、操作偽元素、運動元素初探

規范 <style type"text/css"></style><script type"text/javascript"></script>讀寫樣式屬性 .style是訪問不到css樣式表的&#xff0c;只能訪問到行內/內聯的屬性&#xff0c;當未設置行內屬性時&#xff0c;結果為空字符串 設…

RGBD論文閱讀筆記

Single-Image Depth Perception in the Wild 簡要記載一下對于利用RGB圖像depth圖像得到segmentation的論文。 論文名稱&#xff1a;Cascaded Feature Network for Semantic Segmentation of RGB-D Images 論文出處 ICCV 2017 Lin 模型結構 數據集 NYUDv2 SUN-RGBD 性能分析 總…

vue組件調用(全局調用和局部調用)

當用vue-cli創建一個項目后, 創建項目的方法: https://www.cnblogs.com/fps2tao/p/9376847.html 編寫了組件怎么,在其他組件中調用了? 組件listBox: 路徑 src/components/listBox.vue <template><div class"listBox">listBox222</div> </templ…

http --- 路由器緩存與常見的狀態碼

路由器的緩存: // 當下路由器其主要系統性能指吞吐率、利用率、丟包率、延遲、緩存大小和實現復雜性等. // 當鏈路上發生擁塞時能夠對新進入的數據包進行緩存 // 從而降低丟包率、維持高的鏈路利用率 // 用于存放路由表的內存,速度快,價格也高狀態碼: // 為客戶端提供了一種理…

DOM-7 【兼容】事件處理函數、冒泡捕獲、阻止冒泡默認事件

事件處理函數 綁定事件 綁定事件的處理函數&#xff08;事件本身是存在的&#xff0c;綁定的是相應的反饋&#xff09;事件 事件的反饋 前端交互 &#xff08;前端核心&#xff09; 綁定事件的方式 1. 句柄綁定 默認&#xff08;只能&#xff09;是事件冒泡這種事件流為…