9

Chrome extension is packed to zip archive. After setup it is installed on folder and user can access to it. Also he can rewrite extension and even clone to new extension.

How i can protect extension from user modifications and cloning? I find possibility for dll files (can be compiled) - but it is not very nice.

4

4 に答える 4

9

独自のコード(たとえば、安全を確保したい特別なアルゴリズムなど)があり、Chromeをターゲットにしている場合は、NativeClientを使用することをお勧めします。Naclを使用すると、ブラウザでC /C++コードを実行できます。これは非常に強力であり、誰かがあなたのバイナリを選択するのは非常に難しいでしょう。

于 2012-08-09T06:46:13.913 に答える
5

前提は単純なようです。デフォルトでは、ブラウザはHTML / Javascriptを解釈するため、ページとともに実行されるChrome拡張機能も解釈します。

1つの方法は、JavaScriptコードを難読化するか、NPAPIコンパイル済みバイナリプラグインに依存するか、NaCLを使用することです。

Chromeが拡張機能の難読化を禁止した後、コードを難読化することはもはや解決策ではない可能性があります:https ://stackoverflow.com/a/49509913

于 2012-08-09T11:08:24.863 に答える
2

現在、Chrome 拡張機能のソース コードをユーザーや競合他社から隠す方法はありません。

Chrome web store faqに声明があります:

ストアで拡張機能を販売できますか? まだですが、この機能は近日中に提供される予定です。

この機能を待つか、次の代替手段を試すことができます。

  • Javascript ソースを難読化する: 詳細については、こちらを確認してください JavaScriptを難読化 (保護) するにはどうすればよいですか?

  • キー ロジックをリモート サーバーに保持し、バックグラウンド スクリプトから Ajax 呼び出しを行ってサーバーと通信します。

マニフェストでクロスオリジン許可が定義されている場合、Chrome 拡張機能は「同一オリジン ポリシー」から解放されます。

通常の Web ページは、XMLHttpRequest オブジェクトを使用してリモート サーバーからデータを送受信できますが、同じオリジン ポリシーによって制限されます。拡張機能はそれほど制限されていません。拡張機能は、最初にクロスオリジンのアクセス許可を要求する限り、そのオリジンの外部にあるリモート サーバーと通信できます。

マニフェストで次を定義します。

{
    "name": "your extension",
    ...
    "permissions": [
        "http://www.yourserver.com/"
    ],
    ...
}
于 2012-11-07T05:56:09.717 に答える
1

JavaScript難読化にGulpプラグインを使用しています。拡張機能のコードを壊しません。

于 2015-10-30T11:18:40.257 に答える