我想从PHP生成Chrome扩展程序(Chrome主题).我的PHP脚本生成一个zip文件(download.zip).要将其转换为.crx包,需要添加标头,包括公钥和签名.
我看到了这个答案,但你需要一个生成.pub文件的.pem文件.我在共享主机上,因此exec()将无法工作(将.pem转换为.pub).不需要.pem文件,只需在下载后使用它(无需更新).
然后我看到这条评论说明你可以生成私钥和公钥.组合这两个脚本将不起作用(请参阅代码).
如何生成密钥对并使用它来签署带有PHP的chrome .crx包?
此代码失败(CRX_SIGNATURE_VERIFICATION_INITALIZATION_FAILED):
// Create the keypair
$res=openssl_pkey_new();
// Get private key
openssl_pkey_export($res, $pk);
// Get public key
$key=openssl_pkey_get_details($res);
$key=$key["key"];
# make a SHA1 signature using our private key
openssl_sign(file_get_contents('download.zip'), $signature, $pk, 'sha1');
# decode the public key
$key = base64_decode($key);
# .crx package format:
#
# magic number char(4)
# crx format ver byte(4)
# pub key lenth byte(4)
# signature length byte(4)
# public key string
# signature string
# package …Run Code Online (Sandbox Code Playgroud) 我目前正在开发Chrome扩展程序.我只是不明白我是否可以/如何更改Chrome中的响应正文.
示例:网站执行XMLhttpRequest example.com/is_logged_in.php.这回来了0.我想做出自动改变脚本0到1.而不是通过更改调用的javascript,而是通过更改响应正文,所以javascript认为它收到了1.
我知道您可以使用chrome.webRequest更改响应标头,但我想更改响应主体,而不是响应标头.
它通过改变你的是目前可能hosts file使example.com"重定向"到自己的主机.然后创建is_logged_in.php并设置内容1.该脚本然后认为用户已登录.我已经检查过,这是有效的.但现在我想在Chrome扩展程序中使用它,因此它更加用户友好.
Chrome可以更改响应(正文,而不是其标题),如果是,如何更改?