How xheghun/devicetrust works
DeviceTrust is an Android library that gathers local integrity evidence and turns it into an advisory risk assessment. The principal flow is an application creating a client, requesting an assessment, and applying the returned risk level; applications can instead collect raw evidence or observe session updates through a monitor. The graph includes documented monitoring and native-check capabilities. The sampled sources show the collection, JNI, scoring, and monitoring calls; broader individual checks are documented in the README, not independently inspected here.
Main entry points: DefaultDeviceTrustClient.kt Device trust client · Monitoring.kt Session monitor · DeviceTrust.kt Client factory · NativeSignalSource.kt Native signal adapter
Components 10
Public API
- Client factory
device-trust/src/main/kotlin/com/xheghun/devicetrust/DeviceTrust.kt - Device trust client
device-trust/src/main/kotlin/com/xheghun/devicetrust/DefaultDeviceTrustClient.kt - Evidence and results
device-trust/src/main/kotlin/com/xheghun/devicetrust/Models.kt
Evidence Collection
- Native signal adapter
device-trust/src/main/kotlin/com/xheghun/devicetrust/internal/NativeSignalSource.kt - Native integrity checks
device-trust/src/main/cpp/device_trust.cpp - Build signal checks
device-trust/src/main/kotlin/com/xheghun/devicetrust/internal/BuildSignalSource.kt
Assessment and Monitoring
- Risk policy
device-trust/src/main/kotlin/com/xheghun/devicetrust/TrustPolicy.kt - Session monitor
device-trust/src/main/kotlin/com/xheghun/devicetrust/Monitoring.kt - Monitoring updates
device-trust/src/main/kotlin/com/xheghun/devicetrust/Monitoring.kt
Other components
- Android app
Connections 13
- Android app → Client factory: creates client
README.md - Client factory → Device trust client: constructs
device-trust/src/main/kotlin/com/xheghun/devicetrust/DeviceTrust.kt - Android app → Device trust client: requests assessment
README.md - Device trust client → Native signal adapter: collects native signals
device-trust/src/main/kotlin/com/xheghun/devicetrust/DefaultDeviceTrustClient.kt - Device trust client → Build signal checks: collects build signals
device-trust/src/main/kotlin/com/xheghun/devicetrust/DefaultDeviceTrustClient.kt - Native signal adapter → Native integrity checks: calls JNI checks
device-trust/src/main/kotlin/com/xheghun/devicetrust/internal/NativeSignalSource.kt - Device trust client → Evidence and results: assembles evidence
device-trust/src/main/kotlin/com/xheghun/devicetrust/DefaultDeviceTrustClient.kt - Device trust client → Risk policy: evaluates evidence
device-trust/src/main/kotlin/com/xheghun/devicetrust/DefaultDeviceTrustClient.kt - Risk policy → Evidence and results: returns assessment
device-trust/src/main/kotlin/com/xheghun/devicetrust/TrustPolicy.kt - Android app → Session monitor: starts session
README.md - Session monitor → Device trust client: requests scans
device-trust/src/main/kotlin/com/xheghun/devicetrust/Monitoring.kt - Session monitor → Monitoring updates: publishes events
device-trust/src/main/kotlin/com/xheghun/devicetrust/Monitoring.kt - Android app → Monitoring updates: observes updates
README.md