8014628: Support AES Encryption with HMAC-SHA2 for Kerberos 5

Reviewed-by: mullan
This commit is contained in:
Weijun Wang 2018-01-22 12:00:41 +08:00
parent c1700dddf5
commit 724d1916fe
21 changed files with 1703 additions and 58 deletions

View file

@ -1030,11 +1030,19 @@ public class Config {
} else if (input.startsWith("a") || (input.startsWith("A"))) {
// AES
if (input.equalsIgnoreCase("aes128-cts") ||
input.equalsIgnoreCase("aes128-cts-hmac-sha1-96")) {
input.equalsIgnoreCase("aes128-sha1") ||
input.equalsIgnoreCase("aes128-cts-hmac-sha1-96")) {
result = EncryptedData.ETYPE_AES128_CTS_HMAC_SHA1_96;
} else if (input.equalsIgnoreCase("aes256-cts") ||
input.equalsIgnoreCase("aes256-cts-hmac-sha1-96")) {
input.equalsIgnoreCase("aes256-sha1") ||
input.equalsIgnoreCase("aes256-cts-hmac-sha1-96")) {
result = EncryptedData.ETYPE_AES256_CTS_HMAC_SHA1_96;
} else if (input.equalsIgnoreCase("aes128-sha2") ||
input.equalsIgnoreCase("aes128-cts-hmac-sha256-128")) {
result = EncryptedData.ETYPE_AES128_CTS_HMAC_SHA256_128;
} else if (input.equalsIgnoreCase("aes256-sha2") ||
input.equalsIgnoreCase("aes256-cts-hmac-sha384-192")) {
result = EncryptedData.ETYPE_AES256_CTS_HMAC_SHA384_192;
// ARCFOUR-HMAC
} else if (input.equalsIgnoreCase("arcfour-hmac") ||
input.equalsIgnoreCase("arcfour-hmac-md5")) {
@ -1057,6 +1065,10 @@ public class Config {
result = Checksum.CKSUMTYPE_HMAC_SHA1_96_AES128;
} else if (input.equalsIgnoreCase("hmac-sha1-96-aes256")) {
result = Checksum.CKSUMTYPE_HMAC_SHA1_96_AES256;
} else if (input.equalsIgnoreCase("hmac-sha256-128-aes128")) {
result = Checksum.CKSUMTYPE_HMAC_SHA256_128_AES128;
} else if (input.equalsIgnoreCase("hmac-sha384-192-aes256")) {
result = Checksum.CKSUMTYPE_HMAC_SHA384_192_AES256;
} else if (input.equalsIgnoreCase("hmac-md5-rc4") ||
input.equalsIgnoreCase("hmac-md5-arcfour") ||
input.equalsIgnoreCase("hmac-md5-enc")) {