Lines Matching defs:key
103 void DES_set_odd_parity(DES_cblock *key)
108 (*key)[i] = odd_parity[(*key)[i]];
111 int DES_check_key_parity(const_DES_cblock *key)
116 if ((*key)[i] != odd_parity[(*key)[i]])
154 int DES_is_weak_key(const_DES_cblock *key)
165 if (memcmp(weak_keys[i], key, sizeof(DES_cblock)) == 0)
336 int DES_set_key(const_DES_cblock *key, DES_key_schedule *schedule)
339 return DES_set_key_checked(key, schedule);
341 DES_set_key_unchecked(key, schedule);
347 * return 0 if key parity is odd (correct),
348 * return -1 if key parity error,
349 * return -2 if illegal weak key.
351 int DES_set_key_checked(const_DES_cblock *key, DES_key_schedule *schedule)
353 if (!DES_check_key_parity(key))
355 if (DES_is_weak_key(key))
357 DES_set_key_unchecked(key, schedule);
361 void DES_set_key_unchecked(const_DES_cblock *key, DES_key_schedule *schedule)
365 private_DES_set_key_unchecked(key, schedule);
368 void private_DES_set_key_unchecked(const_DES_cblock *key,
380 memcpy(schedule->key, key, sizeof(schedule->key));
384 in = &(*key)[0];
436 int DES_key_sched(const_DES_cblock *key, DES_key_schedule *schedule)
438 return (DES_set_key(key, schedule));
443 void des_fixup_key_parity(des_cblock *key)
445 des_set_odd_parity(key);