Files
securebit-chat/locales/ar.json
T
lockbitchat 113bb107d3
CodeQL Analysis / Analyze CodeQL (push) Canceled after 0s
Deploy Application / deploy (push) Canceled after 0s
Mirror to Codeberg / mirror (push) Canceled after 0s
Mirror to PrivacyGuides / mirror (push) Canceled after 0s
feat(groups): audio and video calls in group chats; release v6.6.6
A group call is N-1 ordinary 1:1 calls, one to each other member, each riding
the pairwise session that member already has — a transport a human already
authenticated by comparing the safety code. No mixer, no SFU, no point at which
two people's media meets anywhere but on a device.

Call control is separate from call media, because the two reach different sets
of people. Who opened a call, who joined and who left travels as group frames
signed with the sender's group identity key, so it reaches members currently
reachable only through a relay — and a relaying member can drop one but cannot
write one. Media flows only where a direct link exists, so a member without one
shows as connecting rather than being omitted. Frames carry a per-sender
sequence checked before the action, so a captured leave cannot end a later call,
and simultaneous calls converge on the lower random call id.

One capture is shared across every leg rather than one getUserMedia per member,
and legs answer without prompting: the flag permitting that is set only locally,
only while this user is in the call, and cleared when they leave.

UI: a gallery that sizes itself from the space it has, a spotlight view, an
active-speaker indicator read from the waveform, and the call surface in the
same visual language as the 1:1 one.

Also in this commit, the v6.5.0 language-suggestion work that had not been
pushed yet; its notes are in the changelog. And two fixes: the safety-code input
asks for digits rather than text, and starting a new chat from inside a group no
longer creates it behind the group where it cannot be seen — which had made it
impossible to connect to anyone new, or to add anyone to a group, while a group
was open.

Claude-Session: https://claude.ai/code/session_01XSxAkET3hQTkYDQfbjCQwZ
2026-09-01 01:04:11 -04:00

812 lines
55 KiB
JSON

