Encryption UDF使用PKCS#5和#x2019解密256位AES;它在蜂箱里

Encryption UDF使用PKCS#5和#x2019解密256位AES;它在蜂箱里,encryption,spring-security,hive,cryptography,Encryption,Spring Security,Hive,Cryptography,我有一些字符串是由Spring boot应用程序使用org.springframework.security.crypto.encrypt.TextEncryptor加密的,它使用256位AES PKCS#5。加密值包含salt和密码作为JSON 例如:{“密码”:“8E93B3EABECDADA5CE2CDBC69AEC141BB14D086A1B6C8CF5B09CAB1179B6291”,“salt”:“ce192103318fcea1”} 是否可以在配置单元中编写UDF来解密此字符串?如

我有一些字符串是由Spring boot应用程序使用
org.springframework.security.crypto.encrypt.TextEncryptor加密的,它使用256位AES PKCS#5。加密值包含salt和密码作为JSON

例如:
{“密码”:“8E93B3EABECDADA5CE2CDBC69AEC141BB14D086A1B6C8CF5B09CAB1179B6291”,“salt”:“ce192103318fcea1”}


是否可以在配置单元中编写UDF来解密此字符串?如果是,怎么做?我是新来的蜂巢,所以我完全不知道该怎么做。我正在AWS上运行一个EMR集群。

我强烈建议使用通用Java更好地执行此操作。我不知道hadoop,但您可能可以在给定特定查询的情况下执行代码?请注意,PKCS#5没有指定算法配置本身,我在您给出的JSON字符串中没有看到任何迭代计数或哈希算法的指示。如果您有用于生成的匹配TextEncryptor的实例,您不能调用TextEncryptor.decrypt()?如果没有,您将知道正在使用什么加密算法和密钥派生算法。您能用一个使用两个
String
arg的静态Java方法来解密这些内容吗?如果是,那么您可以使用Hive(undocumented)
reflect2
函数。我想在hive中编写一个函数来实现这一点,我强烈建议使用泛型Java更好地实现这一点。我不知道hadoop,但您可能可以在给定特定查询的情况下执行代码?请注意,PKCS#5没有指定算法配置本身,我在您给出的JSON字符串中没有看到任何迭代计数或哈希算法的指示。如果您有用于生成的匹配TextEncryptor的实例,您不能调用TextEncryptor.decrypt()?如果没有,您将知道正在使用什么加密算法和密钥派生算法。您能用一个使用两个
String
arg的静态Java方法来解密这些内容吗?如果是,那么您可以使用Hive(undocumented)
reflect2
函数。我想写一个函数,在hive中实现这一点。