我正在开发一个开源的Chrome扩展程序。我应该将.pem文件签入公共仓库吗?
答案 0 :(得分:3)
如果您愿意在Google Chrome Extension Gallery中发布您的应用,则不需要私钥或签署您的扩展程序。您只需将扩展文件夹压缩并上传即可。
否则,如果您计划主持(请参阅external extensions了解更多详情)或通过共享打包扩展分发它,您将需要一个私钥(.pem)。主要目的是使扩展的起源合法化。如果有人试图安装使用其他密钥签名的应用程序,则不会将其识别为您的应用程序。
在这种情况下,我不建议您检入.pem文件,因为如果您的帐户遭到入侵,攻击者可以上传或分发您的扩展程序的篡改版本(可能包含恶意代码)。通过这样做,您不会以任何方式关闭您的扩展的来源。您只是确保您完全控制其发布的内容(并且您作为扩展发布者的声誉保持不变)。
答案 1 :(得分:1)
如果要使用公共API创建扩展程序以供其他扩展程序使用,则可能会出现问题。由于Chrome的消息传递API使用扩展程序的ID将邮件路由到目的地,并且ID基于扩展程序的密钥,因此其他人将无法创建兼容的衍生扩展程序。
我认为Google的工程师根本没有考虑人们可能想要编写开源扩展的可能性。我已将此问题通知Google,但目前http://code.google.com/chrome/extensions/packaging.html似乎没有任何额外的指导。