Hashira DocsLog in
Guides

String Encryption

Protect string constants

Select a decoder backend and a protection profile for strings in your application. String protection is independent of call routing and arithmetic mutation.

Configuration

These entries belong in the engine block of your RR configuration.

RR
engine ^ {
  skipString false;
  nativeStringVault false;
  stringProtectionBackend "java-heterogeneous";
}

Choose a backend and profile

Use java-heterogeneous for Java decoders or legacy for the older backend. Normal, Strong and Critical select different protection profiles. Higher settings can add work during startup and string decoding.

Native profiles are not supported by the remote Java worker.

Option reference

For options beginning with skip, false enables the pass.

String Encryption

boolean
skipString

Protects string constants. Enabled exports skipString false. Disabling it also disables enhanced string protection.

Panel default false

Enhanced String Encryption

boolean
nativeStringVault

Selects the native string vault and enables Native VM. A matching native target and runtime are required.

Panel default false

Encryption Backend

enum
stringProtectionBackend

Java uses heterogeneous Java decoders. Legacy selects the older backend. Native requires Native VM and the string vault.

Panel default java-heterogeneousValues java-heterogeneous · legacy · native

Encryption Level

enum
stringProtectionProfile

Selects Normal, Strong or Critical string protection. Test startup time and string-heavy code with the selected profile.

Panel default strongValues normal · strong · critical

Preserved class strings

boolean
encryptPreservedClassStrings

Allows string transformations in classes whose names are preserved. Check reflection and framework integrations.

Panel default false