カスタム暗号化の使用
文字列の暗号化フェーズで検出された文字列を処理するとき、独自の暗号化アルゴリズムを使用するように PreEmptive Protection - DashO を構成できます。実装は、単純にでも複雑にでも望みどおりにできます。ただし、長時間実行される復号メソッドは結局、アプリケーションの速度を低下させるということを覚えておいてください。この処理には Encryption(暗号化)と Decryption(復号)の 2 つの部分があります。暗号化メソッドは、DashO がプロジェクトを処理するときに使用されます。暗号化のクラスとメソッドは、別個の jar にパッケージ化し、プロジェクトから使えるように構成する必要があります。復号メソッドは、アプリケーションと一緒にパッケージ化されます。復号のクラスとメソッドは、プロジェクトの入力の一部であり、プロジェクトから使えるように構成する必要があります。
Encryption
暗号化アルゴリズムは public static メソッドである必要があります。プレーン テキストの単一の文字列を引数として取り、鍵と暗号文の 2 つの null でない文字列の配列を返さなければなりません。
public static String[] encrypt (String plainText) {
String key = {好きなように決定します};
String cipherText = {好きなように作成します};
return new String[]{key,cipherText};//順序が重要です!
}
Decryption
復号アルゴリズムは public static メソッドである必要があります。鍵と暗号文の 2 つの文字列を引数として取り、プレーン テキストの null でない文字列を 1 つ返さなければなりません。暗号化メソッドで作成された暗号文を正しく復号できる必要があります。
public static String decrypt (String key, String cipherText) {
String plainText = {好きなように決定します};
return plainText;
}
メモ:
復号クラスは、名前変更されて難読化されますが、カスタムの文字列暗号化からは除外されます。復号クラスが入力内の他のクラスを使用している場合は、実行時に無限再帰的な呼び出しが発生しないように、それらを文字列の暗号化対象から手作業で除外する必要があるかもしれません。