5 个稳定版本 (4 个主要版本)
5.0.0 | 2023 年 2 月 3 日 |
---|---|
4.0.0 | 2022 年 6 月 11 日 |
3.0.0 | 2019 年 11 月 6 日 |
2.0.0 | 2019 年 10 月 21 日 |
1.0.1 | 2019 年 6 月 18 日 |
#3 in #digests
27KB
258 行代码,不包括注释
srisum(1) -- 计算并检查子资源完整性摘要
概要
$srisum[选项]... [文件]...
示例
计算 SRI 摘要
单个文件
$ srisum styles.css > styles.css.sri
多个不同文件
$ srisum styles.css index.js package.json bundle.js > app.sri
从 stdin
$ cat styles.css | srisum -a sha1
sha1-hmkHOZdrfLUVOqpAgryfC8XNGtE -
指定要生成的算法
$ srisum styles.css index.js --algorithms sha512 sha256 sha1 > styles.css.sri
检查完整性
传递校验和文件作为参数
$ srisum -c styles.css.sri
styles.css: OK (sha512)
传递多个校验和文件
$ srisum -c styles.css.sri js-files.sri
styles.css: OK (sha512)
index.js: OK (sha512)
lib/util.js: OK (sha512)
从 stdin
传递校验和文件
$ cat styles.css.sri | srisum -c
styles.css: OK (sha512)
校验和 stdin
本身
$ echo "hello" | srisum > stdin.sri
$ echo "hello" | srisum -c stdin.sri
-: OK (sha512)
描述
打印或检查子资源完整性摘要。
规范: https://w3c.github.io/webappsec/specs/subresourceintegrity/
srisum
的 API 基于 SHA[N]SUM(1)
系列Unix工具。
没有 FILE
或当 FILE
为 -
时,读取标准输入。
-a, --algorithms [ALGO]...
- 为 FILE
生成哈希算法
-c, --check
- 从 FILE
读取 SRI 摘要并检查它们
-d, --digest-only
- 仅输出每个 FILE
的摘要,不包含文件名
--help
- 显示帮助并退出
--version
- 输出版本信息并退出
以下选项仅在验证完整性时有用
--ignore-missing
- 对于缺失的文件不失败或报告状态
--quiet
- 对于每个成功验证的文件不打印 OK
--status
- 不输出任何内容,状态代码显示成功
-w, --warn
- 警告关于格式不正确的 SRI 行
在检查时,输入应该是此程序之前输出的内容。默认模式是打印包含空格分隔的 SRI 摘要、一个空格和一个文件名的行。
严格模式,通过--strict
启用,将完全忽略所有以下条件都未通过的摘要(输入和输出)
algorithms
必须是以下之一:sha1
、sha256
、sha384
、sha512
- 摘要字符串必须是有效的
RFC4648
Base64
字符串。
作者
贡献
sriscum团队热情欢迎贡献和项目参与!如果您想贡献,有很多事情可以做!贡献指南包含了从报告错误到贡献整个新功能所需的所有信息。如果您愿意,请随时加入,或者如果您对某些事情不清楚,也可以向我们提问。
本项目所有参与者和维护者都应遵守行为准则,并相互友好相处。
快乐编程!
许可证
本项目采用Apache-2.0许可证。
依赖
~5.5–7.5MB
~137K SLoC