Rand Wallet für iOS
Eine native SwiftUI-App auf dem gemeinsamen Rust-Wallet-Kern, der als XCFramework eingebunden ist. Ihr Spend-Schlüssel bleibt im Schlüsselbund des iPhones hinter Face ID oder Touch ID, und die App kommuniziert mit nichts anderem als dem RPC-Endpunkt, den Sie auswählen.
Der Eintrag im App Store steht noch aus. Bis er die Prüfung besteht, bauen Sie sie unten aus dem Quellcode.
- Gebaut mit
- Swift · SwiftUI
- Vertrieb über
- TestFlight während der Testphase, danach der App Store
- Voraussetzung
- iOS 16 oder neuer
- Senden
- Beweist auf dem Telefon oder über den RandProtocol-Prover
Beweist auf dem Telefon oder über den RandProtocol-Prover
Auf einem Telefon mit etwa 8 GB Arbeitsspeicher erstellt die App den Beweis für eine Überweisung auf dem Gerät. Das dauert ein bis zwei Minuten; der Senden-Ablauf hält den Bildschirm wach und bittet Sie, die App geöffnet zu lassen.
Ein Bundle-Beweis erreicht eine Spitze von etwa 6,2 GB. Bei einem Telefon mit weniger Arbeitsspeicher würde iOS die App mitten im Beweis beenden, daher warnt der Prüfschritt mit den eigenen Werten des Geräts. Das Telefon nutzt dann standardmäßig den RandProtocol-Prover oder Ihren eigenen rand-prover über https (Einstellungen → Prover) und baut die Überweisung auf, während der Prover den Beweis erstellt.
Ein Gerät, das keinen Beweis erstellen kann, nutzt standardmäßig die RandProtocol-Prover: einige von den Validatoren betriebene Maschinen (heute vier, unter https://prover.randprotocol.org), gebührenfrei. Ab 0.6.9 hat jede ihren eigenen Schlüssel, den die Wallet fest hinterlegt (Pinning), und die Wallet weist vor dem ersten Senden darauf hin. Die Maschine, die einen Sendevorgang beweist, erhält den Viewing-Schlüssel der Wallet und ein einmaliges Salt: Ihr Betreiber kann den gesamten Verlauf der Wallet lesen, jede empfangene und gesendete Zahlung, aber nichts ausgeben. Der Spend-Schlüssel verlässt Ihr Gerät nie; dieses erstellt den kleinen Autorisierungsbeweis selbst. Für mehr Privatsphäre wählen Sie in den Einstellungen → Prover Ihren eigenen Prover, der dann stets bevorzugt wird; die Wallet prüft jeden Beweis, bevor sie ihn übermittelt.
Einen Prover koppeln, Schritt für Schritt: docs/prover.md.
Wo der Schlüssel liegt
Der Spend-Schlüssel ist das einzige Geheimnis der Wallet. Es gibt kein Konto und keinen Server, der eine Kopie hält: Geht der Schlüssel verloren, kann ihn niemand wiederherstellen. Sichern Sie ihn daher, sobald die Wallet ihn Ihnen anzeigt.
Swap, in der App
Ab 0.7.1 haben die Telefon-Apps den Swap-Bildschirm, den die Erweiterungen und die Desktop-App haben: RAND und Tokens über die Pools von durian.market handeln, ohne die Wallet zu verlassen. Das Telefon erstellt den Beweis des Programmaufrufs und die Ausgabeautorisierung selbst, wofür etwa 1,5 GB Arbeitsspeicher nötig sind; den großen Beweis erstellen die RandProtocol-Prover. Der Betrag, den Sie erhalten, ist exakt; bewegt sich zuvor der Pool, wird nichts gesendet, und Sie erhalten ein neues Angebot.
Bis der App-Store-Eintrag freigegeben ist
- Apple installiert eine App nur über TestFlight oder den App Store, daher gibt es für iOS keine Datei zum Herunterladen.
- Bauen Sie sie aus dem Clients-Repository in Xcode 16 oder neuer und führen Sie sie auf einem Simulator oder auf Ihrem eigenen Gerät aus.
- randpay:-Links öffnen den Senden-Bildschirm vorausgefüllt; nichts wird gesendet, bevor Sie bestätigen.
Toolchain: Rust 1.98.1, im Repository festgelegt und von rustup installiert. Die Build-Anleitung deckt jeden Client auf einer frisch aufgesetzten Maschine ab. Quellverzeichnisse: ios/, core/.
git clone --recurse-submodules https://github.com/randprotocol/clients.git && cd clients
git checkout v0.8.0 && git submodule update --init # die Version; core/vendor/fullnode @ v0.8.0 (c0878c3)
core/scripts/build-ios.sh # → ios/Frameworks/RandWalletCore.xcframework
open ios/RandWallet.xcodeproj # oder mit xcodebuild bauen, siehe unten
cd ios && xcodebuild -project RandWallet.xcodeproj -scheme RandWallet \
-destination 'platform=iOS Simulator,name=iPhone 17' build Was sie leistet, auf jeder Plattform
- Wallet erstellen
- Ein auf dem Gerät erzeugter Spend-Schlüssel, einmalig zur Sicherung angezeigt, und die daraus abgeleitete Adresse rand1…. Importieren Sie einen vorhandenen Schlüssel oder eine wallet.key.json aus der rand-CLI; jeder Client exportiert dieselbe Datei.
- Empfangen und senden
- Ihr Guthaben ist die Menge der Notes, die nur Ihr Schlüssel öffnen kann; die Wallet durchsucht den Commitment-Baum, um sie zu finden. Eine Überweisung von RAND oder eines beliebigen gelisteten RPL-Tokens ist ein einziges 4-in-4-out-Bundle, autorisiert durch einen Beweis. Niemand erfährt Sender, Empfänger, Betrag oder welcher Vermögenswert bewegt wurde.
- Faucet
- Auf einem testnet mit offenem Faucet prägt ein Tipp 100 RAND in eine Note, die nur Sie öffnen können.
- Nur offenlegen, was Sie wählen
- Kopieren Sie Ihren Viewing Key und öffnen Sie Meine Historie auf RandScan, um jede gesendete oder empfangene Note zu sehen, oder kopieren Sie den Transaktionsschlüssel einer einzelnen Zahlung, um genau diese Zahlung offenzulegen und nichts sonst. Der Explorer entschlüsselt in Ihrem Browser und sendet den Schlüssel nie irgendwohin.
Viewing-Schlüssel und Transaktionsschlüssel öffnen sich auf randscan.org.
Bevor Sie etwas senden
- Chain
- Der öffentliche Endpunkt bedient Chain 21, live seit 12. Okt. 2026 10:31 UTC (auf Basis von fullnode v0.8.0 geschnitten). Der Wallet-Kern bindet fullnode v0.8.0 (c0878c3) ein und lehnt jede andere Chain ab: Chain 21 läuft mit Constraint-Set 9, daher kann eine 0.7.x-Wallet darauf nicht senden, und diese Version kann nicht auf Chain 20 senden. Schlüssel und Adressen bleiben erhalten; eine Wallet, die Chain 20 gescannt hat, zeigt einmalig ein Banner „andere Chain“ und scannt erneut ab dem Genesis von Chain 21. Bridge-Einzahlungen und -Abhebungen unterliegen weiterhin einer Gebühr von 0,1 % in zUSD, die die Wallet vor der Abhebung anzeigt.
- RPC-Endpunkt
- Einstellungen → Network. Standardmäßig https://rpc.randprotocol.org; jeder erreichbare rand-node-RPC funktioniert, und eine gespeicherte URL wird geprüft, bevor sie behalten wird
- Beweiserstellung
- Ein Bundle-Beweis erreicht eine Spitze von etwa 6,2 GB Speicher und dauert auf einer Laptop-CPU etwa eine Minute
- Status
- Experimentelle testnet-Software. Nicht geprüft. RAND im testnet hat keinen realen Wert
- Lizenz
- GPL-3.0-only, wie die Full-Node-Crates, die jeder Client einbindet
Eine Wallet, jede Plattform
Dieselbe Schlüsseldatei, dasselbe Adressformat und dieselben Regeln überall: Eine hier erstellte Wallet lässt sich in jeden anderen Client und in die rand-CLI importieren.