● プロテクトコードの作成について・よくある質問

1.「サーバサイドSHTML」で確かにソースは難読化されましたが、右クリック禁止などは有効にならず、右クリックできます。
「サーバサイドSHTML for ASP」は、「HTMLソース難読化用ASPライブラリ」であり、右クリック禁止などはできません。右クリック禁止・印刷禁止などを実現するためには、弊社の姉妹商品であります「SHTML」を併用していただく必要があります(「サーバサイドSHTML for ASP」ご購入者には「SHTML」を無料で提供させていただきます。)。

SHTMLはWindows用ソフト(***.exe)です。SHTMLは、HTMLソースの難読化及び「右クリック禁止・印刷禁止・テキストのコピー禁止」などのプロテクト機能の両方を備えていますが、HTMLソースの難読化に関していえば、静的なHTMLソースの難読化のみに対応しており、動的なデータの難読化には対応していません。ですから、SHTML(.exe)はASP(Classic ASPもしくはASP .NET)で動的に生成されるページのHTMLソースの難読化はできません。

ですから、ASPで動的に生成されるページの保護を考えられる場合、「サーバサイドSHTML」と「SHTML」の両方を使っていただく必要があります。前者は、動的なHTMLソースの難読化を担当し、後者は、「右クリック禁止・印刷禁止・テキストのコピー禁止」などのプロテクト機能を実現します。

2. WindowsアプリのSHTMLで、どのようにプロテクトコードを作成しますか? 難読化する文字列が決まっていなければ難読化できないようなのですが、動的に生成されるコンテンツなので、どんな文字列で難読化したらいいのか分かりません。
まず、メニューは「どこでもSHTML」というメニューを使います。「どこでもSHTML」は、ページ内の任意の一部分を難読化するためのメニューです。

そして、難読化する文字列は、実は、何でも良いのです。「<!-- a -->」というコメントタグで十分です。それで難読化し、難読化して出来たソースは基本的に全てJavaScriptですので、それを外部ファイル化して、hogehoge.jsなどとして保存します。そのhogehoge.jsをASPファイル(Classic ASP / ASP .NET)で出力するHTMLソースの中に混ぜてください。

その上で、Classic ASPの場合には、ASPファイルで出力するHTMLソースを引数として、サーバサイドSHTMLで提供する関数に渡して、難読化された文字列を受け取り、それをresponse.writeすれば完了です。また、ASP .NET版の場合には、これさえも不要であり、弊社ライブラリをインクルードしていただき、hogehoge.jsをHTMLソースの中に混ぜていただくだけで、出力されるHTMLソースは難読化され、かつ右クリック禁止や印刷禁止などは実現可能です。

具体的な方法は、サーバサイドSHTMLの体験版のdocフォルダーの中のdocodemo.htmlをご参照ください。


3.フレームのページにプロテクトコードを入れてみましたが、右クリック禁止になりません。
親フレーム(<frameset>タグを含むページ)にプロテクトコードを入れるのではなく、子フレームにプロテクトコードは入れるようにしてください。

また、iframeタグを使って、別のHTMLファイルやASPファイルをインクルードしている場合は、そのHTMLファイルやASPファイルでも、別個にプロテクトコード(JSファイル)を読み込ませてあげる必要があります。


HTMLソース難読化用ASPライブラリ
「サーバサイドSHTML for ASP」
© 株式会社プランセスお問い合わせ