搜索

第 263 章 PGP DataFormat

download PDF

从 Camel 版本 2.9 开始提供

PGP 数据格式将 Java Cryptographic 扩展集成到 Camel 中,允许使用 Camel 熟悉的 marshall 和 unmarshal 格式化机制来简单而灵活的加密和解密消息。它假定要对 cyphertext 和 unmarshalling 进行加密,以意味着解密回原始的纯文本。此数据格式仅实施对称(共享密钥)加密和去除。

263.1. PGPDataFormat Options

PGP dataformat 支持 15 个选项,如下所列。

Name默认值Java 类型描述

keyUserid

 

字符串

加密期间使用的 PGP 密钥环中的密钥用户 ID。也可以是用户 ID 的一部分。例如,如果用户 ID 是 Test User,您可以使用 part Test User 或处理用户 ID。

signatureKeyUserid

 

字符串

PGP 密钥环中的密钥 ID,用于签名(加密)或签名验证(解密)。在签名验证过程中,指定的用户 ID 会限制可用于验证的公钥。如果没有为签名指定用户 ID,则使用公共密钥环中的任何公钥进行验证。也可以是用户 ID 的一部分。例如,如果用户 ID 是 Test User,您可以使用 part Test User 或处理用户 ID。

password

 

字符串

打开私钥时使用的密码(未用于加密)。

signaturePassword

 

字符串

打开用于签名的私钥时使用的密码(加密)。

keyFileName

 

字符串

密钥环的文件名;必须作为类路径资源访问(但您可以使用 file: 前缀指定文件系统中的位置)。

signatureKeyFileName

 

字符串

用于签名(加密加密)或签名验证(解密)的密钥环文件名; 必须作为类路径资源访问(但您可以使用 file: prefix 指定文件系统中的位置)。

signatureKeyRing

 

字符串

用于签名/验证为字节阵列的密钥环。您不能同时设置 signatureKeyFileName 和 signatureKeyRing。

armored

false

布尔值

此选项将使 PGP 对加密文本进行 base64 编码,使它可用于复制/粘贴等。

完整性

true

布尔值

在加密文件中添加完整性检查/签名。默认值为 true。

provider

 

字符串

Java Cryptography Extension (JCE)供应商,默认为 Bouncy Castle (BC)。或者,您可以使用 IAIK JCE 供应商;在这种情况下,必须事先注册供应商,而且不能事先注册 Bouncy Castle 供应商。Sun JCE 供应商无法正常工作。

algorithm

 

整数

对称密钥加密算法;可能的值在 org.bouncycastle.bcpg.SymmetricKeyAlgorithmTags 中定义;例如 2 (= TRIPLE DES), 3 (= CAST5), 4 (= BLOWFISH), 6 (= DES), 7 (= AES_128)。仅适用于加密。

compressionAlgorithm

 

整数

压缩算法;可能的值在 org.bouncycastle.bcpg.CompressionAlgorithmTags 中定义;例如 0 (= UNCOMPRESSED), 1 (= ZIP), 2 (= ZLIB), 3 (= BZIP2)。仅适用于加密。

hashAlgorithm

 

整数

签名哈希算法;可能的值在 org.bouncycastle.bcpg.HashAlgorithmTags 中定义;例如 2 (= SHA1), 8 (= SHA256), 9 (= SHA384), 10 (= SHA512), 11 (=SHA224)。仅与签名相关。

signatureVerificationOption

 

字符串

控制在 unmarshaling 期间验证签名的行为。可能有 4 个值:可选:PGP 消息可能包含签名;如果包含签名,则执行签名验证。需要:PGP 消息必须至少包含一个签名;如果这不是异常(PGPException)的情况。执行签名验证。忽略:PGP 消息中的包含签名被忽略;没有执行签名验证。no_signature_allowed: PGP 消息不得包含签名;否则抛出异常(PGPException)。

contentTypeHeader

false

布尔值

如果数据格式可以这样做,则数据格式是否应使用 data 格式的类型设置 Content-Type 标头。例如,用于数据格式的 application/xml 放入 XML 或用于数据格式的 application/json,如 JSon 等。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.