You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by wa...@apache.org on 2014/07/25 01:49:22 UTC
svn commit: r1613332 - in
/hadoop/common/trunk/hadoop-common-project/hadoop-common: CHANGES.txt
src/main/java/org/apache/hadoop/crypto/key/KeyProviderCryptoExtension.java
Author: wang
Date: Thu Jul 24 23:49:22 2014
New Revision: 1613332
URL: http://svn.apache.org/r1613332
Log:
HADOOP-10891. Add EncryptedKeyVersion factory method to KeyProviderCryptoExtension. (wang)
Modified:
hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProviderCryptoExtension.java
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt?rev=1613332&r1=1613331&r2=1613332&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt (original)
+++ hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt Thu Jul 24 23:49:22 2014
@@ -189,6 +189,9 @@ Trunk (Unreleased)
HADOOP-10720. KMS: Implement generateEncryptedKey and decryptEncryptedKey
in the REST API. (asuresh via tucu)
+ HADOOP-10891. Add EncryptedKeyVersion factory method to
+ KeyProviderCryptoExtension. (wang)
+
BUG FIXES
HADOOP-9451. Fault single-layer config if node group topology is enabled.
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProviderCryptoExtension.java
URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProviderCryptoExtension.java?rev=1613332&r1=1613331&r2=1613332&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProviderCryptoExtension.java (original)
+++ hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/crypto/key/KeyProviderCryptoExtension.java Thu Jul 24 23:49:22 2014
@@ -80,6 +80,30 @@ public class KeyProviderCryptoExtension
}
/**
+ * Factory method to create a new EncryptedKeyVersion that can then be
+ * passed into {@link #decryptEncryptedKey}. Note that the fields of the
+ * returned EncryptedKeyVersion will only partially be populated; it is not
+ * necessarily suitable for operations besides decryption.
+ *
+ * @param encryptionKeyVersionName Version name of the encryption key used
+ * to encrypt the encrypted key.
+ * @param encryptedKeyIv Initialization vector of the encrypted
+ * key. The IV of the encryption key used to
+ * encrypt the encrypted key is derived from
+ * this IV.
+ * @param encryptedKeyMaterial Key material of the encrypted key.
+ * @return EncryptedKeyVersion suitable for decryption.
+ */
+ public static EncryptedKeyVersion createForDecryption(String
+ encryptionKeyVersionName, byte[] encryptedKeyIv,
+ byte[] encryptedKeyMaterial) {
+ KeyVersion encryptedKeyVersion = new KeyVersion(null, null,
+ encryptedKeyMaterial);
+ return new EncryptedKeyVersion(null, encryptionKeyVersionName,
+ encryptedKeyIv, encryptedKeyVersion);
+ }
+
+ /**
* @return Name of the encryption key used to encrypt the encrypted key.
*/
public String getEncryptionKeyName() {