テキストの暗号化
スクリプトでパスワードや他のセンシティブなテキストを送信する必要があり、プレーンテキストとして情報を渡したくない場合は、これらのSenseTalkコマンドと関数を使用します。暗号化キーは、Eggplant Functionalによってスイートごとに生成されます。ASCII文字を使用して自分自身のキーを入力することも、別のEggplant Functionalスイートからキーを入力することもできます。
デックトーク
これらのコマンドと関数で使用される暗号化方法は、Vigenère cypherに基づいています。暗号化の強度は大部分がキーの強度に基づいています。ランダムな文字を持つ長いキーが望ましいです。
Eggplant Functionalによって生成されるキーは、16のランダムな文字の長さです。キーはスイートのSettingsタブのSuite Text Encoding Keyセクションで見つけることができます。
異なるスイート間でスクリプトを使用する場合は、Settingsタブでキーを変更して、異なるスイートが同じキーを使用するようにすることができます。コマンドまたは関数でキーを指定しない場合、スイートのキーが使用されます。
DecodeText関数
Behavior: EncodeTextを使用してエンコードされたテキストをデコードします。テキストを適切にデコードするためには、関数はテキストをエンコードするために使用された同じキーを受け取る必要があります。
Parameters: デコードするテキスト。暗号解読に使用するオプションのキー。キーのパラメータが省略された場合、関数はス イートのエンコーディングキーを使用します。
DecodeText( encodedString {, keyToUse} )
例:
log DecodeText("FA4gp+6RO-N>")
例:
connect {host:"192.168.120.128", port:5900, password:decodeText("ITOTnmIRa","B^6)n2+Q")} //SUTのパスワードの実際の値の代わりに暗号化された値を表示することができます
例:
set myDB to {type:"odbc", DSN:"mySQLDB", user:"root", password:decodetext("%s_z*A?>Z")} //データベース接続の実際のパスワードの代わりに暗号化された値を表示することができます。
スクリプトを変更することなく、簡単に復号化された文字列を確認するために、Ad Hoc Do BoxでDecodeText関数を使用します。
関連:
EncodeText関数- [
TypeEncodedTextコマンド] #typeendcodedtext-command)
EncodeText 関数](#encode-text)
Behavior: 暗号化キーを使用してテキストをエンコードします。
Parameters: エンコードするテキスト。暗号化に使用するオプションのキー。キーのパラメータが省略された場合、関数はスイートのエンコーディングキーを使用します。
EncodeText( plainTextString {, keyToUse} )
例:
log encodeText("password1234")
例:
put encodeText("eggplant", "B^6)n2+Q")
スクリプトを変更することなく、簡単に暗号化された文字列を取得するために、Ad Hoc Do BoxでEncodeText関数を使用します。
関連:
DecodeText関数- [
TypeEncodedTextコマンド] (#typeendcodedtext-command)
`TypeEncodedTextコマンド
Behavior: DecodeTextと同様に内部でエンコードされたテキストをデコードし、その結果のキーストロークをSUTに送信します。このコマンドを使用すると、スクリプトファイルで読み取れない情報(パスワードなど)を送信できます。
Eggplant Functionalはデコードされたテキストをログに記録したり、他の形で記録したりはしません。
Parameters: エンコードされたテキスト文字列。暗号化に使用するオプションのキー。キーパラメータが省略された場合、関数はスイートのエンコーディングキーを使用します。
TypeEncodedText encodedString {, specificKey}
例:
TypeEncodedText "FA4gp+6RO-N>" //エンコードされたテキストをSUTに送信します