mirror of
https://codeberg.org/PGPainless/sop-java.git
synced 2024-11-22 15:12:06 +01:00
Merge branch 'sharedResource'
This commit is contained in:
commit
092a83a1e7
44 changed files with 427 additions and 381 deletions
|
@ -26,7 +26,7 @@ import java.util.ResourceBundle;
|
|||
|
||||
@CommandLine.Command(
|
||||
name = "sop",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_sop",
|
||||
exitCodeOnInvalidInput = 69,
|
||||
subcommands = {
|
||||
CommandLine.HelpCommand.class,
|
||||
|
@ -48,7 +48,7 @@ import java.util.ResourceBundle;
|
|||
public class SopCLI {
|
||||
// Singleton
|
||||
static SOP SOP_INSTANCE;
|
||||
static ResourceBundle cliMsg = ResourceBundle.getBundle("sop");
|
||||
static ResourceBundle cliMsg = ResourceBundle.getBundle("msg_sop");
|
||||
|
||||
public static String EXECUTABLE_NAME = "sop";
|
||||
|
||||
|
@ -64,15 +64,20 @@ public class SopCLI {
|
|||
// Set locale
|
||||
new CommandLine(new InitLocale()).parseArgs(args);
|
||||
|
||||
cliMsg = ResourceBundle.getBundle("sop");
|
||||
// get error message bundle
|
||||
cliMsg = ResourceBundle.getBundle("msg_sop");
|
||||
|
||||
// Prepare CLI
|
||||
CommandLine cmd = new CommandLine(SopCLI.class);
|
||||
// Hide generate-completion command
|
||||
CommandLine gen = cmd.getSubcommands().get("generate-completion");
|
||||
gen.getCommandSpec().usageMessage().hidden(true);
|
||||
|
||||
cmd.setExecutionExceptionHandler(new SOPExecutionExceptionHandler())
|
||||
// explicitly set help command resource bundle
|
||||
cmd.getSubcommands().get("help").setResourceBundle(ResourceBundle.getBundle("msg_help"));
|
||||
|
||||
// Hide generate-completion command
|
||||
cmd.getSubcommands().get("generate-completion").getCommandSpec().usageMessage().hidden(true);
|
||||
|
||||
cmd.setCommandName(EXECUTABLE_NAME)
|
||||
.setExecutionExceptionHandler(new SOPExecutionExceptionHandler())
|
||||
.setExitCodeExceptionMapper(new SOPExceptionExitCodeMapper())
|
||||
.setCaseInsensitiveEnumValuesAllowed(true);
|
||||
|
||||
|
|
|
@ -48,7 +48,7 @@ public abstract class AbstractSopCmd implements Runnable {
|
|||
}
|
||||
|
||||
public AbstractSopCmd(@Nonnull Locale locale) {
|
||||
messages = ResourceBundle.getBundle("sop", locale);
|
||||
messages = ResourceBundle.getBundle("msg_sop", locale);
|
||||
}
|
||||
|
||||
void throwIfOutputExists(String output) {
|
||||
|
|
|
@ -14,12 +14,11 @@ import sop.operation.Armor;
|
|||
import java.io.IOException;
|
||||
|
||||
@CommandLine.Command(name = "armor",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_armor",
|
||||
exitCodeOnInvalidInput = SOPGPException.UnsupportedOption.EXIT_CODE)
|
||||
public class ArmorCmd extends AbstractSopCmd {
|
||||
|
||||
@CommandLine.Option(names = {"--label"},
|
||||
descriptionKey = "sop.armor.usage.option.label",
|
||||
paramLabel = "{auto|sig|key|cert|message}")
|
||||
ArmorLabel label;
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ import sop.operation.Dearmor;
|
|||
import java.io.IOException;
|
||||
|
||||
@CommandLine.Command(name = "dearmor",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_dearmor",
|
||||
exitCodeOnInvalidInput = SOPGPException.UnsupportedOption.EXIT_CODE)
|
||||
public class DearmorCmd extends AbstractSopCmd {
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ import java.util.List;
|
|||
import java.util.regex.Pattern;
|
||||
|
||||
@CommandLine.Command(name = "decrypt",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_decrypt",
|
||||
exitCodeOnInvalidInput = SOPGPException.UnsupportedOption.EXIT_CODE)
|
||||
public class DecryptCmd extends AbstractSopCmd {
|
||||
|
||||
|
@ -40,50 +40,41 @@ public class DecryptCmd extends AbstractSopCmd {
|
|||
|
||||
@CommandLine.Option(
|
||||
names = {OPT_SESSION_KEY_OUT},
|
||||
descriptionKey = "sop.decrypt.usage.option.session_key_out",
|
||||
paramLabel = "SESSIONKEY")
|
||||
String sessionKeyOut;
|
||||
|
||||
@CommandLine.Option(
|
||||
names = {OPT_WITH_SESSION_KEY},
|
||||
descriptionKey = "sop.decrypt.usage.option.with_session_key",
|
||||
paramLabel = "SESSIONKEY")
|
||||
List<String> withSessionKey = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(
|
||||
names = {OPT_WITH_PASSWORD},
|
||||
descriptionKey = "sop.decrypt.usage.option.with_password",
|
||||
paramLabel = "PASSWORD")
|
||||
List<String> withPassword = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = {OPT_VERIFY_OUT},
|
||||
descriptionKey = "sop.decrypt.usage.option.verify_out",
|
||||
paramLabel = "VERIFICATIONS")
|
||||
String verifyOut;
|
||||
|
||||
@CommandLine.Option(names = {OPT_VERIFY_WITH},
|
||||
descriptionKey = "sop.decrypt.usage.option.certs",
|
||||
paramLabel = "CERT")
|
||||
List<String> certs = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = {OPT_NOT_BEFORE},
|
||||
descriptionKey = "sop.decrypt.usage.option.not_before",
|
||||
paramLabel = "DATE")
|
||||
String notBefore = "-";
|
||||
|
||||
@CommandLine.Option(names = {OPT_NOT_AFTER},
|
||||
descriptionKey = "sop.decrypt.usage.option.not_after",
|
||||
paramLabel = "DATE")
|
||||
String notAfter = "now";
|
||||
|
||||
@CommandLine.Parameters(index = "0..*",
|
||||
descriptionKey = "sop.decrypt.usage.param.keys",
|
||||
paramLabel = "KEY")
|
||||
List<String> keys = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = {OPT_WITH_KEY_PASSWORD},
|
||||
descriptionKey = "sop.decrypt.usage.option.with_key_password",
|
||||
paramLabel = "PASSWORD")
|
||||
paramLabel = "PASSWORD")
|
||||
List<String> withKeyPassword = new ArrayList<>();
|
||||
|
||||
@Override
|
||||
|
|
|
@ -17,37 +17,31 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
|
||||
@CommandLine.Command(name = "encrypt",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_encrypt",
|
||||
exitCodeOnInvalidInput = 37)
|
||||
public class EncryptCmd extends AbstractSopCmd {
|
||||
|
||||
@CommandLine.Option(names = "--no-armor",
|
||||
descriptionKey = "sop.encrypt.usage.option.armor",
|
||||
negatable = true)
|
||||
boolean armor = true;
|
||||
|
||||
@CommandLine.Option(names = {"--as"},
|
||||
descriptionKey = "sop.encrypt.usage.option.type",
|
||||
paramLabel = "{binary|text}")
|
||||
EncryptAs type;
|
||||
|
||||
@CommandLine.Option(names = "--with-password",
|
||||
descriptionKey = "sop.encrypt.usage.option.with_password",
|
||||
paramLabel = "PASSWORD")
|
||||
List<String> withPassword = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = "--sign-with",
|
||||
descriptionKey = "sop.encrypt.usage.option.sign_with",
|
||||
paramLabel = "KEY")
|
||||
List<String> signWith = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = "--with-key-password",
|
||||
descriptionKey = "sop.encrypt.usage.option.with_key_password",
|
||||
paramLabel = "PASSWORD")
|
||||
List<String> withKeyPassword = new ArrayList<>();
|
||||
|
||||
@CommandLine.Parameters(descriptionKey = "sop.encrypt.usage.param.certs",
|
||||
index = "0..*",
|
||||
@CommandLine.Parameters(index = "0..*",
|
||||
paramLabel = "CERTS")
|
||||
List<String> certs = new ArrayList<>();
|
||||
|
||||
|
|
|
@ -13,12 +13,11 @@ import sop.exception.SOPGPException;
|
|||
import sop.operation.ExtractCert;
|
||||
|
||||
@CommandLine.Command(name = "extract-cert",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_extract-cert",
|
||||
exitCodeOnInvalidInput = 37)
|
||||
public class ExtractCertCmd extends AbstractSopCmd {
|
||||
|
||||
@CommandLine.Option(names = "--no-armor",
|
||||
descriptionKey = "sop.extract-cert.usage.option.armor",
|
||||
negatable = true)
|
||||
boolean armor = true;
|
||||
|
||||
|
|
|
@ -15,20 +15,18 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
|
||||
@CommandLine.Command(name = "generate-key",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_generate-key",
|
||||
exitCodeOnInvalidInput = 37)
|
||||
public class GenerateKeyCmd extends AbstractSopCmd {
|
||||
|
||||
@CommandLine.Option(names = "--no-armor",
|
||||
descriptionKey = "sop.generate-key.usage.option.armor",
|
||||
negatable = true)
|
||||
boolean armor = true;
|
||||
|
||||
@CommandLine.Parameters(descriptionKey = "sop.generate-key.usage.option.user_id")
|
||||
@CommandLine.Parameters(paramLabel = "USERID")
|
||||
List<String> userId = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = "--with-key-password",
|
||||
descriptionKey = "sop.generate-key.usage.option.with_key_password",
|
||||
paramLabel = "PASSWORD")
|
||||
String withKeyPassword;
|
||||
|
||||
|
|
|
@ -14,18 +14,16 @@ import java.io.IOException;
|
|||
import java.io.OutputStream;
|
||||
|
||||
@CommandLine.Command(name = "inline-detach",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_inline-detach",
|
||||
exitCodeOnInvalidInput = SOPGPException.UnsupportedOption.EXIT_CODE)
|
||||
public class InlineDetachCmd extends AbstractSopCmd {
|
||||
|
||||
@CommandLine.Option(
|
||||
names = {"--signatures-out"},
|
||||
descriptionKey = "sop.inline-detach.usage.option.signatures_out",
|
||||
paramLabel = "SIGNATURES")
|
||||
String signaturesOut;
|
||||
|
||||
@CommandLine.Option(names = "--no-armor",
|
||||
descriptionKey = "sop.inline-detach.usage.option.armor",
|
||||
negatable = true)
|
||||
boolean armor = true;
|
||||
|
||||
|
|
|
@ -17,26 +17,22 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
|
||||
@CommandLine.Command(name = "inline-sign",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_inline-sign",
|
||||
exitCodeOnInvalidInput = 37)
|
||||
public class InlineSignCmd extends AbstractSopCmd {
|
||||
|
||||
@CommandLine.Option(names = "--no-armor",
|
||||
descriptionKey = "sop.inline-sign.usage.option.armor",
|
||||
negatable = true)
|
||||
boolean armor = true;
|
||||
|
||||
@CommandLine.Option(names = "--as",
|
||||
descriptionKey = "sop.inline-sign.usage.option.as",
|
||||
paramLabel = "{binary|text|cleartextsigned}")
|
||||
InlineSignAs type;
|
||||
|
||||
@CommandLine.Parameters(descriptionKey = "sop.inline-sign.usage.parameter.keys",
|
||||
paramLabel = "KEYS")
|
||||
@CommandLine.Parameters(paramLabel = "KEYS")
|
||||
List<String> secretKeyFile = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = "--with-key-password",
|
||||
descriptionKey = "sop.inline-sign.usage.option.with_key_password",
|
||||
paramLabel = "PASSWORD")
|
||||
List<String> withKeyPassword = new ArrayList<>();
|
||||
|
||||
|
|
|
@ -19,27 +19,23 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
|
||||
@CommandLine.Command(name = "inline-verify",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_inline-verify",
|
||||
exitCodeOnInvalidInput = 37)
|
||||
public class InlineVerifyCmd extends AbstractSopCmd {
|
||||
|
||||
@CommandLine.Parameters(arity = "1..*",
|
||||
descriptionKey = "sop.inline-verify.usage.parameter.certs",
|
||||
paramLabel = "CERT")
|
||||
List<String> certificates = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = {"--not-before"},
|
||||
descriptionKey = "sop.inline-verify.usage.option.not_before",
|
||||
paramLabel = "DATE")
|
||||
String notBefore = "-";
|
||||
|
||||
@CommandLine.Option(names = {"--not-after"},
|
||||
descriptionKey = "sop.inline-verify.usage.option.not_after",
|
||||
paramLabel = "DATE")
|
||||
String notAfter = "now";
|
||||
|
||||
@CommandLine.Option(names = "--verifications-out",
|
||||
descriptionKey = "sop.inline-verify.usage.option.verifications_out")
|
||||
@CommandLine.Option(names = "--verifications-out")
|
||||
String verificationsOut;
|
||||
|
||||
@Override
|
||||
|
|
|
@ -20,31 +20,26 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
|
||||
@CommandLine.Command(name = "sign",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_detached-sign",
|
||||
exitCodeOnInvalidInput = 37)
|
||||
public class SignCmd extends AbstractSopCmd {
|
||||
|
||||
@CommandLine.Option(names = "--no-armor",
|
||||
descriptionKey = "sop.sign.usage.option.armor",
|
||||
negatable = true)
|
||||
boolean armor = true;
|
||||
|
||||
@CommandLine.Option(names = "--as",
|
||||
descriptionKey = "sop.sign.usage.option.as",
|
||||
paramLabel = "{binary|text}")
|
||||
SignAs type;
|
||||
|
||||
@CommandLine.Parameters(descriptionKey = "sop.sign.usage.parameter.keys",
|
||||
paramLabel = "KEYS")
|
||||
@CommandLine.Parameters(paramLabel = "KEYS")
|
||||
List<String> secretKeyFile = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = "--with-key-password",
|
||||
descriptionKey = "sop.sign.usage.option.with_key_password",
|
||||
paramLabel = "PASSWORD")
|
||||
List<String> withKeyPassword = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = "--micalg-out",
|
||||
descriptionKey = "sop.sign.usage.option.micalg_out",
|
||||
paramLabel = "MICALG")
|
||||
String micAlgOut;
|
||||
|
||||
|
|
|
@ -17,28 +17,24 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
|
||||
@CommandLine.Command(name = "verify",
|
||||
resourceBundle = "sop",
|
||||
resourceBundle = "msg_detached-verify",
|
||||
exitCodeOnInvalidInput = 37)
|
||||
public class VerifyCmd extends AbstractSopCmd {
|
||||
|
||||
@CommandLine.Parameters(index = "0",
|
||||
descriptionKey = "sop.verify.usage.parameter.signature",
|
||||
paramLabel = "SIGNATURE")
|
||||
String signature;
|
||||
|
||||
@CommandLine.Parameters(index = "0..*",
|
||||
arity = "1..*",
|
||||
descriptionKey = "sop.verify.usage.parameter.certs",
|
||||
paramLabel = "CERT")
|
||||
List<String> certificates = new ArrayList<>();
|
||||
|
||||
@CommandLine.Option(names = {"--not-before"},
|
||||
descriptionKey = "sop.verify.usage.option.not_before",
|
||||
paramLabel = "DATE")
|
||||
String notBefore = "-";
|
||||
|
||||
@CommandLine.Option(names = {"--not-after"},
|
||||
descriptionKey = "sop.verify.usage.option.not_after",
|
||||
paramLabel = "DATE")
|
||||
String notAfter = "now";
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ import sop.cli.picocli.Print;
|
|||
import sop.cli.picocli.SopCLI;
|
||||
import sop.operation.Version;
|
||||
|
||||
@CommandLine.Command(name = "version", resourceBundle = "sop",
|
||||
@CommandLine.Command(name = "version", resourceBundle = "msg_version",
|
||||
exitCodeOnInvalidInput = 37)
|
||||
public class VersionCmd extends AbstractSopCmd {
|
||||
|
||||
|
@ -17,12 +17,10 @@ public class VersionCmd extends AbstractSopCmd {
|
|||
Exclusive exclusive;
|
||||
|
||||
static class Exclusive {
|
||||
@CommandLine.Option(names = "--extended",
|
||||
descriptionKey = "sop.version.usage.option.extended")
|
||||
@CommandLine.Option(names = "--extended")
|
||||
boolean extended;
|
||||
|
||||
@CommandLine.Option(names = "--backend",
|
||||
descriptionKey = "sop.version.usage.option.backend")
|
||||
@CommandLine.Option(names = "--backend")
|
||||
boolean backend;
|
||||
}
|
||||
|
||||
|
|
5
sop-java-picocli/src/main/resources/msg_armor.properties
Normal file
5
sop-java-picocli/src/main/resources/msg_armor.properties
Normal file
|
@ -0,0 +1,5 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Add ASCII Armor to standard input
|
||||
label=Label to be used in the header and tail of the armoring
|
|
@ -0,0 +1,5 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Schütze Standard-Eingabe mit ASCII Armor
|
||||
label=Label für Kopf- und Fußzeile der ASCII Armor
|
|
@ -0,0 +1,4 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Remove ASCII Armor from standard input
|
|
@ -0,0 +1,4 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Entferne ASCII Armor von Standard-Eingabe
|
23
sop-java-picocli/src/main/resources/msg_decrypt.properties
Normal file
23
sop-java-picocli/src/main/resources/msg_decrypt.properties
Normal file
|
@ -0,0 +1,23 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Decrypt a message from standard input
|
||||
session-key-out=Can be used to learn the session key on successful decryption
|
||||
with-session-key.0=Symmetric message key (session key).
|
||||
with-session-key.1=Enables decryption of the "CIPHERTEXT" using the session key directly against the "SEIPD" packet.
|
||||
with-session-key.2=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
|
||||
with-password.0=Symmetric passphrase to decrypt the message with.
|
||||
with-password.1=Enables decryption based on any "SKESK" packets in the "CIPHERTEXT".
|
||||
with-password.2=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
|
||||
verify-out=Emits signature verification status to the designated output
|
||||
verify-with=Certificates for signature verification
|
||||
not-before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
not-before.1=Reject signatures with a creation date not in range.
|
||||
not-before.2=Defaults to beginning of time ('-').
|
||||
not-after.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
not-after.1=Reject signatures with a creation date not in range.
|
||||
not-after.2=Defaults to current system time ('now').
|
||||
not-after.3=Accepts special value '-' for end of time.
|
||||
with-key-password.0=Passphrase to unlock the secret key(s).
|
||||
with-key-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
|
||||
KEY[0..*]=Secret keys to attempt decryption with
|
|
@ -0,0 +1,23 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Entschlüssle eine Nachricht von Standard-Eingabe
|
||||
session-key-out=Extrahiere den Nachrichtenschlüssel nach erfolgreicher Entschlüsselung
|
||||
with-session-key.0=Symmetrischer Nachrichtenschlüssel (Sitzungsschlüssel).
|
||||
with-session-key.1=Ermöglicht direkte Entschlüsselung des im "CIPHERTEXT" enhaltenen "SEIPD" Paketes mithilfe des Nachrichtenschlüssels.
|
||||
with_session-key.2=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
with-password.0=Symmetrisches Passwort zur Entschlüsselung der Nachricht.
|
||||
with-password.1=Ermöglicht Entschlüsselung basierend auf im "CIPHERTEXT" enthaltenen "SKESK" Paketen.
|
||||
with-password.2=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
verify-out=Schreibe Status der Signaturprüfung in angegebene Ausgabe
|
||||
verify-with=Zertifikate zur Signaturprüfung
|
||||
not-before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
not-before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
not-before.2=Standardmäßig: Anbeginn der Zeit ('-').
|
||||
not-after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
not-after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
not-after.2=Standardmäßig: Aktueller Zeitunkt ('now').
|
||||
not-after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
|
||||
with-key-password.0=Passwort zum Entsperren der privaten Schlüssel
|
||||
with-key-password.1=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
KEY[0..*]=Private Schlüssel zum Entschlüsseln der Nachricht
|
|
@ -0,0 +1,12 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Create a detached signature on the data from standard input
|
||||
no-armor=ASCII armor the output
|
||||
as.0=Specify the output format of the signed message
|
||||
as.1=Defaults to 'binary'.
|
||||
as.2=If '--as=text' and the input data is not valid UTF-8, sign fails with return code 53.
|
||||
with-key-password.0=Passphrase to unlock the secret key(s).
|
||||
with-key-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
|
||||
micalg-out=Emits the digest algorithm used to the specified file in a way that can be used to populate the micalg parameter for the PGP/MIME Content-Type (RFC3156)
|
||||
KEYS[0..*]=Secret keys used for signing
|
|
@ -0,0 +1,12 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Erstelle abgetrennte Signatur über Nachricht von Standard-Eingabe
|
||||
no-armor=Schütze Ausgabe mit ASCII Armor
|
||||
as.0=Bestimme Signaturformat der Nachricht.
|
||||
as.1=Standardmäßig: 'binary'.
|
||||
as.2=Ist die Standard-Eingabe nicht UTF-8 kodiert und '--as=text' gesetzt, so wird inline-sign Fehlercode 53 zurückgeben.
|
||||
with-key-password.0=Passwort zum Entsperren des privaten Schlüssels
|
||||
with-key-password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
micalg-out=Gibt den verwendeten Digest-Algorithmus an die angegebene Ausgabe in einer Form aus, die zum Auffüllen des micalg-Parameters für den PGP/MIME Content-Type (RFC3156) verwendet werden kann.
|
||||
KEYS[0..*]=Private Signaturschlüssel
|
|
@ -0,0 +1,13 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Verify a detached signature over the data from standard input
|
||||
not-before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
not-before.1=Reject signatures with a creation date not in range.
|
||||
not-before.2=Defaults to beginning of time ("-").
|
||||
not-after.1=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
not-after.2=Reject signatures with a creation date not in range.
|
||||
not-after.3=Defaults to current system time ("now").\
|
||||
not-after.4 = Accepts special value "-" for end of time.
|
||||
SIGNATURE[0]=Detached signature
|
||||
CERT[0..*]=Public key certificates for signature verification
|
|
@ -0,0 +1,13 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Prüfe eine abgetrennte Signatur über eine Nachricht von Standard-Eingabe
|
||||
not-before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
not-before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
not-before.2=Standardmäßig: Anbeginn der Zeit ('-').
|
||||
not-after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
not-after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
not-after.2=Standardmäßig: Aktueller Zeitunkt ('now').
|
||||
not-after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
|
||||
SIGNATURE[0]=Abgetrennte Signatur
|
||||
CERT[0..*]=Zertifikate (öffentliche Schlüssel) zur Signaturprüfung
|
12
sop-java-picocli/src/main/resources/msg_encrypt.properties
Normal file
12
sop-java-picocli/src/main/resources/msg_encrypt.properties
Normal file
|
@ -0,0 +1,12 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Encrypt a message from standard input
|
||||
no-armor=ASCII armor the output
|
||||
as=Type of the input data. Defaults to 'binary'
|
||||
with-password.0=Encrypt the message with a password.
|
||||
with-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
|
||||
sign-with=Sign the output with a private key
|
||||
with-key-password.0=Passphrase to unlock the secret key(s).
|
||||
with-key-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
|
||||
CERTS[0..*]=Certificates the message gets encrypted to
|
|
@ -0,0 +1,12 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Verschlüssle eine Nachricht von Standard-Eingabe
|
||||
no-armor=Schütze Ausgabe mit ASCII Armor
|
||||
as=Format der Nachricht. Standardmäßig 'binary'
|
||||
with-password.0=Verschlüssle die Nachricht mit einem Passwort
|
||||
with-password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
sign-with=Signiere die Nachricht mit einem privaten Schlüssel
|
||||
with-key-password.0=Passwort zum Entsperren der privaten Schlüssel
|
||||
with-key-password.1=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
CERTS[0..*]=Zertifikate für die die Nachricht verschlüsselt werden soll
|
|
@ -0,0 +1,5 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Extract a public key certificate from a secret key from standard input
|
||||
no-armor=ASCII armor the output
|
|
@ -0,0 +1,5 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Extrahiere Zertifikat (öffentlichen Schlüssel) aus privatem Schlüssel von Standard-Eingabe
|
||||
no-armor=Schütze Ausgabe mit ASCII Armor
|
|
@ -0,0 +1,8 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Generate a secret key
|
||||
no-armor=ASCII armor the output
|
||||
USERID[0..*]=User-ID, e.g. "Alice <alice@example.com>"
|
||||
with-key-password.0=Password to protect the private key with
|
||||
with-key-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
|
|
@ -0,0 +1,8 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Generiere einen privaten Schlüssel
|
||||
no-armor=Schütze Ausgabe mit ASCII Armor
|
||||
USERID[0..*]=Nutzer-ID, z.B.. "Alice <alice@example.com>"
|
||||
with-key-password.0=Passwort zum Schutz des privaten Schlüssels
|
||||
with-key-password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
4
sop-java-picocli/src/main/resources/msg_help.properties
Normal file
4
sop-java-picocli/src/main/resources/msg_help.properties
Normal file
|
@ -0,0 +1,4 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Display usage information for the specified subcommand
|
|
@ -0,0 +1,4 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Zeige Nutzungshilfen für den angegebenen Unterbefehl an
|
|
@ -0,0 +1,6 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Split signatures from a clearsigned message
|
||||
no-armor=ASCII armor the output
|
||||
signatures-out=Destination to which a detached signatures block will be written
|
|
@ -0,0 +1,6 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Trenne Signaturen von Klartext-signierter Nachricht
|
||||
no-armor=Schütze Ausgabe mit ASCII Armor
|
||||
signatures-out=Schreibe abgetrennte Signaturen in Ausgabe
|
|
@ -0,0 +1,14 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Create an inline-signed message from data on standard input
|
||||
no-armor=ASCII armor the output
|
||||
as.0=Specify the signature format of the signed message
|
||||
as.1='text' and 'binary' will produce inline-signed messages.
|
||||
as.2='cleartextsigned' will make use of the cleartext signature framework.
|
||||
as.3=Defaults to 'binary'.
|
||||
as.4=If '--as=text' and the input data is not valid UTF-8, inline-sign fails with return code 53.
|
||||
with-key-password.0=Passphrase to unlock the secret key(s).
|
||||
with-key-password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
|
||||
micalg=Emits the digest algorithm used to the specified file in a way that can be used to populate the micalg parameter for the PGP/MIME Content-Type (RFC3156)
|
||||
KEYS[0..*]=Secret keys used for signing
|
|
@ -0,0 +1,14 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Signiere eine Nachricht von Standard-Eingabe mit eingebetteten Signaturen
|
||||
no-armor=Schütze Ausgabe mit ASCII Armor
|
||||
as.0=Bestimme Signaturformat der Nachricht.
|
||||
as.1='text' und 'binary' resultieren in eingebettete Signaturen.
|
||||
as.2='cleartextsigned' wird die Nachricht Klartext-signieren.
|
||||
as.3=Standardmäßig: 'binary'.
|
||||
as.4=Ist die Standard-Eingabe nicht UTF-8 kodiert und '--as=text' gesetzt, so wird inline-sign Fehlercode 53 zurückgeben.
|
||||
with-key-password.0=Passwort zum Entsperren des privaten Schlüssels
|
||||
with-key-password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
micalg=Gibt den verwendeten Digest-Algorithmus an die angegebene Ausgabe in einer Form aus, die zum Auffüllen des micalg-Parameters für den PGP/MIME Content-Type (RFC3156) verwendet werden kann.
|
||||
KEYS[0..*]=Private Signaturschlüssel
|
|
@ -0,0 +1,13 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Verify inline-signed data from standard input
|
||||
not-before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
not-before.1=Reject signatures with a creation date not in range.
|
||||
not-before.2=Defaults to beginning of time ("-").
|
||||
not-after.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
not-after.1=Reject signatures with a creation date not in range.
|
||||
not-after.2=Defaults to current system time ("now").
|
||||
not-after.3=Accepts special value "-" for end of time.
|
||||
verifications-out=File to write details over successful verifications to
|
||||
CERT[0..*]=Public key certificates for signature verification
|
|
@ -0,0 +1,13 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Prüfe eingebettete Signaturen einer Nachricht von Standard-Eingabe
|
||||
not-before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
not-before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
not-before.2=Standardmäßig: Anbeginn der Zeit ('-').
|
||||
not-after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
not-after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
not-after.2=Standardmäßig: Aktueller Zeitunkt ('now').
|
||||
not-after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
|
||||
verifications-out=Schreibe Status der Signaturprüfung in angegebene Ausgabe
|
||||
CERT[0..*]=Zertifikate (öffentlich Schlüssel) zur Signaturprüfung
|
72
sop-java-picocli/src/main/resources/msg_sop.properties
Normal file
72
sop-java-picocli/src/main/resources/msg_sop.properties
Normal file
|
@ -0,0 +1,72 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
sop.name=sop
|
||||
usage.header=Stateless OpenPGP Protocol
|
||||
usage.footerHeading=Powered by picocli%n
|
||||
|
||||
locale=Locale for description texts
|
||||
# Generic
|
||||
usage.synopsisHeading=Usage:\u0020
|
||||
usage.commandListHeading = %nCommands:%n
|
||||
# Exit Codes
|
||||
usage.exitCodeListHeading=%nExit Codes:%n
|
||||
usage.exitCodeList.0=\u00200:Successful program execution
|
||||
usage.exitCodeList.1=\u00201:Generic program error
|
||||
usage.exitCodeList.2=\u00203:Verification requested but no verifiable signature found
|
||||
usage.exitCodeList.3=13:Unsupported asymmetric algorithm
|
||||
usage.exitCodeList.4=17:Certificate is not encryption capable
|
||||
usage.exitCodeList.5=19:Usage error: Missing argument
|
||||
usage.exitCodeList.6=23:Incomplete verification instructions
|
||||
usage.exitCodeList.7=29:Unable to decrypt
|
||||
usage.exitCodeList.8=31:Password is not human-readable
|
||||
usage.exitCodeList.9=37:Unsupported Option
|
||||
usage.exitCodeList.10=41:Invalid data or data of wrong type encountered
|
||||
usage.exitCodeList.11=53:Non-text input received where text was expected
|
||||
usage.exitCodeList.12=59:Output file already exists
|
||||
usage.exitCodeList.13=61:Input file does not exist
|
||||
usage.exitCodeList.14=67:Cannot unlock password protected secret key
|
||||
usage.exitCodeList.15=69:Unsupported subcommand
|
||||
usage.exitCodeList.16=71:Unsupported special prefix (e.g. \"@env/@fd\") of indirect parameter
|
||||
usage.exitCodeList.17=73:Ambiguous input (a filename matching the designator already exists)
|
||||
usage.exitCodeList.18=79:Key is not signing capable
|
||||
|
||||
## SHARED RESOURCES
|
||||
## Malformed Input
|
||||
sop.error.input.malformed_session_key=Session keys are expected in the format 'ALGONUM:HEXKEY'.
|
||||
sop.error.input.not_a_private_key=Input '%s' does not contain an OpenPGP private key.
|
||||
sop.error.input.not_a_certificate=Input '%s' does not contain an OpenPGP certificate.
|
||||
sop.error.input.not_a_signature=Input '%s' does not contain an OpenPGP signature.
|
||||
sop.error.input.malformed_not_after=Invalid date string supplied as value of '--not-after'.
|
||||
sop.error.input.malformed_not_before=Invalid date string supplied as value of '--not-before'.
|
||||
sop.error.input.stdin_not_a_message=Standard Input appears not to contain a valid OpenPGP message.
|
||||
sop.error.input.stdin_not_a_private_key=Standard Input appears not to contain a valid OpenPGP secret key.
|
||||
sop.error.input.stdin_not_openpgp_data=Standard Input appears not to contain valid OpenPGP data
|
||||
## Indirect Data Types
|
||||
sop.error.indirect_data_type.ambiguous_filename=File name '%s' is ambiguous. File with the same name exists on the filesystem.
|
||||
sop.error.indirect_data_type.environment_variable_not_set=Environment variable '%s' not set.
|
||||
sop.error.indirect_data_type.environment_variable_empty=Environment variable '%s' is empty.
|
||||
sop.error.indirect_data_type.input_file_does_not_exist=Input file '%s' does not exist.
|
||||
sop.error.indirect_data_type.input_not_a_file=Input file '%s' is not a file.
|
||||
sop.error.indirect_data_type.output_file_already_exists=Output file '%s' already exists.
|
||||
sop.error.indirect_data_type.output_file_cannot_be_created=Output file '%s' cannot be created.
|
||||
sop.error.indirect_data_type.illegal_use_of_env_designator=Special designator '@ENV:' cannot be used for output.
|
||||
sop.error.indirect_data_type.designator_env_not_supported=Special designator '@ENV' is not supported.
|
||||
sop.error.indirect_data_type.designator_fd_not_supported=Special designator '@FD' is not supported.
|
||||
## Runtime Errors
|
||||
sop.error.runtime.no_backend_set=No SOP backend set.
|
||||
sop.error.runtime.cannot_unlock_key=Cannot unlock password-protected secret key from input '%s'.
|
||||
sop.error.runtime.key_uses_unsupported_asymmetric_algorithm=Secret key from input '%s' uses an unsupported asymmetric algorithm.
|
||||
sop.error.runtime.cert_uses_unsupported_asymmetric_algorithm=Certificate from input '%s' uses an unsupported asymmetric algorithm.
|
||||
sop.error.runtime.key_cannot_sign=Secret key from input '%s' cannot sign.
|
||||
sop.error.runtime.cert_cannot_encrypt=Certificate from input '%s' cannot encrypt.
|
||||
sop.error.runtime.no_session_key_extracted=Session key not extracted. Feature potentially not supported.
|
||||
sop.error.runtime.no_verifiable_signature_found=No verifiable signature found.
|
||||
## Usage errors
|
||||
sop.error.usage.password_or_cert_required=At least one password file or cert file required for encryption.
|
||||
sop.error.usage.argument_required=Argument '%s' is required.
|
||||
sop.error.usage.parameter_required=Parameter '%s' is required.
|
||||
sop.error.usage.option_requires_other_option=Option '%s' is requested, but no option %s was provided.
|
||||
# Feature Support
|
||||
sop.error.feature_support.subcommand_not_supported=Subcommand '%s' is not supported.
|
||||
sop.error.feature_support.option_not_supported=Option '%s' not supported.
|
72
sop-java-picocli/src/main/resources/msg_sop_de.properties
Normal file
72
sop-java-picocli/src/main/resources/msg_sop_de.properties
Normal file
|
@ -0,0 +1,72 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
sop.name=sop
|
||||
usage.header=Stateless OpenPGP Protocol
|
||||
usage.footerHeading=Powered by Picocli%n
|
||||
|
||||
locale=Gebietsschema für Beschreibungstexte
|
||||
# Generic
|
||||
usage.synopsisHeading=Aufruf:\u0020
|
||||
usage.commandListHeading=%nBefehle:%n
|
||||
# Exit Codes
|
||||
usage.exitCodeListHeading=%nExit Codes:%n
|
||||
usage.exitCodeList.0=\u00200:Erfolgreiche Programmausführung
|
||||
usage.exitCodeList.1=\u00201:Generischer Programmfehler
|
||||
usage.exitCodeList.2=\u00203:Signaturverifikation gefordert, aber keine gültige Signatur gefunden
|
||||
usage.exitCodeList.3=13:Nicht unterstützter asymmetrischer Algorithmus
|
||||
usage.exitCodeList.4=17:Dem Zertifikat ist es nicht erlaubt zu verschlüsseln
|
||||
usage.exitCodeList.5=19:Nutzungsfehler: Fehlendes Argument
|
||||
usage.exitCodeList.6=23:Unvollständige Verifikationsanweisungen
|
||||
usage.exitCodeList.7=29:Entschlüsselung nicht möglich
|
||||
usage.exitCodeList.8=31:Passwort ist nicht für Menschen lesbar
|
||||
usage.exitCodeList.9=37:Nicht unterstützte Option
|
||||
usage.exitCodeList.10=41:Ungültige Daten oder Daten des falschen Typs gefunden
|
||||
usage.exitCodeList.11=53:Nicht-Text-Eingabe erhalten, wo Text erwartet wurde
|
||||
usage.exitCodeList.12=59:Ausgabedatei existiert bereits
|
||||
usage.exitCodeList.13=61:Eingabedatei existiert nicht
|
||||
usage.exitCodeList.14=67:Passwort-gesicherter privater Schlüssel kann nicht entsperrt werden
|
||||
usage.exitCodeList.15=69:Nicht unterstützter Unterbefehl
|
||||
usage.exitCodeList.16=71:Nicht unterstützter Spezialprefix (z.B.. "@env/@fd") von indirektem Parameter
|
||||
usage.exitCodeList.17=73:Mehrdeutige Eingabe (ein Dateiname, der dem Bezeichner entspricht, existiert bereits)
|
||||
usage.exitCodeList.18=79:Schlüssel ist nicht fähig zu signieren
|
||||
|
||||
## SHARED RESOURCES
|
||||
## Malformed Input
|
||||
sop.error.input.malformed_session_key=Nachrichtenschlüssel werden im folgenden Format erwartet: 'ALGONUM:HEXKEY'
|
||||
sop.error.input.not_a_private_key=Eingabe '%s' enthält keinen privaten OpenPGP Schlüssel.
|
||||
sop.error.input.not_a_certificate=Eingabe '%s' enthält kein OpenPGP Zertifikat.
|
||||
sop.error.input.not_a_signature=Eingabe '%s' enthält keine OpenPGP Signatur.
|
||||
sop.error.input.malformed_not_after=Ungültige Datumszeichenfolge als Wert von '--not-after'.
|
||||
sop.error.input.malformed_not_before=Ungültige Datumszeichenfolge als Wert von '--not-before'.
|
||||
sop.error.input.stdin_not_a_message=Standard-Eingabe enthält scheinbar keine OpenPGP Nachricht.
|
||||
sop.error.input.stdin_not_a_private_key=Standard-Eingabe enthält scheinbar keinen privaten OpenPGP Schlüssel.
|
||||
sop.error.input.stdin_not_openpgp_data=Standard-Eingabe enthält scheinbar keine gültigen OpenPGP Daten.
|
||||
## Indirect Data Types
|
||||
sop.error.indirect_data_type.ambiguous_filename=Dateiname '%s' ist mehrdeutig. Datei mit dem selben Namen existiert im Dateisystem.
|
||||
sop.error.indirect_data_type.environment_variable_not_set=Umgebungsvariable '%s' nicht gesetzt.
|
||||
sop.error.indirect_data_type.environment_variable_empty=Umgebungsvariable '%s' ist leer.
|
||||
sop.error.indirect_data_type.input_file_does_not_exist=Quelldatei '%s' existiert nicht.
|
||||
sop.error.indirect_data_type.input_not_a_file=Quelldatei '%s' ist keine Datei.
|
||||
sop.error.indirect_data_type.output_file_already_exists=Zieldatei '%s' existiert bereits.
|
||||
sop.error.indirect_data_type.output_file_cannot_be_created=Zieldatei '%s' kann nicht erstellt werden.
|
||||
sop.error.indirect_data_type.illegal_use_of_env_designator=Besonderer Bezeichner-Präfix '@ENV:' darf nicht für Ausgaben verwendet werden.
|
||||
sop.error.indirect_data_type.designator_env_not_supported=Besonderer Bezeichner-Präfix '@ENV' wird nicht unterstützt.
|
||||
sop.error.indirect_data_type.designator_fd_not_supported=Besonderer Bezeichner-Präfix '@FD' wird nicht unterstützt.
|
||||
## Runtime Errors
|
||||
sop.error.runtime.no_backend_set=Kein SOP Backend gesetzt.
|
||||
sop.error.runtime.cannot_unlock_key=Gesperrter Schlüssel aus Eingabe '%s' kann nicht entsperrt werden.
|
||||
sop.error.runtime.key_uses_unsupported_asymmetric_algorithm=Privater Schlüssel aus Eingabe '%s' nutzt nicht unterstütztem asymmetrischen Algorithmus.
|
||||
sop.error.runtime.cert_uses_unsupported_asymmetric_algorithm=Zertifikat aus Eingabe '%s' nutzt nicht unterstütztem asymmetrischen Algorithmus.
|
||||
sop.error.runtime.key_cannot_sign=Privater Schlüssel aus Eingabe '%s' kann nicht signieren.
|
||||
sop.error.runtime.cert_cannot_encrypt=Zertifikat aus Eingabe '%s' kann nicht verschlüsseln.
|
||||
sop.error.runtime.no_session_key_extracted=Nachrichtenschlüssel nicht extrahiert. Funktion wird möglicherweise nicht unterstützt.
|
||||
sop.error.runtime.no_verifiable_signature_found=Keine gültigen Signaturen gefunden.
|
||||
## Usage errors
|
||||
sop.error.usage.password_or_cert_required=Es wird mindestens ein Passwort und/oder Zertifikat zur Verschlüsselung benötigt.
|
||||
sop.error.usage.argument_required=Argument '%s' ist erforderlich.
|
||||
sop.error.usage.parameter_required=Parameter '%s' ist erforderlich.
|
||||
sop.error.usage.option_requires_other_option=Option '%s' wurde angegeben, jedoch kein Wert für %s.
|
||||
# Feature Support
|
||||
sop.error.feature_support.subcommand_not_supported=Unterbefehl '%s' wird nicht unterstützt.
|
||||
sop.error.feature_support.option_not_supported=Option '%s' wird nicht unterstützt.
|
|
@ -0,0 +1,6 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Display version information about the tool
|
||||
extended=Print an extended version string
|
||||
backend=Print information about the cryptographic backend
|
|
@ -0,0 +1,6 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
usage.header=Zeige Versionsinformationen über das Programm
|
||||
extended=Gebe erweiterte Versionsinformationen aus
|
||||
backend=Gebe Informationen über das kryptografische Backend aus
|
|
@ -1,157 +0,0 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
sop.name=sop
|
||||
sop.usage.header=Stateless OpenPGP Protocol
|
||||
|
||||
usage.footerHeading=Powered by picocli%n
|
||||
sop.locale=Locale for description texts
|
||||
# Generic
|
||||
usage.synopsisHeading=Usage:\u0020
|
||||
usage.commandListHeading = %nCommands:%n
|
||||
# Exit Codes
|
||||
usage.exitCodeListHeading=%nExit Codes:%n
|
||||
usage.exitCodeList.0=\u00200:Successful program execution
|
||||
usage.exitCodeList.1=\u00201:Generic program error
|
||||
usage.exitCodeList.2=\u00203:Verification requested but no verifiable signature found
|
||||
usage.exitCodeList.3=13:Unsupported asymmetric algorithm
|
||||
usage.exitCodeList.4=17:Certificate is not encryption capable
|
||||
usage.exitCodeList.5=19:Usage error: Missing argument
|
||||
usage.exitCodeList.6=23:Incomplete verification instructions
|
||||
usage.exitCodeList.7=29:Unable to decrypt
|
||||
usage.exitCodeList.8=31:Password is not human-readable
|
||||
usage.exitCodeList.9=37:Unsupported Option
|
||||
usage.exitCodeList.10=41:Invalid data or data of wrong type encountered
|
||||
usage.exitCodeList.11=53:Non-text input received where text was expected
|
||||
usage.exitCodeList.12=59:Output file already exists
|
||||
usage.exitCodeList.13=61:Input file does not exist
|
||||
usage.exitCodeList.14=67:Cannot unlock password protected secret key
|
||||
usage.exitCodeList.15=69:Unsupported subcommand
|
||||
usage.exitCodeList.16=71:Unsupported special prefix (e.g. \"@env/@fd\") of indirect parameter
|
||||
usage.exitCodeList.17=73:Ambiguous input (a filename matching the designator already exists)
|
||||
usage.exitCodeList.18=79:Key is not signing capable
|
||||
# Subcommands
|
||||
sop.armor.usage.header=Add ASCII Armor to standard input
|
||||
sop.armor.usage.option.label=Label to be used in the header and tail of the armoring
|
||||
sop.dearmor.usage.header=Remove ASCII Armor from standard input
|
||||
sop.decrypt.usage.header=Decrypt a message from standard input
|
||||
sop.decrypt.usage.option.session_key_out=Can be used to learn the session key on successful decryption
|
||||
sop.decrypt.usage.option.with_session_key.0=Symmetric message key (session key).
|
||||
sop.decrypt.usage.option.with_session_key.1=Enables decryption of the "CIPHERTEXT" using the session key directly against the "SEIPD" packet.
|
||||
sop.decrypt.usage.option.with_session_key.2=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
|
||||
sop.decrypt.usage.option.with_password.0=Symmetric passphrase to decrypt the message with.
|
||||
sop.decrypt.usage.option.with_password.1=Enables decryption based on any "SKESK" packets in the "CIPHERTEXT".
|
||||
sop.decrypt.usage.option.with_password_2=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
|
||||
sop.decrypt.usage.option.verify_out=Emits signature verification status to the designated output
|
||||
sop.decrypt.usage.option.certs=Certificates for signature verification
|
||||
sop.decrypt.usage.option.not_before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
sop.decrypt.usage.option.not_before.1=Reject signatures with a creation date not in range.
|
||||
sop.decrypt.usage.option.not_before.2=Defaults to beginning of time ('-').
|
||||
sop.decrypt.usage.option.not_after.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
sop.decrypt.usage.option.not_after.1=Reject signatures with a creation date not in range.
|
||||
sop.decrypt.usage.option.not_after.2=Defaults to current system time ('now').
|
||||
sop.decrypt.usage.option.not_after.3=Accepts special value '-' for end of time.
|
||||
sop.decrypt.usage.option.with_key_password.0=Passphrase to unlock the secret key(s).
|
||||
sop.decrypt.usage.option.with_key_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
|
||||
sop.decrypt.usage.param.keys=Secret keys to attempt decryption with
|
||||
sop.encrypt.usage.header=Encrypt a message from standard input
|
||||
sop.encrypt.usage.option.armor=ASCII armor the output
|
||||
sop.encrypt.usage.option.type=Type of the input data. Defaults to 'binary'
|
||||
sop.encrypt.usage.option.with_password.0=Encrypt the message with a password.
|
||||
sop.encrypt.usage.option.with_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...)
|
||||
sop.encrypt.usage.option.sign_with=Sign the output with a private key
|
||||
sop.encrypt.usage.option.with_key_password.0=Passphrase to unlock the secret key(s).
|
||||
sop.encrypt.usage.option.with_key_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
|
||||
sop.encrypt.usage.param.certs=Certificates the message gets encrypted to
|
||||
sop.extract-cert.usage.header=Extract a public key certificate from a secret key from standard input
|
||||
sop.extract-cert.usage.option.armor=ASCII armor the output
|
||||
sop.generate-key.usage.header=Generate a secret key
|
||||
sop.generate-key.usage.option.armor=ASCII armor the output
|
||||
sop.generate-key.usage.option.user_id=User-ID, e.g. "Alice <alice@example.com>"
|
||||
sop.generate-key.usage.option.with_key_password.0=Password to protect the private key with
|
||||
sop.generate-key.usage.option.with_key_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
|
||||
sop.inline-detach.usage.header=Split signatures from a clearsigned message
|
||||
sop.inline-detach.usage.option.armor=ASCII armor the output
|
||||
sop.inline-detach.usage.option.signatures_out=Destination to which a detached signatures block will be written
|
||||
sop.inline-sign.usage.header=Create an inline-signed message from data on standard input
|
||||
sop.inline-sign.usage.option.armor=ASCII armor the output
|
||||
sop.inline-sign.usage.option.as.0=Specify the signature format of the signed message
|
||||
sop.inline-sign.usage.option.as.1='text' and 'binary' will produce inline-signed messages.
|
||||
sop.inline-sign.usage.option.as.2='cleartextsigned' will make use of the cleartext signature framework.
|
||||
sop.inline-sign.usage.option.as.3=Defaults to 'binary'.
|
||||
sop.inline-sign.usage.option.as.4=If '--as=text' and the input data is not valid UTF-8, inline-sign fails with return code 53.
|
||||
sop.inline-sign.usage.option.with_key_password.0=Passphrase to unlock the secret key(s).
|
||||
sop.inline-sign.usage.option.with_key_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
|
||||
sop.inline-sign.usage.option.micalg=Emits the digest algorithm used to the specified file in a way that can be used to populate the micalg parameter for the PGP/MIME Content-Type (RFC3156)
|
||||
sop.inline-sign.usage.parameter.keys=Secret keys used for signing
|
||||
sop.inline-verify.usage.header=Verify inline-signed data from standard input
|
||||
sop.inline-verify.usage.option.not_before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
sop.inline-verify.usage.option.not_before.1=Reject signatures with a creation date not in range.
|
||||
sop.inline-verify.usage.option.not_before.2=Defaults to beginning of time ("-").
|
||||
sop.inline-verify.usage.option.not_after.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
sop.inline-verify.usage.option.not_after.1=Reject signatures with a creation date not in range.
|
||||
sop.inline-verify.usage.option.not_after.2=Defaults to current system time ("now").
|
||||
sop.inline-verify.usage.option.not_after.3=Accepts special value "-" for end of time.
|
||||
sop.inline-verify.usage.option.verifications_out=File to write details over successful verifications to
|
||||
sop.inline-verify.usage.parameter.certs=Public key certificates for signature verification
|
||||
sop.sign.usage.header=Create a detached signature on the data from standard input
|
||||
sop.sign.usage.option.armor=ASCII armor the output
|
||||
sop.sign.usage.option.as.0=Specify the output format of the signed message
|
||||
sop.sign.usage.option.as.1=Defaults to 'binary'.
|
||||
sop.sign.usage-option.as.2=If '--as=text' and the input data is not valid UTF-8, sign fails with return code 53.
|
||||
sop.sign.usage.option.with_key_password.0=Passphrase to unlock the secret key(s).
|
||||
sop.sign.usage.option.with_key_password.1=Is an INDIRECT data type (e.g. file, environment variable, file descriptor...).
|
||||
sop.sign.usage.option.micalg_out=Emits the digest algorithm used to the specified file in a way that can be used to populate the micalg parameter for the PGP/MIME Content-Type (RFC3156)
|
||||
sop.sign.usage.parameter.keys=Secret keys used for signing
|
||||
sop.verify.usage.header=Verify a detached signature over the data from standard input
|
||||
sop.verify.usage.option.not_before.0=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
sop.verify.usage.option.not_before.1=Reject signatures with a creation date not in range.
|
||||
sop.verify.usage.option.not_before.2=Defaults to beginning of time ("-").
|
||||
sop.verify.usage.option.not_after.1=ISO-8601 formatted UTC date (e.g. '2020-11-23T16:35Z)
|
||||
sop.verify.usage.option.not_after.2=Reject signatures with a creation date not in range.
|
||||
sop.verify.usage.option.not_after.3=Defaults to current system time ("now").\
|
||||
sop.verify.usage.option.not_after.4 = Accepts special value "-" for end of time.
|
||||
sop.verify.usage.parameter.signature=Detached signature
|
||||
sop.verify.usage.parameter.certs=Public key certificates for signature verification
|
||||
sop.version.usage.header=Display version information about the tool
|
||||
sop.version.usage.option.extended=Print an extended version string
|
||||
sop.version.usage.option.backend=Print information about the cryptographic backend
|
||||
sop.help.usage.header=Display usage information for the specified subcommand
|
||||
## Malformed Input
|
||||
sop.error.input.malformed_session_key=Session keys are expected in the format 'ALGONUM:HEXKEY'.
|
||||
sop.error.input.not_a_private_key=Input '%s' does not contain an OpenPGP private key.
|
||||
sop.error.input.not_a_certificate=Input '%s' does not contain an OpenPGP certificate.
|
||||
sop.error.input.not_a_signature=Input '%s' does not contain an OpenPGP signature.
|
||||
sop.error.input.malformed_not_after=Invalid date string supplied as value of '--not-after'.
|
||||
sop.error.input.malformed_not_before=Invalid date string supplied as value of '--not-before'.
|
||||
sop.error.input.stdin_not_a_message=Standard Input appears not to contain a valid OpenPGP message.
|
||||
sop.error.input.stdin_not_a_private_key=Standard Input appears not to contain a valid OpenPGP secret key.
|
||||
sop.error.input.stdin_not_openpgp_data=Standard Input appears not to contain valid OpenPGP data
|
||||
## Indirect Data Types
|
||||
sop.error.indirect_data_type.ambiguous_filename=File name '%s' is ambiguous. File with the same name exists on the filesystem.
|
||||
sop.error.indirect_data_type.environment_variable_not_set=Environment variable '%s' not set.
|
||||
sop.error.indirect_data_type.environment_variable_empty=Environment variable '%s' is empty.
|
||||
sop.error.indirect_data_type.input_file_does_not_exist=Input file '%s' does not exist.
|
||||
sop.error.indirect_data_type.input_not_a_file=Input file '%s' is not a file.
|
||||
sop.error.indirect_data_type.output_file_already_exists=Output file '%s' already exists.
|
||||
sop.error.indirect_data_type.output_file_cannot_be_created=Output file '%s' cannot be created.
|
||||
sop.error.indirect_data_type.illegal_use_of_env_designator=Special designator '@ENV:' cannot be used for output.
|
||||
sop.error.indirect_data_type.designator_env_not_supported=Special designator '@ENV' is not supported.
|
||||
sop.error.indirect_data_type.designator_fd_not_supported=Special designator '@FD' is not supported.
|
||||
## Runtime Errors
|
||||
sop.error.runtime.no_backend_set=No SOP backend set.
|
||||
sop.error.runtime.cannot_unlock_key=Cannot unlock password-protected secret key from input '%s'.
|
||||
sop.error.runtime.key_uses_unsupported_asymmetric_algorithm=Secret key from input '%s' uses an unsupported asymmetric algorithm.
|
||||
sop.error.runtime.cert_uses_unsupported_asymmetric_algorithm=Certificate from input '%s' uses an unsupported asymmetric algorithm.
|
||||
sop.error.runtime.key_cannot_sign=Secret key from input '%s' cannot sign.
|
||||
sop.error.runtime.cert_cannot_encrypt=Certificate from input '%s' cannot encrypt.
|
||||
sop.error.runtime.no_session_key_extracted=Session key not extracted. Feature potentially not supported.
|
||||
sop.error.runtime.no_verifiable_signature_found=No verifiable signature found.
|
||||
## Usage errors
|
||||
sop.error.usage.password_or_cert_required=At least one password file or cert file required for encryption.
|
||||
sop.error.usage.argument_required=Argument '%s' is required.
|
||||
sop.error.usage.parameter_required=Parameter '%s' is required.
|
||||
sop.error.usage.option_requires_other_option=Option '%s' is requested, but no option %s was provided.
|
||||
# Feature Support
|
||||
sop.error.feature_support.subcommand_not_supported=Subcommand '%s' is not supported.
|
||||
sop.error.feature_support.option_not_supported=Option '%s' not supported.
|
|
@ -1,156 +0,0 @@
|
|||
# SPDX-FileCopyrightText: 2022 Paul Schaub <vanitasvitae@fsfe.org>
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
sop.name=sop
|
||||
sop.usage.header=Stateless OpenPGP Protocol
|
||||
usage.footerHeading=Powered by Picocli%n
|
||||
sop.locale=Gebietsschema für Beschreibungstexte
|
||||
# Generic
|
||||
usage.synopsisHeading=Aufruf:\u0020
|
||||
usage.commandListHeading=%nBefehle:%n
|
||||
# Exit Codes
|
||||
usage.exitCodeListHeading=%nExit Codes:%n
|
||||
usage.exitCodeList.0=\u00200:Erfolgreiche Programmausführung
|
||||
usage.exitCodeList.1=\u00201:Generischer Programmfehler
|
||||
usage.exitCodeList.2=\u00203:Signaturverifikation gefordert, aber keine gültige Signatur gefunden
|
||||
usage.exitCodeList.3=13:Nicht unterstützter asymmetrischer Algorithmus
|
||||
usage.exitCodeList.4=17:Dem Zertifikat ist es nicht erlaubt zu verschlüsseln
|
||||
usage.exitCodeList.5=19:Nutzungsfehler: Fehlendes Argument
|
||||
usage.exitCodeList.6=23:Unvollständige Verifikationsanweisungen
|
||||
usage.exitCodeList.7=29:Entschlüsselung nicht möglich
|
||||
usage.exitCodeList.8=31:Passwort ist nicht für Menschen lesbar
|
||||
usage.exitCodeList.9=37:Nicht unterstützte Option
|
||||
usage.exitCodeList.10=41:Ungültige Daten oder Daten des falschen Typs gefunden
|
||||
usage.exitCodeList.11=53:Nicht-Text-Eingabe erhalten, wo Text erwartet wurde
|
||||
usage.exitCodeList.12=59:Ausgabedatei existiert bereits
|
||||
usage.exitCodeList.13=61:Eingabedatei existiert nicht
|
||||
usage.exitCodeList.14=67:Passwort-gesicherter privater Schlüssel kann nicht entsperrt werden
|
||||
usage.exitCodeList.15=69:Nicht unterstützter Unterbefehl
|
||||
usage.exitCodeList.16=71:Nicht unterstützter Spezialprefix (z.B.. "@env/@fd") von indirektem Parameter
|
||||
usage.exitCodeList.17=73:Mehrdeutige Eingabe (ein Dateiname, der dem Bezeichner entspricht, existiert bereits)
|
||||
usage.exitCodeList.18=79:Schlüssel ist nicht fähig zu signieren
|
||||
# Subcommands
|
||||
sop.armor.usage.header=Schütze Standard-Eingabe mit ASCII Armor
|
||||
sop.armor.usage.option.label=Label für Kopf- und Fußzeile der ASCII Armor
|
||||
sop.dearmor.usage.header=Entferne ASCII Armor von Standard-Eingabe
|
||||
sop.decrypt.usage.header=Entschlüssle eine Nachricht von Standard-Eingabe
|
||||
sop.decrypt.usage.option.session_key_out=Extrahiere den Nachrichtenschlüssel nach erfolgreicher Entschlüsselung
|
||||
sop.decrypt.usage.option.with_session_key.0=Symmetrischer Nachrichtenschlüssel (Sitzungsschlüssel).
|
||||
sop.decrypt.usage.option.with_session_key.1=Ermöglicht direkte Entschlüsselung des im "CIPHERTEXT" enhaltenen "SEIPD" Paketes mithilfe des Nachrichtenschlüssels.
|
||||
sop.decrypt.usage.option.with_session_key.2=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
sop.decrypt.usage.option.with_password.0=Symmetrisches Passwort zur Entschlüsselung der Nachricht.
|
||||
sop.decrypt.usage.option.with_password.1=Ermöglicht Entschlüsselung basierend auf im "CIPHERTEXT" enthaltenen "SKESK" Paketen.
|
||||
sop.decrypt.usage.option.with_password.2=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
sop.decrypt.usage.option.verify_out=Schreibe Status der Signaturprüfung in angegebene Ausgabe
|
||||
sop.decrypt.usage.option.certs=Zertifikate zur Signaturprüfung
|
||||
sop.decrypt.usage.option.not_before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
sop.decrypt.usage.option.not_before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
sop.decrypt.usage.option.not_before.2=Standardmäßig: Anbeginn der Zeit ('-').
|
||||
sop.decrypt.usage.option.not_after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
sop.decrypt.usage.option.not_after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
sop.decrypt.usage.option.not_after.2=Standardmäßig: Aktueller Zeitunkt ('now').
|
||||
sop.decrypt.usage.option.not_after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
|
||||
sop.decrypt.usage.option.with_key_password.0=Passwort zum Entsperren der privaten Schlüssel
|
||||
sop.decrypt.usage.option.with_key_password.1=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
sop.decrypt.usage.param.keys=Private Schlüssel zum Entschlüsseln der Nachricht
|
||||
sop.encrypt.usage.header=Verschlüssle eine Nachricht von Standard-Eingabe
|
||||
sop.encrypt.usage.option.armor=Schütze Ausgabe mit ASCII Armor
|
||||
sop.encrypt.usage.option.type=Format der Nachricht. Standardmäßig 'binary'
|
||||
sop.encrypt.usage.option.with_password.0=Verschlüssle die Nachricht mit einem Passwort
|
||||
sop.encrypt.usage.option.with_password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
sop.encrypt.usage.option.sign_with=Signiere die Nachricht mit einem privaten Schlüssel
|
||||
sop.encrypt.usage.option.with_key_password.0=Passwort zum Entsperren der privaten Schlüssel
|
||||
sop.encrypt.usage.option.with_key_password.1=Ist INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
sop.encrypt.usage.param.certs=Zertifikate für die die Nachricht verschlüsselt werden soll
|
||||
sop.extract-cert.usage.header=Extrahiere Zertifikat (öffentlichen Schlüssel) aus privatem Schlüssel von Standard-Eingabe
|
||||
sop.extract-cert.usage.option.armor=Schütze Ausgabe mit ASCII Armor
|
||||
sop.generate-key.usage.header=Generiere einen privaten Schlüssel
|
||||
sop.generate-key.usage.option.armor=Schütze Ausgabe mit ASCII Armor
|
||||
sop.generate-key.usage.option.user_id=Nutzer-ID, z.B.. "Alice <alice@example.com>"
|
||||
sop.generate-key.usage.option.with_key_password.0=Passwort zum Schutz des privaten Schlüssels
|
||||
sop.generate-key.usage.option.with_key_password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
sop.inline-detach.usage.header=Trenne Signaturen von Klartext-signierter Nachricht
|
||||
sop.inline-detach.usage.option.armor=Schütze Ausgabe mit ASCII Armor
|
||||
sop.inline-detach.usage.option.signatures_out=Schreibe abgetrennte Signaturen in Ausgabe
|
||||
sop.inline-sign.usage.header=Signiere eine Nachricht von Standard-Eingabe mit eingebetteten Signaturen
|
||||
sop.inline-sign.usage.option.armor=Schütze Ausgabe mit ASCII Armor
|
||||
sop.inline-sign.usage.option.as.0=Bestimme Signaturformat der Nachricht.
|
||||
sop.inline-sign.usage.option.as.1='text' und 'binary' resultieren in eingebettete Signaturen.
|
||||
sop.inline-sign.usage.option.as.2='cleartextsigned' wird die Nachricht Klartext-signieren.
|
||||
sop.inline-sign.usage.option.as.3=Standardmäßig: 'binary'.
|
||||
sop.inline-sign.usage.option.as.4=Ist die Standard-Eingabe nicht UTF-8 kodiert und '--as=text' gesetzt, so wird inline-sign Fehlercode 53 zurückgeben.
|
||||
sop.inline-sign.usage.option.with_key_password.0=Passwort zum Entsperren des privaten Schlüssels
|
||||
sop.inline-sign.usage.option.with_key_password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
sop.inline-sign.usage.option.micalg=Gibt den verwendeten Digest-Algorithmus an die angegebene Ausgabe in einer Form aus, die zum Auffüllen des micalg-Parameters für den PGP/MIME Content-Type (RFC3156) verwendet werden kann.
|
||||
sop.inline-sign.usage.parameter.keys=Private Signaturschlüssel
|
||||
sop.inline-verify.usage.header=Prüfe eingebettete Signaturen einer Nachricht von Standard-Eingabe
|
||||
sop.inline-verify.usage.option.not_before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
sop.inline-verify.usage.option.not_before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
sop.inline-verify.usage.option.not_before.2=Standardmäßig: Anbeginn der Zeit ('-').
|
||||
sop.inline-verify.usage.option.not_after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
sop.inline-verify.usage.option.not_after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
sop.inline-verify.usage.option.not_after.2=Standardmäßig: Aktueller Zeitunkt ('now').
|
||||
sop.inline-verify.usage.option.not_after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
|
||||
sop.inline-verify.usage.option.verifications_out=Schreibe Status der Signaturprüfung in angegebene Ausgabe
|
||||
sop.inline-verify.usage.parameter.certs=Zertifikate (öffentlich Schlüssel) zur Signaturprüfung
|
||||
sop.sign.usage.header=Erstelle abgetrennte Signatur über Nachricht von Standard-Eingabe
|
||||
sop.sign.usage.option.armor=Schütze Ausgabe mit ASCII Armor
|
||||
sop.sign.usage.option.as.0=Bestimme Signaturformat der Nachricht.
|
||||
sop.sign.usage.option.as.1=Standardmäßig: 'binary'.
|
||||
sop.sign.usage-option.as.2=Ist die Standard-Eingabe nicht UTF-8 kodiert und '--as=text' gesetzt, so wird inline-sign Fehlercode 53 zurückgeben.
|
||||
sop.sign.usage.option.with_key_password.0=Passwort zum Entsperren des privaten Schlüssels
|
||||
sop.sign.usage.option.with_key_password.1=Ist ein INDIREKTER Datentyp (z.B.. Datei, Umgebungsvariable, Dateideskriptor...).
|
||||
sop.sign.usage.option.micalg_out=Gibt den verwendeten Digest-Algorithmus an die angegebene Ausgabe in einer Form aus, die zum Auffüllen des micalg-Parameters für den PGP/MIME Content-Type (RFC3156) verwendet werden kann.
|
||||
sop.sign.usage.parameter.keys=Private Signaturschlüssel
|
||||
sop.verify.usage.header=Prüfe eine abgetrennte Signatur über eine Nachricht von Standard-Eingabe
|
||||
sop.verify.usage.option.not_before.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
sop.verify.usage.option.not_before.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
sop.verify.usage.option.not_before.2=Standardmäßig: Anbeginn der Zeit ('-').
|
||||
sop.verify.usage.option.not_after.0=Nach ISO-8601 formatierter UTC Zeitstempel (z.B.. '2020-11-23T16:35Z)
|
||||
sop.verify.usage.option.not_after.1=Lehne Signaturen mit Erstellungsdatum außerhalb des Gültigkeitsbereichs ab.
|
||||
sop.verify.usage.option.not_after.2=Standardmäßig: Aktueller Zeitunkt ('now').
|
||||
sop.verify.usage.option.not_after.3=Akzeptiert speziellen Wert '-' für das Ende aller Zeiten.
|
||||
sop.verify.usage.parameter.signature=Abgetrennte Signatur
|
||||
sop.verify.usage.parameter.certs=Zertifikate (öffentliche Schlüssel) zur Signaturprüfung
|
||||
sop.version.usage.header=Zeige Versionsinformationen über das Programm
|
||||
sop.version.usage.option.extended=Gebe erweiterte Versionsinformationen aus
|
||||
sop.version.usage.option.backend=Gebe Informationen über das kryptografische Backend aus
|
||||
sop.help.usage.header=Zeige Nutzungshilfen für den angegebenen Unterbefehl an
|
||||
## Malformed Input
|
||||
sop.error.input.malformed_session_key=Nachrichtenschlüssel werden im folgenden Format erwartet: 'ALGONUM:HEXKEY'
|
||||
sop.error.input.not_a_private_key=Eingabe '%s' enthält keinen privaten OpenPGP Schlüssel.
|
||||
sop.error.input.not_a_certificate=Eingabe '%s' enthält kein OpenPGP Zertifikat.
|
||||
sop.error.input.not_a_signature=Eingabe '%s' enthält keine OpenPGP Signatur.
|
||||
sop.error.input.malformed_not_after=Ungültige Datumszeichenfolge als Wert von '--not-after'.
|
||||
sop.error.input.malformed_not_before=Ungültige Datumszeichenfolge als Wert von '--not-before'.
|
||||
sop.error.input.stdin_not_a_message=Standard-Eingabe enthält scheinbar keine OpenPGP Nachricht.
|
||||
sop.error.input.stdin_not_a_private_key=Standard-Eingabe enthält scheinbar keinen privaten OpenPGP Schlüssel.
|
||||
sop.error.input.stdin_not_openpgp_data=Standard-Eingabe enthält scheinbar keine gültigen OpenPGP Daten.
|
||||
## Indirect Data Types
|
||||
sop.error.indirect_data_type.ambiguous_filename=Dateiname '%s' ist mehrdeutig. Datei mit dem selben Namen existiert im Dateisystem.
|
||||
sop.error.indirect_data_type.environment_variable_not_set=Umgebungsvariable '%s' nicht gesetzt.
|
||||
sop.error.indirect_data_type.environment_variable_empty=Umgebungsvariable '%s' ist leer.
|
||||
sop.error.indirect_data_type.input_file_does_not_exist=Quelldatei '%s' existiert nicht.
|
||||
sop.error.indirect_data_type.input_not_a_file=Quelldatei '%s' ist keine Datei.
|
||||
sop.error.indirect_data_type.output_file_already_exists=Zieldatei '%s' existiert bereits.
|
||||
sop.error.indirect_data_type.output_file_cannot_be_created=Zieldatei '%s' kann nicht erstellt werden.
|
||||
sop.error.indirect_data_type.illegal_use_of_env_designator=Besonderer Bezeichner-Präfix '@ENV:' darf nicht für Ausgaben verwendet werden.
|
||||
sop.error.indirect_data_type.designator_env_not_supported=Besonderer Bezeichner-Präfix '@ENV' wird nicht unterstützt.
|
||||
sop.error.indirect_data_type.designator_fd_not_supported=Besonderer Bezeichner-Präfix '@FD' wird nicht unterstützt.
|
||||
## Runtime Errors
|
||||
sop.error.runtime.no_backend_set=Kein SOP Backend gesetzt.
|
||||
sop.error.runtime.cannot_unlock_key=Gesperrter Schlüssel aus Eingabe '%s' kann nicht entsperrt werden.
|
||||
sop.error.runtime.key_uses_unsupported_asymmetric_algorithm=Privater Schlüssel aus Eingabe '%s' nutzt nicht unterstütztem asymmetrischen Algorithmus.
|
||||
sop.error.runtime.cert_uses_unsupported_asymmetric_algorithm=Zertifikat aus Eingabe '%s' nutzt nicht unterstütztem asymmetrischen Algorithmus.
|
||||
sop.error.runtime.key_cannot_sign=Privater Schlüssel aus Eingabe '%s' kann nicht signieren.
|
||||
sop.error.runtime.cert_cannot_encrypt=Zertifikat aus Eingabe '%s' kann nicht verschlüsseln.
|
||||
sop.error.runtime.no_session_key_extracted=Nachrichtenschlüssel nicht extrahiert. Funktion wird möglicherweise nicht unterstützt.
|
||||
sop.error.runtime.no_verifiable_signature_found=Keine gültigen Signaturen gefunden.
|
||||
## Usage errors
|
||||
sop.error.usage.password_or_cert_required=Es wird mindestens ein Passwort und/oder Zertifikat zur Verschlüsselung benötigt.
|
||||
sop.error.usage.argument_required=Argument '%s' ist erforderlich.
|
||||
sop.error.usage.parameter_required=Parameter '%s' ist erforderlich.
|
||||
sop.error.usage.option_requires_other_option=Option '%s' wurde angegeben, jedoch kein Wert für %s.
|
||||
# Feature Support
|
||||
sop.error.feature_support.subcommand_not_supported=Unterbefehl '%s' wird nicht unterstützt.
|
||||
sop.error.feature_support.option_not_supported=Option '%s' wird nicht unterstützt.
|
Loading…
Reference in a new issue