#
# Copyright (c) 2000, 2025, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#

# shared (from jarsigner)
SPACE=\u0020
6SPACE=\u0020    \u0020
COMMA=,\u0020
provclass.not.a.provider=%s不是提供方
provider.name.not.found=未找到名为 "%s" 的提供方
provider.class.not.found=未找到提供方 "%s"
jarsigner.error.=jarsigner 错误:\u0020
Illegal.option.=非法选项:\u0020
.keystore.must.be.NONE.if.storetype.is.{0}=如果 -storetype 为 {0}, 则 -keystore 必须为 NONE
.keypass.can.not.be.specified.if.storetype.is.{0}=如果 -storetype 为 {0}, 则不能指定 -keypass
If.protected.is.specified.then.storepass.and.keypass.must.not.be.specified=如果指定了 -protected, 则不能指定 -storepass 和 -keypass
If.keystore.is.not.password.protected.then.storepass.and.keypass.must.not.be.specified=如果密钥库未受口令保护, 则不能指定 -storepass 和 -keypass
Usage.jarsigner.options.jar.file.alias=用法: jarsigner [选项] jar-file 别名
.jarsigner.verify.options.jar.file.alias.=\u0020      jarsigner -verify [选项] jar-file [别名...]
.jarsigner.version=\u0020      jarsigner -version
.keystore.url.keystore.location=[-keystore <url>]           密钥库位置
.storepass.password.password.for.keystore.integrity=[-storepass <口令>]         用于密钥库完整性的口令
.storetype.type.keystore.type=[-storetype <类型>]         密钥库类型
.keypass.password.password.for.private.key.if.different.=[-keypass <口令>]           私有密钥的口令 (如果不同)
.certchain.file.name.of.alternative.certchain.file=[-certchain <文件>]         替代证书链文件的名称
.sigfile.file.name.of.SF.DSA.file=[-sigfile <文件>]           .SF/.DSA 文件的名称
.signedjar.file.name.of.signed.JAR.file=[-signedjar <文件>]         已签名的 JAR 文件的名称
.digestalg.algorithm.name.of.digest.algorithm=[-digestalg <算法>]        摘要算法的名称
.sigalg.algorithm.name.of.signature.algorithm=[-sigalg <算法>]           签名算法的名称
.verify.verify.a.signed.JAR.file=[-verify]                   验证已签名的 JAR 文件
.version.print.the.program.version=[-version]                  输出程序版本
.verbose.suboptions.verbose.output.when.signing.verifying.=[-verbose[:suboptions]]     签名/验证时输出详细信息。
.suboptions.can.be.all.grouped.or.summary=\u0020                           子选项可以是 all, grouped 或 summary
.certs.display.certificates.when.verbose.and.verifying=[-certs]                    输出详细信息和验证时显示证书
.certs.revocation.check=[-revCheck]                 启用证书撤消检查
.tsa.url.location.of.the.Timestamping.Authority=[-tsa <url>]                时间戳颁发机构的位置
.tsacert.alias.public.key.certificate.for.Timestamping.Authority=[-tsacert <别名>]           时间戳颁发机构的公共密钥证书
.tsapolicyid.tsapolicyid.for.Timestamping.Authority=[-tsapolicyid <oid>]        时间戳颁发机构的 TSAPolicyID
.tsadigestalg.algorithm.of.digest.data.in.timestamping.request=[-tsadigestalg <算法>]      时间戳请求中的摘要数据的算法
.internalsf.include.the.SF.file.inside.the.signature.block=[-internalsf]               在签名块内包含 .SF 文件
.sectionsonly.don.t.compute.hash.of.entire.manifest=[-sectionsonly]             不计算整个清单的散列
.protected.keystore.has.protected.authentication.path=[-protected]                密钥库具有受保护验证路径
.providerName.name.provider.name=[-providerName <名称>]      提供方名称
.add.provider.option=[-addprovider <名称>        按名称 (例如 SunPKCS11) 添加安全提供方
.providerArg.option.1=\u0020 [-providerArg <参数>]] ... 配置 -addprovider 的参数
.providerClass.option=[-providerClass <类>     按全限定类名添加安全提供方
.providerArg.option.2=\u0020 [-providerArg <参数>]] ... 配置 -providerClass 的参数
.providerPath.option=[-providerPath <list>]      提供方类路径
.strict.treat.warnings.as.errors=[-strict]                   将警告视为错误
.conf.url.specify.a.pre.configured.options.file=[-conf <url>]               指定预配置的选项文件
.print.this.help.message=[-? -h --help]              输出此帮助消息
Option.lacks.argument=选项缺少参数
Please.type.jarsigner.help.for.usage=请键入 jarsigner --help 以了解用法
Please.specify.jarfile.name=请指定 jarfile 名称
Please.specify.alias.name=请指定别名
Only.one.alias.can.be.specified=只能指定一个别名
This.jar.contains.signed.entries.which.is.not.signed.by.the.specified.alias.es.=此 jar 包含未由指定别名签名的已签名条目。
This.jar.contains.signed.entries.that.s.not.signed.by.alias.in.this.keystore.=此 jar 包含未由此密钥库中的别名签名的已签名条目。
s=s
m=m
k=k
X=X
q=?
.and.d.more.=(%d 及以上)
.s.signature.was.verified.=\u0020 s = 已验证签名\u0020
.m.entry.is.listed.in.manifest=\u0020 m = 在清单中列出条目
.k.at.least.one.certificate.was.found.in.keystore=\u0020 k = 在密钥库中至少找到了一个证书
.X.not.signed.by.specified.alias.es.=\u0020 X = 未由指定别名签名
.q.unsigned.entry=\u0020 ? = 未签名条目
no.manifest.=没有清单。
.Signature.related.entries.=(与签名相关的条目)
.Unsigned.entries.=(未签名条目)
.Directory.entries.=（目录条目）
jar.is.unsigned=jar 未签名。
jar.treated.unsigned=警告: 签名无法解析或验证, 该 jar 将被视为未签名。有关详细信息, 请在启用调试的情况下重新运行 jarsigner (-J-Djava.security.debug=jar)。
jar.treated.unsigned.see.weak=由于该 jar 是使用目前已禁用的弱算法签名的, 因此该 jar 将被视为未签名。\n\n有关详细信息, 请使用 -verbose 选项重新运行 jarsigner。
jar.treated.unsigned.see.weak.verbose=警告: 该 jar 将被视为未签名, 因为它是由目前安全属性禁用的弱算法签名的:
jar.signed.=jar 已签名。
jar.signed.with.signer.errors.=jar 已签名, 但出现签名者错误。
jar.verified.=jar 已验证。
jar.verified.with.signer.errors.=jar 已验证, 但出现签名者错误。

