Java Adobe CryptoSupport使用什么进行哈希?

Java Adobe CryptoSupport使用什么进行哈希?,java,encryption,adobe,aem,Java,Encryption,Adobe,Aem,我已经阅读了CQ5.5+中的Adobe CryptoSupport,它旨在提供加密和解密数据的实用程序,例如,在JCR中更安全地存储API密钥 或通用Adobe文档没有给出其实现的详细信息,只是说明: 请注意,此方法和解密(byte[])方法提供了完整的 往返支持: decrypt(encrypt(plainText)).equals(plainText) == true 请注意, 在同一纯文本上调用此方法两次不会返回 相同的密码文本: encrypt(plainText).equals

我已经阅读了CQ5.5+中的Adobe CryptoSupport,它旨在提供加密和解密数据的实用程序,例如,在JCR中更安全地存储API密钥

或通用Adobe文档没有给出其实现的详细信息,只是说明:

请注意,此方法和
解密(byte[])
方法提供了完整的 往返支持:

decrypt(encrypt(plainText)).equals(plainText) == true   
请注意, 在同一
纯文本上调用此方法两次不会返回
相同的密码文本:

encrypt(plainText).equals(encrypt(plainText)) == false
这是相当有用的,但它没有告诉我这些密码一开始是如何加密的。我尝试在一个CQ实例上加密,在另一个实例上解密,但这似乎不起作用

为了自信地使用此功能,我想知道CQ的加密基础是什么。 我主要关注两个问题:

  • 我如何知道服务是基于某种安全的东西而附加的(我认为这是正确的术语)?或者,如果需要对其进行配置,如何进行配置?(即,它是否使用同等级别的安全OOTB作为“admin/admin”的登录!)
  • 如果加密是特定于环境的,这是否意味着我无法加密数据并在服务器之间传输

Felix控制台中的捆绑包说明说明

Crypto Support bundle提供了一个CryptoSupport服务 允许应用程序加密和解密二进制和字符串数据。 加密基于对称AES/CBC/PKCS5P(AES 算法,带PKCS5填充的CBC模式),来自RSA JSafe库

密钥在Adobe Granite Crypto Support bundle的第一次启动期间随机生成,然后保存为
/etc/Key/master
属性。它是按实例设计的,我认为在CQ安装之间移动这个键不是一个好主意。实际上,Adobe需要在author和publish实例之间移动键

回答您的问题:

  • 您不必担心配置服务,因为它是在第一个bundle激活期间自动完成的
  • 只要同时移动密钥,就可以将加密数据从一个实例移动到另一个实例

啊,太酷了,所以我想应该可以配置多个实例来使用同一个密钥。我想你没有偶然发现关于这个的任何文档的链接吧?:)是的,请继续:)不幸的是,没有文档。我不知道为什么我不想在“电子邮件营销”页面下查找文档!;)谢谢&找到Adobe推荐的方法也很好。我在谷歌上搜索了关键路径,这个页面最先出现;)