📜  什么是完整性 cdn - CSS (1)

📅  最后修改于: 2023-12-03 15:36:10.017000             🧑  作者: Mango

什么是完整性 CDN - CSS

前言

在 Web 开发中,我们经常会用到 CDN(Content Delivery Network),以便更快地加载静态文件,比如脚本、样式表等。而完整性 CDN(Integrity CDN)则是在此基础上增加了安全性校验。本文将介绍完整性 CDN 与 CSS 相关的知识点。

完整性 CDN 的定义

完整性 CDN 的主要作用是保证所使用的静态文件的安全性。它使用 SHA(Secure Hash Algorithm)哈希值来校验文件的完整性,确保这些文件在传输过程中没有被篡改。

完整性值

完整性值(Integrity Value)是一个包含 SHA 算法哈希值和哈希算法的字符串。完整性值需要添加到页面的静态文件标签中,以便浏览器在加载文件时进行校验。

完整性值的格式如下:

Integrity: <哈希算法>-<哈希值>

其中,哈希算法为使用的哈希算法,可能的值有 sha256sha384sha512 等;哈希值则是经过指定哈希算法生成的哈希值。

在 CSS 中使用完整性 CDN

使用完整性 CDN,可以提高 CSS 文件的安全性。下面是在 <link> 标签中使用完整性 CDN 的示例:

<link rel="stylesheet" href="https://cdn.example.com/style.css" integrity="sha256-bnKDZVhIZ1pfYJtNPzAiKjcaHt9ncBtrgEqFU7Vwsic=" crossorigin="anonymous">

在上述示例中,integrity 属性值为 sha256-bnKDZVhIZ1pfYJtNPzAiKjcaHt9ncBtrgEqFU7Vwsic=,该值表示了 style.css 文件的SHA-256哈希值。

如果 integrity 属性值与资源实际哈希值不匹配,则浏览器将不加载该资源并抛出错误。

总结

本文介绍了完整性 CDN 的概念和使用方法,在 CSS 中使用完整性 CDN 可以提高静态文件的安全性。开发者应当尽可能使用完整性 CDN 来保障网站的安全性。