Rand Wallet برای iOS
یک اپلیکیشن بومی SwiftUI روی هستهٔ مشترک کیف پول به زبان Rust که بهصورت XCFramework پیوند خورده است. کلید خرج شما پشت Face ID یا Touch ID در Keychain آیفون میماند و اپلیکیشن فقط با نقطهٔ پایانی RPC که شما برمیگزینید ارتباط برقرار میکند.
فهرستشدن در App Store هنوز در انتظار است. تا زمانی که بازبینی آن به پایان برسد، آن را از سورس، در پایین، بسازید.
- ساختهشده با
- Swift · SwiftUI
- توزیع از طریق
- در دوران آزمایش از طریق TestFlight، سپس App Store
- نیازمندیها
- iOS 16 یا جدیدتر
- ارسال
- روی گوشی اثبات میسازد، یا از طریق اثباتگر RandProtocol
روی گوشی اثبات میسازد، یا از طریق اثباتگر RandProtocol
روی گوشیای با حدود ۸ گیگابایت حافظه، اپلیکیشن اثبات انتقال را روی خود دستگاه میسازد. این کار یکی دو دقیقه طول میکشد و روند ارسال صفحه را روشن نگه میدارد و از شما میخواهد اپلیکیشن را باز نگه دارید.
اثبات یک بسته در اوج به حدود ۶٫۲ گیگابایت حافظه نیاز دارد. روی گوشیای با حافظهٔ کمتر، iOS اپلیکیشن را در میانهٔ اثبات متوقف میکرد؛ از این رو مرحلهٔ بازبینی با اعداد خود دستگاه هشدار میدهد. در این حالت گوشی بهطور پیشفرض از اثباتگر RandProtocol یا از rand-prover خودتان روی https (تنظیمات ← اثباتگر) استفاده میکند و در حالی که اثباتگر اثبات را میسازد، انتقال را خودش میسازد.
دستگاهی که نتواند اثبات بسازد، بهطور پیشفرض از اثباتگرهای RandProtocol استفاده میکند: چند ماشین که اعتبارسنجها اداره میکنند (امروز چهار ماشین، زیر https://prover.randprotocol.org) و بدون کارمزد. از نسخهٔ 0.6.9 هر کدام کلید مخصوص خود را دارد که کیف پول آن را سنجاق میکند و کیف پول پیش از نخستین ارسال این را اعلام میکند. ماشینی که یک ارسال را اثبات میکند، کلید مشاهدهٔ کیف پول و یک سالت یکبارمصرف را دریافت میکند: اپراتور آن میتواند کل تاریخچهٔ کیف پول، یعنی هر پرداخت دریافتی و ارسالی را بخواند، اما نمیتواند خرج کند. کلید خرج هرگز دستگاه شما را ترک نمیکند و خود دستگاه اثبات کوچک مجوز را میسازد. برای حریم خصوصی بیشتر، اثباتگر خودتان را در تنظیمات ← اثباتگر انتخاب کنید؛ از آن پس همیشه همان ترجیح داده میشود. کیف پول هر اثبات را پیش از ارسال بررسی میکند.
جفتسازی یک prover، گامبهگام: docs/prover.md.
کلید کجا نگهداری میشود
کلید خرجکردن تنها رازِ کیفپول است. هیچ حساب کاربری یا سروری که نسخهای از آن را نگه دارد وجود ندارد: اگر کلید را گم کنید هیچکس نمیتواند آن را بازیابی کند؛ پس وقتی کیفپول آن را نشانتان میدهد، ذخیرهاش کنید.
مبادله، درون اپلیکیشن
از نسخهٔ 0.7.1 اپلیکیشنهای گوشی همان صفحهٔ مبادلهای را دارند که افزونهها و اپلیکیشن دسکتاپ دارند: RAND و توکنها را از طریق استخرهای durian.market بدون ترک کیف پول معامله کنید. گوشی اثبات فراخوانی برنامه و مجوز خرج را خودش میسازد که حدود ۱٫۵ گیگابایت حافظه میخواهد، و اثباتگرهای RandProtocol اثبات بزرگ را میسازند. مقداری که دریافت میکنید دقیق است؛ اگر استخر پیش از شما تغییر کند، چیزی ارسال نمیشود و قیمت تازهای دریافت میکنید.
تا زمانی که فهرست App Store تأیید شود
- Apple فقط از TestFlight یا App Store اپلیکیشن نصب میکند، بنابراین برای iOS فایلی برای دانلود وجود ندارد.
- آن را از مخزن clients در Xcode 16 یا جدیدتر، روی شبیهساز یا دستگاه خودتان بسازید و اجرا کنید.
- پیوندهای randpay: صفحهٔ ارسال را از پیش پر شده باز میکنند؛ تا تأیید نکنید چیزی ارسال نمیشود.
زنجیرهٔ ابزار: Rust 1.98.1، که در مخزن پین شده است و rustup آن را نصب میکند. راهنمای ساخت همهٔ کلاینتها را از یک دستگاه تمیز پوشش میدهد. پوشههای سورس: ios/, core/.
git clone --recurse-submodules https://github.com/randprotocol/clients.git && cd clients
git checkout v0.8.0 && git submodule update --init # نسخهٔ نهایی؛ core/vendor/fullnode @ v0.8.0 (c0878c3)
core/scripts/build-ios.sh # → ios/Frameworks/RandWalletCore.xcframework
open ios/RandWallet.xcodeproj # یا با xcodebuild بسازید، در ادامه
cd ios && xcodebuild -project RandWallet.xcodeproj -scheme RandWallet \
-destination 'platform=iOS Simulator,name=iPhone 17' build کارهایی که انجام میدهد، روی هر پلتفرم
- ساخت کیفپول
- یک کلید خرجکردن که روی دستگاه تولید میشود و یک بار نشان داده میشود تا ذخیرهاش کنید، و نشانی rand1… که از آن مشتق میشود. یک کلید موجود را وارد کنید، یا یک wallet.key.json از CLI مربوط به rand؛ هر کلاینت همین فایل را صادر میکند.
- دریافت و ارسال
- موجودی شما مجموعهی noteهایی است که فقط کلید شما میتواند بازشان کند؛ کیفپول درخت تعهد را پویش میکند تا آنها را بیابد. انتقال RAND یا هر توکن RPL فهرستشده یک bundle چهار-ورودی چهار-خروجی است که یک اثبات آن را مجاز میکند. هیچکس فرستنده، گیرنده، مبلغ یا دارایی جابهجاشده را نمیفهمد.
- Faucet
- روی یک testnet با faucet باز، یک ضربه ۱۰۰ RAND را در یک note میریزد که فقط شما میتوانید بازش کنید.
- فقط آنچه میخواهید افشا کنید
- کلید مشاهدهی خود را کپی کنید و My history را در RandScan باز کنید تا هر note را که فرستاده یا دریافت کردهاید ببینید، یا کلید تراکنش یک پرداخت را کپی کنید تا دقیقاً همان پرداخت و هیچ چیز دیگر را افشا کنید. explorer در مرورگر شما رمزگشایی میکند و کلید را هرگز به جایی نمیفرستد.
کلیدهای مشاهده و کلیدهای تراکنش در randscan.org باز میشوند.
پیش از ارسال هر چیزی
- زنجیره
- نقطهٔ پایانی عمومی، زنجیرهٔ ۲۱ را سرویس میدهد که از 12 Oct 2026 10:31 UTC فعال است (بر پایهٔ fullnode v0.8.0 ساخته شده). هستهٔ کیف پول، fullnode v0.8.0 (c0878c3) را vendor میکند و هر زنجیرهٔ دیگری را رد میکند: زنجیرهٔ ۲۱ با مجموعهٔ قیود ۹ اجرا میشود، بنابراین کیف پول 0.7.x نمیتواند روی آن ارسال کند و این نسخه نمیتواند روی زنجیرهٔ ۲۰ ارسال کند. کلیدها و نشانیها منتقل میشوند؛ کیف پولی که زنجیرهٔ ۲۰ را اسکن کرده بود، یک بار بنر «زنجیرهٔ متفاوت» را نشان میدهد و از ژنزیس زنجیرهٔ ۲۱ دوباره اسکن میکند. واریزها و برداشتهای پل، کارمزد 0.1% به zUSD را حفظ میکنند که کیف پول پیش از برداشت نشان میدهد.
- نقطهی پایانی RPC
- Settings → Network. پیشفرض https://rpc.randprotocol.org است؛ هر RPC از rand-node که به آن دسترسی دارید کار میکند، و نشانی ذخیرهشده پیش از نگهداشتن بررسی میشود
- اثباتسازی
- اثبات یک bundle در اوج حدود ۶٫۲ گیگابایت حافظه مصرف میکند و روی پردازندهی یک لپتاپ حدود یک دقیقه طول میکشد
- وضعیت
- نرمافزار آزمایشی testnet. ممیزی نشده است. RAND روی testnet ارزش واقعی ندارد
- پروانه
- GPL-3.0-only، مانند crateهای full node که هر کلاینت به آنها پیوند میخورد
یک کیفپول، هر پلتفرم
همان فایل کلید، قالب نشانی و قواعد در همهجا: کیفپولی که اینجا ساخته شود در هر کلاینت دیگر و در CLI rand وارد میشود.