第 262 章 PGP DataFormat


作为 Camel 版本 2.9 提供。

PGP 数据格式将 Java Cryptographic Extension 集成到 Camel 中,允许使用 Camel 熟悉的 marshall 和 unmarshal 格式对消息进行简单、灵活的加密和解密。它假定 marshalling 为意味着对cyphertext 和 unmarshalling 的加密功能,意味着解密回原始明文。此数据格式仅实施对称(共享密钥)加密和取消处理。

262.1. PGPDataFormat Options

PGP 数据格式支持 15 个选项,它们如下。

名称默认Java 类型描述

keyUserid

 

字符串

在加密过程中使用的 PGP 密钥环中密钥的用户 ID。也可以是用户 ID 的一部分。例如,如果用户 ID 是 Test User,那么您可以使用 Test User 部分或处理用户 ID。

signatureKeyUserid

 

字符串

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

password

 

字符串

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

signaturePassword

 

字符串

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

keyFileName

 

字符串

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

signatureKeyFileName

 

字符串

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

signatureKeyRing

 

字符串

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

armored

false

布尔值

这个选项将导致 PGP 对加密的文本进行编码,使其可用于复制/粘贴等。

integrity

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.CompresionAlgorithmTags; 例如 0 (= UNCOMPRESSED), 1 (= ZIP), 2 (= ZLIB), 3 (= BZIP2)。仅与加密相关。

hashAlgorithm

 

整数

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

signatureVerificationOption

 

字符串

控制在取消处理过程中验证签名的行为。可以有 4 个值:可选:PGP 消息可能包含签名,如果它包含签名,则执行签名验证。必需: PGP 消息必须至少包含一个签名;如果这不是例外(PGPException),则引发异常(PGPException)。一个签名验证会被执行。忽略 PGP 消息中的签名将被忽略;不会执行签名验证。no_signature_allowed: no_signature_allowed: PGP 消息不得包含签名;否则会抛出异常(PGPException)。

contentTypeHeader

false

布尔值

如果数据格式能够这样做,则数据格式是否应该以 data 格式设置 Content-Type 标头。例如,用于数据格式的 application/xml (数据格式)或 application/json 用于数据格式 marshalling to JSon etc。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.