feat: add S/MIME store for managing key records and public certificates
- Implemented Zustand store for S/MIME functionality, including state management for key records and public certificates. - Added methods for importing PKCS#12 files and public certificates, binding identities to keys, and managing unlocked keys. - Introduced session storage for remembering unlocked keys across sessions. - Enhanced error handling and loading states during data operations.
This commit is contained in:
+97
-1
@@ -416,6 +416,15 @@
|
||||
"upload_cancel": "アップロードをキャンセル",
|
||||
"upload_failed": "{filename} のアップロードに失敗しました",
|
||||
"send_failed": "メールの送信に失敗しました",
|
||||
"smime_sign_on": "S/MIME 署名を有効化しました",
|
||||
"smime_sign_off": "S/MIME 署名を無効化しました",
|
||||
"smime_encrypt_on": "S/MIME 暗号化を有効化しました",
|
||||
"smime_encrypt_off": "S/MIME 暗号化を無効化しました",
|
||||
"smime_encrypt_unavailable": "S/MIME 暗号化は利用できません: {reason}",
|
||||
"smime_unlock_title": "S/MIME 鍵のロックを解除",
|
||||
"smime_unlock_message": "S/MIME 鍵を解除するためのパスフレーズを入力してください。",
|
||||
"smime_unlock_button": "ロック解除",
|
||||
"smime_passphrase_placeholder": "S/MIME パスフレーズ",
|
||||
"continue_draft": "下書きを続ける",
|
||||
"close_draft_title": "下書きを保存または破棄しますか?",
|
||||
"close_draft_message": "未保存の変更があります。下書きとして保存しますか、それとも破棄しますか?",
|
||||
@@ -552,6 +561,7 @@
|
||||
"folders": "フォルダー",
|
||||
"keywords": "キーワード",
|
||||
"security": "セキュリティ",
|
||||
"encryption": "暗号化",
|
||||
"files": "ファイル",
|
||||
"contacts": "Contacts"
|
||||
},
|
||||
@@ -1439,7 +1449,16 @@
|
||||
"calendar": "カレンダー",
|
||||
"calendar_uri": "カレンダーURL",
|
||||
"scheduling_uri": "スケジュールURL",
|
||||
"freebusy_uri": "空き状況URL"
|
||||
"freebusy_uri": "空き状況URL",
|
||||
"cert_issuer": "発行者",
|
||||
"cert_expires": "有効期限",
|
||||
"cert_expired": "期限切れ",
|
||||
"cert_fingerprint": "フィンガープリント",
|
||||
"cert_algorithm": "アルゴリズム",
|
||||
"import_to_smime": "S/MIME にインポート",
|
||||
"cert_already_imported": "証明書はすでにインポートされています",
|
||||
"cert_imported": "証明書をインポートしました",
|
||||
"cert_import_failed": "証明書のインポートに失敗しました"
|
||||
},
|
||||
"form": {
|
||||
"create_title": "新しい連絡先",
|
||||
@@ -1989,5 +2008,82 @@
|
||||
"settings_folder_layout_desc": "Choose how folders are displayed: inline with files or in a sidebar tree",
|
||||
"settings_folder_layout_inline": "Inline",
|
||||
"settings_folder_layout_sidebar": "Sidebar"
|
||||
},
|
||||
"smime": {
|
||||
"your_certificates": "あなたの証明書",
|
||||
"your_certificates_desc": "メールの署名と暗号化のために S/MIME 証明書をインポートして管理します",
|
||||
"recipient_certificates": "受信者証明書",
|
||||
"recipient_certificates_desc": "受信者へのメールを暗号化するための公開証明書",
|
||||
"identity_bindings": "ID と鍵の関連付け",
|
||||
"identity_bindings_desc": "S/MIME 証明書をメール ID に関連付けます",
|
||||
"defaults_title": "既定値",
|
||||
"defaults_desc": "署名と暗号化の既定動作を設定します",
|
||||
"import_pkcs12": "PKCS#12 をインポート (.p12/.pfx)",
|
||||
"import_public_cert": "証明書をインポート",
|
||||
"no_certificates": "まだ証明書はインポートされていません",
|
||||
"no_recipient_certs": "受信者証明書がありません",
|
||||
"expires": "有効期限",
|
||||
"expired": "期限切れ",
|
||||
"bound_to": "関連付け先",
|
||||
"no_key_bound": "なし",
|
||||
"lock": "鍵をロック",
|
||||
"unlock": "鍵をロック解除",
|
||||
"details": "詳細を表示",
|
||||
"delete": "削除",
|
||||
"encrypt_by_default": "既定で暗号化する",
|
||||
"encrypt_by_default_desc": "すべての受信者が証明書を持っている場合に自動でメールを暗号化します",
|
||||
"remember_unlocked": "ロック解除した鍵を記憶する",
|
||||
"remember_unlocked_desc": "このブラウザーセッションの間は鍵をロック解除したままにします",
|
||||
"sign_default_for": "既定で署名する対象",
|
||||
"enter_p12_passphrase": "PKCS#12 パスフレーズを入力",
|
||||
"p12_passphrase_desc": "この証明書ファイルを保護しているパスフレーズを入力してください",
|
||||
"enter_storage_passphrase": "保存用パスフレーズを設定",
|
||||
"storage_passphrase_desc": "ブラウザー内でこの鍵を保護するためのパスフレーズを選択してください",
|
||||
"next": "次へ",
|
||||
"import": "インポート",
|
||||
"unlock_key": "鍵をロック解除",
|
||||
"unlock_key_desc": "署名または復号に使うため、この鍵の保存用パスフレーズを入力してください",
|
||||
"passphrase_placeholder": "パスフレーズを入力",
|
||||
"confirm_passphrase_placeholder": "パスフレーズを確認",
|
||||
"passphrase_mismatch": "パスフレーズが一致しません",
|
||||
"cancel": "キャンセル",
|
||||
"processing": "処理中…",
|
||||
"close": "閉じる",
|
||||
"certificate_details": "証明書の詳細",
|
||||
"cert_subject": "件名",
|
||||
"cert_issuer": "発行者",
|
||||
"cert_email": "メールアドレス",
|
||||
"cert_serial": "シリアル番号",
|
||||
"cert_validity": "有効期間",
|
||||
"cert_fingerprint": "フィンガープリント (SHA-256)",
|
||||
"cert_algorithm": "アルゴリズム",
|
||||
"cert_capabilities": "機能",
|
||||
"cert_source": "ソース",
|
||||
"cert_expired": "この証明書は期限切れです",
|
||||
"cert_not_yet_valid": "この証明書はまだ有効ではありません",
|
||||
"cap_sign": "署名",
|
||||
"cap_encrypt": "暗号化",
|
||||
"cap_none": "なし",
|
||||
"show_passphrase": "パスフレーズを表示",
|
||||
"hide_passphrase": "パスフレーズを隠す",
|
||||
"sign_toggle": "署名",
|
||||
"encrypt_toggle": "暗号化",
|
||||
"missing_recipient_certs": "次の宛先の証明書がありません: {emails}",
|
||||
"missing_sender_cert": "この ID に関連付けられた証明書がありません",
|
||||
"status_encrypted_ok": "このメッセージは暗号化されています",
|
||||
"status_encrypted_no_key": "このメッセージは暗号化されていますが、一致する鍵が見つかりませんでした",
|
||||
"status_encrypted_failed": "このメッセージを復号できませんでした",
|
||||
"status_signed_valid": "署名を確認しました",
|
||||
"status_signed_invalid": "署名の検証に失敗しました",
|
||||
"status_signed_expired_cert": "期限切れの証明書で署名されています",
|
||||
"status_signed_mismatch": "署名は有効ですが、署名者が送信者と一致しません",
|
||||
"status_unsupported": "未対応の S/MIME 形式です",
|
||||
"auto_import_signer_certs": "署名者証明書を自動インポート",
|
||||
"auto_import_signer_certs_desc": "検証済み署名メールの証明書を今後の暗号化用に自動保存します",
|
||||
"export": "エクスポート",
|
||||
"enter_export_passphrase": "エクスポート用パスフレーズを設定",
|
||||
"export_passphrase_desc": "エクスポートする PKCS#12 ファイルを保護するパスフレーズを選択してください",
|
||||
"export_storage_desc": "エクスポートのために鍵を復号する保存用パスフレーズを入力してください",
|
||||
"incorrect_passphrase": "パスフレーズが正しくありません"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user