{
"htmlLang": "ar",
"ogLocale": "ar_AR",
"dir": "rtl",
"nativeName": "العربية",
"abbr": "AR",
"meta": {
"title": "SecureBit.chat - مراسلة خاصة ومشفّرة",
"description": "SecureBit.chat مراسلة مجانية ندٌّ لندّ بتشفير من الطرف إلى الطرف تعمل بالكامل داخل متصفحك. بلا حسابات وبلا خوادم تحفظ رسائلك - تبادل مفاتيح ECDH P-384 وتشفير AES-256-GCM وتحقّق SAS وجهاً لوجه.",
"keywords": "مراسلة مشفرة, تشفير من الطرف إلى الطرف, دردشة ند لند, مراسل P2P, ECDH, DTLS, تحقق SAS, WebRTC, دردشة خاصة, دردشة آمنة, بلا خوادم, بلا حسابات, الحماية من هجوم الوسيط, السرية التامة للأمام",
"ogTitle": "SecureBit.chat - دردشة ندٌّ لندّ مشفّرة من الطرف إلى الطرف",
"ogDescription": "مراسلة آمنة تعمل بالكامل داخل متصفحك. بلا حسابات وبلا خوادم تحفظ رسائلك. استخدم خوادم STUN/TURN الخاصة بك - نحن لا نفرض عليك شيئاً.",
"ogImageAlt": "SecureBit.chat - دردشة ندٌّ لندّ مشفّرة من الطرف إلى الطرف",
"twitterTitle": "SecureBit.chat - دردشة ندٌّ لندّ مشفّرة من الطرف إلى الطرف",
"twitterDescription": "مراسلة آمنة تعمل بالكامل داخل متصفحك. بلا حسابات وبلا خوادم تحفظ رسائلك.",
"twitterImageAlt": "SecureBit.chat - دردشة ندٌّ لندّ مشفّرة من الطرف إلى الطرف"
},
"schema": {
"siteDescription": "دردشة ندٌّ لندّ مشفّرة من الطرف إلى الطرف، تعمل بالكامل داخل متصفحك.",
"appDescription": "مراسلة مجانية ندٌّ لندّ بتشفير من الطرف إلى الطرف. بلا حسابات وبلا خوادم تحفظ الرسائل - ECDH P-384 وAES-256-GCM وتحقّق SAS وجهاً لوجه.",
"operatingSystem": "أي نظام (متصفح ويب حديث)",
"browserRequirements": "يتطلّب WebRTC وواجهة Web Crypto",
"featureList": [
"تشفير من الطرف إلى الطرف (ECDH P-384 و AES-256-GCM)",
"اتصال WebRTC ندٌّ لندّ بلا خوادم للرسائل",
"تحقّق SAS وجهاً لوجه ضدّ هجمات الوسيط",
"خوادم STUN/TURN خاصة بك ووضع الترحيل فقط للخصوصية",
"نقل ملفات مشفّر",
"تطبيق ويب تقدّمي قابل للتثبيت مع دعم العمل دون اتصال"
]
},
"manifest": {
"name": "SecureBit.chat - مراسلة خاصة ومشفّرة",
"short_name": "SecureBit",
"description": "مراسلة ندٌّ لندّ محميّة بـ ECDH وDTLS وSAS، بتعمية بمستوى عسكري"
},
"ui": {
"language.label": "اللغة",
"language.suggest.text": "هذه الصفحة متوفرة أيضًا بالعربية.",
"language.suggest.cta": "اقرأ بالعربية",
"language.suggest.dismiss": "إغلاق",
"community.title": "انضمّ إلى مستقبل الخصوصية",
"community.description": "ينمو SecureBit بفضل مجتمعه. أفكاركم وملاحظاتكم هي ما يصوغ مستقبل التواصل الآمن - مبنيّ في العلن، مع تحقّق ASN.1 كامل من طرف إلى طرف.",
"community.github": "مستودع GitHub",
"community.feedback": "الملاحظات",
"unique.eyebrow": "ما الذي يميّزنا",
"unique.heading": "لماذا SecureBit فريد",
"unique.s1.titleTop": "نواة تشفير",
"unique.s1.titleBottom": "متعدّدة الطبقات",
"unique.s1.collapsed": "نواة التشفير",
"unique.s1.desc": "تبادل مفاتيح ECDH P-384، وحمولات AES-256-GCM، وتواقيع ECDSA، وتحقّق ASN.1 كامل - مجموعة في خطّ واحد مُحصَّن.",
"unique.s1.tags": [
"ECDH P-384",
"AES-256-GCM",
"ECDSA",
"ASN.1"
],
"unique.s2.titleTop": "ندٌّ لندّ خالص",
"unique.s2.titleBottom": "عبر WebRTC",
"unique.s2.collapsed": "WebRTC ندٌّ لندّ خالص",
"unique.s2.desc": "تنتقل الرسائل مباشرةً بين الأجهزة عبر WebRTC. لا مُرحِّل يحتفظ ببياناتك - الخادم يساعد الطرفين على إيجاد بعضهما فقط.",
"unique.s2.tags": [
"DTLS 1.3",
"بلا مُرحِّل"
],
"unique.s3.titleTop": "سرّية تامّة",
"unique.s3.titleBottom": "إلى الأمام",
"unique.s3.collapsed": "السرّية التامّة للأمام",
"unique.s3.desc": "تتبدّل مفاتيح الجلسة باستمرار وتُتلَف بعد الاستعمال، فلا يفتح مفتاح واحد مسروق أيّ محادثة ماضية.",
"unique.s3.tags": [
"مفاتيح عابرة",
"تبديل تلقائي"
],
"unique.s4.titleTop": "تمويه",
"unique.s4.titleBottom": "حركة البيانات",
"unique.s4.collapsed": "تمويه حركة البيانات",
"unique.s4.desc": "تُحشى أحجام الحزم وتوقيتاتها وتُعشوَأ، فتختفي أنماط البيانات الوصفية عن أعين من يراقب الخطّ.",
"unique.s4.tags": [
"حشو الحزم",
"تشويش التوقيت"
],
"unique.s5.titleTop": "صفر",
"unique.s5.titleBottom": "جمعٍ للبيانات",
"unique.s5.collapsed": "صفر جمعٍ للبيانات",
"unique.s5.desc": "لا حسابات ولا سجلّات ولا تخزين للرسائل. لا شيء على خادم يمكن أن يتسرّب أو يُطلَب قضائياً أو يُباع.",
"unique.s5.tags": [
"بلا حسابات",
"بلا سجلّات"
],
"partners.eyebrow": "الشركاء والمنظومة",
"partners.heading": "شركاؤنا يثقون بنا",
"partners.aegis.desc": "شريك رأسمالي يؤمّن الاتصالات المالية السرّية عبر محفظته الاستثمارية.",
"partners.aegis.role": "داعم استراتيجي",
"partners.furilabs.desc": "هواتف لينكس تضع الخصوصية أولاً وتشحن SecureBit كقناة آمنة افتراضية.",
"partners.furilabs.role": "شريك تقني",
"partners.inviteTitle": "كن شريكاً",
"partners.inviteDesc": "هل تبني عتاداً أو بنية تحتية للخصوصية؟ لنُدمج SecureBit معاً.",
"partners.inviteCta": "ابدأ محادثة",
"roadmap.eyebrow": "خارطة طريق التطوير",
"roadmap.heading": "تطوّر SecureBit",
"roadmap.subheading": "من أوّل نموذج أوّلي إلى شبكة لامركزية مقاومة للحوسبة الكمّية - مع تحقّق ASN.1 كامل في كلّ طبقة.",
"roadmap.progress": "أُنجزت {shipped} من أصل {total} محطّة",
"roadmap.upcoming": "{upcoming} في الطريق",
"roadmap.keyFeatures": "أبرز المزايا",
"roadmap.status.released": "صدرت",
"roadmap.status.current": "الحالية",
"roadmap.status.dev": "قيد التطوير",
"roadmap.status.planned": "مُخطّطة",
"roadmap.status.research": "قيد البحث",
"hero.headlineTop": "خطٌّ مباشر",
"hero.headlineBottom": "لا يقرأه إلّا أنتما.",
"hero.subheading": "تُولَّد المفاتيح على جهازك وتُتبادَل ندّاً لندّ. بلا حسابات وبلا خوادم تحفظ رسائلك.",
"hero.diagramAlt": "خطّ مشفّر مباشر إلى طرف واحد، مع انضمام طرفين آخرين إلى الشبكة",
"intro.createTitle": "أنشئ قناة جديدة",
"intro.createDesc": "يولّد جهازك المفاتيح ودعوة تُستعمل مرّة واحدة. لا شيء يمرّ عبر خادم.",
"intro.createCta": "توليد المفاتيح والدعوة",
"intro.joinTitle": "انضمّ إلى قناة",
"intro.scanTitle": "امسح رمز QR بالكاميرا",
"intro.scanSubtitle": "الأسرع - وجّهها إلى شاشة الطرف الآخر",
"intro.orPasteCode": "أو ألصق الرمز",
"intro.pastePlaceholder": "ألصق رمز الدعوة هنا…",
"intro.connect": "اتّصل",
"intro.connecting": "جارٍ المعالجة…",
"roadmap.r1.title": "بداية التطوير",
"roadmap.r1.sub": "الفكرة والنموذج الأوّلي وتهيئة البنية التحتية",
"roadmap.r1.date": "أوائل 2025",
"roadmap.r1.features": [
"بلورة الفكرة والمتطلّبات",
"اختيار التقنيات: WebRTC وP2P والتعمية",
"أوّل نماذج للمراسلة",
"إنشاء المستودع والتكامل المستمر",
"بنية التشفير الأساسية",
"تصميم تجربة وواجهة الاستخدام"
],
"roadmap.r2.title": "إصدار ألفا",
"roadmap.r2.sub": "أوّل ألفا علنية: دردشة أساسية وتبادل مفاتيح",
"roadmap.r2.date": "ربيع 2025",
"roadmap.r2.features": [
"مراسلة ندٌّ لندّ أساسية عبر WebRTC",
"تشفير بسيط من طرف إلى طرف (مخطّط تجريبي)",
"إشارات مستقرّة وإعادة اتصال",
"واجهة بحدّها الأدنى للاختبار",
"جمع ملاحظات المختبِرين الأوائل"
],
"roadmap.r3.title": "تحصين أمني",
"roadmap.r3.sub": "تعزيز الأمان وإطلاق فرع مستقرّ",
"roadmap.r3.date": "صيف 2025",
"roadmap.r3.features": [
"تطبيق ECDH/ECDSA في الإنتاج",
"السرّية التامّة للأمام وتبديل المفاتيح",
"تحسين فحوص الاستيثاق",
"تشفير الملفّات ونقل الحمولات الكبيرة",
"تدقيق عمليات التعمية الأساسية"
],
"roadmap.r4.title": "التوسّع والاستقرار",
"roadmap.r4.sub": "توسيع الشبكة وتحسين الاستقرار",
"roadmap.r4.date": "خريف 2025",
"roadmap.r4.features": [
"تحسين اتصالات P2P واجتياز NAT",
"آليات إعادة الاتصال وطوابير الرسائل",
"خفض استهلاك البطارية على الهواتف",
"دعم المزامنة بين عدّة أجهزة",
"أدوات مراقبة وتسجيل للمطوّرين"
],
"roadmap.r5.title": "إصدار الخصوصية أوّلاً",
"roadmap.r5.sub": "التركيز على الخصوصية: تقليل البيانات الوصفية",
"roadmap.r5.date": "شتاء 2025",
"roadmap.r5.features": [
"حماية البيانات الوصفية وتقليل البصمة",
"تجارب على توجيه البصلة وجداول DHT",
"خيارات للاتصالات المجهولة",
"التحضير لتدقيق مفتوح للشيفرة",
"تحسين عمليات التحقّق من المستخدمين"
],
"roadmap.r6.title": "إصدار الأمان المعزَّز",
"roadmap.r6.sub": "تعمية بمستوى عسكري من 18 طبقة مع تحقّق ASN.1 كامل",
"roadmap.r6.date": "أواخر 2025",
"roadmap.r6.features": [
"أمان ثلاثي الطبقات: ECDH وDTLS وSAS",
"تشفير ECDH P-384 مع AES-GCM بطول 256 بت",
"التحقّق من بصمة DTLS",
"تحقّق SAS (سلسلة استيثاق قصيرة)",
"السرّية التامّة للأمام مع تبديل المفاتيح",
"حماية مُعزَّزة من هجمات الوسيط",
"تحقّق ASN.1 DER كامل",
"التحقّق من المعرّفات OID ونقاط المنحنى",
"التحقّق من بنية SPKI",
"بنية WebRTC ندٌّ لندّ",
"حماية البيانات الوصفية",
"شيفرة مفتوحة المصدر 100%"
],
"roadmap.r7.title": "إصدار سطح المكتب",
"roadmap.r7.sub": "تطبيقات أصلية لويندوز وماك ولينكس",
"roadmap.r7.date": "أوائل 2026",
"roadmap.r7.features": [
"تطبيق ويندوز (Tauri v2)",
"تطبيق macOS (Tauri v2)",
"دعم AppImage للينكس (Tauri v2)",
"إشعارات فورية",
"إعادة اتصال تلقائية",
"مزامنة بين الأجهزة",
"تحسين تجربة وواجهة الاستخدام",
"دعم ملفّات حتى 100 ميغابايت"
],
"roadmap.r8.title": "الصوت والمكالمات الآمنة",
"roadmap.r8.sub": "رسائل صوتية ومكالمات صوتية ومرئية مشفّرة",
"roadmap.r8.date": "أوائل 2026",
"roadmap.r8.features": [
"رسائل صوتية مشفّرة من طرف إلى طرف",
"مكالمات صوتية مشفّرة ثنائية (WebRTC)",
"مكالمات مرئية مشفّرة ثنائية (WebRTC)",
"سرّية تامّة للأمام للوسائط الحيّة",
"تدفّقات وسائط محميّة بـ SRTP/DTLS",
"تحقّق SAS أثناء المكالمة",
"إشعارات المكالمات وإعادة الاتصال التلقائية",
"وسائط ندٌّ لندّ بزمن استجابة منخفض"
],
"roadmap.r9.title": "المحادثات الجماعية",
"roadmap.r9.sub": "دردشات جماعية مع الحفاظ على الخصوصية",
"roadmap.r9.date": "الآن",
"roadmap.r9.features": [
"دردشات جماعية ندٌّ لندّ حتى 8 مشاركين",
"توصيل شبكي مع احتياطي ترحيل موقَّع",
"رمز أمان واحد للمجموعة يقارنه الجميع",
"مراسم الالتزام ثمّ الكشف ضدّ تخمين الرمز",
"مفاتيح هوية لكلّ مجموعة، عابرة بالتصميم",
"عضوية موقَّعة مع ترتيب حِقَبي",
"رسائل موقَّعة، فأيّ نصّ منقسم يمكن إثباته",
"بلا خادم وبلا مفتاح جماعي مشترك وبلا سجلّ"
],
"roadmap.r10.title": "إصدار الهواتف",
"roadmap.r10.sub": "تطبيقات أصلية لـ iOS وأندرويد",
"roadmap.r10.date": "الربع الثاني 2027",
"roadmap.r10.features": [
"تطبيق iOS أصلي (Swift/SwiftUI)",
"تطبيق أندرويد أصلي (Kotlin/Jetpack Compose)",
"دعم PWA لمتصفّحات الهواتف",
"إشعارات فورية مدفوعة",
"تحسين استهلاك البطارية",
"واجهة مهيّأة للهواتف",
"طابور رسائل دون اتصال",
"استيثاق حيوي"
],
"roadmap.r11.title": "إصدار مقاوم للكمّ",
"roadmap.r11.sub": "حماية من الحواسيب الكمّية",
"roadmap.r11.date": "الربع الرابع 2027",
"roadmap.r11.features": [
"تعمية ما بعد الكمّ CRYSTALS-Kyber",
"تواقيع رقمية SPHINCS+",
"مخطّط هجين: كلاسيكي + ما بعد الكمّ",
"تبادل مفاتيح آمن كمّياً",
"خوارزميات تجزئة محدَّثة",
"ترحيل الجلسات القائمة",
"توافق مع الإصدار 5.x",
"بروتوكولات مقاومة للكمّ"
],
"roadmap.r12.title": "شبكة لامركزية",
"roadmap.r12.sub": "شبكة لامركزية بالكامل",
"roadmap.r12.date": "2028",
"roadmap.r12.features": [
"شبكة عُقَد متشابكة",
"جدول DHT لاكتشاف الأقران",
"توجيه بصلي مدمج",
"اقتصاد رمزي وحوافز للعُقَد",
"حوكمة عبر منظّمة لامركزية",
"قابلية التشغيل البيني مع شبكات أخرى",
"توافق عبر المنصّات",
"شبكة ذاتية التعافي"
],
"roadmap.r13.title": "مساعد خصوصية بالذكاء الاصطناعي",
"roadmap.r13.sub": "ذكاء اصطناعي للخصوصية والأمان",
"roadmap.r13.date": "2028 وما بعدها",
"roadmap.r13.features": [
"تحليل تهديدات محلّي بالذكاء الاصطناعي",
"كشف تلقائي لهجمات الوسيط",
"تعمية تكيّفية",
"توصيات أمنية مخصّصة",
"تعلّم آلي بمعرفة صفرية",
"مساعد ذكاء اصطناعي خاصّ",
"أمان تنبّؤي",
"حماية ذاتية من الهجمات"
],
"handshake.step1": "توليد زوج مفاتيح ECDH P-384",
"handshake.step2": "اشتقاق رمز التحقّق",
"handshake.step3": "تثبيت السرّية التامّة للأمام",
"handshake.securingTitle": "جارٍ تأمين قناتك",
"handshake.answerTitle": "جارٍ بناء ردّك",
"handshake.securingDesc": "نصوغ مفاتيح قويّة بما يكفي لمقاومة العبث.",
"handshake.shareTitle": "شارِك دعوتك",
"handshake.sendAnswerTitle": "أعد إرسال ردّك",
"handshake.shareDesc": "أظهر رمز QR أو أرسل الرمز إلى الطرف الآخر. يُستعمل مرّة واحدة وينتهي سريعاً.",
"handshake.sendAnswerDesc": "أعطِ هذا الردّ لمُنشئ القناة كي يُتمّ المصافحة.",
"handshake.establish": "إنشاء الاتصال",
"handshake.thenReceive": "ثمّ استقبل الردّ الذي يرسله الطرف الآخر",
"handshake.pasteAnswerPlaceholder": "ألصق رمز ردّ الطرف الآخر…",
"handshake.answerSentNote": "أرسل هذا الردّ إلى المُنشئ ثمّ انتظر - تُفتح الدردشة حالما يتّصل.",
"handshake.qrHint": "أبقِ هذا مفتوحاً حتى يلتقط الطرف الآخر الرمز.",
"handshake.qrHintFrames": "المصافحة موزّعة على {frames} إطارات - أبقِ هذا مفتوحاً حتى يلتقطها الطرف الآخر كلّها.",
"verify.title": "التحقّق الأمني",
"verify.desc": "قارِن رمز الأمان هذا مع الطرف الآخر عبر قناة منفصلة (مكالمة أو لقاء مباشر)، ثمّ اكتبه لفتح الدردشة.",
"verify.enterLabel": "أدخل الرمز المُتحقَّق منه",
"verify.placeholder": "اكتب الرمز هنا",
"verify.confirm": "تأكيد الرمز",
"verify.confirmed": "مؤكَّد",
"verify.mismatch": "غير متطابقين",
"verify.yours": "تأكيدك",
"verify.peer": "تأكيد الطرف الآخر",
"verify.pending": "قيد الانتظار",
"verify.waiting": "بانتظار الرمز…",
"verify.verified": "تمّ التحقّق من القناة",
"verify.bothConfirmed": "أكّد الطرفان. جارٍ فتح الدردشة الآمنة…",
"pwa.bannerTitle": "ثبّت SecureBit.chat",
"pwa.bannerDesc": "احصل على تجربة تطبيق أصلي بأمان أعلى",
"pwa.install": "تثبيت",
"pwa.dismiss": "تجاهل",
"pwa.close": "إغلاق",
"pwa.iosTitle": "التثبيت على iOS",
"pwa.iosStep1": "اضغط زرّ المشاركة",
"pwa.iosStep1Hint": "عادةً في أسفل سفاري",
"pwa.iosStep2": "ابحث عن «إضافة إلى الشاشة الرئيسية»",
"pwa.iosStep2Hint": "مرّر لأسفل في قائمة المشاركة",
"pwa.iosStep3": "اضغط «إضافة»",
"pwa.iosStep3Hint": "أكّد لتثبيت SecureBit.chat",
"pwa.genericTitle": "تثبيت SecureBit",
"pwa.genericDesc": "لكلّ متصفّح طريقته في التثبيت. اختر الخطوات التي تناسب متصفّحك.",
"pwa.gotIt": "فهمت",
"pwa.installedTitle": "تمّ تثبيت التطبيق!",
"pwa.installedIos": "تمّ تثبيت تطبيق iOS! افتحه من الشاشة الرئيسية.",
"pwa.installedGeneric": "صار SecureBit.chat على جهازك",
"pwa.anytimeTitle": "ثبّته في أيّ وقت",
"pwa.anytimeDesc": "لا يزال بإمكانك تثبيت SecureBit.chat من قائمة متصفّحك للحصول على أفضل تجربة.",
"pwa.ok": "حسناً",
"step.open": "الخطوة 1 · افتح قناة",
"step.exchange": "الخطوة 2 · التبادل",
"step.verification": "الخطوة 3 · التحقّق",
"action.create": "إنشاء",
"action.join": "انضمام",
"action.back": "رجوع",
"action.copy": "نسخ",
"action.copied": "تمّ النسخ",
"action.scan": "مسح",
"action.downloadDesktop": "نزّل تطبيق سطح المكتب",
"action.advancedSettings": "إعدادات متقدّمة",
"cred.offerTag": "عرض · أو انسخ النصّ",
"cred.answerTag": "ردّ · أو انسخ النصّ",
"cred.reveal": "اضغط للكشف - أبقِ هذا الرمز سرّياً",
"qr.title": "امسح رمز QR",
"qr.subtitle": "وجّه كاميرتك إلى رمزهم",
"qr.scanning": "جارٍ المسح…",
"qr.hint": "ثبّت يدك حتى تُلتقط كلّ الأجزاء. الوصول إلى الكاميرا محلّي - لا يُرفع شيء.",
"mesh.you": "أنت",
"mesh.peer": "طرف · جلسة 1",
"mesh.joined2": "انضمّت mara · +2",
"mesh.joined3": "انضمّ tobi · +3",
"ice.title": "إعدادات الشبكة",
"ice.subtitle": "تُضبط محلّياً - ولا تُشارَك أبداً مع الطرف الآخر",
"ice.intro": "يستخدم SecureBit خوادم STUN عامّة افتراضياً للتفاوض على الوصلة بين الطرفين. وجّهه إلى STUN/TURN الخاصّ بك إن كنت تستضيفه بنفسك.",
"ice.publicTitle": "خوادم عامّة (افتراضي)",
"ice.publicDesc": "بلا إعداد. مناسبة لمعظم المستخدمين.",
"ice.customTitle": "خوادم STUN/TURN الخاصّة بي",
"ice.customDesc": "حتى {max} خوادم.",
"ice.turnNote": "يرى مُرحِّل TURN عنوان IP لكلا الطرفين وتوقيت حركة البيانات - لكنه لا يرى محتوى الرسائل أبداً، فهي تبقى مشفّرة من طرف إلى طرف. يُفضَّل ",
"ice.turnNoteTls": " (TLS).",
"ice.test": "اختبر الخوادم",
"ice.testing": "جارٍ الاختبار…",
"ice.relayTitle": "وضع الترحيل فقط",
"ice.relayBadge": "أقصى خصوصية",
"ice.relayDesc": "يوجّه كلّ حركة البيانات عبر TURN فلا يُكشف عنوان IP للطرف الآخر أبداً. يتطلّب خادم TURN.",
"ice.relayWarning": "وضع الترحيل فقط مفعَّل لكن لا يوجد خادم TURN مضبوط. لن يتمكّن الاتصال من البدء.",
"ice.persist": "احفظ على هذا الجهاز",
"ice.persistDesc": "يُخزَّن مشفَّراً في هذا المتصفّح. اتركه مُطفأً لاستخدامه في هذه الجلسة فقط.",
"ice.forget": "انسَ المحفوظ",
"ice.cancel": "إلغاء",
"ice.apply": "تطبيق",
"ice.errUnavailable": "WebRTC غير متاح في هذا المتصفّح",
"ice.errInvalid": "إعداد خادم غير صالح",
"update.title": "يتوفّر تحديث",
"update.desc": "رُصد إصدار أحدث من SecureBit.",
"update.currentVersion": "الإصدار الحالي",
"update.newVersion": "الإصدار الجديد",
"update.now": "حدّث الآن",
"update.later": "لاحقاً",
"update.unknown": "غير متاح",
"update.stepSaving": "جارٍ حفظ البيانات...",
"update.stepSwCaches": "جارٍ مسح مخابئ عامل الخدمة...",
"update.stepSwUnregister": "جارٍ إلغاء تسجيل عوامل الخدمة...",
"update.stepBrowserCache": "جارٍ مسح ذاكرة المتصفّح المؤقّتة...",
"update.stepVersion": "جارٍ تحديث الإصدار...",
"update.stepReload": "جارٍ إعادة تحميل التطبيق...",
"update.error": "خطأ في التحديث. يُرجى تحديث الصفحة يدوياً (Ctrl+F5 أو Cmd+Shift+R)",
"update.confirmSkip": "يتوفّر إصدار جديد. يُنصح بالتحديث للأمان والاستقرار. أتريد المتابعة دون تحديث؟",
"offline.backOnline": "عاد الاتصال",
"offline.mode": "وضع دون اتصال",
"offline.dismiss": "تجاهل",
"offline.lostTitle": "انقطع الاتصال",
"offline.lostDesc": "SecureBit الآن في وضع دون اتصال. بعض المزايا محدودة، لكن بياناتك تبقى آمنة.",
"offline.point1": "جلستك ومفاتيحك محفوظة",
"offline.point2": "لا تُخزَّن أيّ بيانات على الخوادم",
"offline.point3": "تُزامَن الرسائل والملفّات عند عودة الاتصال",
"offline.continue": "تابع دون اتصال",
"offline.restoredTitle": "عند عودة اتصالك",
"offline.restoredDesc": "انقطاع الاتصال لا يكلّفك شيئاً. يضع SecureBit كلّ شيء في طابور محلّي ويستأنف الجلسة المشفّرة لحظة عودتك.",
"offline.r1Title": "تصل رسائلك",
"offline.r1Desc": "كلّ ما كتبته دون اتصال يُرسَل إلى مراسلك تلقائياً.",
"offline.r2Title": "تكتمل الملفّات",
"offline.r2Desc": "تُستأنف عمليات الرفع من حيث توقّفت - لا حاجة لإعادة الإرسال.",
"offline.r3Title": "تصلك رسائلهم وملفّاتهم",
"offline.r3Desc": "كلّ ما أرسله مراسلك أثناء الانقطاع يصلك بالترتيب.",
"offline.r4Title": "لا شيء يضيع",
"offline.r4Desc": "بعد عودة الاتصال لا توجد فجوة - تكمل المحادثة تماماً من حيث توقّفت.",
"offline.gotIt": "فهمت",
"qr.showTitle": "أظهر رمز QR",
"qr.showSubtitle": "ملء الشاشة · دع الطرف الآخر يمسحه",
"qr.showSubtitleFrames": "ملء الشاشة · دع الطرف الآخر يمسح الإطارات الـ {frames} كلّها",
"notify.enabledBody": "فُعِّلت الإشعارات! ستصلك تنبيهات بالرسائل الجديدة.",
"notify.workingBody": "الإشعارات تعمل! ستصلك تنبيهات بالرسائل الجديدة.",
"pw.label": "إدخال كلمة المرور",
"pw.placeholder": "أدخل كلمة المرور...",
"pw.decrypt": "فكّ التشفير",
"pw.cancel": "إلغاء",
"file.title": "نقل الملفّات",
"file.drop": "أسقط الملفّات هنا",
"file.dropHint": "تُشفَّر من طرف إلى طرف قبل النقل · حتى 100 ميغابايت",
"file.browse": "تصفّح الجهاز",
"file.incoming": "طلب ملفّ وارد",
"file.accept": "قبول",
"file.reject": "رفض",
"file.download": "تنزيل",
"file.notReady": "الاتصال غير جاهز",
"file.tooLarge": "الملفّ كبير جداً",
"file.typeNotAllowed": "نوع الملفّ غير مسموح",
"file.maxConcurrent": "الحدّ الأقصى للنقل المتزامن",
"file.gone": "لم يعد هذا الملفّ متاحاً للتنزيل.",
"call.incoming": "مكالمة واردة",
"call.incomingVideo": "مكالمة مرئية واردة",
"call.encrypted": "مكالمة مشفّرة",
"call.encryptedShort": "مشفّرة",
"call.peer": "طرف آمن",
"call.connecting": "جارٍ الاتصال…",
"call.ringing": "جارٍ الرنين…",
"call.accept": "قبول",
"call.decline": "رفض",
"call.end": "إنهاء المكالمة",
"call.camera": "الكاميرا",
"call.cameraOff": "الكاميرا مُطفأة",
"call.peerCameraOff": "كاميرا الطرف الآخر مُطفأة",
"call.flipCamera": "تبديل الكاميرا",
"call.addVideo": "أضف الفيديو",
"call.video": "فيديو",
"call.muted": "مكتوم",
"call.expand": "توسيع",
"call.minimize": "تصغير",
"call.quality": "جودة الاتصال",
"call.qualityExcellent": "ممتازة",
"call.videoPrefix": "مرئية · ",
"call.voicePrefix": "صوتية · ",
"group.new": "مجموعة جديدة",
"group.create": "أنشئ مجموعة",
"group.join": "انضمّ إلى مجموعة",
"group.name": "اسم المجموعة",
"group.nameTooLong": "اسم المجموعة طويل جداً.",
"group.capacity": "حتى {max} أشخاص، ندٌّ لندّ. سيقارن الجميع رمز أمان واحداً قبل فتح المجموعة.",
"group.invite": "دعوة",
"group.inviteMore": "ادعُ أعضاء آخرين",
"group.invitePeople": "ادعُ {count} أشخاص",
"group.invitation": "دعوة مجموعة",
"group.addMembers": "أضف أعضاء",
"group.roomFor": "يتّسع لـ {remaining} آخرين. سيقارن الجميع رمز مجموعة جديداً بمجرّد انضمامهم.",
"group.membersCount": "{count} أعضاء",
"group.member": "عضو",
"group.members": "الأعضاء",
"group.remove": "أزل {name}",
"group.message": "راسِل {name}",
"group.leave": "مغادرة",
"group.leaveThis": "غادر هذه المجموعة",
"group.cancel": "ألغِ المجموعة",
"group.close": "إغلاق",
"group.cancelBtn": "إلغاء",
"group.decline": "رفض",
"group.working": "جارٍ العمل…",
"group.sasTitle": "رمز أمان المجموعة",
"group.sasEveryone": "يرى الجميع هذا الرمز",
"group.sasCompare": "قارِن رمز المجموعة مع كلّ عضو لفتح هذه المجموعة.",
"group.sasReadAloud": "اقرأ هذه الأرقام بصوت عالٍ إلى ",
"group.sasWarning": "إن قرأ عضو واحد رمزاً مختلفاً فهناك من يجلس بينكم. ألغِ المجموعة - لا تؤكّد.",
"group.confirmFirst": "أكّد رمز المجموعة أوّلاً",
"group.codeSuffix": " · رمز {code}",
"group.exchangingNonces": "جارٍ تبادل القيم العشوائية…",
"group.waitingCommit": "بانتظار التزام كلّ عضو…",
"group.waitingJoin": "بانتظار انضمام بقيّة الأعضاء…",
"group.emptyChat": "لا شيء هنا بعد. الرسائل موقَّعة من مُرسِلها وتنتقل عبر وصلة مشفّرة خاصّة بكلّ عضو.",
"group.noVerified": "لا توجد دردشات مُتحقَّق منها بعد. افتح دردشة ثنائية وقارِن رمز أمانها أوّلاً - المجموعة تُبنى من اتصالات فحصتها من قبل.",
"group.noMoreToAdd": "لا توجد دردشات مُتحقَّق منها أخرى لإضافتها. افتح دردشة ثنائية وقارِن رمز أمانها أوّلاً.",
"group.directLink": "وصلة مباشرة ندٌّ لندّ",
"group.noDirectLink": "لا وصلة مباشرة بعد - يُرحِّل عضو آخر الرسائل ريثما تُبنى واحدة",
"group.relayNote": "بعض الأعضاء ليست لديهم وصلة مباشرة بك بعد. تمرّ رسائلهم عبر عضو آخر يرى أنّكم تتحدّثون لكنه لا يستطيع قراءة ما وراء التوقيع ولا تغيير ما قلته. تواصل المجموعة محاولة وصلهم مباشرةً.",
"group.relayOnlyOff": "وضع الترحيل فقط مُطفأ، فيتّصل بك كلّ عضو مباشرةً ويعرف عنوان IP الخاصّ بك - بمن فيهم أعضاء دعاهم شخص آخر. فعّله من إعدادات الشبكة إن كان ذلك يهمّك هنا.",
"group.memberOffline": "{name} غير متّصل ولن يتلقّى الرسائل. لا يزال عضواً - إزالته تُعيد توليد مفاتيح المجموعة.",
"group.joinNote": "سيعرف بقيّة الأعضاء بوجودك في هذه المجموعة. لا سجلّ رسائل لتلحق به - المجموعة تبدأ فارغة.",
"group.inviteSentNote": "تواصل المجموعة عملها حتى يقبلوا. لا سجلّ يلحقون به - لن يروا إلّا ما يُرسَل من الآن.",
"group.errNotCreated": "لم تُنشأ المجموعة",
"group.errNobodyAccepted": "لم يقبل أحد الدعوة في الوقت المحدّد.",
"group.errNothingSent": "لم يُرسَل شيء ولم يُتحقَّق من شيء. أغلق هذا وحاول مجدّداً بعد اتصال الجميع.",
"group.errNotFormed": "تعذّر تكوين هذه المجموعة.",
"group.errFull": "هذه المجموعة ممتلئة.",
"group.errInviteFailed": "تعذّر إرسال الدعوة - تلك الدردشة غير متّصلة.",
"group.errNoMemberList": "لم يرسل مالك المجموعة قائمة الأعضاء قطّ.",
"group.errUnsignedList": "لم يوقّع مالك المجموعة قائمة الأعضاء. لا تُعِد المحاولة - أخبرهم.",
"group.errNotOwner": "حاول شخص غير مالك المجموعة تغيير الأعضاء.",
"hdr.tagline": "مشفَّر من طرف إلى طرف",
"hdr.netSettings": "إعدادات شبكة متقدّمة",
"hdr.netSettingsTitle": "إعدادات شبكة متقدّمة (STUN/TURN)",
"hdr.disconnect": "قطع الاتصال",
"status.connected": "متّصل",
"status.connecting": "جارٍ الاتصال...",
"status.notConnected": "غير متّصل",
"status.reconnecting": "جارٍ إعادة الاتصال...",
"status.retrying": "جارٍ إعادة المحاولة...",
"status.verifying": "جارٍ التحقّق...",
"status.peerDisconnected": "انقطع الطرف الآخر",
"sec.replayProtection": "الحماية من إعادة التشغيل",
"sec.messageIntegrity": "سلامة الرسالة (HMAC)",
"sec.forwardSecrecy": "السرّية التامّة للأمام",
"sec.metadataProtection": "حماية البيانات الوصفية",
"sec.trafficObfuscation": "تمويه حركة البيانات",
"sec.realTests": "اختبارات تعمية حقيقية",
"sec.simulatedData": "بيانات محاكاة",
"sec.testPassed": "نجح الاختبار",
"sec.testFailed": "فشل الاختبار أو غير متاح",
"sec.verificationDone": "اكتمل التحقّق التعموي الحقيقي",
"sec.verificationInProgress": "التحقّق الأمني جارٍ...",
"sec.verificationWait": "التحقّق الأمني جارٍ...\nيُرجى انتظار اكتمال التحقّق التعموي الآني.",
"sec.verificationUnavailable": "التحقّق الأمني غير متاح",
"chat.placeholder": "اكتب رسالة مشفّرة…",
"chat.send": "أرسل الرسالة",
"chat.sendFiles": "أرسل ملفّات",
"chat.hideFiles": "أخفِ الملفّات",
"chat.recordVoice": "سجّل رسالة صوتية",
"chat.sendVoice": "أرسل الرسالة الصوتية",
"chat.discard": "تجاهل",
"chat.codeBlock": "أرسل ككتلة شيفرة (يوسّع حقل الإدخال)",
"chat.codeHint": "مقتطف شيفرة · التنسيق محفوظ · ⌘↵ للإرسال",
"chat.viewOnce": "عرض لمرّة",
"chat.viewOnceTitle": "عرض لمرّة - يختفي بعد أن يقرأه الطرف الآخر",
"chat.viewOncePrefix": "عرض لمرّة · ",
"chat.viewOnceTap": "عرض لمرّة · اضغط للكشف",
"chat.viewedOnce": "شُوهد مرّة",
"chat.disappearing": "رسالة تختفي - تُحذف عند الطرفين",
"chat.disappearAfter": "تختفي بعد",
"chat.visibleFor": "ظاهرة لمدّة",
"chat.timerPrefix": "مؤقّت · ",
"chat.expired": "انتهت صلاحية هذه الرسالة",
"chat.deleteForEveryone": "احذف عند الجميع",
"chat.sending": "جارٍ الإرسال",
"chat.delivered": "وصلت",
"chat.notSent": "لم تُرسل",
"chat.notSentReason": "لم تُرسل - القناة الآمنة ليست جاهزة. أعد الاتصال للمتابعة.",
"chat.encrypted": "مشفّرة",
"chat.decrypted": "فُكّ تشفيرها",
"chat.encryptedOnDevice": "مشفّرة على جهازك",
"chat.uploading": "جارٍ الرفع",
"chat.downloading": "جارٍ التنزيل",
"chat.transferring": "جارٍ النقل…",
"chat.copied": "تمّ النسخ!",
"chat.collapse": "طيّ",
"chat.closeMenu": "أغلق القائمة",
"chat.newChat": "دردشة جديدة",
"chat.newGroup": "مجموعة جديدة",
"chat.createGroup": "أنشئ مجموعة",
"chat.groupChats": "الدردشات الجماعية",
"chat.secureChat": "دردشة آمنة",
"chat.nameThis": "سمِّ هذه الدردشة",
"chat.rename": "أعد تسمية الدردشة (محلّياً فقط)",
"chat.renameHint": "انقر نقرتين لإعادة التسمية",
"chat.localLabel": "تسمية محلّية · مخزَّنة على هذا الجهاز فقط",
"chat.setStatus": "اضبط حالتك",
"chat.yourStatusPrefix": "حالتك - ",
"chat.meshHint": "حتى 8 أطراف · شبكة ندٍّ لندّ",
"chat.offline": "غير متّصل",
"chat.noNetwork": "لا شبكة · جارٍ إعادة الاتصال",
"chat.startVoiceCall": "ابدأ مكالمة صوتية مشفّرة",
"chat.startVideoCall": "ابدأ مكالمة مرئية مشفّرة",
"chat.verifyForCalls": "تحقّق من الجلسة لتفعيل المكالمات",
"chat.e2eeNote": "كلّ رسالة تُشفَّر من طرف إلى طرف على جهازك قبل أن تغادره.",
"chat.peersOnly": "تُرسَل من طرف إلى طرف إلى الأقران المتّصلين فقط - ولا تُخزَّن على خادم أبداً.",
"flow.invitationCreated": "أُنشئت دعوة آمنة",
"flow.invitationCreatedBang": "أُنشئت دعوة آمنة ومشفّرة!",
"flow.responseCreated": "أُنشئ ردّ آمن",
"flow.responseCreatedBang": "أُنشئ ردّ آمن!",
"flow.sendInvitation": "أرسل رمز الدعوة إلى محدّثك عبر قناة آمنة (مكالمة صوتية أو رسالة نصّية وما إلى ذلك).",
"flow.sendResponse": "أرسل رمز الردّ إلى البادئ عبر قناة آمنة أو دعه يمسح رمز QR أدناه.",
"flow.sendEncryptedCode": "أرسل الرمز المشفّر",
"flow.sendTheResponse": "أرسل الردّ",
"flow.pasteOrWrite": "ألصق الرمز أو اكتبه…",
"flow.processingInvitation": "جارٍ معالجة الدعوة الآمنة...",
"flow.processingResponse": "جارٍ معالجة الردّ الآمن...",
"flow.finalizing": "جارٍ إتمام الاتصال الآمن...",
"flow.channelEstablished": "أُنشئت القناة الآمنة",
"flow.channelReady": "القناة الآمنة جاهزة",
"flow.restoring": "جارٍ استعادة الاتصال…",
"flow.invitationCaptured": "التُقطت الدعوة.",
"err.needInvitation": "عليك إدراج رمز الدعوة من محدّثك.",
"err.needResponse": "عليك إدراج رمز الردّ من محدّثك.",
"err.responseFormat": "صيغة الردّ غير صالحة - يُرجى التحقّق من الرمز",
"err.responseNoKey": "رمز الردّ غير صالح - مفتاح التعمية مفقود أو تالف. يُرجى التحقّق من الرمز والمحاولة مجدّداً.",
"err.responseNoSignKey": "رمز الردّ غير صالح - مفتاح التحقّق من التوقيع مفقود. يُرجى التحقّق من الرمز والمحاولة مجدّداً.",
"err.responseOutdated": "بيانات الردّ قديمة - يُرجى استخدام دعوة جديدة",
"err.setupError": "خطأ في تهيئة الاتصال",
"err.notReady": "الاتصال غير جاهز",
"err.securityBreach": "رُصد خرق أمني - رُفض الاتصال",
"err.securityValidation": "فشل التحقّق الأمني - يُحتمل وجود هجوم",
"err.retiredQr": "يستخدم رمز QR هذا صيغة متقاعدة تعذّر معها نقل الدعوة. اطلب من الطرف الآخر توليد رمز جديد، أو استخدم النسخ واللصق.",
"err.compressedQrNote": "قد يُغفل رمز QR المضغوط بيانات SDP اختصاراً. استخدم النسخ واللصق إن فشل الاتصال.",
"err.inviteNotConnected": "تعذّر إرسال الدعوة. تلك الدردشة غير متّصلة الآن.",
"err.inviteNotConnectedRetry": "تعذّر إرسال الدعوة. تلك الدردشة غير متّصلة الآن - أعد فتحها وحاول مجدّداً.",
"err.nobodyAccepted": "لم يقبل أحد الدعوة. المجموعة على حالها.",
"err.noAudio": "لم يُلتقط أيّ صوت - تحقّق من إذن الميكروفون وحاول مجدّداً.",
"err.voiceNeedsConnection": "تحتاج الرسالة الصوتية إلى اتصال آمن نشط. أعد الاتصال وحاول مجدّداً.",
"err.voiceRestoring": "جارٍ استعادة الاتصال - حاول إرسال الرسالة الصوتية بعد لحظة.",
"err.fileTooLarge": "الملفّ كبير جداً",
"sas.safetyNumber": "رقم الأمان",
"sas.incorrect": "رمز غير صحيح. تحقّق منه مع الطرف الآخر وحاول مجدّداً.",
"sas.noMatch": "الرمزان غير متطابقين",
"sas.makeSure": "تأكّد من تطابق الرمزين تماماً.",
"sas.tooManyAttempts": "محاولات خاطئة كثيرة. أُعيدت الجلسة إلى نقطة البدء حفاظاً على الأمان.",
"sas.verificationFailed": "فشل التحقّق",
"sas.verified": "مُتحقَّق منه · سرّية تامّة للأمام",
"sas.runVerification": "شغّل التحقّق الأمني",
"sec.panelTitle": "تفاصيل الشبكة والتعمية",
"sec.security": "الأمان",
"sec.transport": "النقل",
"sec.keyExchange": "تبادل المفاتيح",
"sec.allEnabled": "كلّ مزايا الأمان مفعَّلة افتراضياً",
"sec.realTimeNote": "تحقّق آنيّ باستخدام دوال تعمية حقيقية - لا بيانات وهمية.",
"sec.simulatedWarning": "تحذير: قد لا يكون الاتصال قائماً بالكامل - قد تكون القيم محاكاة.",
"dl.title": "نزّل SecureBit",
"dl.free": "مجّاني · مفتوح المصدر",
"dl.soon": "تطبيقات الهواتف (iOS وأندرويد) وإضافات المتصفّحات (Chrome وFirefox وOpera) قادمة قريباً.",
"chatHdr.chat": "دردشة",
"chatHdr.chats": "الدردشات",
"chatHdr.newChat": "+ جديدة",
"chatHdr.secure": "آمنة",
"chatHdr.p2pSub": "ندٌّ لندّ · مشفَّرة من طرف إلى طرف",
"chatHdr.save": "حفظ",
"chatHdr.close": "إغلاق",
"chatHdr.expand": "توسيع",
"chatHdr.you": "أنت",
"chatHdr.qrCode": "رمز QR",
"chat.disconnected": "غير متّصل",
"call.mute": "كتم",
"call.endShort": "إنهاء",
"group.add": "إضافة",
"group.send": "إرسال",
"sec.pfsShort": "السرّية التامّة للأمام",
"sec.cipher": "الشيفرة",
"chat.close": "إغلاق",
"file.needConnection": "نقل الملفّات يحتاج إلى اتصال مفتوح",
"presence.available": "متاح",
"presence.away": "بعيد",
"presence.busy": "مشغول",
"presence.offline": "غير متّصل",
"presence.invisible": "خفيّ",
"presence.availableDesc": "متّصل ويمكن الوصول إليه",
"presence.awayDesc": "خامل · ابتعد قليلاً",
"presence.busyDesc": "الرجاء عدم الإزعاج",
"presence.invisibleDesc": "تظهر غير متّصل للأقران",
"presence.online": "متّصل",
"conn.p2p": "ندٌّ لندّ · متّصل",
"conn.verifying": "جارٍ التحقّق…",
"conn.connecting": "جارٍ الاتصال…",
"conn.reconnecting": "جارٍ إعادة الاتصال…",
"conn.peerDisconnected": "انقطع الطرف الآخر",
"conn.disconnected": "غير متّصل",
"chat.defaultLabel": "دردشة",
"groupPhase.forming": "جارٍ التكوين…",
"groupPhase.commitments": "جارٍ تبادل الالتزامات…",
"groupPhase.revealing": "جارٍ الكشف…",
"groupPhase.compare": "قارِن رمز المجموعة",
"groupPhase.ready": "المجموعة جاهزة",
"groupPhase.failed": "فشلت المجموعة",
"call.qualityGood": "جيّدة",
"call.qualityFair": "مقبولة",
"call.qualityWeak": "ضعيفة",
"msg.code": "شيفرة",
"msg.timer": "مؤقّت",
"msg.voice": "صوت",
"msg.play": "تشغيل",
"msg.sent": "أُرسلت",
"msg.read": "قُرئت",
"report.title": "تحقّق أمني آنيّ",
"report.active": "نشط",
"report.testsPassed": "اختبارات ناجحة",
"report.verifiedAt": "تمّ التحقّق في",
"report.source": "المصدر",
"secTest.verifyECDHKeyExchange": "تبادل مفاتيح ECDH",
"secTest.verifyECDSASignatures": "تواقيع ECDSA الرقمية",
"secTest.verifyEncryption": "تشفير AES-GCM",
"secTest.verifyMessageIntegrity": "سلامة الرسالة",
"secTest.verifyPerfectForwardSecrecy": "السرّية التامّة للأمام",
"secTest.verifyPFS": "السرّية التامّة للأمام",
"secTest.verifyReplayProtection": "الحماية من إعادة التشغيل",
"secTest.verifyDTLSFingerprint": "بصمة DTLS",
"secTest.verifySASVerification": "تحقّق SAS",
"secTest.verifyMetadataProtection": "حماية البيانات الوصفية",
"secTest.verifyTrafficObfuscation": "تمويه حركة البيانات",
"secTest.verifyPacketPadding": "حشو الحزم",
"secTest.verifyNestedEncryption": "التشفير المتداخل",
"secTest.verifyNonExtractableKeys": "مفاتيح غير قابلة للاستخراج",
"secTest.verifyRateLimiting": "تحديد المعدّل",
"secTest.verifyMutualAuth": "استيثاق متبادل",
"secTest.verifyAuthProof": "برهان الاستيثاق",
"secTest.verifyEnhancedValidation": "تحقّق مُعزَّز",
"secTest.verifyAdvancedFeatures": "مزايا متقدّمة",
"secTest.verifySignature": "فحص التوقيع",
"secDetail.Security system initializing...": "جارٍ تهيئة نظام الأمان...",
"secDetail.Nested encryption active": "التشفير المتداخل نشط",
"secDetail.Nested encryption failed": "فشل التشفير المتداخل",
"secDetail.Packet padding active": "حشو الحزم نشط",
"secDetail.Packet padding failed": "فشل حشو الحزم",
"secDetail.Advanced features active": "المزايا المتقدّمة نشطة",
"secDetail.Advanced features failed": "فشلت المزايا المتقدّمة",
"secDetail.No encryption key available": "لا يتوفّر مفتاح تشفير",
"secDetail.AES-GCM encryption/decryption working correctly": "تشفير وفكّ تشفير AES-GCM يعملان بشكل صحيح",
"secDetail.No ECDH key pair available": "لا يتوفّر زوج مفاتيح ECDH",
"secDetail.Key derivation failed": "فشل اشتقاق المفتاح",
"secDetail.No ECDSA key pair available": "لا يتوفّر زوج مفاتيح ECDSA",
"secDetail.ECDSA digital signatures working correctly": "تواقيع ECDSA الرقمية تعمل بشكل صحيح",
"secDetail.MAC key not available or invalid": "مفتاح MAC غير متاح أو غير صالح",
"secDetail.Rate limiter did not block a message over the limit": "لم يمنع محدِّد المعدّل رسالة تجاوزت الحدّ",
"secDetail.Rate limiter is not available": "محدِّد المعدّل غير متاح",
"secDetail.Replay protection is working correctly": "الحماية من إعادة التشغيل تعمل بشكل صحيح",
"secDetail.Replay protection not enabled": "الحماية من إعادة التشغيل غير مفعَّلة",
"secDetail.SAS code not available": "رمز SAS غير متاح",
"secDetail.SAS verification code is valid and available": "رمز تحقّق SAS صالح ومتاح",
"secDetail.Traffic obfuscation is working correctly": "تمويه حركة البيانات يعمل بشكل صحيح",
"secDetail.Traffic obfuscation not enabled": "تمويه حركة البيانات غير مفعَّل",
"secDetail.No non-extractable ephemeral ECDH key pair for this session": "لا يوجد زوج مفاتيح ECDH عابر غير قابل للاستخراج لهذه الجلسة",
"secDetail.Session-level PFS only: keys are ephemeral per session, but the Double Ratchet is not active for this connection (peer on an older version), so a compromised session key exposes the whole conversation": "سرّية للأمام على مستوى الجلسة فقط: المفاتيح عابرة لكلّ جلسة، لكنّ السقّاطة المزدوجة غير نشطة في هذا الاتصال (الطرف الآخر على إصدار أقدم)، فتسريب مفتاح جلسة واحد يكشف المحادثة كلّها",
"msg.pause": "إيقاف مؤقّت",
"msg.failed": "فشلت",
"groupErr.timeout": "توقّف عضو عن الاستجابة قبل أن يجهز الرمز.",
"groupErr.keyMismatch": "لم يطابق مفتاح أحد الأعضاء الهويّة المدّعاة له.",
"groupErr.revealMismatch": "لم تطابق القيمة التي كشفها أحد الأعضاء ما التزم به.",
"groupErr.commitChanged": "غيّر أحد الأعضاء التزامه في منتصف الطريق.",
"groupErr.missingKey": "أُدرج عضو لم يصل مفتاحه قطّ.",
"groupErr.outsider": "وصل إطار من شخص خارج المجموعة.",
"groupErr.limit": "المجموعة محدودة بثمانية أعضاء.",
"groupErr.tooLarge": "كانت الرسالة أكبر من أن تُرسَل إلى المجموعة.",
"fileType.text": "نصّ عادي",
"fileType.images": "صور",
"fileType.archives": "أرشيفات",
"fileType.voice": "رسائل صوتية",
"fileType.unsupported": "غير مدعوم",
"qrScan.title": "امسح رمز QR",
"qrScan.auto": "الوضع التلقائي",
"qrScan.reset": "إعادة تعيين",
"qrScan.autoScroll": "التمرير التلقائي مفعَّل",
"qrScan.starting": "جارٍ تشغيل الكاميرا...",
"qrScan.point": "وجّه الكاميرا إلى رمز QR",
"qrScan.tapFocus": "اضغط الشاشة لضبط التركيز",
"qrScan.focusing": "جارٍ ضبط التركيز...",
"iceErr.notArray": "يجب أن تكون قائمة الخوادم مصفوفة",
"iceErr.invalidJson": "JSON غير صالح",
"iceErr.tooMany": "خوادم أكثر من اللازم (الحدّ الأقصى {max})",
"iceErr.invalidEntry": "{label}: مُدخَل غير صالح",
"iceErr.urlCount": "{label}: مطلوب بين 1 و{max} عنوان",
"iceErr.turnCreds": "{label}: عادةً تتطلّب خوادم TURN اسم مستخدم وبيانات اعتماد",
"iceUrl.notString": "يجب أن يكون العنوان نصّاً",
"iceUrl.empty": "العنوان فارغ",
"iceUrl.tooLong": "العنوان طويل جداً",
"iceUrl.badChars": "العنوان يحتوي على محارف غير صالحة",
"iceUrl.badScheme": "يجب أن يبدأ العنوان بـ stun: أو stuns: أو turn: أو turns:",
"iceUrl.badQuery": "استعلام العنوان غير صالح",
"iceUrl.noHost": "العنوان ينقصه المضيف",
"iceUrl.badHost": "مضيف العنوان أو منفذه غير صالح",
"iceUrl.badTransport": "يجب أن يكون استعلام العنوان transport=udp أو transport=tcp",
"msg.off": "مُطفأ",
"file.consentUnavailable": "موافقة المستخدم غير متاحة",
"secLevel.MAXIMUM": "الأقصى",
"secLevel.INITIALIZING": "قيد التهيئة",
"secLevel.ERROR": "خطأ",
"secLevel.UNKNOWN": "غير معروف",
"status.error": "خطأ",
"offline.disconnect": "قطع الاتصال",
"offline.learnMore": "اعرف المزيد",
"pwa.installApp": "ثبّت التطبيق",
"chat.onWeb": "أنت على الويب",
"groupCall.startVoice": "بدء مكالمة صوتية جماعية",
"groupCall.startVideo": "بدء مكالمة فيديو جماعية",
"groupCall.join": "انضمام",
"groupCall.dismiss": "ليس الآن",
"groupCall.leave": "مغادرة المكالمة",
"groupCall.you": "أنت",
"groupCall.connecting": "جارٍ الاتصال…",
"groupCall.waitingLink": "في انتظار رابط مباشر…",
"groupCall.legFailed": "تعذّر الاتصال",
"groupCall.startedVoice": "بدأ {name} مكالمة صوتية",
"groupCall.startedVideo": "بدأ {name} مكالمة فيديو",
"groupCall.inCall": "{count} في المكالمة",
"groupCall.err.permission_denied": "تعذّر بدء المكالمة - الوصول إلى الميكروفون والكاميرا محظور. اسمح به لهذا الموقع ثم أعد المحاولة.",
"groupCall.err.device_not_found": "تعذّر بدء المكالمة - لم يُعثر على ميكروفون في هذا الجهاز.",
"groupCall.err.device_busy": "تعذّر بدء المكالمة - الميكروفون مستخدَم من تطبيق آخر. أغلقه ثم أعد المحاولة.",
"groupCall.err.media_failed": "تعذّر بدء المكالمة - لم يمكن فتح الميكروفون.",
"groupCall.err.call_in_progress": "هناك مكالمة جارية بالفعل في هذه المجموعة. انضم إليها بدل بدء أخرى.",
"groupCall.err.not_ready": "أكّد رمز المجموعة قبل الاتصال.",
"groupCall.speaking": "{name} يتحدّث الآن",
"groupCall.pin": "عرض {name} بحجم كبير",
"groupCall.unpin": "العودة إلى الجميع",
"groupCall.showEveryone": "الجميع"
}
}