Skip to main content

Repository

github.com/InsightAI-Pinnacle-Technologies/di-sdk-android-rasp-v1.0.2

Requirements

  • minSdk 24 (Android 7.0+)
  • NDK r26+ and CMake 3.22+ — required for the native ptrace/TracerPid layer that makes debugger/Frida detection resistant to Java-layer hooking
  • A GitHub Personal Access Token with read:packages scope (this SDK is distributed privately via GitHub Packages while pre-GA — see Authentication for your tenant credentials, which are separate from your GitHub PAT)

Install

1

Add the GitHub Packages repository

settings.gradle
2

Add the dependency

app/build.gradle
3

Install the NDK

Android Studio → Tools → SDK Manager → SDK Tools tab → check “NDK (Side by side)” and “CMake”. Without this, the native detection layer won’t link — see Testing for how to confirm it did.

Initialize

Gate a sensitive action

Protect a sensitive screen

MITM detection

Wire your network layer’s pin-mismatch callback:
2+ mismatches in one session sets MITM_SUSPECTED and hard-blocks — same tier as a signature mismatch.

Device binding (Play Integrity)

This token must be verified server-side against Google’s decode API. The SDK cannot verify it locally — a compromised client could fake a local “verified” result, which defeats the entire point of the check.

SIM binding

Not bundled — this requires a paid third-party provider (tru.ID, Twilio Verify). The SDK ships the integration interface only:

OTP-less authentication

Testing each control

Known limitations

  • SIM binding needs your own provider integration — not included
  • Play Integrity verdict decoding is a backend responsibility, not something this SDK does
  • No iOS equivalent to Android’s signature-hash tamper check exists — if you also integrate InsightAI’s iOS SDK, its tamper detection is a weaker sideload heuristic by platform necessity, not an oversight

Next steps

Full RASP detection reference

Webhook payload reference