-5

javascript obfosculator を使用して javascript ソースを保護できることは知っていますが、これに加えてより良い解決策が必要です。

一部の Web サイトに配置する JavaScript ファイルを暗号化するオプションを調査しています。この JavaScript ファイルは、通常どおり次のように含まれています。

<script src="http://secure.com/encryted.js"></script>

アイデアは、ユーザーがjavascriptのソースを表示するのを何らかの形で防止するか、少なくともそうするのをはるかに難しくすることです...

次のようなことをして、javascriptのみを返す方法を考えています

<script src="http://secure.com/validate.php"></script>

そうすれば、ホスト secure.com で特定の条件をチェックし、それらの条件が満たされた場合にのみ javascript ( encryped ) を返すことができます。

誰かがアイデアを持っているか、そのようなことをしましたか? または、javascript のソースコードが公開されないようにする、または非常に難しくする良い方法を知っていますか?

ETAはそれを暗号化する良い方法のようです

http://www.enetplanet.com/enc/

私の目標は、ソース /html を見ている人がソースを「ただ見る」ことができないようにすることです。何か考えはありますか?

4

1 に答える 1

1

いいえ、TEA (http://www.enetplanet.com/enc/) は、そのようなタスクに使用できる種類のツールではありません。これは、概念実証やおもちゃ以上のものです。TEA (他の暗号化システムと同様) を実際に使用して、顧客のブラウザに送信する JavaScript ファイルを暗号化/保護することはできません。

これを考慮してください。ユーザーは、サーバーから送信される JavaScript ファイルを解読するための暗号化プログラムのコピーを持っている必要があります。それ以外の場合、これ自体は大きなセキュリティ ホールにはなりません。暗号化システムは、暗号化プログラム/アルゴリズムの秘密性ではなく、キーの秘密性に依存しています。

残念ながら、クライアント側の JavaScript について言えば、これセキュリティ ホールです。暗号化プログラム (TEA) は、JavaScript ファイルそのものです。誰でも読めます。暗号化キーを出力するだけの方法、またはチェックを行わずに「保護された」JavaScript ファイルを復号化するだけの方法で変更するのは簡単です。

さらに、エンドユーザーは、ネットワーク通信チャネルに完全に無制限にアクセスできます。彼は、PC にインストールされたネットワーク スニファでパスワード (キー) を読み取ることができます。このような攻撃 ("man-in-the-middle" 攻撃としてよく知られている) に対抗できるキー (および暗号化システム) はありません。

JavaScript ファイルを暗号化/保護する実際の方法がないことはよく知られています。あなたができる最善のことは、それを難読化することです。

ある種のクライアント側ソフトウェアを本当に保護する必要がある場合は、コンパイル済みソフトウェア(C/C++)、暗号化、およびある種のハードウェア キーを使用する必要があります。他のどのシステムも簡単に「クラック」できます (コンピューター ゲームの全歴史が示すように)。

于 2012-11-24T18:40:10.670 に答える