rc4->arcfour
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@7422 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -389,25 +389,25 @@ DES3_string_to_key_derived(krb5_context context,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* RC4
|
* ARCFOUR
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static void
|
static void
|
||||||
RC4_random_key(krb5_context context, krb5_keyblock *key)
|
ARCFOUR_random_key(krb5_context context, krb5_keyblock *key)
|
||||||
{
|
{
|
||||||
krb5_generate_random_block (key->keyvalue.data,
|
krb5_generate_random_block (key->keyvalue.data,
|
||||||
key->keyvalue.length);
|
key->keyvalue.length);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
RC4_schedule(krb5_context context, struct key_data *kd)
|
ARCFOUR_schedule(krb5_context context, struct key_data *kd)
|
||||||
{
|
{
|
||||||
RC4_set_key (kd->schedule->data,
|
ARCFOUR_set_key (kd->schedule->data,
|
||||||
kd->key->keyvalue.length, kd->key->keyvalue.data);
|
kd->key->keyvalue.length, kd->key->keyvalue.data);
|
||||||
}
|
}
|
||||||
|
|
||||||
static krb5_error_code
|
static krb5_error_code
|
||||||
RC4_string_to_key(krb5_context context,
|
ARCFOUR_string_to_key(krb5_context context,
|
||||||
krb5_enctype enctype,
|
krb5_enctype enctype,
|
||||||
krb5_data password,
|
krb5_data password,
|
||||||
krb5_data salt,
|
krb5_data salt,
|
||||||
@@ -441,7 +441,7 @@ RC4_string_to_key(krb5_context context,
|
|||||||
}
|
}
|
||||||
|
|
||||||
extern struct salt_type des_salt[],
|
extern struct salt_type des_salt[],
|
||||||
des3_salt[], des3_salt_derived[], rc4_salt[];
|
des3_salt[], des3_salt_derived[], arcfour_salt[];
|
||||||
|
|
||||||
struct key_type keytype_null = {
|
struct key_type keytype_null = {
|
||||||
KEYTYPE_NULL,
|
KEYTYPE_NULL,
|
||||||
@@ -487,15 +487,15 @@ struct key_type keytype_des3_derived = {
|
|||||||
des3_salt_derived
|
des3_salt_derived
|
||||||
};
|
};
|
||||||
|
|
||||||
struct key_type keytype_rc4 = {
|
struct key_type keytype_arcfour = {
|
||||||
KEYTYPE_RC4,
|
KEYTYPE_ARCFOUR,
|
||||||
"rc4",
|
"arcfour",
|
||||||
128,
|
128,
|
||||||
16,
|
16,
|
||||||
sizeof(RC4_KEY),
|
sizeof(RC4_KEY),
|
||||||
RC4_random_key,
|
ARCFOUR_random_key,
|
||||||
RC4_schedule,
|
ARCFOUR_schedule,
|
||||||
rc4_salt
|
arcfour_salt
|
||||||
};
|
};
|
||||||
|
|
||||||
struct key_type *keytypes[] = {
|
struct key_type *keytypes[] = {
|
||||||
@@ -503,7 +503,7 @@ struct key_type *keytypes[] = {
|
|||||||
&keytype_des,
|
&keytype_des,
|
||||||
&keytype_des3_derived,
|
&keytype_des3_derived,
|
||||||
&keytype_des3,
|
&keytype_des3,
|
||||||
&keytype_rc4
|
&keytype_arcfour
|
||||||
};
|
};
|
||||||
|
|
||||||
static int num_keytypes = sizeof(keytypes) / sizeof(keytypes[0]);
|
static int num_keytypes = sizeof(keytypes) / sizeof(keytypes[0]);
|
||||||
@@ -551,11 +551,11 @@ struct salt_type des3_salt_derived[] = {
|
|||||||
{ 0 }
|
{ 0 }
|
||||||
};
|
};
|
||||||
|
|
||||||
struct salt_type rc4_salt[] = {
|
struct salt_type arcfour_salt[] = {
|
||||||
{
|
{
|
||||||
KRB5_PW_SALT,
|
KRB5_PW_SALT,
|
||||||
"pw-salt",
|
"pw-salt",
|
||||||
RC4_string_to_key
|
ARCFOUR_string_to_key
|
||||||
},
|
},
|
||||||
{ 0 }
|
{ 0 }
|
||||||
};
|
};
|
||||||
@@ -1438,10 +1438,10 @@ DES3_CBC_encrypt(struct key_data *key,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
RC4_encrypt(struct key_data *key,
|
ARCFOUR_encrypt(struct key_data *key,
|
||||||
void *data,
|
void *data,
|
||||||
size_t len,
|
size_t len,
|
||||||
krb5_boolean encrypt)
|
krb5_boolean encrypt)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -87,7 +87,8 @@ typedef enum krb5_cksumtype {
|
|||||||
CKSUMTYPE_RSA_MD5_DES3 = 9,
|
CKSUMTYPE_RSA_MD5_DES3 = 9,
|
||||||
/* CKSUMTYPE_SHA1 = 10,*/
|
/* CKSUMTYPE_SHA1 = 10,*/
|
||||||
CKSUMTYPE_HMAC_SHA1_DES3 = 12,
|
CKSUMTYPE_HMAC_SHA1_DES3 = 12,
|
||||||
CKSUMTYPE_SHA1 = 1000 /* correct value? */
|
CKSUMTYPE_SHA1 = 1000, /* correct value? */
|
||||||
|
CKSUMTYPE_HMAC_MD5 = -138 /* unofficial microsoft number */
|
||||||
} krb5_cksumtype;
|
} krb5_cksumtype;
|
||||||
|
|
||||||
|
|
||||||
@@ -102,6 +103,8 @@ typedef enum krb5_enctype {
|
|||||||
ETYPE_ENCRYPT_RSA_PRIV = 9,
|
ETYPE_ENCRYPT_RSA_PRIV = 9,
|
||||||
ETYPE_ENCRYPT_RSA_PUB = 10,
|
ETYPE_ENCRYPT_RSA_PUB = 10,
|
||||||
ETYPE_DES3_CBC_SHA1 = 16, /* with key derivation */
|
ETYPE_DES3_CBC_SHA1 = 16, /* with key derivation */
|
||||||
|
ETYPE_ARCFOUR_HMAC_MD5 = 23,
|
||||||
|
ETYPE_ARCFOUR_HMAC_MD5_56 = 24,
|
||||||
ETYPE_ENCTYPE_PK_CROSS = 48,
|
ETYPE_ENCTYPE_PK_CROSS = 48,
|
||||||
ETYPE_DES_CBC_NONE = 0x1000,
|
ETYPE_DES_CBC_NONE = 0x1000,
|
||||||
ETYPE_DES3_CBC_NONE = 0x1001
|
ETYPE_DES3_CBC_NONE = 0x1001
|
||||||
@@ -214,7 +217,7 @@ typedef enum krb5_keytype {
|
|||||||
KEYTYPE_NULL = 0,
|
KEYTYPE_NULL = 0,
|
||||||
KEYTYPE_DES = 1,
|
KEYTYPE_DES = 1,
|
||||||
KEYTYPE_DES3 = 7,
|
KEYTYPE_DES3 = 7,
|
||||||
KEYTYPE_RC4 = 23
|
KEYTYPE_ARCFOUR = 23
|
||||||
} krb5_keytype;
|
} krb5_keytype;
|
||||||
|
|
||||||
typedef EncryptionKey krb5_keyblock;
|
typedef EncryptionKey krb5_keyblock;
|
||||||
|
Reference in New Issue
Block a user