すらすらプログラマーへのお問い合わせ
すらすらのブログ
アクセス数  累計:000,102,983  昨日:000,000,190  本日:000,000,042
Loading
やってみよう!
.NET プログラミング
プロパティグリッド
印刷
リストボックス
スレッド
リストビュー
インストーラー
やってみよう!

Windows自動処理のためのWSHプログラミングガイド

WSHクイックリファレンス 第2版

[改訂版] VBScriptポケットリファレンス (POCKET REFERENCE)

最速攻略 VBScriptサンプル大全集

JavaScript本格入門 ~モダンスタイルによる基礎からAjax・jQueryまで

JavaScript 第5版

よくわかるゼロからはじめるJavaScript (よくわかるトレーニングテキスト)

JavaScript: The Good Parts ―「良いパーツ」によるベストプラクティス

スクリプトの暗号化① 最終更新:2011/10/09
【Amazon ランキング:ゲーム - プレイステーション4】

 本サイトで紹介しているフリーソフトの「コピー ~」撲滅計画はWSH(Windows Script Host)で作られています。WSH はテキスト形式で記述したスクリプト言語の実行環境の事をいいますが、JavaScript、JScriot、VBScript 等の一般的なスクリプト言語であればOSに標準で入っていモジュールだけで動作するので使い勝手がよいです。
しかし、テキスト形式で記述するので、メンテナンスが容易な反面コードが丸見えになるという問題もあります。自分の描いた汚いソースコードを人に見られるのも恥ずかしいので暗号化して簡単に見れないようにしたいと思います。
 暗号化にはマイクロソフトが公開しているWindows Script Encoderを使用します。マイクロソフトのサイトよりダウンロードしてPCにインストールしてください。
ただし、暗号化といっても完全に解読できないほど強力なものではないようで、ツールを使って解読できるケースもあるみたいですが、とりあえず簡単にコード見れないようにするには有効な手段だと思います。
サンプル①
まずは html に JScript、JavaScript、VBScript のスクリプトコードを埋め込んでどのように暗号化されるかを見てみようと思います。 暗号化を行いたい個所には以下のマーカーを追加します。
sample01.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    
<title>Windows Script Encorder サンプル①</title>
    
<meta http-equiv="Context-Type" content="text/html" charset="Shift_JIS">
    
<meta http-equiv="Content-Script-Type" content="text/javascript">
    
<script language="JScript">
    <!--
        //**Start Encode**
        
// JScriptを使ってでメッセージボックスを表示します。
        
function showMessage_JScript(){
            confirm(
"このメッセージはJScriptで表示しています。");
        }
    
-->
    
</script>
    
<script language="JavaScript">
    <!--
        //**Start Encode**
        
// JavaScriptを使ってでメッセージボックスを表示します。
        
function showMessage_JavaScript(){
            confirm(
"このメッセージはJavaScriptで表示しています。");
        }
    
-->
    
</script>
    
<script language="VBScript">
    <!--
        
'**Start Encode**
        
' VBScriptを使ってでメッセージボックスを表示します。
        
Sub showMessage_VBScript()
            MsgBox 
"このメッセージはVBScriptで表示しています。", 64
        
End Sub
    -->
    
</script>
</head>
<body>
    
<h3>Windows Script Encorder のサンプル①</h3>
    
<input type="button" onClick="showMessage_JScript()" value="JScript">
    
<input type="button" onClick="showMessage_JavaScript()" value="JavaScript">
    
<input type="button" onClick="showMessage_VBScript()" value="VBScript">
</body>
</html>

暗号化
まずは Windows Script Encorder にパスを通しておきます。普通にインストールすれば「C:\Program Files\Windows Script Encoder」にインストールされますので以下のようにパスを追加して screnc.exe が実行できればOKです。
>PATH = %PATH%;C:\Program Files\Windows Script Encoder

>screnc.exe
Usage:   screnc [/?] [/s] [/f] [/xl] [/l ScriptLanguage] [/e DefaultExtension]
                <source> <destination>
暗号化は以下のように、screnc の後に入力ファイルと出力ファイルを指定するだけです。
>screnc sample01.html sample01e.html
暗号化後はスクリプトコードが意味不明な文字列に置換されていますが、日本語はそのままです。しかもスクリプトの実行に必要のないコメントも日本語で残っているのでコメントをを描く際には注意が必要です。
script タグは 以下のように XXXX.Encode と書き変わっています。また、JavaScript は JScript に変わるのでこれも注意が必要みたいです。


sample01e.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    
<title>Windows Script Encorder サンプル①</title>
    
<meta http-equiv="Context-Type" content="text/html" charset="Shift_JIS">
    
<meta http-equiv="Content-Script-Type" content="text/javascript">
    
<script language="JScript.Encode">
    <!--
        //**Start Encode**#@~^igAAAA==@#@&d7Jz,9?1Db2Yを使ってでメッセージボックスを表示します。@#@&7d6EU^DkW   ~/4Whtnd/mo{B?^.bwO`*`@#@&d771WxWrM:cJこのメッセージはxj1DraYで表示しています。r#i@#@&i78@#@&7O @*@#@&ishcAAA==^#~@
</script>
    
<script language="JScript.Encode">
    <!--
        //**Start Encode**#@~^kwAAAA==@#@&d7Jz,9l7lU^DbwOを使ってでメッセージボックスを表示します。@#@&d7W!xmDrW    P/4GAH/klL+mBm\C?1.kaYcbP@#@&77imGx6rM:crこのメッセージは9m\lUmMrwDで表示しています。Jbi@#@&77)@#@&iRO@*@#@&iWhsAAA==^#~@
</script>
    
<script language="VBScript.Encode">
    <!--
        '**Start Encode**#@~^jQAAAA==@#@&d7EPjA?1Db2Yを使ってでメッセージボックスを表示します。@#@&7dUE8~ktWS\+k/lTnm.~?1DrwOc*@#@&di7Hko$GXPJこのメッセージは#$Um.kaOで表示しています。r~~+c@#@&di2    [PUE8@#@&dRR@*@#@&iPhcAAA==^#~@
</script>
</head>
<body>
    
<h3>Windows Script Encorder のサンプル①</h3>
    
<input type="button" onClick="showMessage_JScript()" value="JScript">
    
<input type="button" onClick="showMessage_JavaScript()" value="JavaScript">
    
<input type="button" onClick="showMessage_VBScript()" value="VBScript">
</body>
</html>

※このページで紹介しているサンプルコードについて管理者は動作保障をいたしません※
※サンプルコードを使用する場合は、自己責任でお願いします※

【楽天 ランキング:スマートフォン】


【広告】
  • 【リクナビNEXT】
  • リクナビNEXT
  • リクナビNEXT


  • このサイトはフリーソフトのMerge HTMLで作成されています。
    このサイトはリンクフリーです。

    ページの先頭に戻る Copyright© 2010-2015 Jun.Shiozaki All rights reserved.