Withdraw the key manager, and keep what probing it established

A Settings section for public keys is furniture, not a feature. Nothing
in ihasmail signs, encrypts, decrypts or verifies with a key, so the
page could only ever tell the reader in its own footnote that adding one
does nothing. It is withdrawn on that reasoning -- the same reasoning
that closed PR #67, reached again with the code in front of us.

So this reverts every user-visible part of it: the section, the lib, the
mock handlers, the component and the 261 catalogue strings. Nothing in
web/ or server/ differs from main now.

What stays is the part that was expensive and is true regardless. The
x:PublicKey registry was probed against a live 0.16.20 on 2026-09-05,
and the findings are now in KNOWN-ISSUES rather than in a closed pull
request -- which is where they sat for the nine days between #67 and
this branch, and why the work was done twice. Consolidated into one
entry, framed as what Stalwart does rather than what ihasmail offers:

  - an ordinary user may read and write their own keys, whatever the
    permissions table says
  - the registry takes S/MIME certificates as well as OpenPGP keys, and
    parses both -- confirmed with a real self-signed X.509 certificate,
    and a malformed one gets its own BER decoding error
  - a key can parse and still be refused, with different words. A
    sign-and-certify key -- what `gpg --quick-generate-key` makes --
    gets "Could not find any suitable keys", which is not a paste error
    and must not be shown as one
  - emailAddresses comes back as {} when empty, an object where a list
    property should be an array. It type-checks, then throws in join()
  - a create answers with the id alone; patching `key` is allowed
  - expiresAt is the registry's field and is not derived from the key

