منصوبے کے بارے میں

Keep ایک اینڈرائیڈ ایپلیکیشن ہے جو FROST (Flexible Round-Optimized Schnorr Threshold Signatures) تھری شولڈ سائننگ کے لیے بنائی گئی ہے، جو کہ نوسٹر ایونٹس کے لیے ایک مخصوص سائنر کے طور پر کام کرتی ہے۔ یہ صارفین کو اپنے فون پر FROST کلید کے حصے (key shares) رکھنے اور نوسٹر ایونٹس کو سائن کرنے کی اجازت دیتی ہے، اس طرح کہ کوئی بھی ایک ڈیوائس کبھی بھی مکمل نجی کلید (full private key) کو ہولڈ نہیں کرتی۔ یہ NIP-55 اینڈرائیڈ سائنر پروٹوکول (intents اور content provider) اور NIP-46 ریموٹ سائننگ (bunker service) کو نافذ کرتی ہے، تاکہ ہم آہنگ نوسٹر کلائنٹس براہ راست سائننگ کی درخواست کر سکیں۔ README میں بیان کردہ اہم صلاحیتیں: - 2-of-3 اور 3-of-5 جیسے قابل ترتیب اسکیموں کے ساتھ FROST تھری شولڈ سائننگ۔ - NIP-55 اینڈرائیڈ سائنر پروٹوکول اور NIP-46 ریموٹ سائننگ۔ - QR کوڈ یا ٹیکسٹ کے ذریعے FROST حصوں کی درآمد اور برآمد، نیز موجودہ nsec کلیدوں کی درآمد۔ - فی ایپ سائننگ کی اجازتوں اور پالیسیوں کے ساتھ کثیر اکاؤنٹس کی حمایت۔ - سائننگ کی تاریخ اور آڈیٹ لاگ (audit log)۔ - بائیومیٹرک اور پن (PIN) توثیق، اینڈرائیڈ کی اسٹور کے ذریعے ہارڈ ویئر سے محفوظ کلید اسٹوریج۔ - ہنگامی کلید حذف کرنے کے لیے ایک کلچ سوئچ (kill switch)۔ - ریلی کنکشنز کے لیے SOCKS پراکسی سپورٹ (Tor) اور سرٹیفکیٹ پننگ۔ - NIP-44 انکرپشن اور ڈیکرپشن، نیز NIP-04 آپریشنز۔ - قابل ترتیب ریٹ لمٹس کے ساتھ بیک گراؤنڈ سائننگ۔ - انکرپٹڈ بیک اپ اور بحالی۔ - ملٹی سگ کے لیے بٹ کوائن والیٹ ڈسکرپٹر کوآرڈینیشن۔ درج کردہ سپورٹڈ NIP-55 آپریشنز میں get_public_key، sign_event، nip04_encrypt، nip04_decrypt، nip44_encrypt، nip44_decrypt اور decrypt_zap_event شامل ہیں۔ تقسیم Zapstore، Obtainium، GitHub ریلیز اور F-Droid کے ذریعے کی جاتی ہے۔ بلڈنگ کے لیے مخصوص ٹول چین ورژنز درکار ہوتے ہیں: Rust 1.89.0، Android NDK 29.0.14206865، cargo-ndk 4.1.2 اور JDK 17؛ اگر ورژنز میں عدم مطابقت ہو تو بلڈ فوری طور پر ناکام ہو جاتا ہے۔ Gradle خودکار طور پر Rust لائبریریوں کو دوبارہ بلڈ کرتا ہے جب سورس کوڈ میں تبدیلی آتی ہے۔ ایک اسکرپٹ host build سے Kotlin bindings کو refresh کرنے کی اجازت دیتا ہے بغیر NDK کے، صرف typechecking کے لیے، تاہم ایسی بلڈز runtime پر UnsatisfiedLinkError کے ساتھ ناکام ہو جاتی ہیں۔ ایک اور اسکرپٹ build scripts اور CI workflows میں pinned ورژنز کی تصدیق کرتا ہے۔ GitHub issues اور pull requests کے ذریعے شراکت داری قبول کی جاتی ہے۔ ترجمے کی حوصلہ افزائی کی جاتی ہے، جس میں برازیلین پرتگالی، ہسپانوی، جرمن اور جاپانی seed locales شامل ہیں؛ ایک منظم ترجمہ پلیٹ فارم کو backlog میں نوٹ کیا گیا ہے، اور CI translations میں drift چیک کرتا ہے۔ پروجیکٹ MIT لائسنس کے تحت ہے۔