我正在使用此命令在Mac上的命令行中生成SHA哈希:
openssl dgst -sha384 -binary FILENAME.js | openssl base64 -A
结果如下:
93Zn4wbvkSu+.......PksSwU4A+2a.....t0OOmyCompName:public
然后我将这个sha带有前缀的integrity
html属性中粘贴:像这样:
<script type="text/javascript" integrity="sha384-93Zn4wbvkSu+.......PksSwU4A+2a.....t0OOmyCompName:public">
Chrome给我一个错误:
Error parsing 'integrity' attribute ('sha384-93Zn4wbvkSu+.......PksSwU4A+2a.....t0OOmyCompName:public'). The digest must be a valid, base64-encoded value.
我尝试了myCompName:public
,但没有尝试。请帮助我-如何正确生成此完整性哈希?
我不使用https://www.srihash.org/,因为未启用任何cors。 Nginx提供我的静态文件。
答案 0 :(得分:0)
我发现了一个错误。最后,请勿在您的完整性令牌中包含此文本:
myCompName:public
如果最后从命令中删除了-A
键,它将得到相同的结果,但是没有本地计算机的名称和:public单词结尾。
所以正确的哈希将如下所示:
sha384-93Zn4wbvkSu+.......PksSwU4A+2a.....t0OO