{
  "title": "Protected app static-analysis sample",
  "app": {
    "package": "com.cryptnox.cryptnoxwallet",
    "version": "2.15.1",
    "build": "57"
  },
  "assessment": "Static indicators only",
  "runtimeVerified": false,
  "findings": [
    {
      "id": "certificate_pinning",
      "name": "Certificate pinning references",
      "technique": "network_protection",
      "confidence": "medium",
      "assessment": "Static indicator",
      "usage": "sdk_present",
      "confidenceBasis": "Single marker or reference; copied and unused markers remain possible",
      "runtimeVerified": false,
      "evidence": [
        {
          "file": "classes5.dex",
          "method": "Defined DEX class",
          "match": "okhttp3/CertificatePinner"
        }
      ]
    },
    {
      "id": "debugger_checks",
      "name": "Debugger check references",
      "technique": "anti_debug",
      "confidence": "medium",
      "assessment": "Static indicator",
      "usage": "method_referenced",
      "confidenceBasis": "Single marker or reference; copied and unused markers remain possible",
      "runtimeVerified": false,
      "evidence": [
        {
          "file": "classes3.dex",
          "method": "DEX method reference",
          "match": "Landroid/os/Debug;->isDebuggerConnected"
        },
        {
          "file": "classes4.dex",
          "method": "DEX method reference",
          "match": "Landroid/os/Debug;->isDebuggerConnected"
        },
        {
          "file": "classes4.dex",
          "method": "DEX method reference",
          "match": "Landroid/os/Debug;->waitingForDebugger"
        }
      ]
    },
    {
      "id": "pairip",
      "name": "PairIP",
      "technique": "app_integrity",
      "confidence": "medium",
      "assessment": "Static indicator",
      "usage": "sdk_present",
      "confidenceBasis": "Single marker or reference; copied and unused markers remain possible",
      "runtimeVerified": false,
      "evidence": [
        {
          "file": "classes2.dex",
          "method": "Defined DEX class",
          "match": "com/pairip/"
        }
      ]
    },
    {
      "id": "play_integrity",
      "name": "Google Play Integrity API",
      "technique": "integrity_api",
      "confidence": "medium",
      "assessment": "Static indicator",
      "usage": "sdk_present",
      "confidenceBasis": "Single marker or reference; copied and unused markers remain possible",
      "runtimeVerified": false,
      "evidence": [
        {
          "file": "classes4.dex",
          "method": "Defined DEX class",
          "match": "com/google/android/play/core/integrity"
        },
        {
          "file": "classes3.dex",
          "method": "Embedded text reference",
          "match": "com/google/android/play/core/integrity"
        }
      ]
    },
    {
      "id": "signature_checks",
      "name": "Signing certificate check references",
      "technique": "anti_tamper",
      "confidence": "medium",
      "assessment": "Static indicator",
      "usage": "method_referenced",
      "confidenceBasis": "Single marker or reference; copied and unused markers remain possible",
      "runtimeVerified": false,
      "evidence": [
        {
          "file": "classes3.dex",
          "method": "DEX method reference",
          "match": "Landroid/content/pm/SigningInfo;->getApkContentsSigners"
        },
        {
          "file": "classes3.dex",
          "method": "DEX method reference",
          "match": "Landroid/content/pm/SigningInfo;->getSigningCertificateHistory"
        }
      ]
    },
    {
      "id": "talsec",
      "name": "Talsec freeRASP",
      "technique": "runtime_checks",
      "confidence": "medium",
      "assessment": "Static indicator",
      "usage": "sdk_present",
      "confidenceBasis": "Single marker or reference; copied and unused markers remain possible",
      "runtimeVerified": false,
      "evidence": [
        {
          "file": "classes3.dex",
          "method": "Defined DEX class",
          "match": "com/aheaditec/talsec"
        }
      ]
    }
  ],
  "limitations": [
    "Deep code review was not requested.",
    "Some code was outside the review limits or could not be parsed."
  ],
  "scope": "No protection bypass or API recovery is claimed. This is an independent analysis sample, not a customer endorsement."
}
