Skip to main content

AES-128 Encryption/Decryption support in Vertica 9.0

  • Apr 26, 2019 4:02 PM UTC
  • 2 replies
  • 19 views

SudhakarB

Does Vertica 9.0 support AES Decryption using a key natively?
I am ingesting data into Vertica that has column values that have been encrypted in different system (Hive) using a key.
I have the key, however am not able to decrypt using the key in Vertica.
I tried encryption_package from Vertica-Extension-Packages on github.

I can provide additional details, if required.
Thanks in advance.

2 replies

Bryan_H
Forum|alt.badge.img+2
  • Participating Frequently
  • Jul 4, 2019 3:39 AM UTC

Hi, and apologies for not seeing this sooner. My guess is that the encryption support in the C++ UDF in Vertica-Extensions is not quite the same as what is used by Hive, where our C++ UDF example is eight years old and limited in options while Hive uses the javax.crypto package.

My guess is that you'd need to implement a Java UDF derived from the AesBase and AesDecrypt classes that Hive uses. These can be found at https://github.com/apache/hive/tree/master/ql/src/java/org/apache/hadoop/hive/ql/udf/generic in the GenericUDFAesBase.java and GenericUDFAesDecrypt.java classes.


Sudhakar_B
Forum|alt.badge.img+1
  • Participating Frequently
  • Aug 23, 2019 2:43 PM UTC

Thanks much Bryan,
My turn to apologize for not seeing your response sooner. It all worked out at the customer site as they started using encrypted values for analytics/reporting. They just encrypted the specific columns all the respective tables before feeding to Vertica.
Thanks much for your help though. I'll pursue this as some cycle permits.
Thx.