2

Firefox 拡張機能のコードを保護しようとしています。サーバー呼び出しが含まれているため、誰かが拡張機能の外でそれらを作成できた場合、セキュリティ上のリスクはありません。それを暗号化する方法に関する提案はありますか?

4

3 に答える 3

6

これは基本的に不可能です。「秘密の」呼び出しを含む信頼できないクライアントに実行可能コードを提供したいが、クライアントに秘密を知らせたくないですか? では、どのようにコードを実行するのでしょうか?

ある時点で、暗号化を解除する必要があります。これは、クライアントが復号化を実行するために必要なすべてのものを持っていることを意味します。つまり、ユーザーが復号化を実行して、拡張機能の悪意のあるバージョンを作成できることを意味します。

唯一の選択肢は、脆弱なサービスが公開されないように再設計することです。

于 2008-11-11T14:23:48.200 に答える
1

信頼できる秘密を持たずにクライアント側で実行される場合、基本的にセキュリティ上の脆弱性が存在することは間違いありません。

拡張機能についてもう少し知らずに、これを回避する方法を提案するのは困難です。明らかな提案は、ユーザー名/パスワードを要求し、サーバーで (HTTPS 経由で) 認証し、期限付きのトークンを受け取り、そのトークンを「危険な」要求で提示することです。ただし、正しいユーザー名とパスワードを持っている人を止めることはできません...

于 2008-11-11T14:16:26.403 に答える
0

このタイプの問題を解決するために設計された OAuth のバリアントである xauth を使用できます。Twitter は xauth を使用します: http://dev.twitter.com/pages/xauth

さらに、Javascript コードを難読化したり、C で (NPAPI プラグインとして) 記述したりすることもできます。

于 2011-06-13T20:05:05.173 に答える