{
  "capsule": {
    "schema": "apk-scanner.proof/v2",
    "issuer": "apk-scanner.com",
    "issued_at": "2026-10-13T20:03:45.635Z",
    "app": {
      "app_id": "cloud.blynk",
      "title": "Blynk IoT",
      "version": "1.28.3"
    },
    "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": 10523.973,
        "harvest": 3352.1210000000015,
        "detectors": 5955.781999999986
      },
      "bytes_total": 71489886,
      "bytes_scanned": 71489886,
      "bytes_skipped": 0,
      "files_processed": 3354,
      "coverage_version": 2,
      "string_encodings": [
        "ascii",
        "utf16le"
      ],
      "signature_validation": "not_performed"
    },
    "provenance": {
      "mode": "static",
      "artifacts": [
        {
          "name": "base.apk",
          "sha256": "76283e0c4c0865b92b0d18f54c33464e100691d74f85674b81705a9fad191a93"
        },
        {
          "name": "config.arm64_v8a.apk",
          "sha256": "15f5fcf64b608564993ddd57042214d8657c94447eb1140443f42873da52fa04"
        },
        {
          "name": "config.en.apk",
          "sha256": "6c89b89ee591e8af343048543f9950a19e50beaba148b70bc17bdaa5cbf7292c"
        },
        {
          "name": "config.xxhdpi.apk",
          "sha256": "78f52091391f683f159f76c5adaf1125c671d2128dda41dfb0e8aed8afacd731"
        }
      ],
      "ruleset_sha256": "ab3c4fcdbb80449695ea8ed46a12abf272aebe072e8ca1ffa301019c3d559bee"
    },
    "apk_sha256": "76283e0c4c0865b92b0d18f54c33464e100691d74f85674b81705a9fad191a93",
    "scan": {
      "scan_id": "1ec3e132-6d2d-45e0-90f2-2ad33c185a85",
      "scanned_at": "2026-09-30T11:36:44.775Z",
      "grade": "A",
      "score": 96
    },
    "apk_signer": {
      "scheme": "v3",
      "subject_o": "Google Inc.",
      "subject_cn": "Android",
      "sha256": "97d1610f23f9b1897074e77a2172cfc93642ffb6aa076467df5792b8485c1ed2",
      "not_after": "2051-03-22T20:10:53+00:00"
    },
    "counts": {
      "critical": 0,
      "high": 0,
      "medium": 0,
      "low": 27
    },
    "findings": [
      {
        "finding_type": 2,
        "severity": "low",
        "title": "Firebase Realtime Database reference",
        "redacted_display": "https://███████████████████████████.firebaseio.com/███",
        "fingerprint": "de057fff250496b5a30472c2a66fccd772ca30fce680bc6c2ee6dda51b671f12",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 20,
        "severity": "low",
        "title": "Google API key (client-shipped; restriction unverified)",
        "redacted_display": "AIza•••••••• (21–40 chars, redacted)",
        "fingerprint": "12d7d88ae6f3e08ecaff12485e0af489ced4fc9590e83d826c0b707321346728",
        "verified": false,
        "cwe": [
          "CWE-798"
        ],
        "masvs": [
          "MASVS-STORAGE-1"
        ],
        "remediation": "Restrict the API key (application + API restrictions in Google Cloud Console); a client-shipped key is public, so restriction is the control."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "198a6b0cbdc0b1b48d4ff25dd8cb351314c48c45edaa4d3e0f018da480abbd4b",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "dc41847e473d35e9f664963cc9632bce8d053a68333b046a8b9a61d9542362c9",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "5e6f69646790a33df4c25d7b0e24a39e929405fe6e4ba714e7da847d66cb0885",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "b178c0684833fc48e96426273c750e7f722e1d95efd190083de0d0338aaefa7a",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "acb00f1c548d4e59f4bf5d8f00f97fd9214a0923208d97ab7e0766b941d7c531",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "2cf0a975b0307fb295a5969e25cc867518edd1d8e9212815602154e9e330de68",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "bd55c8d04a3844fc436a5fb368737b49f991ea13d39386e807ae1f2db778de57",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "665da85662c6ca23a520c055bfdc3b79c5d76752f4a6b87eb12698abbda4bc74",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "5aa5625045ecc96ed531cf16afc00cf963aa8cadc82dca4bce902bd0b890a792",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "209193a3bcf26d57d86356580122a64023b060882863a39da6fadf3aeaccc2be",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "4ab6de33717bc1d065d6632b9c4719f8b8e617145f7c5fa133267a805859db60",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "d27e49a1fcf562868640f1a44983a94bbedddf2d955cb2c0d0e5a37f66099d07",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "a75c6a16a055889975c21dde5b14351a85a6629c945f5f7b4424111ec2c442ce",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "f6fdb3fda1166b8de7a9776b6a41aa5da28ef5ddf4c90dbedd928c0bef787969",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "b7098422228d5c99cd93fa1b4e6c0ebc68e42d096a87aafb8c418e707f061107",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "30d2bd92b3b74daa34f4c45d4d5514dfbf8d6709ca87cbcd693977efba8520f9",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "9e44a79a2e4d304c52a6558d2772a4fe73d6e070548cc9c982ff32d2df89a619",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "e592a273b6b48338897297660ca2788823668473f5b6d277896d297939073ca3",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "d59713c05a86245324706d43e738584fed3e1da55be4938d73df50bd30cef911",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "0c698044b9534e9229dc983746191de88d6f89ec29c8c1ce8372af9e9b372c4c",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "f275ec5fe4e35df814bd617ec254dc44c4c0114caf0d7c87cd1a9541f8b957dd",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 23,
        "severity": "low",
        "title": "DigitalOcean Spaces reference",
        "redacted_display": "https://████████████.nyc3.cdn.digitaloceanspaces.com/███",
        "fingerprint": "583249addf62da20f1d0001a2354e2ebf20826c4f39e7e413a58eee4d334811a",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 53,
        "severity": "low",
        "title": "Firebase Storage bucket reference",
        "redacted_display": "████████████",
        "fingerprint": "74926d9e8089cf43b5cb5e66fef456251f44c5aff4fc477ef8aab4f66c480962",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 53,
        "severity": "low",
        "title": "Firebase Storage bucket reference",
        "redacted_display": "████████████",
        "fingerprint": "b6e2cb8eb4bf3d0a7bcb1c02e7aaa6b80181f3fefcd2655ab608c7c76f9d6977",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      },
      {
        "finding_type": 53,
        "severity": "low",
        "title": "Firebase Storage bucket reference",
        "redacted_display": "████████████",
        "fingerprint": "6da605c01a32d6178ae1e6876876e3de02277efaeb0bf30b781056b6efdcc7a8",
        "verified": false,
        "cwe": [
          "CWE-200",
          "CWE-284"
        ],
        "masvs": [
          "MASVS-STORAGE-2"
        ],
        "remediation": "Confirm the bucket/database denies anonymous read (enable auth / storage rules / RLS), then audit its contents for data already exposed while it was open."
      }
    ],
    "live_verification": {
      "verified_count": 0,
      "items": []
    },
    "trackers_count": 6,
    "pii": {
      "sources": 5,
      "identifiers": [
        "Advertising ID (AAID)",
        "Android ID",
        "Device ID / IMEI",
        "Hardware MAC address"
      ],
      "destinations": 4
    },
    "sbom": {
      "component_count": 124,
      "vuln_count": 0,
      "components": [
        {
          "name": "androidx.activity:activity",
          "version": "1.13.0",
          "cves": []
        },
        {
          "name": "androidx.activity:activity-compose",
          "version": "1.13.0",
          "cves": []
        },
        {
          "name": "androidx.activity:activity-ktx",
          "version": "1.13.0",
          "cves": []
        },
        {
          "name": "androidx.annotation:annotation-experimental",
          "version": "1.5.1",
          "cves": []
        },
        {
          "name": "androidx.appcompat:appcompat",
          "version": "1.7.1",
          "cves": []
        },
        {
          "name": "androidx.appcompat:appcompat-resources",
          "version": "1.7.1",
          "cves": []
        },
        {
          "name": "androidx.asynclayoutinflater:asynclayoutinflater",
          "version": "1.1.0",
          "cves": []
        },
        {
          "name": "androidx.autofill:autofill",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.biometric:biometric",
          "version": "1.1.0",
          "cves": []
        },
        {
          "name": "androidx.browser:browser",
          "version": "1.10.0",
          "cves": []
        },
        {
          "name": "androidx.camera.featurecombinationquery:featurecombinationquery",
          "version": "1.6.1",
          "cves": []
        },
        {
          "name": "androidx.camera.viewfinder:viewfinder-core",
          "version": "1.5.1",
          "cves": []
        },
        {
          "name": "androidx.camera:camera-camera2",
          "version": "1.6.1",
          "cves": []
        },
        {
          "name": "androidx.camera:camera-camera2-pipe",
          "version": "1.6.1",
          "cves": []
        },
        {
          "name": "androidx.camera:camera-core",
          "version": "1.6.1",
          "cves": []
        },
        {
          "name": "androidx.camera:camera-lifecycle",
          "version": "1.6.1",
          "cves": []
        },
        {
          "name": "androidx.camera:camera-video",
          "version": "1.6.1",
          "cves": []
        },
        {
          "name": "androidx.camera:camera-view",
          "version": "1.6.1",
          "cves": []
        },
        {
          "name": "androidx.cardview:cardview",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.compose.animation:animation",
          "version": "1.11.0-beta02",
          "cves": []
        },
        {
          "name": "androidx.compose.animation:animation-core",
          "version": "1.11.0-beta02",
          "cves": []
        },
        {
          "name": "androidx.compose.foundation:foundation",
          "version": "1.11.0-beta02",
          "cves": []
        },
        {
          "name": "androidx.compose.foundation:foundation-layout",
          "version": "1.11.0-beta02",
          "cves": []
        },
        {
          "name": "androidx.compose.material3.adaptive:adaptive",
          "version": "1.2.0",
          "cves": []
        },
        {
          "name": "androidx.compose.material3:material3",
          "version": "1.5.0-alpha17",
          "cves": []
        },
        {
          "name": "androidx.compose.material:material-icons-core",
          "version": "1.7.8",
          "cves": []
        },
        {
          "name": "androidx.compose.material:material-ripple",
          "version": "1.11.0-beta02",
          "cves": []
        },
        {
          "name": "androidx.compose.runtime:runtime",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "androidx.compose.runtime:runtime-annotation",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "androidx.compose.runtime:runtime-retain",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "androidx.compose.runtime:runtime-saveable",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-geometry",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-graphics",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-text",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-unit",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "androidx.compose.ui:ui-util",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "androidx.constraintlayout:constraintlayout",
          "version": "2.2.1",
          "cves": []
        },
        {
          "name": "androidx.coordinatorlayout:coordinatorlayout",
          "version": "1.1.0",
          "cves": []
        },
        {
          "name": "androidx.core:core",
          "version": "1.19.0",
          "cves": []
        },
        {
          "name": "androidx.core:core-backported-fixes",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.core:core-google-shortcuts",
          "version": "1.1.0",
          "cves": []
        },
        {
          "name": "androidx.core:core-ktx",
          "version": "1.19.0",
          "cves": []
        },
        {
          "name": "androidx.core:core-viewtree",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.cursoradapter:cursoradapter",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.customview:customview",
          "version": "1.2.0",
          "cves": []
        },
        {
          "name": "androidx.customview:customview-poolingcontainer",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.databinding:viewbinding",
          "version": "9.3.1",
          "cves": []
        },
        {
          "name": "androidx.datastore:datastore",
          "version": "1.1.7",
          "cves": []
        },
        {
          "name": "androidx.datastore:datastore-core",
          "version": "1.1.7",
          "cves": []
        },
        {
          "name": "androidx.datastore:datastore-preferences",
          "version": "1.1.7",
          "cves": []
        },
        {
          "name": "androidx.datastore:datastore-preferences-core",
          "version": "1.1.7",
          "cves": []
        },
        {
          "name": "androidx.documentfile:documentfile",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.drawerlayout:drawerlayout",
          "version": "1.1.1",
          "cves": []
        },
        {
          "name": "androidx.dynamicanimation:dynamicanimation",
          "version": "1.1.0",
          "cves": []
        },
        {
          "name": "androidx.emoji2:emoji2",
          "version": "1.6.0",
          "cves": []
        },
        {
          "name": "androidx.emoji2:emoji2-views",
          "version": "1.6.0",
          "cves": []
        },
        {
          "name": "androidx.emoji2:emoji2-views-helper",
          "version": "1.6.0",
          "cves": []
        },
        {
          "name": "androidx.exifinterface:exifinterface",
          "version": "1.4.2",
          "cves": []
        },
        {
          "name": "androidx.fragment:fragment",
          "version": "1.8.9",
          "cves": []
        },
        {
          "name": "androidx.fragment:fragment-ktx",
          "version": "1.8.9",
          "cves": []
        },
        {
          "name": "androidx.graphics:graphics-path",
          "version": "1.0.1",
          "cves": []
        },
        {
          "name": "androidx.graphics:graphics-shapes",
          "version": "1.0.1",
          "cves": []
        },
        {
          "name": "androidx.interpolator:interpolator",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.legacy:legacy-support-core-utils",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-livedata",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-livedata-core",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-livedata-core-ktx",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-livedata-ktx",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-process",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-runtime",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-runtime-compose",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-runtime-ktx",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-service",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel-compose",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel-ktx",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.lifecycle:lifecycle-viewmodel-savedstate",
          "version": "2.11.0",
          "cves": []
        },
        {
          "name": "androidx.loader:loader",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.localbroadcastmanager:localbroadcastmanager",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.navigation3:navigation3-runtime",
          "version": "1.1.0",
          "cves": []
        },
        {
          "name": "androidx.navigation3:navigation3-ui",
          "version": "1.1.0",
          "cves": []
        },
        {
          "name": "androidx.navigationevent:navigationevent",
          "version": "1.0.2",
          "cves": []
        },
        {
          "name": "androidx.navigationevent:navigationevent-compose",
          "version": "1.0.2",
          "cves": []
        },
        {
          "name": "androidx.palette:palette",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.palette:palette-ktx",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.print:print",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.privacysandbox.ads:ads-adservices",
          "version": "1.1.0-beta11",
          "cves": []
        },
        {
          "name": "androidx.privacysandbox.ads:ads-adservices-java",
          "version": "1.1.0-beta11",
          "cves": []
        },
        {
          "name": "androidx.profileinstaller:profileinstaller",
          "version": "1.4.1",
          "cves": []
        },
        {
          "name": "androidx.recyclerview:recyclerview",
          "version": "1.3.0",
          "cves": []
        },
        {
          "name": "androidx.room:room-runtime",
          "version": "2.7.0",
          "cves": []
        },
        {
          "name": "androidx.savedstate:savedstate",
          "version": "1.4.0",
          "cves": []
        },
        {
          "name": "androidx.savedstate:savedstate-compose",
          "version": "1.4.0",
          "cves": []
        },
        {
          "name": "androidx.savedstate:savedstate-ktx",
          "version": "1.4.0",
          "cves": []
        },
        {
          "name": "androidx.security:security-crypto",
          "version": "1.1.0",
          "cves": []
        },
        {
          "name": "androidx.sqlite:sqlite",
          "version": "2.5.0",
          "cves": []
        },
        {
          "name": "androidx.sqlite:sqlite-framework",
          "version": "2.5.0",
          "cves": []
        },
        {
          "name": "androidx.startup:startup-runtime",
          "version": "1.2.0",
          "cves": []
        },
        {
          "name": "androidx.swiperefreshlayout:swiperefreshlayout",
          "version": "1.2.0",
          "cves": []
        },
        {
          "name": "androidx.tracing:tracing",
          "version": "1.3.0",
          "cves": []
        },
        {
          "name": "androidx.tracing:tracing-ktx",
          "version": "1.3.0",
          "cves": []
        },
        {
          "name": "androidx.transition:transition",
          "version": "1.6.0",
          "cves": []
        },
        {
          "name": "androidx.vectordrawable:vectordrawable",
          "version": "1.2.0",
          "cves": []
        },
        {
          "name": "androidx.vectordrawable:vectordrawable-animated",
          "version": "1.2.0",
          "cves": []
        },
        {
          "name": "androidx.versionedparcelable:versionedparcelable",
          "version": "1.1.1",
          "cves": []
        },
        {
          "name": "androidx.viewpager2:viewpager2",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.viewpager:viewpager",
          "version": "1.0.0",
          "cves": []
        },
        {
          "name": "androidx.webkit:webkit",
          "version": "1.16.0",
          "cves": []
        },
        {
          "name": "androidx.window:window",
          "version": "1.5.1",
          "cves": []
        },
        {
          "name": "androidx.window:window-core",
          "version": "1.5.1",
          "cves": []
        },
        {
          "name": "androidx.work:work-runtime",
          "version": "2.11.2",
          "cves": []
        },
        {
          "name": "androidx.work:work-runtime-ktx",
          "version": "2.11.2",
          "cves": []
        },
        {
          "name": "com.google.android.material:material",
          "version": "1.14.0",
          "cves": []
        },
        {
          "name": "com.google.dagger:dagger",
          "version": "2.60.1",
          "cves": []
        },
        {
          "name": "com.google.dagger:dagger-lint-aar",
          "version": "2.60.1",
          "cves": []
        },
        {
          "name": "com.google.dagger:hilt-android",
          "version": "2.60.1",
          "cves": []
        },
        {
          "name": "com.google.dagger:hilt-core",
          "version": "2.60.1",
          "cves": []
        },
        {
          "name": "com.squareup.okhttp3:okhttp",
          "version": "5.4.0",
          "cves": []
        },
        {
          "name": "kotlinx:coroutines_android",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "kotlinx:coroutines_core",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "kotlinx:coroutines_jdk9",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "kotlinx:coroutines_play_services",
          "version": "1.11.0",
          "cves": []
        },
        {
          "name": "kotlinx:coroutines_reactive",
          "version": "1.11.0",
          "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": 20,
              "key": "google_api_key",
              "title": "Google API key (client-shipped; restriction unverified)",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                798
              ]
            }
          ]
        },
        {
          "control": "MASVS-STORAGE-2",
          "category": "STORAGE",
          "title": "The app prevents leakage of sensitive data.",
          "static": "partial",
          "status": "gap-detected",
          "count": 26,
          "findings": [
            {
              "finding_type": 2,
              "key": "firebase_rtdb",
              "title": "Firebase Realtime Database reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 23,
              "key": "do_spaces",
              "title": "DigitalOcean Spaces reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 53,
              "key": "firebase_storage",
              "title": "Firebase Storage bucket reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 53,
              "key": "firebase_storage",
              "title": "Firebase Storage bucket reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            },
            {
              "finding_type": 53,
              "key": "firebase_storage",
              "title": "Firebase Storage bucket reference",
              "severity": "low",
              "verified": false,
              "relationship": "gap-signal",
              "cwe": [
                200,
                284
              ]
            }
          ]
        },
        {
          "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": "0fe1d93fd931ebb9b22d02a075fa4a6687d832274efb9bb5326f83eb65ab636a",
    "signature": "ICv/fOX5Q+cyenseN9njtkgwwFzaAyi4ziEW+9qlNfXIJfF0kFXrC+mtadqLNOzz/hfY+lMO+9c61i/NTcO7AA==",
    "public_key_pem": "-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEAwH2fYdYB5nD0CQslDtG3FgafcJBoOX2OGoT80Woksrk=\n-----END PUBLIC KEY-----\n",
    "verify_url": "https://apk-scanner.com/verify"
  }
}