Rumah Operasi dan penyelenggaraan Keselamatan 为什么HTTPS比HTTP安全

为什么HTTPS比HTTP安全

Nov 28, 2019 pm 03:52 PM
http https Keselamatan

为什么HTTPS比HTTP安全

HTTP(超文本传输协议)是目前互联网应用最广泛的协议,伴随着人们网络安全意识的加强,HTTPS 被越来越多地采纳。不论是访问一些购物网站,或是登录一些博客、论坛等,我们都被 HTTPS 保护着,甚至 Google Chrome、Firefox 等主流浏览器已经将所有基于 HTTP 的站点都标记为不安全。

为什么 HTTPS 比 HTTP 安全?在回答这个问题之前,首先我们得了解 HTTP 和 HTTPS 是什么。

HTTP 和 HTTPS 的访问过程

从互联网发展至今,HTTP 一直担任互联网传输信息的标准协议。传输的信息可以是互联网内计算机之间的文档,文件,图像,视频等。

1.jpg

HTTP 请求过程中,客户端与服务器之间没有任何身份确认的过程,数据全部明文传输,“裸奔”在互联网上,所以很容易遭到黑客的攻击。

2.jpg

从上图中可以看到,客户端发出的请求很容易被黑客截获,如果此时黑客冒充服务器,则其可返回任意信息给客户端,而不被客户端察觉,所以我们经常会听到一词“劫持”。

3.jpg

而 HTTPS 实际上是带有 SSL 的 HTTP(HTTP + SSL=HTTPS)。当您在浏览器的地址栏中看到 HTTPS 时,这就意味着与该网站的所有通信都将被加密,整个访问过程更加安全。

为什么 HTTPS 比 HTTP 安全

HTTPS 的安全性往往体现在三个方面:

服务器身份验证,通过服务器身份验证,用户可以明确当前它正在与对应的服务器进行通信。

数据机密性,其他方无法理解发送的数据内容,因为提交的数据是加密的。

数据完整性,传输会携带 Message Authentication Code(MAC)用于验证,因此传输的数据不会被另一方更改。

可以举个例子来比较下。一个 HTTP 请求,其组成则是多个遵循 HTTP 协议的文本行,例如下面的 GET 请求:

GET /helloupyun.txt HTTP/1.1
User-Agent: curl/7.73.0 libcurl/7.73.0 OpenSSL/1.1.l zlib/1.2.11
Host: www.upyun.com
Accept-Language: en
Salin selepas log masuk

请求会以明文的形式直接发送,既然是明文的形式,对于协议命令和语法有基本了解的人,只要监控了请求发送的过程,就能获取并读懂请求的意义。因此用 HTTP 的方式发送密码一类的数据时,安全性极低。

相对的,HTTPS 使用了 SSL(或 TLS)来加密 HTTP 请求和响应,因此在上面的示例中,监控请求的人将会看到一串随机的数字,而不是可读性的文本。

GsERHg9YDMpYk0VVDiRvw1H5miNieJeJ/FNUjgH0BmVAWII6+T4MnDwmCMZUI/orxP3HGwYCSIvyzS3MpmmSe4iaWKCOHH==
Salin selepas log masuk

其中加密过程采用的 SSL(安全套接字层)这一标准的安全技术,涵盖了非对称密钥和对称密钥。

对称加密

对称加密是指加密与解密使用同一个密钥的加密算法。

目前常见的加密算法有:DES、AES、IDEA 等

非对称加密

非对称加密使用的是两个密钥,公钥与私钥,我们会使用公钥对网站账号密码等数据进行加密,再用私钥对数据进行解密。这个公钥会发给查看网站的所有人,而私钥是只有网站服务器自己拥有的。

目前常见非对称加密算法:RSA,DSA,DH 等。

而常用的套件,例如 ChaCha20-Poly1305 加密套件就使用了这两种算法,其中 Chacha20 是指对称加密算法,而Poly1305 是指身份认证算法。

参考 RFC 文档,我们可以了解 ChaCha20 提供了 256 位的加密强度,这作为对称加密算法来保障 HTTPS 安全性是足够了。

