
今だけ!「フレッツ光」で4万円分の商品券プレゼント!
待望のHTML暗号化ソフト誕生!! |
株式会社プランセスの全面協力の元、HTML暗号化ソフト「SHTML」を2005年7月11日にリリースしました。
Javascriptの知識が全くない方でも利用可能なように設計されています。最短ステップの場合、暗号化したいソースを貼り付けて、「暗号化する」ボタンをクリックするだけです!!
右クリック禁止+ソースの暗号化+印刷禁止+テキスト選択禁止・・・が今までにないほど簡単に!!

|
Javascriptであれば、ソースファイルを外部ファイル化して、
<script type="text/javascript" src="./menu.js"></script>
とすれば、ソースをHTML本体に書く必要がなく、重要なHTMLソースの部分を見られる可能性は減少するはずです。
同様にCSSファイルであっても、ソースファイルを外部ファイル化して、
<LINK rel="stylesheet" type="text/css" href="./css.css">
とすれば、スタイル定義をとりあえず隠すことができます。
「とりあえず」と書いたのには意味があります。見た目は隠したとしても、HTMLファイルのソースを開けば、<script type="text/javascript" src="./meu.js"></script>と書いているのですから、そのHTMLファイルが
http://www.e-provider.jp/hidesource/js.html
であるとするならば、
http://www.e-provider.jp/hidesource/menu.js
とブラウザに打ち込み、enterキーをたたけば、右のような画面が表示され、menu.jsファイルはダウンロードできることになります。
もし、sample.jsにアクセスできないように.htaccessなどで制御した場合、ブラウザがHTMLファイル(js.html)を読み込んだ際に、menu.jsを読み込めという命令を出したとしても、サーバ側で拒否するわけですから結局、JSファイルはダウンロードされず、Javascriptが正しく動作しないことになります。
これを防ぐには、menu.jsファイルが直接ブラウザのURLに入力された場合はダウンロードされないけれど、ブラウザがjs.htmlファイルを通してmenu.jsのダウンロード要求があった場合にはダウンロードさせてあげるというようにさせなければなりません。要はReferer(リンク元)を確認できればいいのです。jsファイルはただのjavascriptファイルですから、jsファイル自体で何とかするのは恐らく無理でしょう。.htaccessでRefererによってアクセス制御を行う方法はあるのかもしれませんが、私は知りません。私がこれから紹介するのは、jsファイルをCGI(perl)もしくはPHPで書く書き方です。つまり、
<script type="text/javascript" src="./menu.cgi"></script>
という形です。恐らく目が点になっている方もおられると思います。私も初めて知った時、目が丸くなりました。javascriptなのに拡張子がcgi。どういうことって? 詳しくは次のページで見ていきましょう。
※ 実は、もう一つ簡単なソリューションがあります。CGIやPHPなどのサーバサイドプログラミングを組まずにです。JSファイルやCSSファイルのパスを暗号化により、容易には分からないようにすることです。当サイトのWebmasterが株式会社プランセスの全面協力の元開発した、HTML暗号化ソフト「SHTML」を利用してみてください。外部ファイル化することは、SEOの観点からは必要になってくるでしょうが、ソースを隠すという目的のためには、あまり意味がないことであるというぐらいに、ソースをぐじゃぐじゃに変換します。サンプルでご確認ください。

|