ROADMAP now says plainly that key management has been built and
withdrawn twice, that the registry is not the obstacle, and that
verifying a signature -- which needs only public keys -- is the shortest
route to a key being worth having. Encryption at rest moves from "not
offered yet" to refused: it is a one-way door, since turning it off does
not decrypt what is already there, and that is not a switch to hand an
ordinary user however easy it would be to add.
This commit is contained in:
2026-09-05 01:11:25 -07:00
parent 6a467d9bc4
commit 45c8929697
19 changed files with 14 additions and 1101 deletions
-30
View File
@@ -1331,36 +1331,6 @@ export const catalog: Catalog = {
"Empty “{name}”?": "„{name}“ leeren?",
"Delete them": "Alle löschen",
"Nothing was deleted": "Es wurde nichts gelöscht",
// ── Encryption keys, over Stalwart's x:PublicKey registry (#67) ──
"Encryption keys": "Verschlüsselungsschlüssel",
"Not available on this server": "Auf diesem Server nicht verfügbar",
"Public keys are kept in Stalwart's registry, which this server does not offer. ihasmail needs Stalwart 0.16 or newer for it.": "Öffentliche Schlüssel liegen in der Registry von Stalwart, die dieser Server nicht anbietet. ihasmail benötigt dafür Stalwart 0.16 oder neuer.",
"Public keys for this account — what other people encrypt to, and what a signature is checked against. These are public by nature: no private key is stored, requested, or sent by ihasmail.": "Öffentliche Schlüssel für dieses Konto — das, woran andere verschlüsseln und woran eine Signatur geprüft wird. Sie sind naturgemäß öffentlich: ihasmail speichert, erfragt und sendet keinen privaten Schlüssel.",
"No keys yet": "Noch keine Schlüssel",
"Add an OpenPGP public key or an S/MIME certificate to publish it on this account.": "Fügen Sie einen öffentlichen OpenPGP-Schlüssel oder ein S/MIME-Zertifikat hinzu, um es für dieses Konto zu veröffentlichen.",
"Key added": "Schlüssel hinzugefügt",
"Key removed": "Schlüssel entfernt",
"Remove “{name}”?": "„{name}“ entfernen?",
"this key": "diesen Schlüssel",
"Anyone holding it can still use it — removing it here only stops this account offering it.": "Wer ihn besitzt, kann ihn weiterhin verwenden — das Entfernen hier bewirkt nur, dass dieses Konto ihn nicht mehr anbietet.",
"Remove key": "Schlüssel entfernen",
"Key description": "Schlüsselbeschreibung",
"Untitled key": "Unbenannter Schlüssel",
"Click to rename": "Zum Umbenennen klicken",
"Expired": "Abgelaufen",
"Added": "Hinzugefügt",
"Addresses": "Adressen",
"No expiry set": "Kein Ablaufdatum festgelegt",
"Any address on this account": "Jede Adresse dieses Kontos",
"cryptography\u0004Key": "Schlüssel",
"Public key": "Öffentlicher Schlüssel",
"Work key": "Arbeitsschlüssel",
"Paste the whole armoured block, headers included. The server checks it and says what is wrong if it cannot read it.": "Fügen Sie den gesamten ASCII-Block samt Kopfzeilen ein. Der Server prüft ihn und sagt, was nicht stimmt, falls er ihn nicht lesen kann.",
"Add key": "Schlüssel hinzufügen",
"Add a key": "Einen Schlüssel hinzufügen",
"Stalwart stores these keys, and this release does no more than manage them: ihasmail does not yet sign, encrypt, decrypt or verify anything with them. Adding one does not by itself start encrypting your mail.": "Stalwart speichert diese Schlüssel, und diese Version verwaltet sie lediglich: ihasmail signiert, verschlüsselt, entschlüsselt und prüft damit noch nichts. Einen hinzuzufügen beginnt nicht von selbst, Ihre E-Mails zu verschlüsseln.",
"Unrecognised": "Nicht erkannt",
"No account to add a key to.": "Kein Konto vorhanden, zu dem ein Schlüssel hinzugefügt werden könnte.",
},
plurals: {
// ── Third pass ─────────────────────────────────────────────────────
-30
View File
@@ -1304,36 +1304,6 @@ export const catalog: Catalog = {
"Empty “{name}”?": "¿Vaciar «{name}»?",
"Delete them": "Eliminarlos",
"Nothing was deleted": "No se ha eliminado nada",
// ── Encryption keys, over Stalwart's x:PublicKey registry (#67) ──
"Encryption keys": "Claves de cifrado",
"Not available on this server": "No disponible en este servidor",
"Public keys are kept in Stalwart's registry, which this server does not offer. ihasmail needs Stalwart 0.16 or newer for it.": "Las claves públicas se guardan en el registro de Stalwart, que este servidor no ofrece. ihasmail necesita Stalwart 0.16 o posterior para ello.",
"Public keys for this account — what other people encrypt to, and what a signature is checked against. These are public by nature: no private key is stored, requested, or sent by ihasmail.": "Claves públicas de esta cuenta: aquello con lo que otras personas cifran, y aquello con lo que se comprueba una firma. Son públicas por naturaleza: ihasmail no almacena, no solicita ni envía ninguna clave privada.",
"No keys yet": "Aún no hay claves",
"Add an OpenPGP public key or an S/MIME certificate to publish it on this account.": "Añada una clave pública OpenPGP o un certificado S/MIME para publicarlo en esta cuenta.",
"Key added": "Clave añadida",
"Key removed": "Clave quitada",
"Remove “{name}”?": "¿Quitar «{name}»?",
"this key": "esta clave",
"Anyone holding it can still use it — removing it here only stops this account offering it.": "Quien la tenga podrá seguir usándola: quitarla aquí solo hace que esta cuenta deje de ofrecerla.",
"Remove key": "Quitar clave",
"Key description": "Descripción de la clave",
"Untitled key": "Clave sin título",
"Click to rename": "Haga clic para cambiar el nombre",
"Expired": "Caducada",
"Added": "Añadida",
"Addresses": "Direcciones",
"No expiry set": "Sin caducidad establecida",
"Any address on this account": "Cualquier dirección de esta cuenta",
"cryptography\u0004Key": "Clave",
"Public key": "Clave pública",
"Work key": "Clave del trabajo",
"Paste the whole armoured block, headers included. The server checks it and says what is wrong if it cannot read it.": "Pegue el bloque blindado completo, cabeceras incluidas. El servidor lo comprueba y dice qué falla si no puede leerlo.",
"Add key": "Añadir clave",
"Add a key": "Añadir una clave",
"Stalwart stores these keys, and this release does no more than manage them: ihasmail does not yet sign, encrypt, decrypt or verify anything with them. Adding one does not by itself start encrypting your mail.": "Stalwart guarda estas claves y esta versión no hace más que gestionarlas: ihasmail todavía no firma, cifra, descifra ni verifica nada con ellas. Añadir una no empieza por sí sola a cifrar su correo.",
"Unrecognised": "No reconocida",
"No account to add a key to.": "No hay ninguna cuenta a la que añadir una clave.",
},
plurals: {
// ── Third pass ─────────────────────────────────────────────────────
-30
View File
@@ -1309,36 +1309,6 @@ export const catalog: Catalog = {
"Empty “{name}”?": "Vider « {name} » ?",
"Delete them": "Les supprimer",
"Nothing was deleted": "Rien na été supprimé",
// ── Encryption keys, over Stalwart's x:PublicKey registry (#67) ──
"Encryption keys": "Clés de chiffrement",
"Not available on this server": "Non disponible sur ce serveur",
"Public keys are kept in Stalwart's registry, which this server does not offer. ihasmail needs Stalwart 0.16 or newer for it.": "Les clés publiques sont conservées dans le registre de Stalwart, que ce serveur ne propose pas. ihasmail nécessite Stalwart 0.16 ou plus récent pour cela.",
"Public keys for this account — what other people encrypt to, and what a signature is checked against. These are public by nature: no private key is stored, requested, or sent by ihasmail.": "Clés publiques de ce compte — ce avec quoi les autres chiffrent, et ce sur quoi une signature est vérifiée. Elles sont publiques par nature : ihasmail ne stocke, ne demande ni n'envoie aucune clé privée.",
"No keys yet": "Aucune clé pour l'instant",
"Add an OpenPGP public key or an S/MIME certificate to publish it on this account.": "Ajoutez une clé publique OpenPGP ou un certificat S/MIME pour le publier sur ce compte.",
"Key added": "Clé ajoutée",
"Key removed": "Clé retirée",
"Remove “{name}”?": "Retirer « {name} » ?",
"this key": "cette clé",
"Anyone holding it can still use it — removing it here only stops this account offering it.": "Quiconque la détient peut toujours l'utiliser — la retirer ici empêche seulement ce compte de la proposer.",
"Remove key": "Retirer la clé",
"Key description": "Description de la clé",
"Untitled key": "Clé sans titre",
"Click to rename": "Cliquez pour renommer",
"Expired": "Expirée",
"Added": "Ajoutée",
"Addresses": "Adresses",
"No expiry set": "Aucune expiration définie",
"Any address on this account": "Toute adresse de ce compte",
"cryptography\u0004Key": "Clé",
"Public key": "Clé publique",
"Work key": "Clé professionnelle",
"Paste the whole armoured block, headers included. The server checks it and says what is wrong if it cannot read it.": "Collez le bloc ASCII complet, en-têtes compris. Le serveur le vérifie et indique ce qui ne va pas s'il ne peut pas le lire.",
"Add key": "Ajouter la clé",
"Add a key": "Ajouter une clé",
"Stalwart stores these keys, and this release does no more than manage them: ihasmail does not yet sign, encrypt, decrypt or verify anything with them. Adding one does not by itself start encrypting your mail.": "Stalwart conserve ces clés, et cette version ne fait que les gérer : ihasmail ne signe, ne chiffre, ne déchiffre et ne vérifie encore rien avec elles. En ajouter une ne commence pas à chiffrer votre courrier.",
"Unrecognised": "Non reconnue",
"No account to add a key to.": "Aucun compte auquel ajouter une clé.",
},
plurals: {
// ── Third pass ─────────────────────────────────────────────────────
-30
View File
@@ -1312,36 +1312,6 @@ export const catalog: Catalog = {
"Empty “{name}”?": "「{name}」を空にしますか?",
"Delete them": "削除する",
"Nothing was deleted": "何も削除されませんでした",
// ── Encryption keys, over Stalwart's x:PublicKey registry (#67) ──
"Encryption keys": "暗号鍵",
"Not available on this server": "このサーバーでは利用できません",
"Public keys are kept in Stalwart's registry, which this server does not offer. ihasmail needs Stalwart 0.16 or newer for it.": "公開鍵は Stalwart のレジストリに保存されますが、このサーバーはそれを提供していません。ihasmail には Stalwart 0.16 以降が必要です。",
"Public keys for this account — what other people encrypt to, and what a signature is checked against. These are public by nature: no private key is stored, requested, or sent by ihasmail.": "このアカウントの公開鍵です。他の人が暗号化に使い、署名の検証にも使われます。公開鍵は本来公開されるものです。ihasmail は秘密鍵を保存も要求も送信もしません。",
"No keys yet": "鍵はまだありません",
"Add an OpenPGP public key or an S/MIME certificate to publish it on this account.": "OpenPGP 公開鍵または S/MIME 証明書を追加して、このアカウントで公開します。",
"Key added": "鍵を追加しました",
"Key removed": "鍵を削除しました",
"Remove “{name}”?": "「{name}」を削除しますか?",
"this key": "この鍵",
"Anyone holding it can still use it — removing it here only stops this account offering it.": "すでに持っている人は引き続き使用できます。ここで削除しても、このアカウントが提供しなくなるだけです。",
"Remove key": "鍵を削除",
"Key description": "鍵の説明",
"Untitled key": "名前のない鍵",
"Click to rename": "クリックして名前を変更",
"Expired": "期限切れ",
"Added": "追加日",
"Addresses": "アドレス",
"No expiry set": "有効期限なし",
"Any address on this account": "このアカウントのすべてのアドレス",
"cryptography\u0004Key": "鍵",
"Public key": "公開鍵",
"Work key": "仕事用の鍵",
"Paste the whole armoured block, headers included. The server checks it and says what is wrong if it cannot read it.": "ヘッダーを含め、ブロック全体を貼り付けてください。サーバーが検証し、読み取れない場合は理由を表示します。",
"Add key": "鍵を追加",
"Add a key": "鍵を追加",
"Stalwart stores these keys, and this release does no more than manage them: ihasmail does not yet sign, encrypt, decrypt or verify anything with them. Adding one does not by itself start encrypting your mail.": "Stalwart はこれらの鍵を保存し、このリリースでは管理のみを行います。ihasmail はまだ署名も暗号化も復号も検証も行いません。鍵を追加しただけでメールの暗号化が始まるわけではありません。",
"Unrecognised": "認識できません",
"No account to add a key to.": "鍵を追加するアカウントがありません。",
},
plurals: {
// ── Third pass ─────────────────────────────────────────────────────
-30
View File
@@ -1300,36 +1300,6 @@ export const catalog: Catalog = {
"Empty “{name}”?": "„{name}” leegmaken?",
"Delete them": "Verwijderen",
"Nothing was deleted": "Er is niets verwijderd",
// ── Encryption keys, over Stalwart's x:PublicKey registry (#67) ──
"Encryption keys": "Versleutelingssleutels",
"Not available on this server": "Niet beschikbaar op deze server",
"Public keys are kept in Stalwart's registry, which this server does not offer. ihasmail needs Stalwart 0.16 or newer for it.": "Openbare sleutels worden bewaard in het register van Stalwart, dat deze server niet aanbiedt. ihasmail heeft daarvoor Stalwart 0.16 of nieuwer nodig.",
"Public keys for this account — what other people encrypt to, and what a signature is checked against. These are public by nature: no private key is stored, requested, or sent by ihasmail.": "Openbare sleutels voor dit account — waarmee anderen naar u versleutelen, en waaraan een handtekening wordt gecontroleerd. Ze zijn van nature openbaar: ihasmail bewaart, vraagt en verstuurt geen enkele privésleutel.",
"No keys yet": "Nog geen sleutels",
"Add an OpenPGP public key or an S/MIME certificate to publish it on this account.": "Voeg een openbare OpenPGP-sleutel of een S/MIME-certificaat toe om het op dit account te publiceren.",
"Key added": "Sleutel toegevoegd",
"Key removed": "Sleutel verwijderd",
"Remove “{name}”?": "“{name}” verwijderen?",
"this key": "deze sleutel",
"Anyone holding it can still use it — removing it here only stops this account offering it.": "Wie hem al heeft, kan hem blijven gebruiken — hem hier verwijderen zorgt er alleen voor dat dit account hem niet meer aanbiedt.",
"Remove key": "Sleutel verwijderen",
"Key description": "Sleutelomschrijving",
"Untitled key": "Naamloze sleutel",
"Click to rename": "Klik om te hernoemen",
"Expired": "Verlopen",
"Added": "Toegevoegd",
"Addresses": "Adressen",
"No expiry set": "Geen vervaldatum ingesteld",
"Any address on this account": "Elk adres van dit account",
"cryptography\u0004Key": "Sleutel",
"Public key": "Openbare sleutel",
"Work key": "Werksleutel",
"Paste the whole armoured block, headers included. The server checks it and says what is wrong if it cannot read it.": "Plak het hele beveiligde blok, inclusief de kopregels. De server controleert het en zegt wat er mis is als hij het niet kan lezen.",
"Add key": "Sleutel toevoegen",
"Add a key": "Een sleutel toevoegen",
"Stalwart stores these keys, and this release does no more than manage them: ihasmail does not yet sign, encrypt, decrypt or verify anything with them. Adding one does not by itself start encrypting your mail.": "Stalwart bewaart deze sleutels, en deze versie doet niet meer dan ze beheren: ihasmail ondertekent, versleutelt, ontsleutelt en verifieert er nog niets mee. Er een toevoegen begint niet vanzelf uw e-mail te versleutelen.",
"Unrecognised": "Niet herkend",
"No account to add a key to.": "Geen account om een sleutel aan toe te voegen.",
},
plurals: {
// ── Third pass ─────────────────────────────────────────────────────
-30
View File
@@ -1307,36 +1307,6 @@ export const catalog: Catalog = {
"Empty “{name}”?": "Esvaziar “{name}”?",
"Delete them": "Excluir todos",
"Nothing was deleted": "Nada foi excluído",
// ── Encryption keys, over Stalwart's x:PublicKey registry (#67) ──
"Encryption keys": "Chaves de criptografia",
"Not available on this server": "Não disponível neste servidor",
"Public keys are kept in Stalwart's registry, which this server does not offer. ihasmail needs Stalwart 0.16 or newer for it.": "As chaves públicas ficam no registro do Stalwart, que este servidor não oferece. O ihasmail precisa do Stalwart 0.16 ou mais recente para isso.",
"Public keys for this account — what other people encrypt to, and what a signature is checked against. These are public by nature: no private key is stored, requested, or sent by ihasmail.": "Chaves públicas desta conta — o que outras pessoas usam para criptografar, e aquilo com que uma assinatura é conferida. Elas são públicas por natureza: o ihasmail não armazena, não pede e não envia nenhuma chave privada.",
"No keys yet": "Ainda não há chaves",
"Add an OpenPGP public key or an S/MIME certificate to publish it on this account.": "Adicione uma chave pública OpenPGP ou um certificado S/MIME para publicá-lo nesta conta.",
"Key added": "Chave adicionada",
"Key removed": "Chave removida",
"Remove “{name}”?": "Remover “{name}”?",
"this key": "esta chave",
"Anyone holding it can still use it — removing it here only stops this account offering it.": "Quem já a tem continua podendo usá-la — removê-la aqui apenas faz esta conta parar de oferecê-la.",
"Remove key": "Remover chave",
"Key description": "Descrição da chave",
"Untitled key": "Chave sem título",
"Click to rename": "Clique para renomear",
"Expired": "Expirada",
"Added": "Adicionada",
"Addresses": "Endereços",
"No expiry set": "Sem validade definida",
"Any address on this account": "Qualquer endereço desta conta",
"cryptography\u0004Key": "Chave",
"Public key": "Chave pública",
"Work key": "Chave do trabalho",
"Paste the whole armoured block, headers included. The server checks it and says what is wrong if it cannot read it.": "Cole o bloco blindado inteiro, cabeçalhos incluídos. O servidor confere e diz o que está errado se não conseguir lê-lo.",
"Add key": "Adicionar chave",
"Add a key": "Adicionar uma chave",
"Stalwart stores these keys, and this release does no more than manage them: ihasmail does not yet sign, encrypt, decrypt or verify anything with them. Adding one does not by itself start encrypting your mail.": "O Stalwart guarda essas chaves, e esta versão não faz mais do que gerenciá-las: o ihasmail ainda não assina, criptografa, descriptografa nem verifica nada com elas. Adicionar uma não começa a criptografar seus e-mails por si só.",
"Unrecognised": "Não reconhecida",
"No account to add a key to.": "Não há conta à qual adicionar uma chave.",
},
plurals: {
// ── Third pass ─────────────────────────────────────────────────────
-30
View File
@@ -1306,36 +1306,6 @@ export const catalog: Catalog = {
"Empty “{name}”?": "Очистить «{name}»?",
"Delete them": "Удалить их",
"Nothing was deleted": "Ничего не удалено",
// ── Encryption keys, over Stalwart's x:PublicKey registry (#67) ──
"Encryption keys": "Ключи шифрования",
"Not available on this server": "Недоступно на этом сервере",
"Public keys are kept in Stalwart's registry, which this server does not offer. ihasmail needs Stalwart 0.16 or newer for it.": "Открытые ключи хранятся в реестре Stalwart, которого этот сервер не предоставляет. Для этого ihasmail требуется Stalwart 0.16 или новее.",
"Public keys for this account — what other people encrypt to, and what a signature is checked against. These are public by nature: no private key is stored, requested, or sent by ihasmail.": "Открытые ключи этой учётной записи — то, чем другие шифруют письма для вас, и то, по чему проверяется подпись. Они открыты по своей природе: ihasmail не хранит, не запрашивает и не отправляет закрытые ключи.",
"No keys yet": "Ключей пока нет",
"Add an OpenPGP public key or an S/MIME certificate to publish it on this account.": "Добавьте открытый ключ OpenPGP или сертификат S/MIME, чтобы опубликовать его в этой учётной записи.",
"Key added": "Ключ добавлен",
"Key removed": "Ключ убран",
"Remove “{name}”?": "Убрать «{name}»?",
"this key": "этот ключ",
"Anyone holding it can still use it — removing it here only stops this account offering it.": "У того, кто его уже получил, он останется — здесь это лишь прекращает предлагать его от этой учётной записи.",
"Remove key": "Убрать ключ",
"Key description": "Описание ключа",
"Untitled key": "Ключ без названия",
"Click to rename": "Нажмите, чтобы переименовать",
"Expired": "Истёк",
"Added": "Добавлен",
"Addresses": "Адреса",
"No expiry set": "Срок действия не задан",
"Any address on this account": "Любой адрес этой учётной записи",
"cryptography\u0004Key": "Ключ",
"Public key": "Открытый ключ",
"Work key": "Рабочий ключ",
"Paste the whole armoured block, headers included. The server checks it and says what is wrong if it cannot read it.": "Вставьте весь блок целиком, вместе с заголовками. Сервер проверит его и сообщит, что не так, если не сможет прочитать.",
"Add key": "Добавить ключ",
"Add a key": "Добавить ключ",
"Stalwart stores these keys, and this release does no more than manage them: ihasmail does not yet sign, encrypt, decrypt or verify anything with them. Adding one does not by itself start encrypting your mail.": "Stalwart хранит эти ключи, а эта версия лишь управляет ими: ihasmail пока ничего ими не подписывает, не шифрует, не расшифровывает и не проверяет. Добавление ключа само по себе не начинает шифровать вашу почту.",
"Unrecognised": "Не распознан",
"No account to add a key to.": "Нет учётной записи, в которую можно добавить ключ.",
},
plurals: {
// ── Third pass ─────────────────────────────────────────────────────
-30
View File
@@ -1300,36 +1300,6 @@ export const catalog: Catalog = {
"Empty “{name}”?": "Очистити «{name}»?",
"Delete them": "Видалити їх",
"Nothing was deleted": "Нічого не видалено",
// ── Encryption keys, over Stalwart's x:PublicKey registry (#67) ──
"Encryption keys": "Ключі шифрування",
"Not available on this server": "Недоступно на цьому сервері",
"Public keys are kept in Stalwart's registry, which this server does not offer. ihasmail needs Stalwart 0.16 or newer for it.": "Відкриті ключі зберігаються в реєстрі Stalwart, якого цей сервер не надає. Для цього ihasmail потребує Stalwart 0.16 або новішої версії.",
"Public keys for this account — what other people encrypt to, and what a signature is checked against. These are public by nature: no private key is stored, requested, or sent by ihasmail.": "Відкриті ключі цього облікового запису — те, чим інші шифрують листи для вас, і те, за чим перевіряється підпис. Вони відкриті за своєю природою: ihasmail не зберігає, не запитує і не надсилає закритих ключів.",
"No keys yet": "Ключів ще немає",
"Add an OpenPGP public key or an S/MIME certificate to publish it on this account.": "Додайте відкритий ключ OpenPGP або сертифікат S/MIME, щоб опублікувати його в цьому обліковому записі.",
"Key added": "Ключ додано",
"Key removed": "Ключ прибрано",
"Remove “{name}”?": "Прибрати «{name}»?",
"this key": "цей ключ",
"Anyone holding it can still use it — removing it here only stops this account offering it.": "У того, хто вже його має, він залишиться — тут це лише припиняє пропонувати його від цього облікового запису.",
"Remove key": "Прибрати ключ",
"Key description": "Опис ключа",
"Untitled key": "Ключ без назви",
"Click to rename": "Натисніть, щоб перейменувати",
"Expired": "Закінчився",
"Added": "Додано",
"Addresses": "Адреси",
"No expiry set": "Термін дії не задано",
"Any address on this account": "Будь-яка адреса цього облікового запису",
"cryptography\u0004Key": "Ключ",
"Public key": "Відкритий ключ",
"Work key": "Робочий ключ",
"Paste the whole armoured block, headers included. The server checks it and says what is wrong if it cannot read it.": "Вставте весь блок цілком, разом із заголовками. Сервер перевірить його і скаже, що не так, якщо не зможе прочитати.",
"Add key": "Додати ключ",
"Add a key": "Додати ключ",
"Stalwart stores these keys, and this release does no more than manage them: ihasmail does not yet sign, encrypt, decrypt or verify anything with them. Adding one does not by itself start encrypting your mail.": "Stalwart зберігає ці ключі, а ця версія лише керує ними: ihasmail поки нічого ними не підписує, не шифрує, не розшифровує і не перевіряє. Додавання ключа саме собою не починає шифрувати вашу пошту.",
"Unrecognised": "Не розпізнано",
"No account to add a key to.": "Немає облікового запису, до якого можна додати ключ.",
},
plurals: {
// ── Third pass ─────────────────────────────────────────────────────
-30
View File
@@ -1311,36 +1311,6 @@ export const catalog: Catalog = {
"Empty “{name}”?": "清空“{name}”?",
"Delete them": "删除",
"Nothing was deleted": "未删除任何内容",
// ── Encryption keys, over Stalwart's x:PublicKey registry (#67) ──
"Encryption keys": "加密密钥",
"Not available on this server": "此服务器不支持",
"Public keys are kept in Stalwart's registry, which this server does not offer. ihasmail needs Stalwart 0.16 or newer for it.": "公钥保存在 Stalwart 的注册表中,而此服务器未提供该功能。ihasmail 需要 Stalwart 0.16 或更高版本。",
"Public keys for this account — what other people encrypt to, and what a signature is checked against. These are public by nature: no private key is stored, requested, or sent by ihasmail.": "此账户的公钥——他人用它加密,签名也据此校验。公钥本就是公开的:ihasmail 不会存储、索取或发送任何私钥。",
"No keys yet": "尚无密钥",
"Add an OpenPGP public key or an S/MIME certificate to publish it on this account.": "添加 OpenPGP 公钥或 S/MIME 证书,将其发布到此账户。",
"Key added": "已添加密钥",
"Key removed": "已移除密钥",
"Remove “{name}”?": "移除「{name}」?",
"this key": "此密钥",
"Anyone holding it can still use it — removing it here only stops this account offering it.": "已经持有它的人仍可继续使用——在此移除只会让此账户不再提供它。",
"Remove key": "移除密钥",
"Key description": "密钥说明",
"Untitled key": "未命名密钥",
"Click to rename": "点击以重命名",
"Expired": "已过期",
"Added": "添加时间",
"Addresses": "地址",
"No expiry set": "未设置有效期",
"Any address on this account": "此账户的任意地址",
"cryptography\u0004Key": "密钥",
"Public key": "公钥",
"Work key": "工作密钥",
"Paste the whole armoured block, headers included. The server checks it and says what is wrong if it cannot read it.": "请粘贴完整的密钥文本块,包括头尾行。服务器会进行校验,无法读取时会说明原因。",
"Add key": "添加密钥",
"Add a key": "添加密钥",
"Stalwart stores these keys, and this release does no more than manage them: ihasmail does not yet sign, encrypt, decrypt or verify anything with them. Adding one does not by itself start encrypting your mail.": "Stalwart 会保存这些密钥,而此版本仅负责管理:ihasmail 尚不会用它们签名、加密、解密或验证。添加密钥本身并不会开始加密您的邮件。",
"Unrecognised": "无法识别",
"No account to add a key to.": "没有可添加密钥的账户。",
},
plurals: {
// ── Third pass ─────────────────────────────────────────────────────