4.jpg

而 Poly1305 作为身份认证算法提供身份验证,可以防止攻击者在 TLS 握手过程中,将虚假信息插入到安全的数据流中,Poly1305 算法提供了大约 100 位的安全性加密强度,足以阻止这类攻击。

总的来看,HTTPS 相比 HTTP ,它作为一种加密手段不仅加密了数据,还给了网站一张安全可信赖的身份证。

聊聊 HTTPS 的一些优缺点

整体来看 HTTPS 有以下五个优点:

● 最大限度地提高 Web 上数据和事务的安全性;

● 加密用户敏感或者机密信息;

● 提高搜索引擎中的排名

● 避免在浏览器中出现“不安全”的提示;

● 提升用户对网站的信赖。

相对的,缺点也是必不可少的:

● HTTPS 协议在握手阶段耗时相对较大,会影响页面整体加载速度;

● 在浏览器和服务器上会更多的 CPU 周期来加密/解密数据;

● SSL 证书一般都需要支付一定费用来获取,并且费用往往不低;

● 并不是绝对意义上的安全,在网站遭受攻击,服务器被劫持时,HTTPS 基本起不到任何安全防护作用。

相关文章教程:web安全教程

Atas ialah kandungan terperinci 为什么HTTPS比HTTP安全. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk melaksanakan penstriman HTTP menggunakan C++? Bagaimana untuk melaksanakan penstriman HTTP menggunakan C++? May 31, 2024 am 11:06 AM

Bagaimana untuk melaksanakan penstriman HTTP dalam C++? Cipta soket strim SSL menggunakan Boost.Asio dan pustaka klien asiohttps. Sambung ke pelayan dan hantar permintaan HTTP. Terima pengepala respons HTTP dan cetaknya. Menerima badan respons HTTP dan mencetaknya.

Bagaimanakah reka bentuk seni bina keselamatan rangka kerja Java harus seimbang dengan keperluan perniagaan? Bagaimanakah reka bentuk seni bina keselamatan rangka kerja Java harus seimbang dengan keperluan perniagaan? Jun 04, 2024 pm 02:53 PM

Reka bentuk rangka kerja Java membolehkan keselamatan dengan mengimbangi keperluan keselamatan dengan keperluan perniagaan: mengenal pasti keperluan perniagaan utama dan mengutamakan keperluan keselamatan yang berkaitan. Membangunkan strategi keselamatan yang fleksibel, bertindak balas terhadap ancaman secara berlapis, dan membuat pelarasan tetap. Pertimbangkan fleksibiliti seni bina, menyokong evolusi perniagaan dan fungsi keselamatan abstrak. Utamakan kecekapan dan ketersediaan, mengoptimumkan langkah keselamatan dan meningkatkan keterlihatan.

Konfigurasi keselamatan dan pengerasan rangka kerja Struts 2 Konfigurasi keselamatan dan pengerasan rangka kerja Struts 2 May 31, 2024 pm 10:53 PM

Untuk melindungi aplikasi Struts2 anda, anda boleh menggunakan konfigurasi keselamatan berikut: Lumpuhkan ciri yang tidak digunakan Dayakan semakan jenis kandungan Sahkan input Dayakan token keselamatan Cegah serangan CSRF Gunakan RBAC untuk menyekat akses berasaskan peranan

Kerangka mikro PHP: Perbincangan keselamatan Slim dan Phalcon Kerangka mikro PHP: Perbincangan keselamatan Slim dan Phalcon Jun 04, 2024 am 09:28 AM

Dalam perbandingan keselamatan antara Slim dan Phalcon dalam rangka kerja mikro PHP, Phalcon mempunyai ciri keselamatan terbina dalam seperti perlindungan CSRF dan XSS, pengesahan borang, dsb., manakala Slim tidak mempunyai ciri keselamatan luar biasa dan memerlukan pelaksanaan manual daripada langkah-langkah keselamatan. Untuk aplikasi kritikal keselamatan, Phalcon menawarkan perlindungan yang lebih komprehensif dan merupakan pilihan yang lebih baik.

