首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以从工作人员调用SubtleCrypto方法?

是否可以从工作人员调用SubtleCrypto方法?
EN

Stack Overflow用户
提问于 2019-01-21 17:38:29
回答 1查看 1.6K关注 0票数 4

我想从工人那里调用SubtleCrypto的方法。通常,可以通过窗口上下文中可用的Crypto.subtle属性:

例:window.crypto.subtle.encrypt()

在工作人员中,窗口不可用,但仍然可以通过以下方式访问密码:

代码语言:javascript
复制
self.crypto

但是,self.crypto.subtle总是返回未定义的。这是正常行为(例如:出于安全目的禁用)还是有可能从工作人员调用SubtleCrypto方法?

我创建了一个JSFiddle,用于复制行为这里。我用铬。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-21 21:13:14

根据铬60中的废弃和移除

crypto.subtle现在需要一个安全的源。 自Chrome 37以来一直支持的Web Crypto API一直致力于非安全来源的工作。由于Chrome长期奉行的在强大的特性中更喜欢安全的来源政策,crypto.subtle现在只在安全来源上可见。 意图移除 x- 铬虫

当放置在HTTPS服务器上时,下面的代码具有crypto.subtle,工作正常

代码语言:javascript
复制
<!DOCTYPE html>
<html>
  <body>
    <input id="start" type="button" value="Start">

    <script>
      function getWorkerJS() {
        var js = `
            onmessage = function(e) {
                var jwkKey = {
                    kty: "oct",
                    k: "lckjnFLIEas7yf65ca6saksjhcajs554s5cajshgGGG"
                };
                crypto.subtle.importKey(
                    "jwk", jwkKey, {name: "AES-CBC"}, true,
                    ['encrypt', 'decrypt', 'wrapKey', 'unwrapKey']
                )
                .then(
                    function (result) {
                        postMessage({ success: true});
                    },
                    function (error) {
                        postMessage({ message: error.message });
                    }
                );
            };
        `;
        var blob = new Blob([js], {"type": "text/plain"});
        return URL.createObjectURL(blob);
      }

      var ww = new Worker(getWorkerJS());

      ww.onmessage = function(msg) {
        console.log(msg.data);
      };

      document.getElementById('start').addEventListener('click', start, false);

      function start() {
        ww.postMessage('start');
      }

    </script>
  </body>
</html>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54295177

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档