Lines Matching refs:key

39 void rc4_md5_enc(RC4_KEY *key, const void *in0, void *out,
48 EVP_RC4_HMAC_MD5 *key = data(ctx); in rc4_hmac_md5_init_key() local
54 RC4_set_key(&key->ks, keylen, inkey); in rc4_hmac_md5_init_key()
56 MD5_Init(&key->head); /* handy when benchmarking */ in rc4_hmac_md5_init_key()
57 key->tail = key->head; in rc4_hmac_md5_init_key()
58 key->md = key->head; in rc4_hmac_md5_init_key()
60 key->payload_length = NO_PAYLOAD_LENGTH; in rc4_hmac_md5_init_key()
79 EVP_RC4_HMAC_MD5 *key = data(ctx); in rc4_hmac_md5_cipher() local
81 size_t rc4_off = 32 - 1 - (key->ks.x & (32 - 1)), /* 32 is $MOD from in rc4_hmac_md5_cipher()
83 md5_off = MD5_CBLOCK - key->md.num, blocks; in rc4_hmac_md5_cipher()
86 size_t plen = key->payload_length; in rc4_hmac_md5_cipher()
101 MD5_Update(&key->md, in, md5_off); in rc4_hmac_md5_cipher()
102 RC4(&key->ks, rc4_off, in, out); in rc4_hmac_md5_cipher()
104 rc4_md5_enc(&key->ks, in + rc4_off, out + rc4_off, in rc4_hmac_md5_cipher()
105 &key->md, in + md5_off, blocks); in rc4_hmac_md5_cipher()
109 key->md.Nh += blocks >> 29; in rc4_hmac_md5_cipher()
110 key->md.Nl += blocks <<= 3; in rc4_hmac_md5_cipher()
111 if (key->md.Nl < (unsigned int)blocks) in rc4_hmac_md5_cipher()
112 key->md.Nh++; in rc4_hmac_md5_cipher()
118 MD5_Update(&key->md, in + md5_off, plen - md5_off); in rc4_hmac_md5_cipher()
125 MD5_Final(out + plen, &key->md); in rc4_hmac_md5_cipher()
126 key->md = key->tail; in rc4_hmac_md5_cipher()
127 MD5_Update(&key->md, out + plen, MD5_DIGEST_LENGTH); in rc4_hmac_md5_cipher()
128 MD5_Final(out + plen, &key->md); in rc4_hmac_md5_cipher()
130 RC4(&key->ks, len - rc4_off, out + rc4_off, out + rc4_off); in rc4_hmac_md5_cipher()
132 RC4(&key->ks, len - rc4_off, in + rc4_off, out + rc4_off); in rc4_hmac_md5_cipher()
145 RC4(&key->ks, rc4_off, in, out); in rc4_hmac_md5_cipher()
146 MD5_Update(&key->md, out, md5_off); in rc4_hmac_md5_cipher()
148 rc4_md5_enc(&key->ks, in + rc4_off, out + rc4_off, in rc4_hmac_md5_cipher()
149 &key->md, out + md5_off, blocks); in rc4_hmac_md5_cipher()
153 l = (key->md.Nl + (blocks << 3)) & 0xffffffffU; in rc4_hmac_md5_cipher()
154 if (l < key->md.Nl) in rc4_hmac_md5_cipher()
155 key->md.Nh++; in rc4_hmac_md5_cipher()
156 key->md.Nl = l; in rc4_hmac_md5_cipher()
157 key->md.Nh += blocks >> 29; in rc4_hmac_md5_cipher()
164 RC4(&key->ks, len - rc4_off, in + rc4_off, out + rc4_off); in rc4_hmac_md5_cipher()
166 MD5_Update(&key->md, out + md5_off, plen - md5_off); in rc4_hmac_md5_cipher()
169 MD5_Final(mac, &key->md); in rc4_hmac_md5_cipher()
170 key->md = key->tail; in rc4_hmac_md5_cipher()
171 MD5_Update(&key->md, mac, MD5_DIGEST_LENGTH); in rc4_hmac_md5_cipher()
172 MD5_Final(mac, &key->md); in rc4_hmac_md5_cipher()
177 MD5_Update(&key->md, out + md5_off, len - md5_off); in rc4_hmac_md5_cipher()
181 key->payload_length = NO_PAYLOAD_LENGTH; in rc4_hmac_md5_cipher()
189 EVP_RC4_HMAC_MD5 *key = data(ctx); in rc4_hmac_md5_ctrl() local
200 MD5_Init(&key->head); in rc4_hmac_md5_ctrl()
201 MD5_Update(&key->head, ptr, arg); in rc4_hmac_md5_ctrl()
202 MD5_Final(hmac_key, &key->head); in rc4_hmac_md5_ctrl()
209 MD5_Init(&key->head); in rc4_hmac_md5_ctrl()
210 MD5_Update(&key->head, hmac_key, sizeof(hmac_key)); in rc4_hmac_md5_ctrl()
214 MD5_Init(&key->tail); in rc4_hmac_md5_ctrl()
215 MD5_Update(&key->tail, hmac_key, sizeof(hmac_key)); in rc4_hmac_md5_ctrl()
238 key->payload_length = len; in rc4_hmac_md5_ctrl()
239 key->md = key->head; in rc4_hmac_md5_ctrl()
240 MD5_Update(&key->md, p, arg); in rc4_hmac_md5_ctrl()