Die meisten Portfolio-Apps wollen ein Konto, eine E-Mail, oft sogar einen Börsen-Login. Sie laden deine Kurse aus dem Netz, speichern deine Bestände in der Cloud und wissen am Ende mehr über dein Vermögen als dir lieb ist. Der Sachwert-Tresor macht das Gegenteil: ein einziger, lokaler Tresor für deine Bitcoin-, Gold- und Silberkäufe — komplett offline, ohne Konto, ohne KYC, ohne Cloud. Deine Daten verlassen dein Gerät nie im Klartext.
Als App, nicht als Website
Für Android / GrapheneOS als signierte APK, für den Linux-Desktop als Flatpak — beide ohne Netz, beide mit demselben Tresor-Format.
→ So bekommst du ihnWas er kann
- Bitcoin, Gold & Silber — Käufe, Verkäufe und Entnahmen erfassen. Edelmetalle nach Stückzahl × Stückelung (Münze/Barren, Feinheit, Händler).
- Netto-Bestand & Wert — was du wirklich hältst, plus investierter Einstand. Aktuelle Preise trägst du selbst ein (bewusst keine Netz-Abfrage) oder fügst seit v3.9 die Kurszeile aus Mission Control ein → daraus Wert und Gewinn/Verlust.
- EUR, USD oder CHF — jede Buchung in ihrer Währung erfassen (seit v2.1). Summen bleiben je Währung getrennt, umgerechnet wird nichts — die App fragt keine Kurse ab. Optional mit EUR-Gegenwert vom Buchungstag, damit der Steuertool-Export vollständig bleibt.
- KYC-Trennung — Käufe über Broker (KYC) und privat/P2P (noKYC) bleiben sauber getrennt.
- Steuertool-Export — exportiert
manual_buys.csv/manual_sales.csvdirekt im Format des BTC-Steuertools. - Vermögensentwicklung (seit v2.12) — jeder Preis, den du in der Übersicht einträgst, wird mit Datum gemerkt (ein Stand je Tag). Der Verlauf zeichnet daraus den Wert deiner Bestände neben dem gestrichelten Einstand, mit Zeitraum-Umschaltern (YTD/1J/3J/5J/MAX) und einem Tooltip, der zu jedem Tag Wert, Einstand und Differenz nennt. Weiterhin keine Kursabfrage: bewertet wird ausschließlich mit deinen eigenen Ständen — und vor dem ersten Stand erscheint bewusst keine Wertlinie statt erfundener Zahlen.
- Nachlass-Anhang (seit v2.6) — ein Blatt mit den Netto-Beständen fürs Erben-Paket, im Aufbau des Nachlassplaners: Fassung, Datum, Vernichtungsvermerk, Hinweise in Erben-Sprache. Nur Mengen mit Stückelung, keine Preise, Händler oder Standorte. Der Tresor kennt die Mengen, der Planer die Orte — der Anhang bringt beides zusammen, ohne dass ein Werkzeug die Daten des anderen liest.
- Verschlüsseltes Backup & Sync — die
.vault-Datei ist vollständig verschlüsselt und lässt sich z.B. per Syncthing zwischen Geräten abgleichen, ganz ohne Cloud. Beim Wiederherstellen übernimmt die Übersicht seit v3.11 auch die Kurse, wenn das Backup Kurse von einem neueren Tag hat als das Gerät (nur ausgefüllte); ein älteres Backup ändert sie nie. - Zweisprachig — Deutsch und Englisch, umschaltbar in der App.
Warum offline?
Ein Bestands-Tracker ist eine Landkarte deines Vermögens. So etwas gehört nicht auf einen fremden Server. Der Sachwert-Tresor macht keine einzige Netz-Abfrage — keine Kurs-APIs, keine Tracker, keine externen Skripte. Auch Edelmetall- und Bitcoin-Kurse trägst du manuell ein. Das ist unbequemer als ein Live-Ticker, aber es ist der Preis dafür, dass niemand mitliest. Seit v3.9 geht es schneller: In Mission Control kopierst du eine Zeile mit den aktuellen Kursen (Bitcoin in Euro, Gold und Silber schon in Euro je Unze umgerechnet) und fügst sie im Tresor ein. Der Tresor zeigt dir die Werte vor der Übernahme und bleibt selbst ohne Netz – die Kurse kommen nur über die Zwischenablage zu ihm.
Sicherheit — und selbst prüfbar
- Verschlüsselung mit AES-256-GCM über die native WebCrypto der Browser-Engine (Android-WebView bzw. Electron). Den Schlüssel leitet seit v3.0 Argon2id aus deiner Passphrase ab (64 MiB Speicher, 3 Durchgänge): Jeder Rateversuch kostet Arbeitsspeicher, das macht Durchprobieren auf Grafikkarten und Spezialchips deutlich teurer als mit dem früheren PBKDF2. Argon2id stammt aus der quelloffenen Bibliothek hash-wasm (MIT), fest eingebunden und beim Build per SHA-256 geprüft.
- Alte Tresore und Backups öffnen weiter. Ein Tresor aus einer älteren Version wird beim ersten Entsperren automatisch umgestellt — geschrieben wird erst, nachdem die neue Datei zur Probe entschlüsselt wurde.
- Optionaler 2FA-Zweitfaktor (Aegis / TOTP, RFC 6238) beim Entsperren.
- Fehlversuchs-Bremse (seit v3.0) — nach 3 falschen Versuchen wächst eine Wartezeit bis 30 Sekunden. Ein Riegel gegen Durchprobieren am Gerät, kein Krypto-Schutz.
- Kein Reset, kein Backdoor. Wer die Passphrase vergisst, verliert die Daten — dafür kann auch niemand sonst ran.
- Open Source. Der komplette Client-Code ist öffentlich — du musst nicht vertrauen, du kannst nachsehen, dass nichts nach Hause telefoniert.
So bekommst du ihn
Als App (Android / GrapheneOS): bewusst nicht im Google Play Store, sondern über signierte Releases von der eigenen Download-Adresse api.alien-investor.org/downloads/sachwert-tresor/. Am einfachsten über Obtainium, das jedes Update automatisch meldet (Einrichtung im Blatt unten), oder aus dem Zapstore, dem App-Store auf Nostr. Ohne beides: die neueste APK von der Download-Seite laden und installieren. Jedes Release liegt zusätzlich als Spiegel auf GitHub.
Obtainium einrichten (Werte zum Kopieren)
Auf dem Handy mit installiertem Obtainium geht es mit einem Tipp, alle Einstellungen sind dann vorbelegt und Obtainium fragt vor dem Hinzufügen nach:
In Obtainium öffnen
Oder von Hand, in Obtainium :
-
https://api.alien-investor.org/downloads/sachwert-tresor/ - Unter :
sachwert-tresor-([0-9]+(\.[0-9]+)+)\.apk$ -
$1 - (so heißt es auch in der deutschen Obtainium-Fassung)
66:0F:21:0C:7A:28:9F:38:8B:B4:81:2C:23:82:5A:77:F1:FC:84:E6:A7:EE:58:D6:42:81:B6:BF:5C:D8:79:88 - Mit dem hinzufügen. Obtainium lädt die APK einmal, um die App zu erkennen. Ist der Sachwert-Tresor schon installiert, bleibt er, wie er ist.
Warum die RegEx? Auf einer Download-Seite liest Obtainium die Versionsnummer nur mit ihr aus dem Dateinamen. Ohne sie kennt es nur eine Ersatz-Kennung und kann die installierte Version nicht vergleichen. Der Zertifikats-Hash ist eine harte Sperre: Eine APK mit anderem Signaturschlüssel installiert Obtainium gar nicht.
Schon über GitHub eingerichtet? Dann musst du nichts ändern. GitHub bekommt jedes Release weiter als Spiegel, deine Updates kommen wie bisher.
Noch mit einer Codeberg-Adresse? Dort erscheinen keine Releases mehr. Einmalig: vorher ein .vault-Backup anlegen, den Eintrag „Sachwert-Tresor“
entfernen und im Dialog nur „Aus Obtainium entfernen“ eingeschaltet lassen („Vom Gerät deinstallieren“ aus, das löscht App und Daten),
dann wie oben neu hinzufügen. Obtainium erkennt die installierte App, Signatur und Paket-ID bleiben gleich.
Als Linux-Desktop-App (Flatpak, seit v3.3): siehe unten.
Signatur-Fingerprint (SHA-256) zum Prüfen der Echtheit mit AppVerifier, über alle Versionen gleich:
66:0F:21:0C:7A:28:9F:38:8B:B4:81:2C:23:82:5A:77:F1:FC:84:E6:A7:EE:58:D6:42:81:B6:BF:5C:D8:79:88
apksigner: 660f210c7a289f388bb4812c23825a77f1fc84e6a7ee58d64281b6bf5cd87988
Warum die Android-App mehr schützt als eine Website
Der Tresor ist bewusst keine Website: Die native App (seit v2.0) ist auf Betriebssystem-Ebene abgeriegelt, was eine Seite im Browser technisch nicht leisten kann:
- Keine INTERNET-Berechtigung. Der App ist das Netz-Recht im Android-Manifest komplett entzogen — sie kann gar keine Verbindung aufbauen. „Keine Telemetrie“ ist damit nachprüfbar, nicht nur versprochen. Ihre einzige System-Berechtigung ist seit v3.0
USE_BIOMETRICfür das optionale Fingerabdruck-Entsperren, dazuUSE_FINGERPRINT, das androidx.biometric mitbringt und die App auf Android bis 8.1 beschränkt. Die im Manifest zusätzlich gelistete…DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSIONist eine app-interne Signatur-Berechtigung von AndroidX ohne Systemzugriff. Der Build bricht ab, sobald die fertige APK eine andere Berechtigung anfordert. - FLAG_SECURE. Keine Screenshots, kein Screen-Recording, keine Bestands-Vorschau im App-Switcher. Seit v3.6.1 nimmt die App ihre Felder zusätzlich vom Android-Autofill-Framework aus: Ein anderer Passwort-Manager, der als Autofill-Dienst eingerichtet ist, sieht die Passphrase-Felder nicht und kann nicht anbieten, sie zu speichern.
- Tastatur-Bitte (seit v3.11). Jedes Eingabefeld bittet die Tastatur-App, daraus nichts zu lernen (Gboard zeigt dann sein Inkognito-Symbol). Das ist nur eine Bitte: Nicht jede Tastatur hält sich daran, und mitlesen kann sie trotzdem.
- Rückfragen im eigenen Dialog (seit v3.5). Löschen, mögliche Duplikate, 2FA/Fingerabdruck abschalten und „Lokale Daten löschen“ fragen in einem Dialog innerhalb der App nach, nicht über den Android-Systemdialog — der erbt FLAG_SECURE nicht, ein Screenshot bei offener Rückfrage hätte den Dialogtext gezeigt (intern gefunden beim Gerätetest der Schwester-App Alien Notes).
- Import nach dem Entsperren (seit v3.6). Läuft die Auto-Sperre ab, während der Datei-Picker offen ist, sperrt die App trotzdem – kein Schlüssel bleibt im Speicher. Die gewählte Datei (
.vaultoder CSV) geht dabei nicht verloren: Die App merkt sich nur den Verweis, liest nichts, solange sie zu ist, und nach dem Entsperren läuft der Import mit genau dieser Datei weiter (intern gefunden beim Gerätetest der Schwester-App Alien Pass). - Kein Cloud-/ADB-Backup, keine Übertragung beim Handywechsel. Deine Tresor-Daten landen in keinem automatischen Backup und werden beim Gerätewechsel nicht mitkopiert (seit v3.0) — Sicherungen machst nur du selbst über die verschlüsselte
.vault-Datei. - Fingerabdruck (optional, seit v3.0). Ein vom Android-Keystore verwahrter Zufallsschlüssel schließt den Datenschlüssel auf, freigegeben nur nach starker Biometrie. Ehrlich eingeordnet: bequem, aber erzwingbar, und kein zusätzlicher Faktor. Die Passphrase bleibt Pflicht nach jedem Neustart (seit v3.2 abwählbar: Haken „auch nach Neustart“ beim Aktivieren, ab Werk aus — die Wahl steckt im Fingerabdruck-Slot und ist dort mitauthentisiert), nach einem Passphrase-Wechsel (danach ist der Fingerabdruck aus und muss neu aktiviert werden), nach „Jetzt sperren“ und sobald in Android ein neuer Fingerabdruck registriert wird — dann schaltet die App den Fingerabdruck ab und warnt. Die Neustart-Regel ist Programmcode, keine kryptografische Garantie.
Am Handy also die APK — am Linux-Desktop das Flatpak, dessen Härtung im nächsten Abschnitt steht.
Für den Linux-Desktop (seit v3.3)
Derselbe Code wie auf dem Handy, verpackt als Flatpak (x86_64). Das Tresor-Format ist identisch: Ein Backup vom Handy
importierst du am Desktop und umgekehrt, zum Beispiel über Syncthing. Die Datei liegt im
GitHub-Release, zusammen mit
SHA256SUMS und der Signatur SHA256SUMS.asc. Dieselben drei Dateien liegen auch auf der eigenen Download-Adresse
unter api.alien-investor.org/downloads/sachwert-tresor/ (Dateinamen im README). Nicht auf Flathub, kein automatisches Update.
Installation und Update Schritt für Schritt: Anleitung Flatpak (für alle Desktop-Apps) oder das
README.
GPG-Release-Schlüssel für die Desktop-Pakete (derselbe wie bei Alien Pass): alien-investor-release-key.asc — Fingerabdruck:
100F 9E25 BFAE A807 DBC3 57D7 50C0 D785 83BF CB81
Desktop-Fassung, ehrlich eingeordnet
- Kein Netz, vom System erzwungen. Das Flatpak hat keine Netzwerk-Berechtigung und keinen Zugriff auf deine Dateien. Backup, Import, CSV-Export und Nachlass-Anhang laufen über den Dateidialog des Systems, der nur die gewählte Datei freigibt. Nachprüfbar mit
flatpak info --show-permissions org.alieninvestor.tresor. - Nachlass-Anhang als PDF. Im Käfig gibt es keinen Drucker — die Desktop-Fassung speichert das Blatt als PDF über den Speichern-Dialog. Wie CSV-Exporte ist das Klartext: nach Gebrauch löschen. Seit v3.11 geht das Blatt, wie CSV und
.txt, erst nach deiner Wahl im Speichern-Dialog an die Hülle: Sperrt die App, während der Dialog offen ist, wird nichts gespeichert. - Zwischenablage. Was die App kopiert (2FA-Schlüssel, Strg+C und Strg+X), ist für KDE als Passwort markiert, Klipper übernimmt es nicht in den Verlauf (unter Plasma geprüft; andere Zwischenablage-Programme können die Markierung ignorieren). Die App löscht ihre eigene Kopie nach 30 Sekunden, beim Sperren und beim Beenden. Seit v3.7 gilt das auch für Text, den du in der App markierst – unter X11 liegt er sofort in der Mittelklick-Auswahl, auch aus einem verdeckten Passwortfeld, etwa nach Tab in die ausgefüllte Passphrase. Klipper kann jede Kopie zusätzlich in diese Mittelklick-Auswahl spiegeln (Einstellung „Auswahl und Zwischenablage synchronisieren“) – die App löscht sie dort mit. Gelöscht wird nur, was noch von der App stammt. Markierter Text trägt die KDE-Markierung nicht: Wer in Klipper die Auswahl in den Verlauf übernehmen lässt, sollte das abschalten. Seit v3.10 markiert Strg+A nur noch den Inhalt eines gefüllten Text- oder Zahlenfeldes statt der ganzen Seite, und die App löscht auch Markierungen über Knöpfe, Felder und das Diagramm hinweg sowie markierte Beträge und Mengen. Ausnahmen: Eine Markierung, die über das Datumsfeld im Formular reicht, bleibt bis zur nächsten Markierung stehen, ebenso der Text eines Zahlenfeldes, wenn man auf dessen Pfeile klickt, während dort etwas anderes als die reine Zahl steht. Seit v3.11 löscht die App auch Text, den Strg+Z oder Strg+Y erst nach Ablauf der 30 Sekunden zurückholt, und den 2FA-Schlüssel, wenn man ihn beim Einrichten mit der Maus zieht.
- Eigene Browser-Engine. Die Desktop-App bringt Electron selbst mit. Sicherheits-Updates dafür kommen nur mit einer neuen App-Version, nicht über das System.
- Grenzen: kein Schutz vor Bildschirmfotos (Linux kennt kein Gegenstück zu FLAG_SECURE). Unter X11 kann jedes laufende Programm Tastatur und Zwischenablage mitlesen, Wayland trennt Programme besser. Bei Bildschirmsperre und Ruhezustand sperrt die App nicht von selbst: Systemsperre nutzen (vor allem beim Ruhezustand), dazu eine kurze Inaktivitäts-Sperre; Strg+L sperrt sofort. „Hintergrund“ heißt am Desktop minimiert oder versteckt — ein Fensterwechsel sperrt nicht, leert aber getippte Passphrasen. Kein Fingerabdruck.
- Herkunft: Hülle und Härtung sind der Port aus Alien Pass (dort drei interne Audits); die Hülle des Tresors wird mit Tests in der echten Hülle geprüft, mit v3.7 kam ein internes Security-Audit der Änderungen dazu, vor v3.10 ein gezieltes internes Audit in vier Runden, vor v3.11 ein internes Release-Audit der Änderungen in zwei Runden mit Nachprüfung; v3.11 übernimmt dazu Funde aus den internen Audits der Schwester-Apps Alien Pass und Alien Notes.
Open Source auf GitHub
Der Client-Code ist quelloffen (MIT-Lizenz) und kostenlos. Build-, Signatur- und Server-Interna bleiben privat, der prüfbare Teil — die App selbst — ist offen. Keine Konten, keine Server-Abhängigkeit.
Der Sachwert-Tresor ist kostenlos. Wenn er dir hilft, freut sich das Mutterschiff über etwas Treibstoff — siehe unten. Und wenn du deine Bitcoin-Käufe sauber versteuern willst, ist das BTC-Steuertool der nächste Schritt: der Tresor exportiert direkt in dessen Format.