{
  "capsule": {
    "schema": "apk-scanner.proof/v2",
    "issuer": "apk-scanner.com",
    "issued_at": "2026-10-20T13:23:14.992Z",
    "app": {
      "app_id": "com.tenshio.lumisignal",
      "title": "LumiSignal: Flashlight",
      "version": "1.0.19"
    },
    "analysis": {
      "issues": [],
      "stages": {
        "pii": "complete",
        "sbom": "complete",
        "signing": "certificate_parsed",
        "strings": "complete",
        "manifest": "complete"
      },
      "status": "complete",
      "grading": {
        "policy": "static-coverage-v1",
        "blockers": [],
        "eligible": true
      },
      "timings_ms": {
        "total": 457.67,
        "harvest": 184.79199999999992,
        "detectors": 165.74499999999966
      },
      "bytes_total": 3114400,
      "bytes_scanned": 3114400,
      "bytes_skipped": 0,
      "files_processed": 135,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "df87c8ad110bd3462e639b1939ea8fae3da671055e1f5180324c1579f30b6294"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "1b7eae7df7f15b8229705d0d6b4017b3458ddfddb82465c3696e3d0be6100dfa"
        },
        {
          "name": "config.en.apk",
          "sha256": "d93a9b474e9b36a29f978273a32fc1da6f1c197a7261dfff8509b6a5fed198a1"
        },
        {
          "name": "config.es.apk",
          "sha256": "34de424326b0c4abef325088d1ea196231a6e2696716d086056549bd51713222"
        }
      ],
      "ruleset_sha256": "f845a46700295ef0c808b2accb30ba973aca62f3b52fef51e8489d1916061a63"
    },
    "apk_sha256": "df87c8ad110bd3462e639b1939ea8fae3da671055e1f5180324c1579f30b6294",
    "scan": {
      "scan_id": "fda58106-b871-4f4e-95c2-d757da069c9c",
      "scanned_at": "2026-10-20T10:33:13.648Z",
      "grade": "A",
      "score": 100
    },
    "apk_signer": {
      "scheme": "v3",
      "subject_o": "Google Inc.",
      "subject_cn": "Android",
      "sha256": "013ba64b627e3865148147efb22fadb9aa4c2222fe234614f0242e489cddcc9c",
      "not_after": "2056-07-11T11:20:51+00:00"
    },
    "counts": {
      "critical": 0,
      "high": 0,
      "medium": 0,
      "low": 0,
      "info": 1
    },
    "findings": [
      {
        "finding_type": 37,
        "severity": "info",
        "title": "Application data is backup-enabled",
        "redacted_display": "android:allowBackup=\"true\"",
        "fingerprint": "68d134f0bcd98a9559d6dd5275f80a3928e4a6490ac4a0f1bd16f87683bd49f8",
        "verified": false,
        "cwe": [
          "CWE-530",
          "CWE-312"
        ],
        "masvs": [
          "MASVS-STORAGE-1",
          "MASVS-STORAGE-2"
        ],
        "remediation": "Backup is on by default on Android; this manifest states it explicitly. If the app stores sensitive local data, define dataExtractionRules/fullBackupContent to exclude it, or set android:allowBackup=false."
      }
    ],
    "live_verification": {
      "verified_count": 0,
      "items": []
    },
    "trackers_count": 0,
    "pii": {
      "sources": 1,
      "identifiers": [
        "Device ID / IMEI"
      ],
      "destinations": 0
    },
    "sbom": {
      "component_count": 43,
      "vuln_count": 0,
      "components": [
        {
          "name": "androidx.activity:activity",
          "version": "1.9.3",
          "cves": []
        },
        {
          "name": "androidx.activity:activity-compose",
          "version": "1.9.3",
          "cves": []
        },
        {
          "name": "androidx.activity:activity-ktx",
          "version": "1.9.3",
          "cves": []
        },
        {
          "name": "androidx.annotation:annotation-experimental",
          "version": "1.4.1",
          "cves": []
        },
        {
          "name": "androidx.autofill:autofill",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.compose.animation:animation",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.animation:animation-core",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.foundation:foundation",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.foundation:foundation-layout",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.material3:material3",
          "version": "1.3.0",
          "cves": []
        },
        {
          "name": "androidx.compose.material:material-icons-core",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.material:material-ripple",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.runtime:runtime",
          "version": "1.7.1",
          "cves": []
        },
        {
          "name": "androidx.compose.runtime:runtime-saveable",
          "version": "1.7.1",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-geometry",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-graphics",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-text",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-tooling-preview",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-unit",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-util",
          "version": "1.7.0",
          "cves": []
        },
        {
          "name": "androidx.core:core",
          "version": "1.13.1",
          "cves": []
        },
        {
          "name": "androidx.core:core-ktx",
          "version": "1.13.1",
          "cves": []
        },
        {
          "name": "androidx.customview:customview-poolingcontainer",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.emoji2:emoji2",
          "version": "1.3.0",
          "cves": []
        },
        {
          "name": "androidx.graphics:graphics-path",
          "version": "1.0.1",
          "cves": []
        },
        {
          "name": "androidx.interpolator:interpolator",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-livedata-core",
          "version": "2.8.7",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-process",
          "version": "2.8.7",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-runtime",
          "version": "2.8.7",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-runtime-compose",
          "version": "2.8.7",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-runtime-ktx",
          "version": "2.8.7",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel",
          "version": "2.8.7",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel-ktx",
          "version": "2.8.7",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel-savedstate",
          "version": "2.8.7",
          "cves": []
        },
        {
          "name": "androidx.profileinstaller:profileinstaller",
          "version": "1.3.1",
          "cves": []
        },
        {
          "name": "androidx.savedstate:savedstate",
          "version": "1.2.1",
          "cves": []
        },
        {
          "name": "androidx.savedstate:savedstate-ktx",
          "version": "1.2.1",
          "cves": []
        },
        {
          "name": "androidx.startup:startup-runtime",
          "version": "1.1.1",
          "cves": []
        },
        {
          "name": "androidx.tracing:tracing",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.versionedparcelable:versionedparcelable",
          "version": "1.1.1",
          "cves": []
        },
        {
          "name": "kotlinx:coroutines_android",
          "version": "1.7.3",
          "cves": []
        },
        {
          "name": "kotlinx:coroutines_core",
          "version": "1.7.3",
          "cves": []
        }
      ]
    },
    "control_coverage": {
      "schema": "apk-scanner.coverage/v1",
      "framework": "OWASP MASVS v2",
      "disclaimer": "Static, metadata-only analysis. Each control is scored evidence-for / gap-signal / requires-manual-testing. This is evidence toward a MASVS assessment, NOT a certification — apk-scanner.com is not an authorized assessment lab. Absence of a static finding does not prove a control passes.",
      "rows": [
        {
          "control": "MASVS-STORAGE-1",
          "category": "STORAGE",
          "title": "The app securely stores sensitive data.",
          "static": "partial",
          "status": "gap-detected",
          "count": 1,
          "findings": [
            {
              "finding_type": 37,
              "key": "allow_backup",
              "title": "Application data is backup-enabled",
              "severity": "info",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                530,
                312
              ]
            }
          ]
        },
        {
          "control": "MASVS-STORAGE-2",
          "category": "STORAGE",
          "title": "The app prevents leakage of sensitive data.",
          "static": "partial",
          "status": "gap-detected",
          "count": 1,
          "findings": [
            {
              "finding_type": 37,
              "key": "allow_backup",
              "title": "Application data is backup-enabled",
              "severity": "info",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                530,
                312
              ]
            }
          ]
        },
        {
          "control": "MASVS-CRYPTO-1",
          "category": "CRYPTO",
          "title": "The app employs current strong cryptography and uses it according to best practices.",
          "static": "partial",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-CRYPTO-2",
          "category": "CRYPTO",
          "title": "The app performs key management according to best practices.",
          "static": "partial",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-AUTH-1",
          "category": "AUTH",
          "title": "The app uses secure authentication and authorization protocols.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-AUTH-2",
          "category": "AUTH",
          "title": "The app performs local authentication securely.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-AUTH-3",
          "category": "AUTH",
          "title": "The app secures sensitive operations with additional authentication.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-NETWORK-1",
          "category": "NETWORK",
          "title": "The app secures all network traffic according to current best practices.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-NETWORK-2",
          "category": "NETWORK",
          "title": "The app verifies the identity of the remote endpoint (e.g. certificate pinning).",
          "static": "partial",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PLATFORM-1",
          "category": "PLATFORM",
          "title": "The app uses IPC mechanisms securely.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PLATFORM-2",
          "category": "PLATFORM",
          "title": "The app uses WebViews securely.",
          "static": "partial",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PLATFORM-3",
          "category": "PLATFORM",
          "title": "The app uses the user interface securely.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-CODE-1",
          "category": "CODE",
          "title": "The app requires an up-to-date platform version.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-CODE-2",
          "category": "CODE",
          "title": "The app has a mechanism for enforcing updates.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-CODE-3",
          "category": "CODE",
          "title": "The app only uses software components without known vulnerabilities.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-CODE-4",
          "category": "CODE",
          "title": "The app validates and sanitizes all untrusted inputs and follows secure-coding practice.",
          "static": "partial",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-RESILIENCE-1",
          "category": "RESILIENCE",
          "title": "The app validates the integrity of the platform.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-RESILIENCE-2",
          "category": "RESILIENCE",
          "title": "The app implements anti-tampering mechanisms.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-RESILIENCE-3",
          "category": "RESILIENCE",
          "title": "The app implements anti-static-analysis mechanisms.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-RESILIENCE-4",
          "category": "RESILIENCE",
          "title": "The app implements anti-dynamic-analysis techniques.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PRIVACY-1",
          "category": "PRIVACY",
          "title": "The app minimizes access to sensitive data and resources.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PRIVACY-2",
          "category": "PRIVACY",
          "title": "The app prevents identification of the user.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PRIVACY-3",
          "category": "PRIVACY",
          "title": "The app is transparent about data collection and usage.",
          "static": "yes",
          "status": "no-static-findings",
          "count": 0,
          "findings": []
        },
        {
          "control": "MASVS-PRIVACY-4",
          "category": "PRIVACY",
          "title": "The app offers user control over their data.",
          "static": "manual",
          "status": "requires-manual-testing",
          "count": 0,
          "findings": []
        }
      ],
      "categories": [
        {
          "category": "STORAGE",
          "controls": 2,
          "gaps": 2,
          "verified": 0,
          "manual": 0
        },
        {
          "category": "CRYPTO",
          "controls": 2,
          "gaps": 0,
          "verified": 0,
          "manual": 0
        },
        {
          "category": "AUTH",
          "controls": 3,
          "gaps": 0,
          "verified": 0,
          "manual": 3
        },
        {
          "category": "NETWORK",
          "controls": 2,
          "gaps": 0,
          "verified": 0,
          "manual": 0
        },
        {
          "category": "PLATFORM",
          "controls": 3,
          "gaps": 0,
          "verified": 0,
          "manual": 1
        },
        {
          "category": "CODE",
          "controls": 4,
          "gaps": 0,
          "verified": 0,
          "manual": 1
        },
        {
          "category": "RESILIENCE",
          "controls": 4,
          "gaps": 0,
          "verified": 0,
          "manual": 4
        },
        {
          "category": "PRIVACY",
          "controls": 4,
          "gaps": 0,
          "verified": 0,
          "manual": 1
        }
      ]
    }
  },
  "proof": {
    "alg": "ed25519",
    "key_id": "IE6LeZNX4dAAPLGr",
    "digest_sha256": "92cc6710204062819cde2575e6c3ac8c05a5c5e0f4709944a0914c46d471f7b9",
    "signature": "lmsFqLpWrwtxCYDg7bxRxUoD+V7ndrm8zKs3VUvB5HGjTtRgJCkk1EKJfPXXaugku3jrVOyzIjVhZEpZcoR6Ag==",
    "public_key_pem": "-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEAwH2fYdYB5nD0CQslDtG3FgafcJBoOX2OGoT80Woksrk=\n-----END PUBLIC KEY-----\n",
    "verify_url": "https://apk-scanner.com/verify"
  }
}