# Build Verification — 0.4.0 Sicherheits-Beta

Prüfdatum: 2026-08-23

## Artefakt

- Paket: `xyz.askmastr.mastrpass`
- Version: `0.4.0-security-beta` (`versionCode 6`)
- minSdk 28, targetSdk 35, compileSdk 35
- ABIs: `arm64-v8a`, `x86_64`
- APK-Grösse: `7,315,582` Byte
- APK-SHA-256:
  `332a146bd8e05b6691d10a395b521b726d0d594f5f5f628d5e3082039a2b9de2`

## Beta-Signatur

- APK Signature Scheme: v3
- Schlüssel: RSA 4096 Bit
- Zertifikat-DN: `CN=MASTRPass Security Beta 0.4.0, OU=Android Beta Build, O=MASTRlabs, C=CH`
- Zertifikat-SHA-256:
  `bfc972850a1136adea8ad3199e55d3219f3fdef292e61930b0f945ee7a535cf3`

Dies ist ein einmaliger Beta-Schlüssel, nicht der künftige owner-kontrollierte
Store-Schlüssel. Der private Schlüssel wird nicht ausgeliefert.

## Automatisierte Ergebnisse

- Android/JVM Release: 11/11 Tests bestanden, darunter Vollständigkeit aller
  sieben Sprachkataloge, rein deutsche Statuslabels, beide erklärten
  Entsperrvarianten ohne PIN/TOTP, Solana-Spendenadresse sowie vollständige und
  partielle Verteilung des Recovery-Keys auf 14 nummerierte Felder
- Android Lint Release: `No issues found.`
- R8-Minifizierung und Resource-Shrinking: erfolgreich
- `apksigner verify`: erfolgreich
- `zipalign -P 16`: erfolgreich
- ELF-LOAD-Segment-Ausrichtung beider Rust-Bibliotheken: `0x4000`
- Manifest: `USE_BIOMETRIC`; keine Internet-, Netzwerkstatus-, Kamera-, Medien-
  oder Speicherberechtigung. Die von AndroidX eingefügte app-eigene
  `DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION` gewährt keinen Datenzugriff.
- DEX-Prüfung: kein WebView, OkHttp, Retrofit oder HttpURLConnection-Marker
- JNI-Exports und beide nativen ABIs vorhanden
- Photo-Picker-Import begrenzt Dateigrösse, Format, Kantenlänge und Pixelzahl
- Geheimfelder verwenden keinen Android Saved State; sensible Clipboard-Inhalte
  werden markiert und nach 30 Sekunden nach bestem Bemühen entfernt
- Adaptive-, Round- und Monochrome-Icon-Ressourcen vorhanden
- offizielles Logo-Quellasset SHA-256:
  `38d99d09ae6f0293ab6c28af38f0949381856cf42c7ef8feec8e28d163b59f6d`;
  die Android-PNG-Konvertierung ist pixelidentisch (`0` abweichende Pixel)

Die Rust-Quellen und vorgebauten nativen Bibliotheken wurden gegenüber 0.3.1
nicht geändert. Ihre Hashes stimmen mit der zuvor verifizierten Basis überein.
Rust-Tests, Format- und Clippy-Prüfungen wurden in dieser konkreten
0.4.0-Build-Umgebung mangels Rust-/NDK-Toolchain nicht erneut ausgeführt. Neu und
noch nicht unabhängig auditiert ist insbesondere der Kotlin-basierte,
DEK-abgeleitete AES-GCM-Zusatzspeicher samt `MASTRB02`-Bundle-Import.

Build-Werkzeuge: Temurin JDK 17.0.20.1, Gradle 8.9, Android Gradle Plugin 8.7.3,
Android SDK 35 und Build Tools 35.0.0. Es standen kein Emulator und kein reales
Testgerät zur Verfügung; Geräte-/Instrumentationstests sind daher weiterhin
offen.

## Native Core Hashes

- arm64-v8a:
  `586f1a24654364e228951fed84ab182ee1810bf32ef9e3bf424a463b5bf8357e`
- x86_64:
  `7e8b8fbd5f44117f37dfc2cb41a99d223eeffe990fccf43f06552e2413663fe3`

## Was damit nicht bewiesen ist

Diese Prüfungen ersetzen weder ein unabhängiges Kryptografie-/Security-Audit
noch Penetrationstests, reproduzierbare Builds auf mehreren unabhängigen
Systemen oder Geräte-Instrumentationstests. Die Ausgabe bleibt ausdrücklich
eine Sicherheits-Beta.
