i18n: strings the desktop client needed, and its screenshots
The dictionaries here are the single source both clients read: the desktop
copies src/i18n/generated.js byte for byte, so a key added on either side is
available to the other.
* desktop.* — sentences only the desktop says. It has no QR display and no
browser to grant permissions, so its copy differs where the browser's would
mislead: "allow the microphone in system settings", not "for this site".
* msg.after5s and the rest of the disappearing-message timers, which this
client renders from hardcoded English today and can now translate too.
* secLevel.HIGH / MEDIUM / LOW, which the security panel needed and the
dictionary only had MAXIMUM for.
All of it translated into the full thirteen. Nothing here changes what this site
renders — the web client does not reference the new keys yet.
assets/screenshots/desktop-*.png are captures of the desktop client at 1.0.0,
for its Flathub listing. A reviewer opens each URL, so they have to be served
from this domain rather than from a code host.
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 191 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 160 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 146 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 235 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 161 KiB |
+76
-1
@@ -806,6 +806,81 @@
|
|||||||
"groupCall.speaking": "{name} يتحدّث الآن",
|
"groupCall.speaking": "{name} يتحدّث الآن",
|
||||||
"groupCall.pin": "عرض {name} بحجم كبير",
|
"groupCall.pin": "عرض {name} بحجم كبير",
|
||||||
"groupCall.unpin": "العودة إلى الجميع",
|
"groupCall.unpin": "العودة إلى الجميع",
|
||||||
"groupCall.showEveryone": "الجميع"
|
"groupCall.showEveryone": "الجميع",
|
||||||
|
"msg.after5s": "٥ ثوانٍ بعد القراءة",
|
||||||
|
"msg.after15s": "١٥ ثانية بعد القراءة",
|
||||||
|
"msg.after30s": "٣٠ ثانية بعد القراءة",
|
||||||
|
"msg.after1m": "دقيقة واحدة بعد القراءة",
|
||||||
|
"msg.sec30": "٣٠ ثانية",
|
||||||
|
"msg.min5": "٥ دقائق",
|
||||||
|
"msg.hour1": "ساعة واحدة",
|
||||||
|
"desktop.shareDesc": "أرسل الرمز إلى الطرف الآخر. يُستخدم مرة واحدة وينتهي سريعًا.",
|
||||||
|
"desktop.invitationCreated": "أُنشئت الدعوة الآمنة - أرسلها إلى الطرف الآخر.",
|
||||||
|
"desktop.joinDesc": "الصق رمز دعوة الطرف الآخر لبناء ردك الآمن.",
|
||||||
|
"desktop.offerTag": "دعوة · نسخ النص",
|
||||||
|
"desktop.answerTag": "رد · نسخ النص",
|
||||||
|
"desktop.offerPlaceholder": "سيظهر رمز الدعوة هنا…",
|
||||||
|
"desktop.answerPlaceholder": "سيظهر رمز الرد هنا…",
|
||||||
|
"desktop.backToChats": "العودة إلى المحادثات",
|
||||||
|
"desktop.sendFeedback": "إرسال ملاحظات",
|
||||||
|
"desktop.callsNeedVerified": "تتطلب المكالمات قناة آمنة مُتحقَّقًا منها.",
|
||||||
|
"desktop.noOpenChannel": "لا توجد قناة آمنة مفتوحة.",
|
||||||
|
"desktop.chatCarriesCall": "تحمل هذه المحادثة مكالمة جماعية. غادر المكالمة الجماعية قبل إجراء مكالمة فردية.",
|
||||||
|
"desktop.err.permission_denied": "تعذّر بدء المكالمة - الوصول إلى الميكروفون والكاميرا محظور. اسمح به في إعدادات النظام ثم أعد المحاولة.",
|
||||||
|
"desktop.language": "اللغة",
|
||||||
|
"desktop.languageHint": "يُطبَّق فورًا. الرسائل المُرسلة تبقى بالكلمات التي كُتبت بها.",
|
||||||
|
"desktop.compareCode": "قارن رمز التحقق مع الطرف الآخر وأكِّده إذا تطابق.",
|
||||||
|
"desktop.verifyBeforeFiles": "أكمل التحقق قبل إرسال الملفات.",
|
||||||
|
"desktop.verifyBeforeSending": "أكمل التحقق قبل إرسال الرسائل.",
|
||||||
|
"desktop.disconnectedByBackend": "أُغلق الاتصال بأمان.",
|
||||||
|
"desktop.restoreFailed": "تعذّرت استعادة الاتصال. سيتم إغلاق هذه المحادثة.",
|
||||||
|
"desktop.channelNotReady": "قناة البيانات غير متاحة بعد. انتظر حتى يُنشأ الاتصال.",
|
||||||
|
"desktop.enterCode": "أدخل رمز التحقق للتأكيد.",
|
||||||
|
"desktop.noOffer": "لم يُعثر على دعوة. أنشئ واحدة أولًا.",
|
||||||
|
"desktop.notInitiator": "لم تُنشئ هذا الاتصال، فلا يوجد رد لتطبيقه.",
|
||||||
|
"desktop.decryptFailed": "تعذّر فك تشفير رسالة، وقد أُهملت.",
|
||||||
|
"desktop.badMessageFormat": "وصل إطار مُشوَّه وأُهمل.",
|
||||||
|
"desktop.notSentNotReady": "لم تُرسل الرسالة: القناة الآمنة غير جاهزة. انتظر انتهاء التحقق أو أعد الاتصال.",
|
||||||
|
"desktop.micDenied": "رُفض الوصول إلى الميكروفون.",
|
||||||
|
"desktop.noChannelWait": "لا توجد قناة آمنة مفتوحة - انتظر حتى يُنشأ الاتصال.",
|
||||||
|
"desktop.sasFailed": "فشل التحقق. قد يوجد وسيط، لذلك أُلغي الاتصال.",
|
||||||
|
"desktop.sasOk": "نجح التحقق. هذه القناة موثَّقة من طرف إلى طرف.",
|
||||||
|
"desktop.iceForgotten": "نُسيت الخوادم المحفوظة. تُستخدم خوادم ICE العامة.",
|
||||||
|
"desktop.icePublic": "تُستخدم خوادم ICE العامة.",
|
||||||
|
"desktop.verificationInProgress": "ما زال التحقق الأمني جاريًا. انتظر حتى ينتهي.",
|
||||||
|
"desktop.fileGone": "لم يعد هذا الملف متاحًا للتنزيل.",
|
||||||
|
"desktop.codeMismatch": "رموز التحقق غير متطابقة. يجري قطع الاتصال حفاظًا على الأمان.",
|
||||||
|
"desktop.noLocalCode": "فشل التحقق: لا يوجد رمز مشتق محليًا للمقارنة. يجري قطع الاتصال حفاظًا على الأمان.",
|
||||||
|
"desktop.protocolViolation": "ادّعى الطرف الآخر تأكيد الرمز قبل أن تؤكّده أنت. يجري قطع الاتصال حفاظًا على الأمان.",
|
||||||
|
"desktop.verificationRejected": "رُفض التحقق. أُلغي الاتصال حفاظًا على الأمان.",
|
||||||
|
"secLevel.HIGH": "عالٍ",
|
||||||
|
"secLevel.MEDIUM": "متوسط",
|
||||||
|
"secLevel.LOW": "منخفض",
|
||||||
|
"desktop.rerun": "إعادة الفحص",
|
||||||
|
"desktop.ice.customDesc": "حتى {max} خادمًا، رابط واحد لكل سطر أو بصيغة JSON.",
|
||||||
|
"desktop.ice.persistDesc": "يُحفظ محليًا على هذا الجهاز. اتركه مطفأً لاستخدامه في هذه الجلسة فقط.",
|
||||||
|
"desktop.group.leaveNote": "يُبلَّغ بقية الأعضاء بأنك غادرت. بعد ذلك لا يبقى شيء من هذه المجموعة على هذا الجهاز - لا يوجد خادم يحتفظ بنسخة للعودة منها، لذا ستحتاج إلى دعوة جديدة.",
|
||||||
|
"desktop.sec.ecdsaOk": "تم التحقق من توقيع حزمة مفاتيح الطرف الآخر أثناء المصافحة (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "لا توجد مصافحة مكتملة",
|
||||||
|
"desktop.sec.ecdhOk": "اشتُقّت مفاتيح الجلسة من تبادل ECDH P-384 عابر عبر HKDF-SHA-256",
|
||||||
|
"desktop.sec.ecdhNone": "لم تُشتق مفاتيح جلسة",
|
||||||
|
"desktop.sec.encryptionOk": "تم التحقق من التشفير وفك التشفير AES-GCM داخل النواة",
|
||||||
|
"desktop.sec.encryptionNa": "تعذّر تشغيل الاختبار الذاتي لـ AES-GCM",
|
||||||
|
"desktop.sec.integrityOk": "تم التحقق من سلامة الرسائل (توثيق AES-GCM)",
|
||||||
|
"desktop.sec.integrityNa": "تعذّر تشغيل اختبار السلامة الذاتي",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet نشط - لكل رسالة مفتاحها الخاص",
|
||||||
|
"desktop.sec.pfsNa": "لم يُقَس",
|
||||||
|
"desktop.sec.replayOk": "تُتلَف مفاتيح رسائل الراتشيت فور استخدامها، فلا يمكن إعادة تشغيل إطار مُلتقَط",
|
||||||
|
"desktop.sec.replayNa": "لم يُقَس",
|
||||||
|
"desktop.sec.dtlsPinned": "تم تثبيت بصمة DTLS للطرف الآخر: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "لا تتوفر بصمة DTLS للطرف البعيد",
|
||||||
|
"desktop.sec.sasBoth": "أكّد الطرفان رمز الأمان خارج القناة",
|
||||||
|
"desktop.sec.sasIncomplete": "لم يؤكّد الطرفان رمز الأمان",
|
||||||
|
"desktop.sec.metadataOk": "اشتُقّ مفتاح مخصص للبيانات الوصفية (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "لا يوجد مفتاح للبيانات الوصفية",
|
||||||
|
"desktop.sec.coverOn": "حركة التمويه نشطة: إطارات وهمية عشوائية (32-128 بايت كل 15-30 ثانية) على قناة الراتشيت",
|
||||||
|
"desktop.sec.coverOff": "مولّد حركة التمويه لا يعمل",
|
||||||
|
"desktop.sec.coverUnsupported": "تحتاج حركة التمويه إلى جلسة Double Ratchet (الطرف الآخر على إصدار أقدم)",
|
||||||
|
"desktop.tagline": "حرية من طرف إلى طرف"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+76
-1
@@ -806,6 +806,81 @@
|
|||||||
"groupCall.speaking": "{name} spricht",
|
"groupCall.speaking": "{name} spricht",
|
||||||
"groupCall.pin": "{name} groß anzeigen",
|
"groupCall.pin": "{name} groß anzeigen",
|
||||||
"groupCall.unpin": "Zurück zu allen",
|
"groupCall.unpin": "Zurück zu allen",
|
||||||
"groupCall.showEveryone": "Alle"
|
"groupCall.showEveryone": "Alle",
|
||||||
|
"msg.after5s": "5 Sek. nach dem Lesen",
|
||||||
|
"msg.after15s": "15 Sek. nach dem Lesen",
|
||||||
|
"msg.after30s": "30 Sek. nach dem Lesen",
|
||||||
|
"msg.after1m": "1 Min. nach dem Lesen",
|
||||||
|
"msg.sec30": "30 Sekunden",
|
||||||
|
"msg.min5": "5 Minuten",
|
||||||
|
"msg.hour1": "1 Stunde",
|
||||||
|
"desktop.shareDesc": "Sende den Code an deinen Peer. Er gilt einmalig und läuft bald ab.",
|
||||||
|
"desktop.invitationCreated": "Sichere Einladung erstellt - sende sie an deinen Peer.",
|
||||||
|
"desktop.joinDesc": "Füge den Einladungscode deines Peers ein, um deine sichere Antwort zu erzeugen.",
|
||||||
|
"desktop.offerTag": "Einladung · Text kopieren",
|
||||||
|
"desktop.answerTag": "Antwort · Text kopieren",
|
||||||
|
"desktop.offerPlaceholder": "Hier erscheint der Einladungscode…",
|
||||||
|
"desktop.answerPlaceholder": "Hier erscheint der Antwortcode…",
|
||||||
|
"desktop.backToChats": "Zurück zu den Chats",
|
||||||
|
"desktop.sendFeedback": "Feedback senden",
|
||||||
|
"desktop.callsNeedVerified": "Anrufe erfordern einen verifizierten sicheren Kanal.",
|
||||||
|
"desktop.noOpenChannel": "Kein offener sicherer Kanal.",
|
||||||
|
"desktop.chatCarriesCall": "Über diesen Chat läuft ein Gruppenanruf. Verlasse den Gruppenanruf, bevor du einen Einzelanruf startest.",
|
||||||
|
"desktop.err.permission_denied": "Der Anruf konnte nicht starten - der Zugriff auf Mikrofon und Kamera ist blockiert. Erlaube ihn in den Systemeinstellungen und versuche es erneut.",
|
||||||
|
"desktop.language": "Sprache",
|
||||||
|
"desktop.languageHint": "Gilt sofort. Bereits gesendete Nachrichten behalten ihren Wortlaut.",
|
||||||
|
"desktop.compareCode": "Vergleiche den Prüfcode mit deinem Peer und bestätige ihn, wenn er übereinstimmt.",
|
||||||
|
"desktop.verifyBeforeFiles": "Schließe die Verifizierung ab, bevor du Dateien sendest.",
|
||||||
|
"desktop.verifyBeforeSending": "Schließe die Verifizierung ab, bevor du Nachrichten sendest.",
|
||||||
|
"desktop.disconnectedByBackend": "Verbindung sicher getrennt.",
|
||||||
|
"desktop.restoreFailed": "Die Verbindung konnte nicht wiederhergestellt werden. Dieser Chat wird geschlossen.",
|
||||||
|
"desktop.channelNotReady": "Der Datenkanal ist noch nicht verfügbar. Warte, bis die Verbindung steht.",
|
||||||
|
"desktop.enterCode": "Gib den Prüfcode zur Bestätigung ein.",
|
||||||
|
"desktop.noOffer": "Keine Einladung gefunden. Erstelle zuerst eine.",
|
||||||
|
"desktop.notInitiator": "Du hast diese Verbindung nicht erstellt, also gibt es für dich keine Antwort zum Anwenden.",
|
||||||
|
"desktop.decryptFailed": "Eine Nachricht konnte nicht entschlüsselt werden und wurde verworfen.",
|
||||||
|
"desktop.badMessageFormat": "Ein fehlerhaftes Frame kam an und wurde verworfen.",
|
||||||
|
"desktop.notSentNotReady": "Nachricht nicht gesendet: Der sichere Kanal ist nicht bereit. Warte, bis die Verifizierung abgeschlossen ist, oder verbinde dich neu.",
|
||||||
|
"desktop.micDenied": "Der Zugriff auf das Mikrofon wurde verweigert.",
|
||||||
|
"desktop.noChannelWait": "Kein offener sicherer Kanal - warte, bis die Verbindung steht.",
|
||||||
|
"desktop.sasFailed": "Verifizierung fehlgeschlagen. Möglicherweise sitzt jemand dazwischen, deshalb wurde die Verbindung abgebrochen.",
|
||||||
|
"desktop.sasOk": "Verifizierung erfolgreich. Dieser Kanal ist Ende zu Ende authentifiziert.",
|
||||||
|
"desktop.iceForgotten": "Gespeicherte Server verworfen. Es werden öffentliche ICE-Server verwendet.",
|
||||||
|
"desktop.icePublic": "Es werden öffentliche ICE-Server verwendet.",
|
||||||
|
"desktop.verificationInProgress": "Die Sicherheitsprüfung läuft noch. Warte, bis sie fertig ist.",
|
||||||
|
"desktop.fileGone": "Diese Datei steht nicht mehr zum Download bereit.",
|
||||||
|
"desktop.codeMismatch": "Die Prüfcodes stimmen nicht überein. Die Verbindung wird zur Sicherheit getrennt.",
|
||||||
|
"desktop.noLocalCode": "Verifizierung fehlgeschlagen: Es gibt keinen lokal abgeleiteten Code zum Vergleich. Die Verbindung wird zur Sicherheit getrennt.",
|
||||||
|
"desktop.protocolViolation": "Der Peer hat den Code als bestätigt ausgegeben, bevor du ihn bestätigt hast. Die Verbindung wird zur Sicherheit getrennt.",
|
||||||
|
"desktop.verificationRejected": "Verifizierung abgelehnt. Die Verbindung wurde zur Sicherheit abgebrochen.",
|
||||||
|
"secLevel.HIGH": "HOCH",
|
||||||
|
"secLevel.MEDIUM": "MITTEL",
|
||||||
|
"secLevel.LOW": "NIEDRIG",
|
||||||
|
"desktop.rerun": "Erneut prüfen",
|
||||||
|
"desktop.ice.customDesc": "Bis zu {max} Server, eine URL pro Zeile oder JSON.",
|
||||||
|
"desktop.ice.persistDesc": "Lokal auf diesem Gerät gespeichert. Aus lassen, um sie nur für diese Sitzung zu verwenden.",
|
||||||
|
"desktop.group.leaveNote": "Den anderen Mitgliedern wird mitgeteilt, dass du gegangen bist. Danach bleibt nichts von dieser Gruppe auf diesem Gerät - es gibt keinen Server mit einer Kopie, über den du zurückkehren könntest, du bräuchtest also eine neue Einladung.",
|
||||||
|
"desktop.sec.ecdsaOk": "Signatur des Schlüsselpakets der Gegenstelle beim Handshake geprüft (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "Kein abgeschlossener Handshake",
|
||||||
|
"desktop.sec.ecdhOk": "Sitzungsschlüssel aus einem flüchtigen ECDH-P-384-Austausch über HKDF-SHA-256 abgeleitet",
|
||||||
|
"desktop.sec.ecdhNone": "Keine Sitzungsschlüssel abgeleitet",
|
||||||
|
"desktop.sec.encryptionOk": "AES-GCM-Ver- und Entschlüsselung im Kern verifiziert",
|
||||||
|
"desktop.sec.encryptionNa": "Der AES-GCM-Selbsttest konnte nicht ausgeführt werden",
|
||||||
|
"desktop.sec.integrityOk": "Nachrichtenintegrität verifiziert (AES-GCM-Authentifizierung)",
|
||||||
|
"desktop.sec.integrityNa": "Der Integritäts-Selbsttest konnte nicht ausgeführt werden",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet aktiv - jede Nachricht hat ihren eigenen Schlüssel",
|
||||||
|
"desktop.sec.pfsNa": "Nicht gemessen",
|
||||||
|
"desktop.sec.replayOk": "Ratchet-Nachrichtenschlüssel werden nach Gebrauch vernichtet, ein mitgeschnittenes Frame lässt sich nicht erneut abspielen",
|
||||||
|
"desktop.sec.replayNa": "Nicht gemessen",
|
||||||
|
"desktop.sec.dtlsPinned": "DTLS-Fingerabdruck der Gegenstelle verankert: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "Kein DTLS-Fingerabdruck der Gegenstelle verfügbar",
|
||||||
|
"desktop.sec.sasBoth": "Beide Seiten haben den Sicherheitscode außerhalb des Kanals bestätigt",
|
||||||
|
"desktop.sec.sasIncomplete": "Der Sicherheitscode wurde nicht von beiden Seiten bestätigt",
|
||||||
|
"desktop.sec.metadataOk": "Ein eigener Metadatenschlüssel wurde abgeleitet (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "Kein Metadatenschlüssel",
|
||||||
|
"desktop.sec.coverOn": "Verdeckter Verkehr aktiv: zufällige Scheinframes (32-128 B alle 15-30 s) auf dem Ratchet-Kanal",
|
||||||
|
"desktop.sec.coverOff": "Der Generator für verdeckten Verkehr läuft nicht",
|
||||||
|
"desktop.sec.coverUnsupported": "Verdeckter Verkehr braucht eine Double-Ratchet-Sitzung (die Gegenstelle nutzt eine ältere Version)",
|
||||||
|
"desktop.tagline": "Ende-zu-Ende-Freiheit"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+76
-1
@@ -801,6 +801,81 @@
|
|||||||
"groupCall.speaking": "{name} is speaking",
|
"groupCall.speaking": "{name} is speaking",
|
||||||
"groupCall.pin": "Show {name} large",
|
"groupCall.pin": "Show {name} large",
|
||||||
"groupCall.unpin": "Back to everyone",
|
"groupCall.unpin": "Back to everyone",
|
||||||
"groupCall.showEveryone": "Everyone"
|
"groupCall.showEveryone": "Everyone",
|
||||||
|
"msg.after5s": "5s after reading",
|
||||||
|
"msg.after15s": "15s after reading",
|
||||||
|
"msg.after30s": "30s after reading",
|
||||||
|
"msg.after1m": "1m after reading",
|
||||||
|
"msg.sec30": "30 seconds",
|
||||||
|
"msg.min5": "5 minutes",
|
||||||
|
"msg.hour1": "1 hour",
|
||||||
|
"desktop.shareDesc": "Send the code to your peer. It is one-time and expires shortly.",
|
||||||
|
"desktop.invitationCreated": "Secure invitation created - send it to your peer.",
|
||||||
|
"desktop.joinDesc": "Paste your peer's invitation code to build your secure answer.",
|
||||||
|
"desktop.offerTag": "offer · copy text",
|
||||||
|
"desktop.answerTag": "answer · copy text",
|
||||||
|
"desktop.offerPlaceholder": "Invitation code will appear here…",
|
||||||
|
"desktop.answerPlaceholder": "Response code will appear here…",
|
||||||
|
"desktop.backToChats": "Back to chats",
|
||||||
|
"desktop.sendFeedback": "Send feedback",
|
||||||
|
"desktop.callsNeedVerified": "Calls require a verified secure channel.",
|
||||||
|
"desktop.noOpenChannel": "No open secure channel.",
|
||||||
|
"desktop.chatCarriesCall": "This chat is carrying a group call. Leave the group call before placing a 1:1 call.",
|
||||||
|
"desktop.err.permission_denied": "The call could not start - microphone and camera access is blocked. Allow it in system settings, then try again.",
|
||||||
|
"desktop.language": "Language",
|
||||||
|
"desktop.languageHint": "Applies at once. Messages already sent keep the words they were written in.",
|
||||||
|
"desktop.compareCode": "Compare the verification code with your peer and confirm if it matches.",
|
||||||
|
"desktop.verifyBeforeFiles": "Complete verification before sending files.",
|
||||||
|
"desktop.verifyBeforeSending": "Complete verification before sending messages.",
|
||||||
|
"desktop.disconnectedByBackend": "Connection securely disconnected.",
|
||||||
|
"desktop.restoreFailed": "Could not restore the connection. Closing this chat.",
|
||||||
|
"desktop.channelNotReady": "The data channel is not available yet. Wait for the connection to establish.",
|
||||||
|
"desktop.enterCode": "Enter the verification code to confirm.",
|
||||||
|
"desktop.noOffer": "No invitation found. Create one first.",
|
||||||
|
"desktop.notInitiator": "You did not create this connection, so there is no answer for you to apply.",
|
||||||
|
"desktop.decryptFailed": "A message could not be decrypted and was discarded.",
|
||||||
|
"desktop.badMessageFormat": "A malformed frame arrived and was discarded.",
|
||||||
|
"desktop.notSentNotReady": "Message not sent: the secure channel is not ready. Wait for verification to finish, or reconnect.",
|
||||||
|
"desktop.micDenied": "Microphone access was denied.",
|
||||||
|
"desktop.noChannelWait": "No open secure channel - wait for the connection to establish.",
|
||||||
|
"desktop.sasFailed": "Verification failed. A machine-in-the-middle may be present, so the connection was aborted.",
|
||||||
|
"desktop.sasOk": "Verification succeeded. This channel is authenticated end to end.",
|
||||||
|
"desktop.iceForgotten": "Saved servers forgotten. Using public ICE servers.",
|
||||||
|
"desktop.icePublic": "Using public ICE servers.",
|
||||||
|
"desktop.verificationInProgress": "Security verification is still running. Wait for it to finish.",
|
||||||
|
"desktop.fileGone": "This file is no longer available for download.",
|
||||||
|
"desktop.codeMismatch": "The verification codes do not match. Disconnecting for safety.",
|
||||||
|
"desktop.noLocalCode": "Verification failed: there is no locally derived code to compare against. Disconnecting for safety.",
|
||||||
|
"desktop.protocolViolation": "The peer claimed the code was confirmed before you confirmed it. Disconnecting for safety.",
|
||||||
|
"desktop.verificationRejected": "Verification rejected. The connection was aborted for safety.",
|
||||||
|
"secLevel.HIGH": "HIGH",
|
||||||
|
"secLevel.MEDIUM": "MEDIUM",
|
||||||
|
"secLevel.LOW": "LOW",
|
||||||
|
"desktop.rerun": "Re-run",
|
||||||
|
"desktop.ice.customDesc": "Up to {max} servers, one URL per line or JSON.",
|
||||||
|
"desktop.ice.persistDesc": "Stored locally on this device. Leave off to use only for this session.",
|
||||||
|
"desktop.group.leaveNote": "The other members are told you left. Nothing about this group is kept on this device afterwards - there is no server holding a copy to rejoin from, so you would need a fresh invitation.",
|
||||||
|
"desktop.sec.ecdsaOk": "Peer key package signature verified during the handshake (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "No completed handshake",
|
||||||
|
"desktop.sec.ecdhOk": "Session keys derived from an ephemeral ECDH P-384 exchange via HKDF-SHA-256",
|
||||||
|
"desktop.sec.ecdhNone": "No session keys derived",
|
||||||
|
"desktop.sec.encryptionOk": "AES-GCM encryption and decryption verified inside the core",
|
||||||
|
"desktop.sec.encryptionNa": "The AES-GCM self-test could not be run",
|
||||||
|
"desktop.sec.integrityOk": "Message integrity verified (AES-GCM authentication)",
|
||||||
|
"desktop.sec.integrityNa": "The integrity self-test could not be run",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet active - every message has a key of its own",
|
||||||
|
"desktop.sec.pfsNa": "Not measured",
|
||||||
|
"desktop.sec.replayOk": "Ratchet message keys are destroyed once used, so a captured frame cannot be replayed",
|
||||||
|
"desktop.sec.replayNa": "Not measured",
|
||||||
|
"desktop.sec.dtlsPinned": "Peer DTLS fingerprint pinned: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "No remote DTLS fingerprint available",
|
||||||
|
"desktop.sec.sasBoth": "Both peers confirmed the out-of-band safety code",
|
||||||
|
"desktop.sec.sasIncomplete": "The safety code has not been confirmed by both peers",
|
||||||
|
"desktop.sec.metadataOk": "A dedicated metadata key was derived (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "No metadata key",
|
||||||
|
"desktop.sec.coverOn": "Cover traffic active: random fake frames (32-128 B every 15-30 s) on the ratcheted channel",
|
||||||
|
"desktop.sec.coverOff": "The cover traffic generator is not running",
|
||||||
|
"desktop.sec.coverUnsupported": "Cover traffic needs a Double Ratchet session (the peer is on an older release)",
|
||||||
|
"desktop.tagline": "End-to-end freedom"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+76
-1
@@ -806,6 +806,81 @@
|
|||||||
"groupCall.speaking": "{name} está hablando",
|
"groupCall.speaking": "{name} está hablando",
|
||||||
"groupCall.pin": "Ver a {name} en grande",
|
"groupCall.pin": "Ver a {name} en grande",
|
||||||
"groupCall.unpin": "Volver a todos",
|
"groupCall.unpin": "Volver a todos",
|
||||||
"groupCall.showEveryone": "Todos"
|
"groupCall.showEveryone": "Todos",
|
||||||
|
"msg.after5s": "5 s tras leerse",
|
||||||
|
"msg.after15s": "15 s tras leerse",
|
||||||
|
"msg.after30s": "30 s tras leerse",
|
||||||
|
"msg.after1m": "1 min tras leerse",
|
||||||
|
"msg.sec30": "30 segundos",
|
||||||
|
"msg.min5": "5 minutos",
|
||||||
|
"msg.hour1": "1 hora",
|
||||||
|
"desktop.shareDesc": "Envía el código a tu par. Es de un solo uso y caduca pronto.",
|
||||||
|
"desktop.invitationCreated": "Invitación segura creada: envíasela a tu par.",
|
||||||
|
"desktop.joinDesc": "Pega el código de invitación de tu par para construir tu respuesta segura.",
|
||||||
|
"desktop.offerTag": "invitación · copiar texto",
|
||||||
|
"desktop.answerTag": "respuesta · copiar texto",
|
||||||
|
"desktop.offerPlaceholder": "El código de invitación aparecerá aquí…",
|
||||||
|
"desktop.answerPlaceholder": "El código de respuesta aparecerá aquí…",
|
||||||
|
"desktop.backToChats": "Volver a los chats",
|
||||||
|
"desktop.sendFeedback": "Enviar comentarios",
|
||||||
|
"desktop.callsNeedVerified": "Las llamadas requieren un canal seguro verificado.",
|
||||||
|
"desktop.noOpenChannel": "No hay ningún canal seguro abierto.",
|
||||||
|
"desktop.chatCarriesCall": "Este chat está transportando una llamada de grupo. Sal de la llamada de grupo antes de iniciar una llamada 1:1.",
|
||||||
|
"desktop.err.permission_denied": "La llamada no pudo iniciarse: el acceso al micrófono y la cámara está bloqueado. Permítelo en los ajustes del sistema e inténtalo de nuevo.",
|
||||||
|
"desktop.language": "Idioma",
|
||||||
|
"desktop.languageHint": "Se aplica al instante. Los mensajes ya enviados conservan sus palabras.",
|
||||||
|
"desktop.compareCode": "Compara el código de verificación con tu par y confírmalo si coincide.",
|
||||||
|
"desktop.verifyBeforeFiles": "Completa la verificación antes de enviar archivos.",
|
||||||
|
"desktop.verifyBeforeSending": "Completa la verificación antes de enviar mensajes.",
|
||||||
|
"desktop.disconnectedByBackend": "Conexión cerrada de forma segura.",
|
||||||
|
"desktop.restoreFailed": "No se pudo restablecer la conexión. Cerrando este chat.",
|
||||||
|
"desktop.channelNotReady": "El canal de datos aún no está disponible. Espera a que se establezca la conexión.",
|
||||||
|
"desktop.enterCode": "Introduce el código de verificación para confirmar.",
|
||||||
|
"desktop.noOffer": "No se encontró ninguna invitación. Crea una primero.",
|
||||||
|
"desktop.notInitiator": "No creaste esta conexión, así que no hay ninguna respuesta que aplicar.",
|
||||||
|
"desktop.decryptFailed": "No se pudo descifrar un mensaje y se descartó.",
|
||||||
|
"desktop.badMessageFormat": "Llegó una trama con formato incorrecto y se descartó.",
|
||||||
|
"desktop.notSentNotReady": "Mensaje no enviado: el canal seguro no está listo. Espera a que termine la verificación o vuelve a conectarte.",
|
||||||
|
"desktop.micDenied": "Se denegó el acceso al micrófono.",
|
||||||
|
"desktop.noChannelWait": "No hay canal seguro abierto: espera a que se establezca la conexión.",
|
||||||
|
"desktop.sasFailed": "La verificación falló. Puede haber alguien en medio, así que se abortó la conexión.",
|
||||||
|
"desktop.sasOk": "Verificación correcta. Este canal está autenticado de extremo a extremo.",
|
||||||
|
"desktop.iceForgotten": "Servidores guardados olvidados. Se usarán servidores ICE públicos.",
|
||||||
|
"desktop.icePublic": "Se usarán servidores ICE públicos.",
|
||||||
|
"desktop.verificationInProgress": "La verificación de seguridad sigue en curso. Espera a que termine.",
|
||||||
|
"desktop.fileGone": "Este archivo ya no está disponible para descargar.",
|
||||||
|
"desktop.codeMismatch": "Los códigos de verificación no coinciden. Desconectando por seguridad.",
|
||||||
|
"desktop.noLocalCode": "Verificación fallida: no hay código derivado localmente con el que comparar. Desconectando por seguridad.",
|
||||||
|
"desktop.protocolViolation": "El par afirmó que el código estaba confirmado antes de que tú lo confirmaras. Desconectando por seguridad.",
|
||||||
|
"desktop.verificationRejected": "Verificación rechazada. La conexión se abortó por seguridad.",
|
||||||
|
"secLevel.HIGH": "ALTO",
|
||||||
|
"secLevel.MEDIUM": "MEDIO",
|
||||||
|
"secLevel.LOW": "BAJO",
|
||||||
|
"desktop.rerun": "Volver a ejecutar",
|
||||||
|
"desktop.ice.customDesc": "Hasta {max} servidores, una URL por línea o JSON.",
|
||||||
|
"desktop.ice.persistDesc": "Guardado localmente en este dispositivo. Déjalo desactivado para usarlo solo en esta sesión.",
|
||||||
|
"desktop.group.leaveNote": "Se avisa a los demás miembros de que te has ido. Después no queda nada de este grupo en este dispositivo: ningún servidor guarda una copia desde la que volver, así que necesitarías una invitación nueva.",
|
||||||
|
"desktop.sec.ecdsaOk": "Firma del paquete de claves del par verificada durante el saludo (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "No hay un saludo completado",
|
||||||
|
"desktop.sec.ecdhOk": "Claves de sesión derivadas de un intercambio ECDH P-384 efímero mediante HKDF-SHA-256",
|
||||||
|
"desktop.sec.ecdhNone": "No se derivaron claves de sesión",
|
||||||
|
"desktop.sec.encryptionOk": "Cifrado y descifrado AES-GCM verificados en el núcleo",
|
||||||
|
"desktop.sec.encryptionNa": "No se pudo ejecutar la autocomprobación de AES-GCM",
|
||||||
|
"desktop.sec.integrityOk": "Integridad de los mensajes verificada (autenticación AES-GCM)",
|
||||||
|
"desktop.sec.integrityNa": "No se pudo ejecutar la autocomprobación de integridad",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet activo: cada mensaje tiene su propia clave",
|
||||||
|
"desktop.sec.pfsNa": "No medido",
|
||||||
|
"desktop.sec.replayOk": "Las claves de mensaje del ratchet se destruyen al usarse, así que una trama capturada no puede reproducirse",
|
||||||
|
"desktop.sec.replayNa": "No medido",
|
||||||
|
"desktop.sec.dtlsPinned": "Huella DTLS del par fijada: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "No hay huella DTLS remota disponible",
|
||||||
|
"desktop.sec.sasBoth": "Ambos pares confirmaron el código de seguridad fuera de banda",
|
||||||
|
"desktop.sec.sasIncomplete": "El código de seguridad no ha sido confirmado por ambos pares",
|
||||||
|
"desktop.sec.metadataOk": "Se derivó una clave de metadatos dedicada (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "Sin clave de metadatos",
|
||||||
|
"desktop.sec.coverOn": "Tráfico de cobertura activo: tramas falsas aleatorias (32-128 B cada 15-30 s) en el canal con ratchet",
|
||||||
|
"desktop.sec.coverOff": "El generador de tráfico de cobertura no está en marcha",
|
||||||
|
"desktop.sec.coverUnsupported": "El tráfico de cobertura requiere una sesión Double Ratchet (el par usa una versión anterior)",
|
||||||
|
"desktop.tagline": "Libertad de extremo a extremo"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+76
-1
@@ -806,6 +806,81 @@
|
|||||||
"groupCall.speaking": "{name} در حال صحبت است",
|
"groupCall.speaking": "{name} در حال صحبت است",
|
||||||
"groupCall.pin": "نمایش بزرگ {name}",
|
"groupCall.pin": "نمایش بزرگ {name}",
|
||||||
"groupCall.unpin": "بازگشت به همه",
|
"groupCall.unpin": "بازگشت به همه",
|
||||||
"groupCall.showEveryone": "همه"
|
"groupCall.showEveryone": "همه",
|
||||||
|
"msg.after5s": "۵ ثانیه پس از خواندن",
|
||||||
|
"msg.after15s": "۱۵ ثانیه پس از خواندن",
|
||||||
|
"msg.after30s": "۳۰ ثانیه پس از خواندن",
|
||||||
|
"msg.after1m": "۱ دقیقه پس از خواندن",
|
||||||
|
"msg.sec30": "۳۰ ثانیه",
|
||||||
|
"msg.min5": "۵ دقیقه",
|
||||||
|
"msg.hour1": "۱ ساعت",
|
||||||
|
"desktop.shareDesc": "کد را برای طرف مقابل بفرستید. یکبارمصرف است و زود منقضی میشود.",
|
||||||
|
"desktop.invitationCreated": "دعوتنامهٔ امن ساخته شد - آن را برای طرف مقابل بفرستید.",
|
||||||
|
"desktop.joinDesc": "کد دعوت طرف مقابل را بچسبانید تا پاسخ امن شما ساخته شود.",
|
||||||
|
"desktop.offerTag": "دعوت · کپی متن",
|
||||||
|
"desktop.answerTag": "پاسخ · کپی متن",
|
||||||
|
"desktop.offerPlaceholder": "کد دعوت اینجا نمایان میشود…",
|
||||||
|
"desktop.answerPlaceholder": "کد پاسخ اینجا نمایان میشود…",
|
||||||
|
"desktop.backToChats": "بازگشت به گفتوگوها",
|
||||||
|
"desktop.sendFeedback": "ارسال بازخورد",
|
||||||
|
"desktop.callsNeedVerified": "تماسها به یک کانال امنِ تأییدشده نیاز دارند.",
|
||||||
|
"desktop.noOpenChannel": "هیچ کانال امن بازی وجود ندارد.",
|
||||||
|
"desktop.chatCarriesCall": "این گفتوگو حامل یک تماس گروهی است. پیش از تماس دونفره، از تماس گروهی خارج شوید.",
|
||||||
|
"desktop.err.permission_denied": "تماس آغاز نشد - دسترسی به میکروفون و دوربین مسدود است. آن را در تنظیمات سیستم مجاز کنید و دوباره تلاش کنید.",
|
||||||
|
"desktop.language": "زبان",
|
||||||
|
"desktop.languageHint": "بیدرنگ اعمال میشود. پیامهای ارسالشده با همان واژهها باقی میمانند.",
|
||||||
|
"desktop.compareCode": "کد تأیید را با طرف مقابل مقایسه کنید و اگر یکسان بود تأیید کنید.",
|
||||||
|
"desktop.verifyBeforeFiles": "پیش از ارسال فایل، تأیید را کامل کنید.",
|
||||||
|
"desktop.verifyBeforeSending": "پیش از ارسال پیام، تأیید را کامل کنید.",
|
||||||
|
"desktop.disconnectedByBackend": "اتصال بهطور امن قطع شد.",
|
||||||
|
"desktop.restoreFailed": "اتصال بازیابی نشد. این گفتوگو بسته میشود.",
|
||||||
|
"desktop.channelNotReady": "کانال داده هنوز در دسترس نیست. تا برقراری اتصال صبر کنید.",
|
||||||
|
"desktop.enterCode": "برای تأیید، کد تأیید را وارد کنید.",
|
||||||
|
"desktop.noOffer": "دعوتی یافت نشد. نخست یکی بسازید.",
|
||||||
|
"desktop.notInitiator": "این اتصال را شما نساختهاید، پس پاسخی برای اعمال وجود ندارد.",
|
||||||
|
"desktop.decryptFailed": "رمزگشایی یک پیام ممکن نشد و کنار گذاشته شد.",
|
||||||
|
"desktop.badMessageFormat": "قابی نادرست رسید و کنار گذاشته شد.",
|
||||||
|
"desktop.notSentNotReady": "پیام ارسال نشد: کانال امن آماده نیست. تا پایان تأیید صبر کنید یا دوباره وصل شوید.",
|
||||||
|
"desktop.micDenied": "دسترسی به میکروفون رد شد.",
|
||||||
|
"desktop.noChannelWait": "کانال امنِ بازی وجود ندارد - تا برقراری اتصال صبر کنید.",
|
||||||
|
"desktop.sasFailed": "تأیید ناموفق بود. شاید واسطهای در میان باشد، بنابراین اتصال قطع شد.",
|
||||||
|
"desktop.sasOk": "تأیید موفق بود. این کانال سرتاسری احراز هویت شده است.",
|
||||||
|
"desktop.iceForgotten": "سرورهای ذخیرهشده فراموش شدند. از سرورهای عمومی ICE استفاده میشود.",
|
||||||
|
"desktop.icePublic": "از سرورهای عمومی ICE استفاده میشود.",
|
||||||
|
"desktop.verificationInProgress": "بررسی امنیتی هنوز در جریان است. تا پایان آن صبر کنید.",
|
||||||
|
"desktop.fileGone": "این فایل دیگر برای دانلود در دسترس نیست.",
|
||||||
|
"desktop.codeMismatch": "کدهای تأیید یکسان نیستند. برای ایمنی قطع میشود.",
|
||||||
|
"desktop.noLocalCode": "تأیید ناموفق: کد محلیای برای مقایسه وجود ندارد. برای ایمنی قطع میشود.",
|
||||||
|
"desktop.protocolViolation": "طرف مقابل پیش از تأیید شما ادعای تأیید کد را کرد. برای ایمنی قطع میشود.",
|
||||||
|
"desktop.verificationRejected": "تأیید رد شد. اتصال برای ایمنی قطع شد.",
|
||||||
|
"secLevel.HIGH": "بالا",
|
||||||
|
"secLevel.MEDIUM": "متوسط",
|
||||||
|
"secLevel.LOW": "پایین",
|
||||||
|
"desktop.rerun": "بررسی دوباره",
|
||||||
|
"desktop.ice.customDesc": "تا {max} سرور، در هر خط یک نشانی یا با قالب JSON.",
|
||||||
|
"desktop.ice.persistDesc": "بهصورت محلی روی همین دستگاه ذخیره میشود. برای استفاده فقط در این نشست، خاموش بگذارید.",
|
||||||
|
"desktop.group.leaveNote": "به بقیهٔ اعضا اطلاع داده میشود که خارج شدهاید. پس از آن چیزی از این گروه روی این دستگاه نمیماند - هیچ سروری نسخهای ندارد که بتوان از آن بازگشت، پس به دعوت تازه نیاز خواهید داشت.",
|
||||||
|
"desktop.sec.ecdsaOk": "امضای بستهٔ کلید طرف مقابل هنگام دستدادن بررسی شد (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "دستدادنی کامل نشده است",
|
||||||
|
"desktop.sec.ecdhOk": "کلیدهای نشست از تبادل گذرای ECDH P-384 با HKDF-SHA-256 مشتق شدند",
|
||||||
|
"desktop.sec.ecdhNone": "کلید نشستی مشتق نشد",
|
||||||
|
"desktop.sec.encryptionOk": "رمزگذاری و رمزگشایی AES-GCM در هسته بررسی شد",
|
||||||
|
"desktop.sec.encryptionNa": "خودآزمون AES-GCM اجرا نشد",
|
||||||
|
"desktop.sec.integrityOk": "یکپارچگی پیامها بررسی شد (احراز AES-GCM)",
|
||||||
|
"desktop.sec.integrityNa": "خودآزمون یکپارچگی اجرا نشد",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet فعال است - هر پیام کلید خودش را دارد",
|
||||||
|
"desktop.sec.pfsNa": "اندازهگیری نشد",
|
||||||
|
"desktop.sec.replayOk": "کلیدهای پیام رچت پس از استفاده نابود میشوند، پس قابی که شنود شده دوباره پخش نمیشود",
|
||||||
|
"desktop.sec.replayNa": "اندازهگیری نشد",
|
||||||
|
"desktop.sec.dtlsPinned": "اثر انگشت DTLS طرف مقابل پین شد: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "اثر انگشت DTLS طرف دور در دسترس نیست",
|
||||||
|
"desktop.sec.sasBoth": "هر دو طرف کد ایمنی را بیرون از کانال تأیید کردند",
|
||||||
|
"desktop.sec.sasIncomplete": "کد ایمنی را هر دو طرف تأیید نکردهاند",
|
||||||
|
"desktop.sec.metadataOk": "کلید اختصاصی فراداده مشتق شد (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "کلید فراداده وجود ندارد",
|
||||||
|
"desktop.sec.coverOn": "ترافیک پوششی فعال است: قابهای ساختگی تصادفی (۳۲ تا ۱۲۸ بایت هر ۱۵ تا ۳۰ ثانیه) روی کانال رچت",
|
||||||
|
"desktop.sec.coverOff": "مولد ترافیک پوششی در حال اجرا نیست",
|
||||||
|
"desktop.sec.coverUnsupported": "ترافیک پوششی به نشست Double Ratchet نیاز دارد (طرف مقابل نسخهٔ قدیمیتری دارد)",
|
||||||
|
"desktop.tagline": "آزادی سرتاسری"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+76
-1
@@ -801,7 +801,82 @@
|
|||||||
"groupCall.speaking": "{name} parle",
|
"groupCall.speaking": "{name} parle",
|
||||||
"groupCall.pin": "Afficher {name} en grand",
|
"groupCall.pin": "Afficher {name} en grand",
|
||||||
"groupCall.unpin": "Revenir à tous",
|
"groupCall.unpin": "Revenir à tous",
|
||||||
"groupCall.showEveryone": "Tout le monde"
|
"groupCall.showEveryone": "Tout le monde",
|
||||||
|
"msg.after5s": "5 s après lecture",
|
||||||
|
"msg.after15s": "15 s après lecture",
|
||||||
|
"msg.after30s": "30 s après lecture",
|
||||||
|
"msg.after1m": "1 min après lecture",
|
||||||
|
"msg.sec30": "30 secondes",
|
||||||
|
"msg.min5": "5 minutes",
|
||||||
|
"msg.hour1": "1 heure",
|
||||||
|
"desktop.shareDesc": "Envoyez le code à votre pair. Il est à usage unique et expire rapidement.",
|
||||||
|
"desktop.invitationCreated": "Invitation sécurisée créée - envoyez-la à votre pair.",
|
||||||
|
"desktop.joinDesc": "Collez le code d'invitation de votre pair pour construire votre réponse sécurisée.",
|
||||||
|
"desktop.offerTag": "invitation · copier le texte",
|
||||||
|
"desktop.answerTag": "réponse · copier le texte",
|
||||||
|
"desktop.offerPlaceholder": "Le code d'invitation apparaîtra ici…",
|
||||||
|
"desktop.answerPlaceholder": "Le code de réponse apparaîtra ici…",
|
||||||
|
"desktop.backToChats": "Retour aux discussions",
|
||||||
|
"desktop.sendFeedback": "Envoyer un retour",
|
||||||
|
"desktop.callsNeedVerified": "Les appels nécessitent un canal sécurisé vérifié.",
|
||||||
|
"desktop.noOpenChannel": "Aucun canal sécurisé ouvert.",
|
||||||
|
"desktop.chatCarriesCall": "Cette discussion porte un appel de groupe. Quittez l'appel de groupe avant de lancer un appel à deux.",
|
||||||
|
"desktop.err.permission_denied": "L'appel n'a pas pu démarrer - l'accès au micro et à la caméra est bloqué. Autorisez-le dans les réglages système, puis réessayez.",
|
||||||
|
"desktop.language": "Langue",
|
||||||
|
"desktop.languageHint": "S'applique immédiatement. Les messages déjà envoyés gardent leurs mots.",
|
||||||
|
"desktop.compareCode": "Comparez le code de vérification avec votre pair et confirmez s’il correspond.",
|
||||||
|
"desktop.verifyBeforeFiles": "Terminez la vérification avant d’envoyer des fichiers.",
|
||||||
|
"desktop.verifyBeforeSending": "Terminez la vérification avant d’envoyer des messages.",
|
||||||
|
"desktop.disconnectedByBackend": "Connexion fermée de façon sécurisée.",
|
||||||
|
"desktop.restoreFailed": "Impossible de rétablir la connexion. Fermeture de cette discussion.",
|
||||||
|
"desktop.channelNotReady": "Le canal de données n’est pas encore disponible. Attendez que la connexion soit établie.",
|
||||||
|
"desktop.enterCode": "Saisissez le code de vérification pour confirmer.",
|
||||||
|
"desktop.noOffer": "Aucune invitation trouvée. Créez-en une d’abord.",
|
||||||
|
"desktop.notInitiator": "Vous n’avez pas créé cette connexion, il n’y a donc aucune réponse à appliquer.",
|
||||||
|
"desktop.decryptFailed": "Un message n’a pas pu être déchiffré et a été écarté.",
|
||||||
|
"desktop.badMessageFormat": "Une trame mal formée est arrivée et a été écartée.",
|
||||||
|
"desktop.notSentNotReady": "Message non envoyé : le canal sécurisé n’est pas prêt. Attendez la fin de la vérification ou reconnectez-vous.",
|
||||||
|
"desktop.micDenied": "L’accès au micro a été refusé.",
|
||||||
|
"desktop.noChannelWait": "Aucun canal sécurisé ouvert - attendez que la connexion soit établie.",
|
||||||
|
"desktop.sasFailed": "Échec de la vérification. Un intermédiaire est peut-être présent : la connexion a été interrompue.",
|
||||||
|
"desktop.sasOk": "Vérification réussie. Ce canal est authentifié de bout en bout.",
|
||||||
|
"desktop.iceForgotten": "Serveurs enregistrés oubliés. Utilisation des serveurs ICE publics.",
|
||||||
|
"desktop.icePublic": "Utilisation des serveurs ICE publics.",
|
||||||
|
"desktop.verificationInProgress": "La vérification de sécurité est encore en cours. Attendez la fin.",
|
||||||
|
"desktop.fileGone": "Ce fichier n’est plus disponible au téléchargement.",
|
||||||
|
"desktop.codeMismatch": "Les codes de vérification ne correspondent pas. Déconnexion par sécurité.",
|
||||||
|
"desktop.noLocalCode": "Échec de la vérification : aucun code dérivé localement à comparer. Déconnexion par sécurité.",
|
||||||
|
"desktop.protocolViolation": "Le pair a affirmé que le code était confirmé avant que vous ne le confirmiez. Déconnexion par sécurité.",
|
||||||
|
"desktop.verificationRejected": "Vérification rejetée. La connexion a été interrompue par sécurité.",
|
||||||
|
"secLevel.HIGH": "ÉLEVÉ",
|
||||||
|
"secLevel.MEDIUM": "MOYEN",
|
||||||
|
"secLevel.LOW": "FAIBLE",
|
||||||
|
"desktop.rerun": "Relancer",
|
||||||
|
"desktop.ice.customDesc": "Jusqu'à {max} serveurs, une URL par ligne ou du JSON.",
|
||||||
|
"desktop.ice.persistDesc": "Enregistré localement sur cet appareil. Laissez désactivé pour ne l’utiliser que pendant cette session.",
|
||||||
|
"desktop.group.leaveNote": "Les autres membres sont informés de votre départ. Rien de ce groupe ne reste ensuite sur cet appareil - aucun serveur n’en garde de copie, il vous faudrait donc une nouvelle invitation.",
|
||||||
|
"desktop.sec.ecdsaOk": "Signature du paquet de clés du pair vérifiée pendant la poignée de main (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "Aucune poignée de main achevée",
|
||||||
|
"desktop.sec.ecdhOk": "Clés de session dérivées d’un échange ECDH P-384 éphémère via HKDF-SHA-256",
|
||||||
|
"desktop.sec.ecdhNone": "Aucune clé de session dérivée",
|
||||||
|
"desktop.sec.encryptionOk": "Chiffrement et déchiffrement AES-GCM vérifiés dans le cœur",
|
||||||
|
"desktop.sec.encryptionNa": "L’autotest AES-GCM n’a pas pu être exécuté",
|
||||||
|
"desktop.sec.integrityOk": "Intégrité des messages vérifiée (authentification AES-GCM)",
|
||||||
|
"desktop.sec.integrityNa": "L’autotest d’intégrité n’a pas pu être exécuté",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet actif - chaque message a sa propre clé",
|
||||||
|
"desktop.sec.pfsNa": "Non mesuré",
|
||||||
|
"desktop.sec.replayOk": "Les clés de message du ratchet sont détruites après usage : une trame capturée ne peut pas être rejouée",
|
||||||
|
"desktop.sec.replayNa": "Non mesuré",
|
||||||
|
"desktop.sec.dtlsPinned": "Empreinte DTLS du pair épinglée : {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "Aucune empreinte DTLS distante disponible",
|
||||||
|
"desktop.sec.sasBoth": "Les deux pairs ont confirmé le code de sécurité hors bande",
|
||||||
|
"desktop.sec.sasIncomplete": "Le code de sécurité n’a pas été confirmé par les deux pairs",
|
||||||
|
"desktop.sec.metadataOk": "Une clé de métadonnées dédiée a été dérivée (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "Aucune clé de métadonnées",
|
||||||
|
"desktop.sec.coverOn": "Trafic de couverture actif : trames factices aléatoires (32-128 o toutes les 15-30 s) sur le canal à ratchet",
|
||||||
|
"desktop.sec.coverOff": "Le générateur de trafic de couverture ne tourne pas",
|
||||||
|
"desktop.sec.coverUnsupported": "Le trafic de couverture exige une session Double Ratchet (le pair utilise une version plus ancienne)",
|
||||||
|
"desktop.tagline": "La liberté de bout en bout"
|
||||||
},
|
},
|
||||||
"manifest": {
|
"manifest": {
|
||||||
"name": "SecureBit.chat - Messagerie privée et chiffrée",
|
"name": "SecureBit.chat - Messagerie privée et chiffrée",
|
||||||
|
|||||||
+76
-1
@@ -806,6 +806,81 @@
|
|||||||
"groupCall.speaking": "{name} מדבר/ת",
|
"groupCall.speaking": "{name} מדבר/ת",
|
||||||
"groupCall.pin": "הצגת {name} בגדול",
|
"groupCall.pin": "הצגת {name} בגדול",
|
||||||
"groupCall.unpin": "חזרה לכולם",
|
"groupCall.unpin": "חזרה לכולם",
|
||||||
"groupCall.showEveryone": "כולם"
|
"groupCall.showEveryone": "כולם",
|
||||||
|
"msg.after5s": "5 שניות אחרי הקריאה",
|
||||||
|
"msg.after15s": "15 שניות אחרי הקריאה",
|
||||||
|
"msg.after30s": "30 שניות אחרי הקריאה",
|
||||||
|
"msg.after1m": "דקה אחרי הקריאה",
|
||||||
|
"msg.sec30": "30 שניות",
|
||||||
|
"msg.min5": "5 דקות",
|
||||||
|
"msg.hour1": "שעה",
|
||||||
|
"desktop.shareDesc": "שלחו את הקוד לצד השני. הוא חד-פעמי ופג במהירות.",
|
||||||
|
"desktop.invitationCreated": "הזמנה מאובטחת נוצרה - שלחו אותה לצד השני.",
|
||||||
|
"desktop.joinDesc": "הדביקו את קוד ההזמנה של הצד השני כדי לבנות את התשובה המאובטחת שלכם.",
|
||||||
|
"desktop.offerTag": "הזמנה · העתקת טקסט",
|
||||||
|
"desktop.answerTag": "תשובה · העתקת טקסט",
|
||||||
|
"desktop.offerPlaceholder": "קוד ההזמנה יופיע כאן…",
|
||||||
|
"desktop.answerPlaceholder": "קוד התשובה יופיע כאן…",
|
||||||
|
"desktop.backToChats": "חזרה לצ׳אטים",
|
||||||
|
"desktop.sendFeedback": "שליחת משוב",
|
||||||
|
"desktop.callsNeedVerified": "שיחות דורשות ערוץ מאובטח מאומת.",
|
||||||
|
"desktop.noOpenChannel": "אין ערוץ מאובטח פתוח.",
|
||||||
|
"desktop.chatCarriesCall": "הצ׳אט הזה נושא שיחה קבוצתית. צאו מהשיחה הקבוצתית לפני שיחה אחד-על-אחד.",
|
||||||
|
"desktop.err.permission_denied": "לא ניתן היה להתחיל את השיחה - הגישה למיקרופון ולמצלמה חסומה. אפשרו אותה בהגדרות המערכת ונסו שוב.",
|
||||||
|
"desktop.language": "שפה",
|
||||||
|
"desktop.languageHint": "חל מיד. הודעות שכבר נשלחו נשארות במילים שבהן נכתבו.",
|
||||||
|
"desktop.compareCode": "השוו את קוד האימות עם הצד השני ואשרו אם הוא תואם.",
|
||||||
|
"desktop.verifyBeforeFiles": "השלימו את האימות לפני שליחת קבצים.",
|
||||||
|
"desktop.verifyBeforeSending": "השלימו את האימות לפני שליחת הודעות.",
|
||||||
|
"desktop.disconnectedByBackend": "החיבור נסגר בבטחה.",
|
||||||
|
"desktop.restoreFailed": "לא ניתן היה לשחזר את החיבור. הצ׳אט הזה נסגר.",
|
||||||
|
"desktop.channelNotReady": "ערוץ הנתונים עדיין אינו זמין. המתינו עד שהחיבור ייווצר.",
|
||||||
|
"desktop.enterCode": "הזינו את קוד האימות לאישור.",
|
||||||
|
"desktop.noOffer": "לא נמצאה הזמנה. צרו אחת קודם.",
|
||||||
|
"desktop.notInitiator": "לא אתם יצרתם את החיבור הזה, ולכן אין תשובה להחיל.",
|
||||||
|
"desktop.decryptFailed": "לא ניתן היה לפענח הודעה והיא נזרקה.",
|
||||||
|
"desktop.badMessageFormat": "הגיעה מסגרת פגומה והיא נזרקה.",
|
||||||
|
"desktop.notSentNotReady": "ההודעה לא נשלחה: הערוץ המאובטח אינו מוכן. המתינו לסיום האימות או התחברו מחדש.",
|
||||||
|
"desktop.micDenied": "הגישה למיקרופון נדחתה.",
|
||||||
|
"desktop.noChannelWait": "אין ערוץ מאובטח פתוח - המתינו עד שהחיבור ייווצר.",
|
||||||
|
"desktop.sasFailed": "האימות נכשל. ייתכן שיש מתווך, ולכן החיבור בוטל.",
|
||||||
|
"desktop.sasOk": "האימות הצליח. הערוץ הזה מאומת מקצה לקצה.",
|
||||||
|
"desktop.iceForgotten": "השרתים השמורים נשכחו. נעשה שימוש בשרתי ICE ציבוריים.",
|
||||||
|
"desktop.icePublic": "נעשה שימוש בשרתי ICE ציבוריים.",
|
||||||
|
"desktop.verificationInProgress": "בדיקת האבטחה עדיין פועלת. המתינו לסיומה.",
|
||||||
|
"desktop.fileGone": "הקובץ הזה כבר אינו זמין להורדה.",
|
||||||
|
"desktop.codeMismatch": "קודי האימות אינם תואמים. מתנתקים למען הבטיחות.",
|
||||||
|
"desktop.noLocalCode": "האימות נכשל: אין קוד מקומי להשוואה. מתנתקים למען הבטיחות.",
|
||||||
|
"desktop.protocolViolation": "הצד השני טען שהקוד אושר לפני שאישרתם אותו. מתנתקים למען הבטיחות.",
|
||||||
|
"desktop.verificationRejected": "האימות נדחה. החיבור בוטל למען הבטיחות.",
|
||||||
|
"secLevel.HIGH": "גבוהה",
|
||||||
|
"secLevel.MEDIUM": "בינונית",
|
||||||
|
"secLevel.LOW": "נמוכה",
|
||||||
|
"desktop.rerun": "בדיקה חוזרת",
|
||||||
|
"desktop.ice.customDesc": "עד {max} שרתים, כתובת אחת בכל שורה או JSON.",
|
||||||
|
"desktop.ice.persistDesc": "נשמר מקומית במכשיר הזה. השאירו כבוי כדי להשתמש רק בהפעלה הנוכחית.",
|
||||||
|
"desktop.group.leaveNote": "לשאר החברים נמסר שעזבתם. אחר כך לא נשאר במכשיר הזה דבר מהקבוצה - אין שרת שמחזיק עותק לחזור אליו, ולכן תידרש הזמנה חדשה.",
|
||||||
|
"desktop.sec.ecdsaOk": "חתימת חבילת המפתחות של הצד השני אומתה בלחיצת היד (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "אין לחיצת יד שהושלמה",
|
||||||
|
"desktop.sec.ecdhOk": "מפתחות ההפעלה נגזרו מהחלפת ECDH P-384 חולפת דרך HKDF-SHA-256",
|
||||||
|
"desktop.sec.ecdhNone": "לא נגזרו מפתחות הפעלה",
|
||||||
|
"desktop.sec.encryptionOk": "הצפנה ופענוח AES-GCM אומתו בליבה",
|
||||||
|
"desktop.sec.encryptionNa": "לא ניתן היה להריץ את הבדיקה העצמית של AES-GCM",
|
||||||
|
"desktop.sec.integrityOk": "שלמות ההודעות אומתה (אימות AES-GCM)",
|
||||||
|
"desktop.sec.integrityNa": "לא ניתן היה להריץ את בדיקת השלמות",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet פעיל - לכל הודעה מפתח משלה",
|
||||||
|
"desktop.sec.pfsNa": "לא נמדד",
|
||||||
|
"desktop.sec.replayOk": "מפתחות ההודעות של הראצ׳ט מושמדים עם השימוש, ולכן אי אפשר לשדר מחדש מסגרת שנלכדה",
|
||||||
|
"desktop.sec.replayNa": "לא נמדד",
|
||||||
|
"desktop.sec.dtlsPinned": "טביעת האצבע DTLS של הצד השני מוצמדת: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "אין טביעת אצבע DTLS מרוחקת",
|
||||||
|
"desktop.sec.sasBoth": "שני הצדדים אישרו את קוד הבטיחות מחוץ לערוץ",
|
||||||
|
"desktop.sec.sasIncomplete": "קוד הבטיחות לא אושר בידי שני הצדדים",
|
||||||
|
"desktop.sec.metadataOk": "נגזר מפתח ייעודי למטא-נתונים (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "אין מפתח מטא-נתונים",
|
||||||
|
"desktop.sec.coverOn": "תעבורת הסוואה פעילה: מסגרות מזויפות אקראיות (32-128 בתים כל 15-30 שניות) בערוץ הראצ׳ט",
|
||||||
|
"desktop.sec.coverOff": "מחולל תעבורת ההסוואה אינו פועל",
|
||||||
|
"desktop.sec.coverUnsupported": "תעבורת הסוואה מחייבת הפעלת Double Ratchet (הצד השני בגרסה ישנה יותר)",
|
||||||
|
"desktop.tagline": "חופש מקצה לקצה"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+76
-1
@@ -801,7 +801,82 @@
|
|||||||
"groupCall.speaking": "{name} बोल रहे हैं",
|
"groupCall.speaking": "{name} बोल रहे हैं",
|
||||||
"groupCall.pin": "{name} को बड़ा दिखाएँ",
|
"groupCall.pin": "{name} को बड़ा दिखाएँ",
|
||||||
"groupCall.unpin": "सभी पर लौटें",
|
"groupCall.unpin": "सभी पर लौटें",
|
||||||
"groupCall.showEveryone": "सभी"
|
"groupCall.showEveryone": "सभी",
|
||||||
|
"msg.after5s": "पढ़ने के 5 सेकंड बाद",
|
||||||
|
"msg.after15s": "पढ़ने के 15 सेकंड बाद",
|
||||||
|
"msg.after30s": "पढ़ने के 30 सेकंड बाद",
|
||||||
|
"msg.after1m": "पढ़ने के 1 मिनट बाद",
|
||||||
|
"msg.sec30": "30 सेकंड",
|
||||||
|
"msg.min5": "5 मिनट",
|
||||||
|
"msg.hour1": "1 घंटा",
|
||||||
|
"desktop.shareDesc": "कोड अपने साथी को भेजें। यह एक बार का है और जल्दी समाप्त हो जाता है।",
|
||||||
|
"desktop.invitationCreated": "सुरक्षित निमंत्रण बन गया - इसे अपने साथी को भेजें।",
|
||||||
|
"desktop.joinDesc": "अपना सुरक्षित उत्तर बनाने के लिए साथी का निमंत्रण कोड चिपकाएँ।",
|
||||||
|
"desktop.offerTag": "निमंत्रण · टेक्स्ट कॉपी करें",
|
||||||
|
"desktop.answerTag": "उत्तर · टेक्स्ट कॉपी करें",
|
||||||
|
"desktop.offerPlaceholder": "निमंत्रण कोड यहाँ दिखाई देगा…",
|
||||||
|
"desktop.answerPlaceholder": "उत्तर कोड यहाँ दिखाई देगा…",
|
||||||
|
"desktop.backToChats": "चैट पर वापस",
|
||||||
|
"desktop.sendFeedback": "प्रतिक्रिया भेजें",
|
||||||
|
"desktop.callsNeedVerified": "कॉल के लिए सत्यापित सुरक्षित चैनल चाहिए।",
|
||||||
|
"desktop.noOpenChannel": "कोई खुला सुरक्षित चैनल नहीं है।",
|
||||||
|
"desktop.chatCarriesCall": "यह चैट एक समूह कॉल ले जा रही है। 1:1 कॉल करने से पहले समूह कॉल छोड़ें।",
|
||||||
|
"desktop.err.permission_denied": "कॉल शुरू नहीं हो सकी - माइक्रोफ़ोन और कैमरे की अनुमति अवरुद्ध है। सिस्टम सेटिंग्स में इसे अनुमति दें और फिर कोशिश करें।",
|
||||||
|
"desktop.language": "भाषा",
|
||||||
|
"desktop.languageHint": "तुरंत लागू होता है। पहले भेजे गए संदेश अपनी ही भाषा में रहते हैं।",
|
||||||
|
"desktop.compareCode": "सत्यापन कोड अपने साथी से मिलाएँ और मेल खाने पर पुष्टि करें।",
|
||||||
|
"desktop.verifyBeforeFiles": "फ़ाइलें भेजने से पहले सत्यापन पूरा करें।",
|
||||||
|
"desktop.verifyBeforeSending": "संदेश भेजने से पहले सत्यापन पूरा करें।",
|
||||||
|
"desktop.disconnectedByBackend": "कनेक्शन सुरक्षित रूप से बंद कर दिया गया।",
|
||||||
|
"desktop.restoreFailed": "कनेक्शन बहाल नहीं हो सका। यह चैट बंद की जा रही है।",
|
||||||
|
"desktop.channelNotReady": "डेटा चैनल अभी उपलब्ध नहीं है। कनेक्शन बनने तक प्रतीक्षा करें।",
|
||||||
|
"desktop.enterCode": "पुष्टि के लिए सत्यापन कोड दर्ज करें।",
|
||||||
|
"desktop.noOffer": "कोई निमंत्रण नहीं मिला। पहले एक बनाएँ।",
|
||||||
|
"desktop.notInitiator": "यह कनेक्शन आपने नहीं बनाया, इसलिए लागू करने के लिए कोई उत्तर नहीं है।",
|
||||||
|
"desktop.decryptFailed": "एक संदेश डिक्रिप्ट नहीं हो सका और हटा दिया गया।",
|
||||||
|
"desktop.badMessageFormat": "गलत प्रारूप वाला फ़्रेम आया और हटा दिया गया।",
|
||||||
|
"desktop.notSentNotReady": "संदेश नहीं भेजा गया: सुरक्षित चैनल तैयार नहीं है। सत्यापन पूरा होने की प्रतीक्षा करें या फिर से जुड़ें।",
|
||||||
|
"desktop.micDenied": "माइक्रोफ़ोन की अनुमति अस्वीकार कर दी गई।",
|
||||||
|
"desktop.noChannelWait": "कोई खुला सुरक्षित चैनल नहीं - कनेक्शन बनने तक प्रतीक्षा करें।",
|
||||||
|
"desktop.sasFailed": "सत्यापन विफल। बीच में कोई हो सकता है, इसलिए कनेक्शन रोक दिया गया।",
|
||||||
|
"desktop.sasOk": "सत्यापन सफल। यह चैनल सिरे से सिरे तक प्रमाणित है।",
|
||||||
|
"desktop.iceForgotten": "सहेजे गए सर्वर भुला दिए गए। सार्वजनिक ICE सर्वर उपयोग हो रहे हैं।",
|
||||||
|
"desktop.icePublic": "सार्वजनिक ICE सर्वर उपयोग हो रहे हैं।",
|
||||||
|
"desktop.verificationInProgress": "सुरक्षा सत्यापन अभी चल रहा है। पूरा होने तक प्रतीक्षा करें।",
|
||||||
|
"desktop.fileGone": "यह फ़ाइल अब डाउनलोड के लिए उपलब्ध नहीं है।",
|
||||||
|
"desktop.codeMismatch": "सत्यापन कोड मेल नहीं खाते। सुरक्षा के लिए कनेक्शन बंद किया जा रहा है।",
|
||||||
|
"desktop.noLocalCode": "सत्यापन विफल: तुलना के लिए कोई स्थानीय कोड नहीं है। सुरक्षा के लिए कनेक्शन बंद किया जा रहा है।",
|
||||||
|
"desktop.protocolViolation": "साथी ने आपके पुष्टि करने से पहले ही कोड की पुष्टि का दावा किया। सुरक्षा के लिए कनेक्शन बंद किया जा रहा है।",
|
||||||
|
"desktop.verificationRejected": "सत्यापन अस्वीकार। सुरक्षा के लिए कनेक्शन रोक दिया गया।",
|
||||||
|
"secLevel.HIGH": "उच्च",
|
||||||
|
"secLevel.MEDIUM": "मध्यम",
|
||||||
|
"secLevel.LOW": "निम्न",
|
||||||
|
"desktop.rerun": "दोबारा जाँचें",
|
||||||
|
"desktop.ice.customDesc": "अधिकतम {max} सर्वर, प्रति पंक्ति एक URL या JSON।",
|
||||||
|
"desktop.ice.persistDesc": "इसी डिवाइस पर सहेजा जाता है। केवल इसी सत्र के लिए उपयोग करना हो तो बंद रहने दें।",
|
||||||
|
"desktop.group.leaveNote": "बाकी सदस्यों को बता दिया जाता है कि आप चले गए। उसके बाद इस डिवाइस पर इस समूह का कुछ नहीं रहता - किसी सर्वर के पास प्रति नहीं है जिससे लौटा जा सके, इसलिए नया निमंत्रण चाहिए होगा।",
|
||||||
|
"desktop.sec.ecdsaOk": "हैंडशेक के दौरान साथी के की-पैकेज का हस्ताक्षर सत्यापित (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "कोई पूर्ण हैंडशेक नहीं",
|
||||||
|
"desktop.sec.ecdhOk": "सत्र कुंजियाँ अस्थायी ECDH P-384 विनिमय से HKDF-SHA-256 द्वारा व्युत्पन्न",
|
||||||
|
"desktop.sec.ecdhNone": "कोई सत्र कुंजी व्युत्पन्न नहीं हुई",
|
||||||
|
"desktop.sec.encryptionOk": "कोर में AES-GCM एन्क्रिप्शन और डिक्रिप्शन सत्यापित",
|
||||||
|
"desktop.sec.encryptionNa": "AES-GCM स्व-परीक्षण नहीं चल सका",
|
||||||
|
"desktop.sec.integrityOk": "संदेश अखंडता सत्यापित (AES-GCM प्रमाणीकरण)",
|
||||||
|
"desktop.sec.integrityNa": "अखंडता स्व-परीक्षण नहीं चल सका",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet सक्रिय - हर संदेश की अपनी कुंजी है",
|
||||||
|
"desktop.sec.pfsNa": "मापा नहीं गया",
|
||||||
|
"desktop.sec.replayOk": "रैचेट संदेश कुंजियाँ उपयोग होते ही नष्ट हो जाती हैं, इसलिए पकड़ा गया फ़्रेम दोबारा नहीं चलाया जा सकता",
|
||||||
|
"desktop.sec.replayNa": "मापा नहीं गया",
|
||||||
|
"desktop.sec.dtlsPinned": "साथी का DTLS फ़िंगरप्रिंट पिन किया गया: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "दूरस्थ DTLS फ़िंगरप्रिंट उपलब्ध नहीं",
|
||||||
|
"desktop.sec.sasBoth": "दोनों पक्षों ने बाहरी माध्यम से सुरक्षा कोड की पुष्टि की",
|
||||||
|
"desktop.sec.sasIncomplete": "सुरक्षा कोड की पुष्टि दोनों पक्षों ने नहीं की",
|
||||||
|
"desktop.sec.metadataOk": "समर्पित मेटाडेटा कुंजी व्युत्पन्न (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "कोई मेटाडेटा कुंजी नहीं",
|
||||||
|
"desktop.sec.coverOn": "आवरण ट्रैफ़िक सक्रिय: रैचेट चैनल पर यादृच्छिक नकली फ़्रेम (हर 15-30 सेकंड में 32-128 B)",
|
||||||
|
"desktop.sec.coverOff": "आवरण ट्रैफ़िक जनरेटर नहीं चल रहा",
|
||||||
|
"desktop.sec.coverUnsupported": "आवरण ट्रैफ़िक के लिए Double Ratchet सत्र चाहिए (साथी पुराने संस्करण पर है)",
|
||||||
|
"desktop.tagline": "सिरे से सिरे तक आज़ादी"
|
||||||
},
|
},
|
||||||
"manifest": {
|
"manifest": {
|
||||||
"name": "SecureBit.chat - निजी, एन्क्रिप्टेड मैसेंजर",
|
"name": "SecureBit.chat - निजी, एन्क्रिप्टेड मैसेंजर",
|
||||||
|
|||||||
+76
-1
@@ -801,7 +801,82 @@
|
|||||||
"groupCall.speaking": "{name} 님이 말하는 중",
|
"groupCall.speaking": "{name} 님이 말하는 중",
|
||||||
"groupCall.pin": "{name} 크게 보기",
|
"groupCall.pin": "{name} 크게 보기",
|
||||||
"groupCall.unpin": "전체 보기로 돌아가기",
|
"groupCall.unpin": "전체 보기로 돌아가기",
|
||||||
"groupCall.showEveryone": "전체"
|
"groupCall.showEveryone": "전체",
|
||||||
|
"msg.after5s": "읽은 뒤 5초",
|
||||||
|
"msg.after15s": "읽은 뒤 15초",
|
||||||
|
"msg.after30s": "읽은 뒤 30초",
|
||||||
|
"msg.after1m": "읽은 뒤 1분",
|
||||||
|
"msg.sec30": "30초",
|
||||||
|
"msg.min5": "5분",
|
||||||
|
"msg.hour1": "1시간",
|
||||||
|
"desktop.shareDesc": "상대에게 코드를 보내세요. 일회용이며 곧 만료됩니다.",
|
||||||
|
"desktop.invitationCreated": "보안 초대가 만들어졌습니다 - 상대에게 보내세요.",
|
||||||
|
"desktop.joinDesc": "상대의 초대 코드를 붙여넣어 보안 응답을 만드세요.",
|
||||||
|
"desktop.offerTag": "초대 · 텍스트 복사",
|
||||||
|
"desktop.answerTag": "응답 · 텍스트 복사",
|
||||||
|
"desktop.offerPlaceholder": "초대 코드가 여기에 표시됩니다…",
|
||||||
|
"desktop.answerPlaceholder": "응답 코드가 여기에 표시됩니다…",
|
||||||
|
"desktop.backToChats": "채팅으로 돌아가기",
|
||||||
|
"desktop.sendFeedback": "피드백 보내기",
|
||||||
|
"desktop.callsNeedVerified": "통화하려면 검증된 보안 채널이 필요합니다.",
|
||||||
|
"desktop.noOpenChannel": "열린 보안 채널이 없습니다.",
|
||||||
|
"desktop.chatCarriesCall": "이 채팅이 그룹 통화를 전달하고 있습니다. 1:1 통화를 걸기 전에 그룹 통화에서 나가세요.",
|
||||||
|
"desktop.err.permission_denied": "통화를 시작할 수 없습니다 - 마이크와 카메라 접근이 차단되어 있습니다. 시스템 설정에서 허용한 뒤 다시 시도하세요.",
|
||||||
|
"desktop.language": "언어",
|
||||||
|
"desktop.languageHint": "즉시 적용됩니다. 이미 보낸 메시지는 원래 언어 그대로 남습니다.",
|
||||||
|
"desktop.compareCode": "상대와 확인 코드를 비교하고 일치하면 확인하세요.",
|
||||||
|
"desktop.verifyBeforeFiles": "파일을 보내기 전에 검증을 마치세요.",
|
||||||
|
"desktop.verifyBeforeSending": "메시지를 보내기 전에 검증을 마치세요.",
|
||||||
|
"desktop.disconnectedByBackend": "연결이 안전하게 종료되었습니다.",
|
||||||
|
"desktop.restoreFailed": "연결을 복구하지 못했습니다. 이 채팅을 닫습니다.",
|
||||||
|
"desktop.channelNotReady": "데이터 채널이 아직 없습니다. 연결이 맺어질 때까지 기다리세요.",
|
||||||
|
"desktop.enterCode": "확인 코드를 입력하세요.",
|
||||||
|
"desktop.noOffer": "초대가 없습니다. 먼저 만드세요.",
|
||||||
|
"desktop.notInitiator": "이 연결을 만든 쪽이 아니므로 적용할 응답이 없습니다.",
|
||||||
|
"desktop.decryptFailed": "메시지를 복호화하지 못해 버렸습니다.",
|
||||||
|
"desktop.badMessageFormat": "형식이 잘못된 프레임이 도착해 버렸습니다.",
|
||||||
|
"desktop.notSentNotReady": "메시지를 보내지 못했습니다: 보안 채널이 준비되지 않았습니다. 검증이 끝나기를 기다리거나 다시 연결하세요.",
|
||||||
|
"desktop.micDenied": "마이크 접근이 거부되었습니다.",
|
||||||
|
"desktop.noChannelWait": "열린 보안 채널이 없습니다 - 연결이 맺어질 때까지 기다리세요.",
|
||||||
|
"desktop.sasFailed": "검증에 실패했습니다. 중간자가 있을 수 있어 연결을 중단했습니다.",
|
||||||
|
"desktop.sasOk": "검증에 성공했습니다. 이 채널은 종단 간 인증되었습니다.",
|
||||||
|
"desktop.iceForgotten": "저장된 서버를 지웠습니다. 공개 ICE 서버를 사용합니다.",
|
||||||
|
"desktop.icePublic": "공개 ICE 서버를 사용합니다.",
|
||||||
|
"desktop.verificationInProgress": "보안 검증이 아직 진행 중입니다. 끝날 때까지 기다리세요.",
|
||||||
|
"desktop.fileGone": "이 파일은 더 이상 내려받을 수 없습니다.",
|
||||||
|
"desktop.codeMismatch": "확인 코드가 일치하지 않습니다. 안전을 위해 연결을 끊습니다.",
|
||||||
|
"desktop.noLocalCode": "검증 실패: 비교할 로컬 파생 코드가 없습니다. 안전을 위해 연결을 끊습니다.",
|
||||||
|
"desktop.protocolViolation": "상대가 당신이 확인하기 전에 코드가 확인되었다고 주장했습니다. 안전을 위해 연결을 끊습니다.",
|
||||||
|
"desktop.verificationRejected": "검증이 거부되었습니다. 안전을 위해 연결을 중단했습니다.",
|
||||||
|
"secLevel.HIGH": "높음",
|
||||||
|
"secLevel.MEDIUM": "보통",
|
||||||
|
"secLevel.LOW": "낮음",
|
||||||
|
"desktop.rerun": "다시 검사",
|
||||||
|
"desktop.ice.customDesc": "최대 {max}개 서버, 한 줄에 URL 하나 또는 JSON.",
|
||||||
|
"desktop.ice.persistDesc": "이 기기에 로컬로 저장됩니다. 이번 세션에만 사용하려면 꺼 두세요.",
|
||||||
|
"desktop.group.leaveNote": "다른 구성원에게 당신이 나갔다고 알립니다. 이후 이 기기에는 이 그룹에 대한 것이 아무것도 남지 않습니다 - 다시 들어갈 사본을 가진 서버가 없으므로 새 초대가 필요합니다.",
|
||||||
|
"desktop.sec.ecdsaOk": "핸드셰이크 중 상대 키 패키지 서명을 검증했습니다 (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "완료된 핸드셰이크가 없습니다",
|
||||||
|
"desktop.sec.ecdhOk": "임시 ECDH P-384 교환에서 HKDF-SHA-256으로 세션 키를 파생했습니다",
|
||||||
|
"desktop.sec.ecdhNone": "세션 키가 파생되지 않았습니다",
|
||||||
|
"desktop.sec.encryptionOk": "코어에서 AES-GCM 암·복호화를 검증했습니다",
|
||||||
|
"desktop.sec.encryptionNa": "AES-GCM 자체 검사를 실행할 수 없었습니다",
|
||||||
|
"desktop.sec.integrityOk": "메시지 무결성을 검증했습니다 (AES-GCM 인증)",
|
||||||
|
"desktop.sec.integrityNa": "무결성 자체 검사를 실행할 수 없었습니다",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet 작동 중 - 메시지마다 고유한 키가 있습니다",
|
||||||
|
"desktop.sec.pfsNa": "측정되지 않음",
|
||||||
|
"desktop.sec.replayOk": "래칫 메시지 키는 사용 즉시 파기되어 가로챈 프레임을 재생할 수 없습니다",
|
||||||
|
"desktop.sec.replayNa": "측정되지 않음",
|
||||||
|
"desktop.sec.dtlsPinned": "상대 DTLS 지문 고정: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "원격 DTLS 지문이 없습니다",
|
||||||
|
"desktop.sec.sasBoth": "양쪽 모두 대역 외에서 안전 코드를 확인했습니다",
|
||||||
|
"desktop.sec.sasIncomplete": "안전 코드가 양쪽 모두에게 확인되지 않았습니다",
|
||||||
|
"desktop.sec.metadataOk": "전용 메타데이터 키를 파생했습니다 (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "메타데이터 키 없음",
|
||||||
|
"desktop.sec.coverOn": "위장 트래픽 작동 중: 래칫 채널에 무작위 더미 프레임 (15-30초마다 32-128 B)",
|
||||||
|
"desktop.sec.coverOff": "위장 트래픽 생성기가 실행되고 있지 않습니다",
|
||||||
|
"desktop.sec.coverUnsupported": "위장 트래픽에는 Double Ratchet 세션이 필요합니다 (상대가 구버전입니다)",
|
||||||
|
"desktop.tagline": "종단 간 자유"
|
||||||
},
|
},
|
||||||
"manifest": {
|
"manifest": {
|
||||||
"name": "SecureBit.chat - 종단 간 암호화 비공개 메신저",
|
"name": "SecureBit.chat - 종단 간 암호화 비공개 메신저",
|
||||||
|
|||||||
+76
-1
@@ -806,6 +806,81 @@
|
|||||||
"groupCall.speaking": "{name} говорит",
|
"groupCall.speaking": "{name} говорит",
|
||||||
"groupCall.pin": "Показать {name} крупно",
|
"groupCall.pin": "Показать {name} крупно",
|
||||||
"groupCall.unpin": "Вернуться ко всем",
|
"groupCall.unpin": "Вернуться ко всем",
|
||||||
"groupCall.showEveryone": "Все"
|
"groupCall.showEveryone": "Все",
|
||||||
|
"msg.after5s": "5 с после прочтения",
|
||||||
|
"msg.after15s": "15 с после прочтения",
|
||||||
|
"msg.after30s": "30 с после прочтения",
|
||||||
|
"msg.after1m": "1 мин после прочтения",
|
||||||
|
"msg.sec30": "30 секунд",
|
||||||
|
"msg.min5": "5 минут",
|
||||||
|
"msg.hour1": "1 час",
|
||||||
|
"desktop.shareDesc": "Отправьте код собеседнику. Он одноразовый и скоро истечёт.",
|
||||||
|
"desktop.invitationCreated": "Защищённое приглашение создано - отправьте его собеседнику.",
|
||||||
|
"desktop.joinDesc": "Вставьте код приглашения собеседника, чтобы построить защищённый ответ.",
|
||||||
|
"desktop.offerTag": "приглашение · копировать текст",
|
||||||
|
"desktop.answerTag": "ответ · копировать текст",
|
||||||
|
"desktop.offerPlaceholder": "Здесь появится код приглашения…",
|
||||||
|
"desktop.answerPlaceholder": "Здесь появится код ответа…",
|
||||||
|
"desktop.backToChats": "Назад к чатам",
|
||||||
|
"desktop.sendFeedback": "Отправить отзыв",
|
||||||
|
"desktop.callsNeedVerified": "Для звонков нужен подтверждённый защищённый канал.",
|
||||||
|
"desktop.noOpenChannel": "Нет открытого защищённого канала.",
|
||||||
|
"desktop.chatCarriesCall": "Через этот чат идёт групповой звонок. Выйдите из группового звонка, прежде чем звонить один на один.",
|
||||||
|
"desktop.err.permission_denied": "Звонок не начался - доступ к микрофону и камере заблокирован. Разрешите его в системных настройках и попробуйте снова.",
|
||||||
|
"desktop.language": "Язык",
|
||||||
|
"desktop.languageHint": "Применяется сразу. Уже отправленные сообщения остаются на том языке, на котором их написали.",
|
||||||
|
"desktop.compareCode": "Сверьте код подтверждения с собеседником и подтвердите, если он совпадает.",
|
||||||
|
"desktop.verifyBeforeFiles": "Завершите проверку, прежде чем отправлять файлы.",
|
||||||
|
"desktop.verifyBeforeSending": "Завершите проверку, прежде чем отправлять сообщения.",
|
||||||
|
"desktop.disconnectedByBackend": "Соединение безопасно разорвано.",
|
||||||
|
"desktop.restoreFailed": "Не удалось восстановить соединение. Этот чат будет закрыт.",
|
||||||
|
"desktop.channelNotReady": "Канал данных ещё недоступен. Дождитесь установления соединения.",
|
||||||
|
"desktop.enterCode": "Введите код подтверждения.",
|
||||||
|
"desktop.noOffer": "Приглашение не найдено. Сначала создайте его.",
|
||||||
|
"desktop.notInitiator": "Вы не создавали это соединение, поэтому применять ответ не к чему.",
|
||||||
|
"desktop.decryptFailed": "Сообщение не удалось расшифровать, оно отброшено.",
|
||||||
|
"desktop.badMessageFormat": "Пришёл повреждённый кадр, он отброшен.",
|
||||||
|
"desktop.notSentNotReady": "Сообщение не отправлено: защищённый канал не готов. Дождитесь окончания проверки или переподключитесь.",
|
||||||
|
"desktop.micDenied": "Доступ к микрофону отклонён.",
|
||||||
|
"desktop.noChannelWait": "Нет открытого защищённого канала - дождитесь установления соединения.",
|
||||||
|
"desktop.sasFailed": "Проверка не пройдена. Возможен посредник, поэтому соединение прервано.",
|
||||||
|
"desktop.sasOk": "Проверка пройдена. Этот канал аутентифицирован сквозным образом.",
|
||||||
|
"desktop.iceForgotten": "Сохранённые серверы забыты. Используются публичные серверы ICE.",
|
||||||
|
"desktop.icePublic": "Используются публичные серверы ICE.",
|
||||||
|
"desktop.verificationInProgress": "Проверка безопасности ещё идёт. Дождитесь её завершения.",
|
||||||
|
"desktop.fileGone": "Этот файл больше недоступен для загрузки.",
|
||||||
|
"desktop.codeMismatch": "Коды подтверждения не совпадают. Отключаемся ради безопасности.",
|
||||||
|
"desktop.noLocalCode": "Проверка не удалась: нет локально вычисленного кода для сравнения. Отключаемся ради безопасности.",
|
||||||
|
"desktop.protocolViolation": "Собеседник заявил о подтверждении кода раньше, чем вы его подтвердили. Отключаемся ради безопасности.",
|
||||||
|
"desktop.verificationRejected": "Проверка отклонена. Соединение прервано ради безопасности.",
|
||||||
|
"secLevel.HIGH": "ВЫСОКИЙ",
|
||||||
|
"secLevel.MEDIUM": "СРЕДНИЙ",
|
||||||
|
"secLevel.LOW": "НИЗКИЙ",
|
||||||
|
"desktop.rerun": "Проверить снова",
|
||||||
|
"desktop.ice.customDesc": "До {max} серверов, по одному URL в строке или JSON.",
|
||||||
|
"desktop.ice.persistDesc": "Хранится локально на этом устройстве. Оставьте выключенным, чтобы использовать только в этом сеансе.",
|
||||||
|
"desktop.group.leaveNote": "Остальным участникам сообщат, что вы вышли. После этого на устройстве не остаётся ничего об этой группе - ни один сервер не хранит копию, чтобы вернуться, так что понадобится новое приглашение.",
|
||||||
|
"desktop.sec.ecdsaOk": "Подпись пакета ключей собеседника проверена при рукопожатии (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "Рукопожатие не завершено",
|
||||||
|
"desktop.sec.ecdhOk": "Ключи сеанса выведены из эфемерного обмена ECDH P-384 через HKDF-SHA-256",
|
||||||
|
"desktop.sec.ecdhNone": "Ключи сеанса не выведены",
|
||||||
|
"desktop.sec.encryptionOk": "Шифрование и расшифрование AES-GCM проверены в ядре",
|
||||||
|
"desktop.sec.encryptionNa": "Самопроверку AES-GCM выполнить не удалось",
|
||||||
|
"desktop.sec.integrityOk": "Целостность сообщений проверена (аутентификация AES-GCM)",
|
||||||
|
"desktop.sec.integrityNa": "Самопроверку целостности выполнить не удалось",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet активен - у каждого сообщения свой ключ",
|
||||||
|
"desktop.sec.pfsNa": "Не измерено",
|
||||||
|
"desktop.sec.replayOk": "Ключи сообщений рэтчета уничтожаются после использования, поэтому перехваченный кадр нельзя воспроизвести повторно",
|
||||||
|
"desktop.sec.replayNa": "Не измерено",
|
||||||
|
"desktop.sec.dtlsPinned": "Отпечаток DTLS собеседника закреплён: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "Отпечатка DTLS удалённой стороны нет",
|
||||||
|
"desktop.sec.sasBoth": "Обе стороны подтвердили код безопасности вне канала",
|
||||||
|
"desktop.sec.sasIncomplete": "Код безопасности подтвердили не обе стороны",
|
||||||
|
"desktop.sec.metadataOk": "Выведен отдельный ключ метаданных (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "Ключа метаданных нет",
|
||||||
|
"desktop.sec.coverOn": "Прикрывающий трафик активен: случайные фальшивые кадры (32-128 Б каждые 15-30 с) в канале с рэтчетом",
|
||||||
|
"desktop.sec.coverOff": "Генератор прикрывающего трафика не работает",
|
||||||
|
"desktop.sec.coverUnsupported": "Прикрывающему трафику нужен сеанс Double Ratchet (у собеседника версия постарше)",
|
||||||
|
"desktop.tagline": "Сквозная свобода"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+76
-1
@@ -806,6 +806,81 @@
|
|||||||
"groupCall.speaking": "{name} говорить",
|
"groupCall.speaking": "{name} говорить",
|
||||||
"groupCall.pin": "Показати {name} великим",
|
"groupCall.pin": "Показати {name} великим",
|
||||||
"groupCall.unpin": "Повернутися до всіх",
|
"groupCall.unpin": "Повернутися до всіх",
|
||||||
"groupCall.showEveryone": "Усі"
|
"groupCall.showEveryone": "Усі",
|
||||||
|
"msg.after5s": "5 с після прочитання",
|
||||||
|
"msg.after15s": "15 с після прочитання",
|
||||||
|
"msg.after30s": "30 с після прочитання",
|
||||||
|
"msg.after1m": "1 хв після прочитання",
|
||||||
|
"msg.sec30": "30 секунд",
|
||||||
|
"msg.min5": "5 хвилин",
|
||||||
|
"msg.hour1": "1 година",
|
||||||
|
"desktop.shareDesc": "Надішліть код співрозмовнику. Він одноразовий і швидко втрачає чинність.",
|
||||||
|
"desktop.invitationCreated": "Захищене запрошення створено - надішліть його співрозмовнику.",
|
||||||
|
"desktop.joinDesc": "Вставте код запрошення співрозмовника, щоб створити захищену відповідь.",
|
||||||
|
"desktop.offerTag": "запрошення · копіювати текст",
|
||||||
|
"desktop.answerTag": "відповідь · копіювати текст",
|
||||||
|
"desktop.offerPlaceholder": "Тут з’явиться код запрошення…",
|
||||||
|
"desktop.answerPlaceholder": "Тут з’явиться код відповіді…",
|
||||||
|
"desktop.backToChats": "Назад до чатів",
|
||||||
|
"desktop.sendFeedback": "Надіслати відгук",
|
||||||
|
"desktop.callsNeedVerified": "Дзвінки потребують перевіреного захищеного каналу.",
|
||||||
|
"desktop.noOpenChannel": "Немає відкритого захищеного каналу.",
|
||||||
|
"desktop.chatCarriesCall": "Цей чат несе груповий дзвінок. Вийдіть із групового дзвінка, перш ніж телефонувати один на один.",
|
||||||
|
"desktop.err.permission_denied": "Дзвінок не вдалося почати - доступ до мікрофона й камери заблоковано. Дозвольте його в системних налаштуваннях і спробуйте ще раз.",
|
||||||
|
"desktop.language": "Мова",
|
||||||
|
"desktop.languageHint": "Застосовується одразу. Уже надіслані повідомлення лишаються тією мовою, якою їх написали.",
|
||||||
|
"desktop.compareCode": "Порівняйте код підтвердження зі співрозмовником і підтвердьте, якщо він збігається.",
|
||||||
|
"desktop.verifyBeforeFiles": "Завершіть перевірку, перш ніж надсилати файли.",
|
||||||
|
"desktop.verifyBeforeSending": "Завершіть перевірку, перш ніж надсилати повідомлення.",
|
||||||
|
"desktop.disconnectedByBackend": "З’єднання безпечно розірвано.",
|
||||||
|
"desktop.restoreFailed": "Не вдалося відновити з’єднання. Цей чат буде закрито.",
|
||||||
|
"desktop.channelNotReady": "Канал даних ще недоступний. Зачекайте, доки з’єднання встановиться.",
|
||||||
|
"desktop.enterCode": "Введіть код підтвердження.",
|
||||||
|
"desktop.noOffer": "Запрошення не знайдено. Спершу створіть його.",
|
||||||
|
"desktop.notInitiator": "Ви не створювали це з’єднання, тож застосовувати відповідь нічому.",
|
||||||
|
"desktop.decryptFailed": "Повідомлення не вдалося розшифрувати, його відкинуто.",
|
||||||
|
"desktop.badMessageFormat": "Надійшов пошкоджений кадр, його відкинуто.",
|
||||||
|
"desktop.notSentNotReady": "Повідомлення не надіслано: захищений канал не готовий. Зачекайте завершення перевірки або перепідключіться.",
|
||||||
|
"desktop.micDenied": "Доступ до мікрофона відхилено.",
|
||||||
|
"desktop.noChannelWait": "Немає відкритого захищеного каналу - зачекайте, доки з’єднання встановиться.",
|
||||||
|
"desktop.sasFailed": "Перевірку не пройдено. Можлива присутність посередника, тож з’єднання перервано.",
|
||||||
|
"desktop.sasOk": "Перевірку пройдено. Цей канал автентифіковано наскрізно.",
|
||||||
|
"desktop.iceForgotten": "Збережені сервери забуто. Використовуються публічні сервери ICE.",
|
||||||
|
"desktop.icePublic": "Використовуються публічні сервери ICE.",
|
||||||
|
"desktop.verificationInProgress": "Перевірка безпеки ще триває. Зачекайте на її завершення.",
|
||||||
|
"desktop.fileGone": "Цей файл більше недоступний для завантаження.",
|
||||||
|
"desktop.codeMismatch": "Коди підтвердження не збігаються. Роз’єднуємо задля безпеки.",
|
||||||
|
"desktop.noLocalCode": "Перевірка не вдалася: немає локально обчисленого коду для порівняння. Роз’єднуємо задля безпеки.",
|
||||||
|
"desktop.protocolViolation": "Співрозмовник заявив про підтвердження коду раніше, ніж ви його підтвердили. Роз’єднуємо задля безпеки.",
|
||||||
|
"desktop.verificationRejected": "Перевірку відхилено. З’єднання перервано задля безпеки.",
|
||||||
|
"secLevel.HIGH": "ВИСОКИЙ",
|
||||||
|
"secLevel.MEDIUM": "СЕРЕДНІЙ",
|
||||||
|
"secLevel.LOW": "НИЗЬКИЙ",
|
||||||
|
"desktop.rerun": "Перевірити знову",
|
||||||
|
"desktop.ice.customDesc": "До {max} серверів, по одній URL-адресі на рядок або JSON.",
|
||||||
|
"desktop.ice.persistDesc": "Зберігається локально на цьому пристрої. Лишіть вимкненим, щоб використати лише в цьому сеансі.",
|
||||||
|
"desktop.group.leaveNote": "Інші учасники дізнаються, що ви вийшли. Після цього на цьому пристрої не лишається нічого про цю групу - жоден сервер не тримає копії, з якої можна повернутися, тож знадобиться нове запрошення.",
|
||||||
|
"desktop.sec.ecdsaOk": "Підпис пакета ключів співрозмовника перевірено під час рукостискання (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "Рукостискання не завершено",
|
||||||
|
"desktop.sec.ecdhOk": "Ключі сеансу виведено з тимчасового обміну ECDH P-384 через HKDF-SHA-256",
|
||||||
|
"desktop.sec.ecdhNone": "Ключі сеансу не виведено",
|
||||||
|
"desktop.sec.encryptionOk": "Шифрування й розшифрування AES-GCM перевірено в ядрі",
|
||||||
|
"desktop.sec.encryptionNa": "Самоперевірку AES-GCM виконати не вдалося",
|
||||||
|
"desktop.sec.integrityOk": "Цілісність повідомлень перевірено (автентифікація AES-GCM)",
|
||||||
|
"desktop.sec.integrityNa": "Самоперевірку цілісності виконати не вдалося",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet активний - кожне повідомлення має власний ключ",
|
||||||
|
"desktop.sec.pfsNa": "Не виміряно",
|
||||||
|
"desktop.sec.replayOk": "Ключі повідомлень ратчета знищуються після використання, тож перехоплений кадр не можна відтворити повторно",
|
||||||
|
"desktop.sec.replayNa": "Не виміряно",
|
||||||
|
"desktop.sec.dtlsPinned": "Відбиток DTLS співрозмовника закріплено: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "Відбитка DTLS віддаленої сторони немає",
|
||||||
|
"desktop.sec.sasBoth": "Обидві сторони підтвердили код безпеки поза каналом",
|
||||||
|
"desktop.sec.sasIncomplete": "Код безпеки підтвердили не обидві сторони",
|
||||||
|
"desktop.sec.metadataOk": "Виведено окремий ключ метаданих (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "Ключа метаданих немає",
|
||||||
|
"desktop.sec.coverOn": "Прикриваючий трафік активний: випадкові фальшиві кадри (32-128 Б кожні 15-30 с) у каналі з ратчетом",
|
||||||
|
"desktop.sec.coverOff": "Генератор прикриваючого трафіку не працює",
|
||||||
|
"desktop.sec.coverUnsupported": "Прикриваючий трафік потребує сеансу Double Ratchet (у співрозмовника старіша версія)",
|
||||||
|
"desktop.tagline": "Наскрізна свобода"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+76
-1
@@ -806,6 +806,81 @@
|
|||||||
"groupCall.speaking": "{name} بول رہے ہیں",
|
"groupCall.speaking": "{name} بول رہے ہیں",
|
||||||
"groupCall.pin": "{name} کو بڑا دکھائیں",
|
"groupCall.pin": "{name} کو بڑا دکھائیں",
|
||||||
"groupCall.unpin": "سب پر واپس جائیں",
|
"groupCall.unpin": "سب پر واپس جائیں",
|
||||||
"groupCall.showEveryone": "سب"
|
"groupCall.showEveryone": "سب",
|
||||||
|
"msg.after5s": "پڑھنے کے 5 سیکنڈ بعد",
|
||||||
|
"msg.after15s": "پڑھنے کے 15 سیکنڈ بعد",
|
||||||
|
"msg.after30s": "پڑھنے کے 30 سیکنڈ بعد",
|
||||||
|
"msg.after1m": "پڑھنے کے 1 منٹ بعد",
|
||||||
|
"msg.sec30": "30 سیکنڈ",
|
||||||
|
"msg.min5": "5 منٹ",
|
||||||
|
"msg.hour1": "1 گھنٹہ",
|
||||||
|
"desktop.shareDesc": "کوڈ اپنے ساتھی کو بھیجیں۔ یہ ایک بار کا ہے اور جلد ختم ہو جاتا ہے۔",
|
||||||
|
"desktop.invitationCreated": "محفوظ دعوت بن گئی - اسے اپنے ساتھی کو بھیجیں۔",
|
||||||
|
"desktop.joinDesc": "اپنا محفوظ جواب بنانے کے لیے ساتھی کا دعوتی کوڈ چسپاں کریں۔",
|
||||||
|
"desktop.offerTag": "دعوت · متن کاپی کریں",
|
||||||
|
"desktop.answerTag": "جواب · متن کاپی کریں",
|
||||||
|
"desktop.offerPlaceholder": "دعوتی کوڈ یہاں ظاہر ہوگا…",
|
||||||
|
"desktop.answerPlaceholder": "جوابی کوڈ یہاں ظاہر ہوگا…",
|
||||||
|
"desktop.backToChats": "چیٹس پر واپس",
|
||||||
|
"desktop.sendFeedback": "رائے بھیجیں",
|
||||||
|
"desktop.callsNeedVerified": "کالوں کے لیے تصدیق شدہ محفوظ چینل درکار ہے۔",
|
||||||
|
"desktop.noOpenChannel": "کوئی کھلا محفوظ چینل نہیں ہے۔",
|
||||||
|
"desktop.chatCarriesCall": "یہ چیٹ ایک گروپ کال اٹھائے ہوئے ہے۔ ون ٹو ون کال سے پہلے گروپ کال چھوڑیں۔",
|
||||||
|
"desktop.err.permission_denied": "کال شروع نہ ہو سکی - مائیکروفون اور کیمرے تک رسائی بند ہے۔ سسٹم سیٹنگز میں اجازت دیں اور دوبارہ کوشش کریں۔",
|
||||||
|
"desktop.language": "زبان",
|
||||||
|
"desktop.languageHint": "فوراً لاگو ہوتا ہے۔ پہلے بھیجے گئے پیغامات اپنے ہی الفاظ میں رہتے ہیں۔",
|
||||||
|
"desktop.compareCode": "تصدیقی کوڈ اپنے ساتھی سے ملائیں اور مطابقت پر تصدیق کریں۔",
|
||||||
|
"desktop.verifyBeforeFiles": "فائلیں بھیجنے سے پہلے تصدیق مکمل کریں۔",
|
||||||
|
"desktop.verifyBeforeSending": "پیغامات بھیجنے سے پہلے تصدیق مکمل کریں۔",
|
||||||
|
"desktop.disconnectedByBackend": "کنکشن محفوظ طریقے سے بند کر دیا گیا۔",
|
||||||
|
"desktop.restoreFailed": "کنکشن بحال نہ ہو سکا۔ یہ چیٹ بند کی جا رہی ہے۔",
|
||||||
|
"desktop.channelNotReady": "ڈیٹا چینل ابھی دستیاب نہیں۔ کنکشن قائم ہونے تک انتظار کریں۔",
|
||||||
|
"desktop.enterCode": "تصدیق کے لیے کوڈ درج کریں۔",
|
||||||
|
"desktop.noOffer": "کوئی دعوت نہیں ملی۔ پہلے ایک بنائیں۔",
|
||||||
|
"desktop.notInitiator": "یہ کنکشن آپ نے نہیں بنایا، اس لیے لاگو کرنے کے لیے کوئی جواب نہیں۔",
|
||||||
|
"desktop.decryptFailed": "ایک پیغام ڈی کرپٹ نہ ہو سکا اور رد کر دیا گیا۔",
|
||||||
|
"desktop.badMessageFormat": "خراب فریم آیا اور رد کر دیا گیا۔",
|
||||||
|
"desktop.notSentNotReady": "پیغام نہیں بھیجا گیا: محفوظ چینل تیار نہیں۔ تصدیق مکمل ہونے کا انتظار کریں یا دوبارہ جڑیں۔",
|
||||||
|
"desktop.micDenied": "مائیکروفون تک رسائی مسترد کر دی گئی۔",
|
||||||
|
"desktop.noChannelWait": "کوئی کھلا محفوظ چینل نہیں - کنکشن قائم ہونے تک انتظار کریں۔",
|
||||||
|
"desktop.sasFailed": "تصدیق ناکام۔ درمیان میں کوئی ہو سکتا ہے، اس لیے کنکشن روک دیا گیا۔",
|
||||||
|
"desktop.sasOk": "تصدیق کامیاب۔ یہ چینل سرے سے سرے تک مستند ہے۔",
|
||||||
|
"desktop.iceForgotten": "محفوظ سرور بھلا دیے گئے۔ عوامی ICE سرور استعمال ہو رہے ہیں۔",
|
||||||
|
"desktop.icePublic": "عوامی ICE سرور استعمال ہو رہے ہیں۔",
|
||||||
|
"desktop.verificationInProgress": "سیکیورٹی تصدیق ابھی جاری ہے۔ مکمل ہونے تک انتظار کریں۔",
|
||||||
|
"desktop.fileGone": "یہ فائل اب ڈاؤن لوڈ کے لیے دستیاب نہیں۔",
|
||||||
|
"desktop.codeMismatch": "تصدیقی کوڈ مطابقت نہیں رکھتے۔ حفاظت کے لیے کنکشن منقطع کیا جا رہا ہے۔",
|
||||||
|
"desktop.noLocalCode": "تصدیق ناکام: موازنے کے لیے مقامی کوڈ موجود نہیں۔ حفاظت کے لیے کنکشن منقطع کیا جا رہا ہے۔",
|
||||||
|
"desktop.protocolViolation": "ساتھی نے آپ کی تصدیق سے پہلے ہی کوڈ کی تصدیق کا دعویٰ کیا۔ حفاظت کے لیے کنکشن منقطع کیا جا رہا ہے۔",
|
||||||
|
"desktop.verificationRejected": "تصدیق مسترد۔ حفاظت کے لیے کنکشن روک دیا گیا۔",
|
||||||
|
"secLevel.HIGH": "بلند",
|
||||||
|
"secLevel.MEDIUM": "درمیانہ",
|
||||||
|
"secLevel.LOW": "کم",
|
||||||
|
"desktop.rerun": "دوبارہ جانچیں",
|
||||||
|
"desktop.ice.customDesc": "زیادہ سے زیادہ {max} سرور، فی سطر ایک URL یا JSON۔",
|
||||||
|
"desktop.ice.persistDesc": "اسی ڈیوائس پر مقامی طور پر محفوظ ہوتا ہے۔ صرف اسی سیشن کے لیے استعمال کرنا ہو تو بند رہنے دیں۔",
|
||||||
|
"desktop.group.leaveNote": "باقی اراکین کو بتا دیا جاتا ہے کہ آپ چلے گئے۔ اس کے بعد اس ڈیوائس پر اس گروپ کا کچھ باقی نہیں رہتا - کسی سرور کے پاس نقل نہیں کہ واپس آ سکیں، اس لیے نئی دعوت درکار ہوگی۔",
|
||||||
|
"desktop.sec.ecdsaOk": "ہینڈ شیک کے دوران ساتھی کے کلید پیکج کے دستخط کی تصدیق ہوئی (ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "کوئی مکمل ہینڈ شیک نہیں",
|
||||||
|
"desktop.sec.ecdhOk": "سیشن کلیدیں عارضی ECDH P-384 تبادلے سے HKDF-SHA-256 کے ذریعے اخذ ہوئیں",
|
||||||
|
"desktop.sec.ecdhNone": "کوئی سیشن کلید اخذ نہیں ہوئی",
|
||||||
|
"desktop.sec.encryptionOk": "کور میں AES-GCM انکرپشن اور ڈکرپشن کی تصدیق ہوئی",
|
||||||
|
"desktop.sec.encryptionNa": "AES-GCM خود جانچ نہ چل سکی",
|
||||||
|
"desktop.sec.integrityOk": "پیغام کی سالمیت کی تصدیق ہوئی (AES-GCM تصدیق)",
|
||||||
|
"desktop.sec.integrityNa": "سالمیت کی خود جانچ نہ چل سکی",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet فعال ہے - ہر پیغام کی اپنی کلید ہے",
|
||||||
|
"desktop.sec.pfsNa": "ناپا نہیں گیا",
|
||||||
|
"desktop.sec.replayOk": "ریچٹ پیغام کلیدیں استعمال کے فوراً بعد ختم ہو جاتی ہیں، اس لیے پکڑا گیا فریم دوبارہ نہیں چلایا جا سکتا",
|
||||||
|
"desktop.sec.replayNa": "ناپا نہیں گیا",
|
||||||
|
"desktop.sec.dtlsPinned": "ساتھی کا DTLS فنگر پرنٹ پن کر دیا گیا: {fp}",
|
||||||
|
"desktop.sec.dtlsNone": "دور دراز DTLS فنگر پرنٹ دستیاب نہیں",
|
||||||
|
"desktop.sec.sasBoth": "دونوں فریقوں نے چینل سے باہر سیفٹی کوڈ کی تصدیق کی",
|
||||||
|
"desktop.sec.sasIncomplete": "سیفٹی کوڈ کی تصدیق دونوں فریقوں نے نہیں کی",
|
||||||
|
"desktop.sec.metadataOk": "مخصوص میٹا ڈیٹا کلید اخذ ہوئی (HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "کوئی میٹا ڈیٹا کلید نہیں",
|
||||||
|
"desktop.sec.coverOn": "کور ٹریفک فعال: ریچٹ چینل پر بے ترتیب جعلی فریم (ہر 15-30 سیکنڈ میں 32-128 B)",
|
||||||
|
"desktop.sec.coverOff": "کور ٹریفک جنریٹر نہیں چل رہا",
|
||||||
|
"desktop.sec.coverUnsupported": "کور ٹریفک کے لیے Double Ratchet سیشن درکار ہے (ساتھی پرانے ورژن پر ہے)",
|
||||||
|
"desktop.tagline": "سرے سے سرے تک آزادی"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+76
-1
@@ -801,7 +801,82 @@
|
|||||||
"groupCall.speaking": "{name} 正在讲话",
|
"groupCall.speaking": "{name} 正在讲话",
|
||||||
"groupCall.pin": "放大显示 {name}",
|
"groupCall.pin": "放大显示 {name}",
|
||||||
"groupCall.unpin": "返回所有人",
|
"groupCall.unpin": "返回所有人",
|
||||||
"groupCall.showEveryone": "所有人"
|
"groupCall.showEveryone": "所有人",
|
||||||
|
"msg.after5s": "阅后 5 秒",
|
||||||
|
"msg.after15s": "阅后 15 秒",
|
||||||
|
"msg.after30s": "阅后 30 秒",
|
||||||
|
"msg.after1m": "阅后 1 分钟",
|
||||||
|
"msg.sec30": "30 秒",
|
||||||
|
"msg.min5": "5 分钟",
|
||||||
|
"msg.hour1": "1 小时",
|
||||||
|
"desktop.shareDesc": "把代码发给对方。它只能使用一次,并会很快过期。",
|
||||||
|
"desktop.invitationCreated": "安全邀请已创建 - 发送给对方。",
|
||||||
|
"desktop.joinDesc": "粘贴对方的邀请码,以生成你的安全应答。",
|
||||||
|
"desktop.offerTag": "邀请 · 复制文本",
|
||||||
|
"desktop.answerTag": "应答 · 复制文本",
|
||||||
|
"desktop.offerPlaceholder": "邀请码将显示在这里…",
|
||||||
|
"desktop.answerPlaceholder": "应答码将显示在这里…",
|
||||||
|
"desktop.backToChats": "返回聊天",
|
||||||
|
"desktop.sendFeedback": "发送反馈",
|
||||||
|
"desktop.callsNeedVerified": "通话需要已验证的安全通道。",
|
||||||
|
"desktop.noOpenChannel": "没有已打开的安全通道。",
|
||||||
|
"desktop.chatCarriesCall": "此聊天正在承载一场群组通话。请先离开群组通话,再发起一对一通话。",
|
||||||
|
"desktop.err.permission_denied": "通话无法开始 - 麦克风和摄像头权限被阻止。请在系统设置中允许后重试。",
|
||||||
|
"desktop.language": "语言",
|
||||||
|
"desktop.languageHint": "立即生效。已发送的消息保持原本的文字。",
|
||||||
|
"desktop.compareCode": "与对方核对验证码,一致则确认。",
|
||||||
|
"desktop.verifyBeforeFiles": "发送文件前请先完成验证。",
|
||||||
|
"desktop.verifyBeforeSending": "发送消息前请先完成验证。",
|
||||||
|
"desktop.disconnectedByBackend": "连接已安全断开。",
|
||||||
|
"desktop.restoreFailed": "无法恢复连接,正在关闭此聊天。",
|
||||||
|
"desktop.channelNotReady": "数据通道尚不可用,请等待连接建立。",
|
||||||
|
"desktop.enterCode": "输入验证码以确认。",
|
||||||
|
"desktop.noOffer": "未找到邀请,请先创建一个。",
|
||||||
|
"desktop.notInitiator": "此连接不是你创建的,因此没有可应用的应答。",
|
||||||
|
"desktop.decryptFailed": "一条消息无法解密,已丢弃。",
|
||||||
|
"desktop.badMessageFormat": "收到格式错误的数据帧,已丢弃。",
|
||||||
|
"desktop.notSentNotReady": "消息未发送:安全通道尚未就绪。请等待验证完成或重新连接。",
|
||||||
|
"desktop.micDenied": "麦克风权限被拒绝。",
|
||||||
|
"desktop.noChannelWait": "没有已打开的安全通道 - 请等待连接建立。",
|
||||||
|
"desktop.sasFailed": "验证失败。可能存在中间人,连接已中止。",
|
||||||
|
"desktop.sasOk": "验证成功。此通道已端到端认证。",
|
||||||
|
"desktop.iceForgotten": "已忘记保存的服务器,改用公共 ICE 服务器。",
|
||||||
|
"desktop.icePublic": "正在使用公共 ICE 服务器。",
|
||||||
|
"desktop.verificationInProgress": "安全验证仍在进行,请等待完成。",
|
||||||
|
"desktop.fileGone": "此文件已无法下载。",
|
||||||
|
"desktop.codeMismatch": "验证码不一致,为安全起见正在断开连接。",
|
||||||
|
"desktop.noLocalCode": "验证失败:本地没有可比对的派生验证码。为安全起见正在断开连接。",
|
||||||
|
"desktop.protocolViolation": "对方在你确认验证码之前就声称已确认。为安全起见正在断开连接。",
|
||||||
|
"desktop.verificationRejected": "验证被拒绝。为安全起见已中止连接。",
|
||||||
|
"secLevel.HIGH": "高",
|
||||||
|
"secLevel.MEDIUM": "中",
|
||||||
|
"secLevel.LOW": "低",
|
||||||
|
"desktop.rerun": "重新检测",
|
||||||
|
"desktop.ice.customDesc": "最多 {max} 个服务器,每行一个 URL 或使用 JSON。",
|
||||||
|
"desktop.ice.persistDesc": "保存在本设备上。关闭则仅在本次会话中使用。",
|
||||||
|
"desktop.group.leaveNote": "其他成员会得知你已离开。此后本设备上不会留下这个群组的任何内容——没有服务器保存副本可供重新加入,你需要一份新的邀请。",
|
||||||
|
"desktop.sec.ecdsaOk": "握手期间已验证对方密钥包的签名(ECDSA P-384 / SHA-384)",
|
||||||
|
"desktop.sec.ecdsaNone": "没有完成的握手",
|
||||||
|
"desktop.sec.ecdhOk": "会话密钥由临时 ECDH P-384 交换经 HKDF-SHA-256 派生",
|
||||||
|
"desktop.sec.ecdhNone": "未派生会话密钥",
|
||||||
|
"desktop.sec.encryptionOk": "已在核心中验证 AES-GCM 加解密",
|
||||||
|
"desktop.sec.encryptionNa": "无法运行 AES-GCM 自检",
|
||||||
|
"desktop.sec.integrityOk": "已验证消息完整性(AES-GCM 认证)",
|
||||||
|
"desktop.sec.integrityNa": "无法运行完整性自检",
|
||||||
|
"desktop.sec.pfsOk": "Double Ratchet 已启用——每条消息都有自己的密钥",
|
||||||
|
"desktop.sec.pfsNa": "未测量",
|
||||||
|
"desktop.sec.replayOk": "棘轮消息密钥用后即销毁,被截获的帧无法重放",
|
||||||
|
"desktop.sec.replayNa": "未测量",
|
||||||
|
"desktop.sec.dtlsPinned": "已固定对方 DTLS 指纹:{fp}",
|
||||||
|
"desktop.sec.dtlsNone": "没有可用的远端 DTLS 指纹",
|
||||||
|
"desktop.sec.sasBoth": "双方已在带外确认安全码",
|
||||||
|
"desktop.sec.sasIncomplete": "安全码尚未由双方确认",
|
||||||
|
"desktop.sec.metadataOk": "已派生专用的元数据密钥(HKDF metadata-protection-v4)",
|
||||||
|
"desktop.sec.metadataNone": "没有元数据密钥",
|
||||||
|
"desktop.sec.coverOn": "掩护流量已启用:在棘轮通道上发送随机伪帧(每 15-30 秒 32-128 字节)",
|
||||||
|
"desktop.sec.coverOff": "掩护流量生成器未运行",
|
||||||
|
"desktop.sec.coverUnsupported": "掩护流量需要 Double Ratchet 会话(对方使用较旧版本)",
|
||||||
|
"desktop.tagline": "端到端的自由"
|
||||||
},
|
},
|
||||||
"manifest": {
|
"manifest": {
|
||||||
"name": "SecureBit.chat - 私密的端到端加密通讯工具",
|
"name": "SecureBit.chat - 私密的端到端加密通讯工具",
|
||||||
|
|||||||
+988
-13
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user