Melaksanakan Algoritma Pembelajaran Mesin dalam C++: Pertimbangan Keselamatan dan Amalan Terbaik Melaksanakan Algoritma Pembelajaran Mesin dalam C++: Pertimbangan Keselamatan dan Amalan Terbaik Jun 01, 2024 am 09:26 AM

Apabila melaksanakan algoritma pembelajaran mesin dalam C++, pertimbangan keselamatan adalah penting, termasuk privasi data, pengubahan model dan pengesahan input. Amalan terbaik termasuk menggunakan perpustakaan selamat, meminimumkan kebenaran, menggunakan kotak pasir dan pemantauan berterusan. Kes praktikal menunjukkan penggunaan perpustakaan Botan untuk menyulitkan dan menyahsulit model CNN untuk memastikan latihan dan ramalan yang selamat.

Dompet manakah yang lebih selamat untuk syiling SHIB? (Wajib baca untuk newbie) Dompet manakah yang lebih selamat untuk syiling SHIB? (Wajib baca untuk newbie) Jun 05, 2024 pm 01:30 PM

Syiling SHIB sudah tidak asing lagi kepada pelabur Ia adalah token konsep yang sama dengan Dogecoin Dengan perkembangan pasaran, nilai pasaran semasa SHIB dapat dilihat bahawa pasaran SHIB sedang hangat dan menarik pelaburan yang tidak terkira . pelabur mengambil bahagian dalam pelaburan. Pada masa lalu, sering berlaku transaksi dan insiden keselamatan dompet di pasaran Ramai pelabur bimbang tentang masalah penyimpanan SHIB Mereka tertanya-tanya dompet mana yang lebih selamat untuk menyimpan syiling SHIB pada masa ini. Menurut analisis data pasaran, dompet yang agak selamat adalah terutamanya dompet OKXWeb3Wallet, imToken, dan MetaMask, yang akan menjadi agak selamat Seterusnya, editor akan membincangkannya secara terperinci. Dompet manakah yang lebih selamat untuk syiling SHIB? Pada masa ini, syiling SHIB diletakkan di OKXWe

Bagaimana untuk meningkatkan keselamatan rangka kerja Spring Boot Bagaimana untuk meningkatkan keselamatan rangka kerja Spring Boot Jun 01, 2024 am 09:29 AM

Cara Meningkatkan Keselamatan Rangka Kerja SpringBoot Adalah penting untuk meningkatkan keselamatan aplikasi SpringBoot untuk melindungi data pengguna dan mencegah serangan. Berikut ialah beberapa langkah utama untuk meningkatkan keselamatan SpringBoot: 1. Dayakan HTTPS Gunakan HTTPS untuk mewujudkan sambungan selamat antara pelayan dan klien untuk mengelakkan maklumat daripada dicuri atau diusik. Dalam SpringBoot, HTTPS boleh didayakan dengan mengkonfigurasi perkara berikut dalam application.properties: server.ssl.key-store=path/to/keystore.jkserver.ssl.k

Cara melaksanakan amalan terbaik keselamatan PHP Cara melaksanakan amalan terbaik keselamatan PHP May 05, 2024 am 10:51 AM

Cara Melaksanakan Amalan Terbaik Keselamatan PHP PHP ialah salah satu bahasa pengaturcaraan web bahagian belakang paling popular yang digunakan untuk mencipta laman web dinamik dan interaktif. Walau bagaimanapun, kod PHP boleh terdedah kepada pelbagai kelemahan keselamatan. Melaksanakan amalan terbaik keselamatan adalah penting untuk melindungi aplikasi web anda daripada ancaman ini. Pengesahan input Pengesahan input ialah langkah pertama yang kritikal dalam mengesahkan input pengguna dan mencegah input berniat jahat seperti suntikan SQL. PHP menyediakan pelbagai fungsi pengesahan input, seperti filter_var() dan preg_match(). Contoh: $username=filter_var($_POST['username'],FILTER_SANIT

See all articles