如何使用 Web Crypto 生成密钥对并在 Firefox AddOn 中访问其密钥?
How do I generate a key pair with Web Crypto and access its keys in a Firefox AddOn?
我想在我的 Firefox 插件中调用 window.crypto.subtle.generateKey
。由于我无法在 main.js 中访问 window
我创建了一个 page-worker with a content script:
var self = require('sdk/self');
var cryptoScript = require('sdk/page-worker').Page({
contentURL: self.data.url('empty.html'),
contentScriptFile: self.data.url('call-web-crypto.js')
});
我可以在call-web-crypto.js中调用window.crypto.subtle.generateKey
,但是我无法访问生成的密钥对的密钥属性:
XrayWrapper 拒绝访问 属性 publicKey(原因:值与目标不同源)。有关详细信息,请参阅 https://developer.mozilla.org/en-US/docs/Xray_vision。请注意,只会报告来自给定全局对象的第一个被拒绝的 属性 访问。
如何生成密钥对并在我的 Firefox 插件中访问它的密钥?
在main.js你可以...
const { Cu } = require("chrome");
Cu.importGlobalProperties(["crypto"]);
然后您将可以访问 crypto.subtle.generateKey
以及所有其他 crypto
好东西...注意没有 window
我想在我的 Firefox 插件中调用 window.crypto.subtle.generateKey
。由于我无法在 main.js 中访问 window
我创建了一个 page-worker with a content script:
var self = require('sdk/self');
var cryptoScript = require('sdk/page-worker').Page({
contentURL: self.data.url('empty.html'),
contentScriptFile: self.data.url('call-web-crypto.js')
});
我可以在call-web-crypto.js中调用window.crypto.subtle.generateKey
,但是我无法访问生成的密钥对的密钥属性:
XrayWrapper 拒绝访问 属性 publicKey(原因:值与目标不同源)。有关详细信息,请参阅 https://developer.mozilla.org/en-US/docs/Xray_vision。请注意,只会报告来自给定全局对象的第一个被拒绝的 属性 访问。
如何生成密钥对并在我的 Firefox 插件中访问它的密钥?
在main.js你可以...
const { Cu } = require("chrome");
Cu.importGlobalProperties(["crypto"]);
然后您将可以访问 crypto.subtle.generateKey
以及所有其他 crypto
好东西...注意没有 window