官术网_书友最值得收藏!

Symmetric-key algorithms in HTTPS

Now, let's return to the world of web applications and HTTP. In general, web applications are just different pieces of software that communicate using the HTTP protocol. As mentioned earlier in the chapter, to secure HTTP and transform it to HTTPS, we will combine it with another protocol called TLS. The TLS protocol makes use of symmetric-key algorithms to encrypt HTTP data between a client and a server. In other words, the web client and the web server start their communication by agreeing on a shared encryption key (some call it a shared secret), which is then used to protect the data going back and forth between them.

The sender application uses the key to encrypt the data before sending it to the recipient application, which in turn utilizes a copy of the same key to decrypt this data. This process is the symmetric-key algorithm part of the TLS protocol.

Symmetric-key algorithms in HTTPS

This sounds all good and well, but how exactly would a web client and web server securely agree on the same encryption key before starting to use it to send encrypted data? Obviously, the web client can't just send the key in plain text to the web server and not expect the key to being captured by an unauthorized third party that can then simply decrypt any secure communication via the stolen key. The answer to that question as we mentioned earlier is that the TLS protocol relies on not one, but two types of cryptography algorithms to secure HTTP. The symmetric-key algorithms, which we have covered so far, are utilized to secure most of the communication; however, the public-key algorithms are used for the initial handshake. This is where the client and the server say hi and identify each other, then agree on an encryption key to use thereafter.

主站蜘蛛池模板: 临清市| 左贡县| 金塔县| 钟祥市| 册亨县| 大渡口区| 雅安市| 徐闻县| 保山市| 九龙县| 南京市| 凌源市| 金门县| 惠州市| 河津市| 稻城县| 二连浩特市| 梅河口市| 平江县| 惠安县| 永平县| 上犹县| 酒泉市| 太仓市| 思茅市| 长治市| 辰溪县| 颍上县| 清新县| 尼玛县| 乡宁县| 徐汇区| 绿春县| 兴义市| 昌宁县| 宣汉县| 甘德县| 石首市| 永兴县| 布拖县| 宁南县|