Android and iOS

Designing secret delivery to mobile applications

Designing client, server, framework and policy layers together.

Protection architecture1 min readEditorial methods

Delivering a secret involves more than an encrypted download. Define who may use it, for what purpose, for how long and under which device context.

Evaluation approach

Specify access conditions, scope, lifetime and revocation. Application evidence can inform delivery decisions. Avoid broadly privileged shared secrets on clients where possible.

Application example

Consider short-lived, narrowly scoped access for third-party APIs. Keep secrets out of logs, crash reports and persistent caches.

Limits and considerations

A secret delivered to a valid application is not guaranteed to remain unobservable under every condition.

Narrow privileges limit the impact

Credentials should cover only the required operation and time. Giving every user the same highly privileged key magnifies the effect of one leak. Know where keys are issued and how they are revoked.

The distribution service must authenticate and authorize requests. RASP can contribute context without replacing account permissions. Test logs and error responses for accidental disclosure.

Checks and decisions

  • Narrow scope
  • Limit lifetime
  • Test revocation

Treat secret distribution as end-to-end authorization management.

Sources

The primary references above provide the technical basis. Example workflows and evaluation suggestions are this publication’s explanations, not independent test results for a particular product.