history.with.ts=- 由 "%1$s" 签名\n    摘要算法: %2$s\n    签名算法: %3$s, %4$s\n  由 "%6$s" 于 %5$tc 加时间戳\n    时间戳摘要算法: %7$s\n    时间戳签名算法: %8$s, %9$s
history.without.ts=- 由 "%1$s" 签名\n    摘要算法: %2$s\n    签名算法: %3$s, %4$s
history.nonexistent.entries=警告：不存在的签名条目：\u0020
history.unparsable=- 无法解析的与签名相关的文件 %s
history.nosf=- 缺少与签名相关的文件 META-INF/%s.SF
history.nobk=- 与签名相关的文件 META-INF/%s.SF 缺少块文件

with.weak=%s (弱)
with.algparams.weak=%1$s 使用 %2$s（弱）
with.disabled=%s（禁用）
with.algparams.disabled=%1$s 使用 %2$s（禁用）
key.bit=%s 密钥
key.bit.weak=%s 密钥（弱）
key.bit.disabled=%s 密钥（已禁用）
nonexistent.entries.found=此 jar 的文件包含不存在的签名条目。有关更多详细信息，请参见 -verbose 输出。
external.file.attributes.detected=检测到 POSIX 文件权限和/或 symlink 属性。这些属性在进行签名时会被忽略，不受该签名的保护。

