# Source Code Obfuscation

The freeRASP contains [public API](#user-content-fn-1)[^1]  so that the integration process is as simple as possible. Unfortunately, this public API also creates opportunities for the attacker to use publicly available information to **interrupt freeRASP operations** or **modify your custom reaction implementation** in threat callbacks. In order for freeRASP to be as effective as possible, **it is highly recommended to apply obfuscation to the final package/application**, making the public API more difficult to find and also partially randomized for each application so it cannot be automatically abused by generic hooking scripts.

The majority of Android projects support code shrinking and obfuscation without any additional need for setup. The owner of the project can define the set of rules that are usually automatically used when the application is built in the release mode. For detailed guidance, explore the official documentation through these links: [first reference](https://developer.android.com/build/shrink-code) and [second reference](https://www.guardsquare.com/manual/configuration/usage).

## Learn More

Explore obfuscation, its types, and Talsec's practical approach—balancing developer experience, app performance, and attack resistance while minimizing drawbacks and ensuring cost-efficient mobile app security:

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td>Obfuscation of Mobile Apps</td><td><a href="https://app.gitbook.com/s/NjTFXsqCLQ3RU2oA2uHC/articles/obfuscation-of-mobile-apps">Obfuscation of Mobile Apps</a></td><td><a href="https://3557356308-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQ2PxZTOjhquOxcxftTrm%2Fuploads%2FZgUr6rfAqvxxwg25EzYJ%2Fimage.jpeg?alt=media&#x26;token=424f5031-e486-4ead-9947-714eedd66fe1">image.jpeg</a></td></tr></tbody></table>

[^1]: Interface between the freeRASP SDK and the mobile app, used to configure the SDK and set threat detection callbacks.
