Adobe CryptoSupport用于散列的内容是什么?

时间:2013-12-02 16:53:58

标签: java encryption adobe cq5

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

JavaDocs或一般Adobe文档没有提供有关其实现的详细信息,只是声明:

  

请注意,此方法和decrypt(byte[])方法提供了完整功能   往返支持:

decrypt(encrypt(plainText)).equals(plainText) == true   
     

请注意,   在同一plainText上调用此方法两次不会返回   相同的密文:

encrypt(plainText).equals(encrypt(plainText)) == false

这是非常有用的,但它没有告诉我这些密码是如何开始加密的。我试过在一个CQ实例上加密&解密另一个,但这似乎不起作用。

为了充满信心地使用此功能,我想知道CQ加密的基础。 我有两个主要问题:

  • 我如何根据安全的东西知道该服务是否被腌制(认为这是正确的术语)?或者如果需要配置,我该怎么做? (即它是否使用相同级别的安全OOTB作为'admin / admin'的登录!)
  • 如果加密是特定于环境的,这是否意味着我无法对数据进行加密。然后在服务器之间传输?

1 个答案:

答案 0 :(得分:5)

Felix控制台中的捆绑说明指出

  

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

密钥是在 Adob​​e Granite加密支持捆绑包首次启动时随机生成的,然后保存为/etc/key/master属性。 它是按设计进行的,我不认为在CQ安装之间移动此密钥是个好主意。实际上,Adobe says it's a good idea在作者和发布实例之间移动密钥。 / p>

回答你的问题:

  • 您无需担心配置服务,因为它是在第一次捆绑激活期间自动完成的,
  • 只要您还移动密钥,就可以将加密数据从一个实例移动到另一个实例。