jarsigner.=jarsigner:\u0020
signature.filename.must.consist.of.the.following.characters.A.Z.0.9.or.=签名文件名必须包含以下字符: A-Z, 0-9, _ 或 -
unable.to.open.jar.file.=无法打开 jar 文件:\u0020
unable.to.create.=无法创建:\u0020
.adding.=\u0020  正在添加:\u0020
.updating.=\u0020正在更新:\u0020
.signing.=\u0020 正在签名:\u0020
attempt.to.rename.signedJarFile.to.jarFile.failed=尝试将{0}重命名为{1}时失败
attempt.to.rename.jarFile.to.origJar.failed=尝试将{0}重命名为{1}时失败
unable.to.sign.jar.=无法对 jar 进行签名:\u0020
Enter.Passphrase.for.keystore.=输入密钥库的密码短语:\u0020
keystore.load.=密钥库加载:\u0020
certificate.exception.=证书异常错误:\u0020
unable.to.instantiate.keystore.class.=无法实例化密钥库类:\u0020
Certificate.chain.not.found.for.alias.alias.must.reference.a.valid.KeyStore.key.entry.containing.a.private.key.and=找不到{0}的证书链。{1}必须引用包含私有密钥和相应的公共密钥证书链的有效密钥库密钥条目。
File.specified.by.certchain.does.not.exist=由 -certchain 指定的文件不存在
Cannot.restore.certchain.from.file.specified=无法从指定的文件还原 certchain
Certificate.chain.not.found.in.the.file.specified.=在指定的文件中找不到证书链。
found.non.X.509.certificate.in.signer.s.chain=在签名者的链中找到非 X.509 证书
Enter.key.password.for.alias.=输入{0}的密钥口令:\u0020
unable.to.recover.key.from.keystore=无法从密钥库中恢复密钥
key.associated.with.alias.not.a.private.key=与{0}关联的密钥不是私有密钥
you.must.enter.key.password=必须输入密钥口令
unable.to.read.password.=无法读取口令:\u0020
certificate.is.valid.from=证书的有效期为{0}至{1}
certificate.expired.on=证书到期日期为 {0}
certificate.is.not.valid.until=直到{0}, 证书才有效
certificate.will.expire.on=证书将在{0}到期
.Invalid.certificate.chain.=[无效的证书链:\u0020
.Invalid.TSA.certificate.chain.=[无效 TSA 的证书链:\u0020
requesting.a.signature.timestamp=正在请求签名时间戳
TSA.location.=TSA 位置:\u0020
TSA.certificate.=TSA 证书:\u0020
no.response.from.the.Timestamping.Authority.=时间戳颁发机构没有响应。如果要从防火墙后面连接, 则可能需要指定 HTTP 或 HTTPS 代理。请为 jarsigner 提供以下选项:\u0020
or=或
Certificate.not.found.for.alias.alias.must.reference.a.valid.KeyStore.entry.containing.an.X.509.public.key.certificate.for.the=找不到{0}的证书。{1}必须引用包含时间戳颁发机构的 X.509 公共密钥证书的有效密钥库条目。
entry.was.signed.on=条目的签名日期为 {0}
Warning.=警告:\u0020
Error.=错误:\u0020
...Signer=>>> 签名者
...TSA=>>> TSA
trusted.certificate=可信证书
This.jar.contains.unsigned.entries.which.have.not.been.integrity.checked.=此 jar 包含尚未进行完整性检查的未签名条目。\u0020
This.jar.contains.entries.whose.signer.certificate.has.expired.=此 jar 包含签名者证书已过期的条目。\u0020
This.jar.contains.entries.whose.signer.certificate.will.expire.within.six.months.=此 jar 包含签名者证书将在六个月内过期的条目。\u0020
This.jar.contains.entries.whose.signer.certificate.is.not.yet.valid.=此 jar 包含签名者证书仍无效的条目。\u0020
This.jar.contains.entries.whose.signer.certificate.is.self.signed.=此 jar 包含其签名者证书为自签名证书的条目。
Re.run.with.the.verbose.and.certs.options.for.more.details.=有关详细信息, 请使用 -verbose 和 -certs 选项重新运行。
The.signer.certificate.has.expired.=签名者证书已过期。
The.timestamp.expired.1.but.usable.2=时间戳到期日期为 %1$tY-%1$tm-%1$td。不过，在签名者证书于 %2$tY-%2$tm-%2$td 到期之前，JAR 将有效。
The.timestamp.has.expired.=时间戳已到期。
The.signer.certificate.will.expire.within.six.months.=签名者证书将在六个月内过期。
The.timestamp.will.expire.within.one.year.on.1=时间戳将在一年内于 %1$tY-%1$tm-%1$td 到期。
The.timestamp.will.expire.within.one.year.on.1.but.2=时间戳将在一年内于 %1$tY-%1$tm-%1$td 到期。不过，在签名者证书于 %2$tY-%2$tm-%2$td 到期之前，JAR 将有效。
The.signer.certificate.is.not.yet.valid.=签名者证书仍无效。
The.signer.certificate.s.KeyUsage.extension.doesn.t.allow.code.signing.=由于签名者证书的 KeyUsage 扩展而无法进行代码签名。
The.signer.certificate.s.ExtendedKeyUsage.extension.doesn.t.allow.code.signing.=由于签名者证书的 ExtendedKeyUsage 扩展而无法进行代码签名。
The.signer.certificate.s.NetscapeCertType.extension.doesn.t.allow.code.signing.=由于签名者证书的 NetscapeCertType 扩展而无法进行代码签名。
This.jar.contains.entries.whose.signer.certificate.s.KeyUsage.extension.doesn.t.allow.code.signing.=此 jar 包含由于签名者证书的 KeyUsage 扩展而无法进行代码签名的条目。
This.jar.contains.entries.whose.signer.certificate.s.ExtendedKeyUsage.extension.doesn.t.allow.code.signing.=此 jar 包含由于签名者证书的 ExtendedKeyUsage 扩展而无法进行代码签名的条目。
This.jar.contains.entries.whose.signer.certificate.s.NetscapeCertType.extension.doesn.t.allow.code.signing.=此 jar 包含由于签名者证书的 NetscapeCertType 扩展而无法进行代码签名的条目。
.{0}.extension.does.not.support.code.signing.=[{0} 扩展不支持代码签名]
The.signer.s.certificate.chain.is.invalid.reason.1=签名者证书链无效。原因: %s
The.tsa.certificate.chain.is.invalid.reason.1=TSA 证书链无效。原因: %s
The.signer.s.certificate.is.self.signed.=签名者证书为自签名证书。
The.1.algorithm.specified.for.the.2.option.is.considered.a.security.risk..This.algorithm.will.be.disabled.in.a.future.update.=为 %2$s 选项指定的 %1$s 算法被视为存在安全风险。此算法将在未来的更新中被禁用。
The.1.algorithm.specified.for.the.2.option.is.considered.a.security.risk.and.is.disabled.=为 %2$s 选项指定的 %1$s 算法被视为存在安全风险而且被禁用。
The.timestamp.digest.algorithm.1.is.considered.a.security.risk..This.algorithm.will.be.disabled.in.a.future.update.=%1$s 时间戳摘要算法被视为存在安全风险。此算法将在未来的更新中被禁用。
The.digest.algorithm.1.is.considered.a.security.risk..This.algorithm.will.be.disabled.in.a.future.update.=%1$s 摘要算法被视为存在安全风险。此算法将在未来的更新中被禁用。
The.signature.algorithm.1.is.considered.a.security.risk..This.algorithm.will.be.disabled.in.a.future.update.=%1$s 签名算法被视为存在安全风险。此算法将在未来的更新中被禁用。
size.bit.alg=%1$d 位 %2$s
The.full.keyAlgName.signing.key.is.considered.a.security.risk..It.will.be.disabled.in.a.future.update.=%s 签名密钥被视为安全风险。在将来的更新中将禁用它。
The.full.keyAlgName.signing.key.is.considered.a.security.risk.and.is.disabled.=%s 签名密钥被视为安全风险并被禁用。
This.jar.contains.entries.whose.certificate.chain.is.invalid.reason.1=此 jar 包含其证书链无效的条目。原因: %s
This.jar.contains.entries.whose.tsa.certificate.chain.is.invalid.reason.1=此 jar 包含其 TSA 证书链无效的条目。原因: %s
no.timestamp.signing=未提供 -tsa 或 -tsacert, 此 jar 没有时间戳。如果没有时间戳, 则在签名者证书的到期日期 (%1$tY-%1$tm-%1$td) 之后, 用户可能无法验证此 jar。
invalid.timestamp.signing=时间戳无效。如果没有有效的时间戳，则在签名者证书的到期日期 (%1$tY-%1$tm-%1$td) 之后，用户可能无法验证此 jar。
no.timestamp.verifying=此 jar 包含的签名没有时间戳。如果没有时间戳, 则在其中任一签名者证书到期 (最早为 %1$tY-%1$tm-%1$td) 之后, 用户可能无法验证此 jar。
bad.timestamp.verifying=此 jar 包含带有无效时间戳的签名。如果没有有效时间戳, 则在其中任一签名者证书到期 (最早为 %1$tY-%1$tm-%1$td) 之后, 用户可能无法验证此 jar。\n有关详细信息, 请使用 -J-Djava.security.debug=jar 重新运行 jarsigner。
The.signer.certificate.will.expire.on.1.=签名者证书将于 %1$tY-%1$tm-%1$td 到期。
The.timestamp.will.expire.on.1.=时间戳将于 %1$tY-%1$tm-%1$td 到期。
signer.cert.expired.1.but.timestamp.good.2.=签名者证书到期日期为 %1$tY-%1$tm-%1$td。不过，在时间戳于 %2$tY-%2$tm-%2$td 到期之前，JAR 将有效。
Unknown.password.type.=未知口令类型:\u0020
Cannot.find.environment.variable.=找不到环境变量:\u0020
Cannot.find.file.=找不到文件:\u0020
event.ocsp.check=正在联系位于 %s 的 OCSP 服务器...
event.crl.check=正在从 %s 下载 CRL...
