Engineering

Mobile app security data privacy

What Otukan app protection processes: security signals about the app and device, not user content, sent to systems you choose and kept as long as you decide.

  • Android
  • iOS
  • Flutter
  • React Native
  • Security facts, not user content

    Otukan's signals describe the app and its environment: which check fired, on which build and platform. Messages, photos and contacts are outside their scope.

  • Routed to your systems

    Signals travel with your app's own requests to your backend, so they land under the access controls you already run.

  • Retention you set

    Once signals are in your systems, your retention and deletion rules apply. Otukan fits your data governance, not the other way round.

Privacy controls in the signal design

Choices you make when Otukan is set up, each recorded in your protection profile.

  • Field selection

    Choose which optional fields a signal carries, per platform, so you collect only what your risk decisions use.

  • Your own identifiers

    Correlate signals with a session or request reference you supply, rather than a new user identifier created by Otukan.

  • Protected in transit

    Signals travel inside your app's own encrypted connections to your servers, alongside the request they describe.

  • Versioned configuration

    The data a signal carries is defined in the versioned protection profile, so a privacy review can see what changed and when.

How a privacy review runs with Otukan

  1. List the decisions

    Name the risk decisions your backend makes, so each field has a purpose.

  2. Map the fields

    Otukan's engineers walk through the signal fields for each platform with your privacy lead.

  3. Choose the route

    Decide which systems receive signals and which roles can read them.

  4. Set retention

    Apply your retention and deletion rules to signal records in your systems.

  5. Record the approval

    Store the reviewed field list with the protection profile version it applies to.

Otukan’s application security controls process security signals: facts about the app and the environment it runs in, such as which check fired, which response was applied, the app and protection profile versions, the platform, OS version and device model, and the time. They do not process the content of user messages, photos, contacts or files. Signals are created at the points where checks run and travel with your app’s own requests to your backend, so they are stored, accessed and deleted under your rules. Android and iOS signal fields are defined separately, for native, Flutter and React Native apps.

Data inventory

Signal fields

Each signal answers one question: what did a check see, and what did the app do about it? The fields below make up a typical signal. Optional fields are chosen per platform when your protection profile is set up.

FieldPurposeRequired or optional
Check and findingWhich control fired and what it observed, for example hooking or a modified appRequired
Response appliedObserve, warn, restrict or terminate, as set for the flowRequired
App version and protection profile versionTies the finding to a specific release and configurationRequired
Platform and OS versionAndroid or iOS, and the OS release the device runsRequired
Device modelSeparates device-specific behaviour from real attacksOptional
TimestampOrders findings within a sessionRequired
Your session or request referenceLets your backend join the signal to the request it accompaniesOptional, supplied by your app

What stays out

Signals do not carry message content, photos, contacts, files, keystrokes or the data your users enter in forms. A check that looks for screen recording reports that recording is active, not what was on screen.

Collection points

Signals are created where checks run: at launch, at sign-in and before the sensitive actions you mark, such as a payment or a change of account details. A flow with no checks produces no signals.

Processing control

Transfer

Signals travel inside your app’s existing encrypted connections to your own servers, alongside the request they describe. Your backend reads them at the moment it makes a risk decision, which is also where they are most useful. Where you add Otukan threat monitoring, that route is agreed with you and drawn into the data-flow diagram your privacy team signs off, so no signal travels anywhere undocumented.

Storage

Once received, signals sit in whichever system you route them to: your API layer, your fraud engine or your security monitoring platform. Where you also use threat monitoring from Otukan, the storage location, access roles and retention for that processing are written into your agreement and reviewed with your privacy team first.

Store privacy declarations

Both stores ask you to declare what your app collects: the Data safety section on Google Play and the privacy details on the App Store. Otukan’s engineers give your team the field list for each platform, with the purpose of each field, so those declarations describe the security signals accurately.

Access

Access follows the roles you already use for request data. We suggest giving fraud and security analysts read access to signal records, with engineering access limited to aggregated views where possible. Otukan does not need access to your production systems or user records to deliver protection.

Lifecycle

Retention

Retention follows your own policy for the systems that hold signals. A practical pattern is to keep detailed records only as long as investigations and policy tuning need them, and to keep aggregated counts longer to track trends across releases.

Deletion

Because signals carry your own session references, not a separate Otukan user identity, the records linked to a user can be found and deleted with your existing tooling, including when a user asks.

Changes over time

The fields a signal carries are defined in the versioned protection profile. When a field is added or removed, the profile version changes, and your privacy reviewer can see exactly what changed in which release.

For how Otukan handles enquiries and product data more broadly, see Otukan security and trust. Regulated teams should also read healthcare mobile app security. Return to mobile app security for the wider product.

Common questions

  • Does Otukan collect personal data?

    Signals are designed around security facts: which check fired, when, on which app build and on which platform and device model. Some of these, combined with your own session references, can relate to a person, so treat signal records as personal data where your law says so. Otukan helps you keep the field set to what your risk decisions need.

  • Where are signals stored?

    Signals reach your backend with your app's requests, so they are stored wherever your systems store request data. If you also use Otukan threat monitoring, the location, access roles and retention for that processing are set out in your agreement with Otukan and reviewed with your privacy team before any signal is sent.

  • Can we delete signal records?

    Yes. Records in your systems follow your own deletion process, including requests from users. Because signals carry your own session references rather than a separate Otukan identity, the records to delete can be found with the tools you already use.

Give your privacy review clear answers

Tell us your platforms, frameworks, where security signals should land and any privacy or residency requirements your reviewers apply. We do not ask for production data, user records or credentials.

Or request a technical demo