スクリプトガイド > プログラミング手法 > スクリプトの暗号化と暗号解読
公開日: 09/19/2023

スクリプトの暗号化と暗号解読

JSLスクリプトに基本レベルの保護を付加するために、暗号化して、パスワードを知っている人だけが見たり実行したりできるようにできます。これは、スクリプトの共有を管理したい場合に便利です。

スクリプトを暗号化するには

1. 暗号化するスクリプトを開きます。

2. [編集]>[スクリプトの暗号化]を選択します。

3. ユーザがスクリプトを見るのに必要となる、暗号解読のためのパスワードを入力します。

4. (オプション)実行パスワードを入力します。ユーザは、このパスワードを入力しなければ暗号化されたスクリプトを実行できません。

メモ: パスワードには1バイトの文字を使用しなければなりません。IME(Input Method Editor)を使ったテキストの入力は無効です。

5. [OK]をクリックします。

6. 暗号解読パスワードのみを指定した場合、[はい]をクリックして、実行パスワードを指定しないことを確認します。

暗号化されたスクリプトが、新しいウィンドウに表示されます。
例:

//-e6.0.2
S@FTQ;VGMUTF?J<;LS;B<=IRLXCU=BV;@NS<TW;LR<ZFOP=JJS>NNDA@T<V><DZA>SU@MG;LR<ZFOP=JJS>NNDA@T<V><DZA>SU@MG;LR<ZFOP=JJS>NNDA@T<V><DZA>SU@MG;LR<ZFOP=JJS>NNDA@T<HNIZ;WDN?RMJ;FR>KYAXTEPPF?;XFJJOP=RQGBIAGXOYNNZ>PLIF>SW>L>ACL<KGP;=QQTCEG??U<PUXLV?TRBO?J>QGWTJCFJA@BNHWLVORNNGQYPIKL<IM<>JX>@G?LJ>=;RBODH@PTKK@SIUE;IJOR<TUTRMTGSYRSVGOR<XK<F=IWQYE=LVZFP;AUHA?YJLL;EIT?ZJZC;*

7. 暗号化されたスクリプトを保存します。

スクリプト内の列計算式を暗号化するには

暗号化したスクリプトによって作成される列計算式は、デフォルトでは表示されてしまいます。計算式を暗号化したい場合は、次の手順に従います。

1. 計算式を新しいスクリプトウィンドウに貼り付けます。

2. [編集]>[スクリプトの暗号化]をクリックしてスクリプトを暗号化します。

3. 暗号解読パスワードを入力します。

4. 暗号化されたスクリプトをコピーします。

5. 次のように、暗号化されたスクリプトをJSL Encrypted()の文字列引数として新しいスクリプトに貼り付けます。

dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
 
dt << New Column( "Encrypted",
	Numeric,
	Continuous,
	Format( "Best", 12 ),
	Formula(
		JSL Encrypted(
			"//-e6.0.2
0,
136,4112eJwFwYkRhCAMAMB+roUQcITwDcoP4fovxN3Ri0B+MFqvqXB8Z0hZdFC+dgqclJo0dwrlZbFjgyPlZRuR2hp399ObhpxhQXP8
GPtft0MN6Rwz8pDnjmK1K0qq1bEG+H0xvyBb
,0,"
		)
	)
);

JSLスクリプトを暗号解読するには

1. 暗号化されたスクリプトをJMPで開きます。

2. [編集]>[スクリプトの暗号解読]を選択します。

3. 暗号解読パスワードを入力し、[OK]をクリックします。

暗号解読されたスクリプトが新しいウィンドウに表示されます。

暗号化されたJSLスクリプトを実行するには

メモ: 暗号化されたスクリプトを実行する前に、スクリプトを実行する対象となるデータテーブルを把握しておく必要があります。データテーブルの名前がわからない場合は、実行する前にスクリプトを暗号解読して、データテーブルの名前を確認しておく必要があります。

1. 暗号化されたスクリプトをJMPで開きます。

2. [編集]>[スクリプトの実行]を選択します。

3. 実行パスワードを入力し、[OK]をクリックします。

スクリプトは次のように実行されます。

スクリプトがデータテーブルを参照している場合、データテーブルを開くように求められます。データテーブルを開くと、スクリプトが実行されます。

スクリプトが空のデータテーブルを必要とする場合は、まずデータテーブルを作成します。その後、暗号化されたスクリプトを実行します。

実行パスワードを入力した場合、スクリプトは実行されますが、表示はされません。スクリプトを表示するには、暗号解読パスワードを入力する必要があります。

より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).