Configuration obfuscation
During SDK initialization, a configuration file is retrieved from Eppo's CDN, which includes information about the feature flag/experiment variations, traffic allocations, and targeting rules. The SDK stores these configurations locally for rapid lookup. However, when the SDK is initialized in certain mobile and browser clients, this configuration may be accessible by users, and so Eppo hashes data in the configuration to obfuscate it. The configuration cannot be hashed entirely without compromising functionality, so the hashed fields in the configuration that can be used without leaking sensitive data are shown below.
{
"flags": {
"<hashed_flag_key>": {
"rules": [
{
"conditions": [
{
"attribute": "<hashed_attribute>",
"operator": "<hashed_operator>",
"value": "<hashed_or_encoded_value>"
}
],
"allocationKey": "allocation-123"
},
...
],
"allocations": [ ... ],
...
},
...
}
}