Lines Matching refs:key

58 #include "key.h"
320 Key *key = NULL;
332 key = key_new(KEY_RSA1);
334 buffer_get_bignum(&auth->identities, key->rsa->e);
335 buffer_get_bignum(&auth->identities, key->rsa->n);
337 keybits = BN_num_bits(key->rsa->n);
340 BN_num_bits(key->rsa->n), bits);
345 key = key_from_blob(blob, blen);
353 return key;
366 Key* key, BIGNUM *challenge,
376 if (key->type != KEY_RSA1)
384 buffer_put_int(&buffer, BN_num_bits(key->rsa->n));
385 buffer_put_bignum(&buffer, key->rsa->e);
386 buffer_put_bignum(&buffer, key->rsa->n);
398 logit("Agent admitted failure to authenticate using the key.");
417 Key *key,
428 if (key_to_blob(key, &blob, &blen) == 0)
447 logit("Agent admitted failure to sign using the key.");
458 /* Encode key for a message to the agent. */
461 ssh_encode_identity_rsa1(Buffer *b, RSA *key, const char *comment)
463 buffer_put_int(b, BN_num_bits(key->n));
464 buffer_put_bignum(b, key->n);
465 buffer_put_bignum(b, key->e);
466 buffer_put_bignum(b, key->d);
468 buffer_put_bignum(b, key->iqmp); /* ssh key->u */
469 buffer_put_bignum(b, key->q); /* ssh key->p, SSL key->q */
470 buffer_put_bignum(b, key->p); /* ssh key->q, SSL key->p */
475 ssh_encode_identity_ssh2(Buffer *b, Key *key, const char *comment)
477 buffer_put_cstring(b, key_ssh_name(key));
478 switch (key->type) {
480 buffer_put_bignum2(b, key->rsa->n);
481 buffer_put_bignum2(b, key->rsa->e);
482 buffer_put_bignum2(b, key->rsa->d);
483 buffer_put_bignum2(b, key->rsa->iqmp);
484 buffer_put_bignum2(b, key->rsa->p);
485 buffer_put_bignum2(b, key->rsa->q);
489 if (key->cert == NULL || buffer_len(&key->cert->certblob) == 0)
491 buffer_put_string(b, buffer_ptr(&key->cert->certblob),
492 buffer_len(&key->cert->certblob));
493 buffer_put_bignum2(b, key->rsa->d);
494 buffer_put_bignum2(b, key->rsa->iqmp);
495 buffer_put_bignum2(b, key->rsa->p);
496 buffer_put_bignum2(b, key->rsa->q);
499 buffer_put_bignum2(b, key->dsa->p);
500 buffer_put_bignum2(b, key->dsa->q);
501 buffer_put_bignum2(b, key->dsa->g);
502 buffer_put_bignum2(b, key->dsa->pub_key);
503 buffer_put_bignum2(b, key->dsa->priv_key);
507 if (key->cert == NULL || buffer_len(&key->cert->certblob) == 0)
509 buffer_put_string(b, buffer_ptr(&key->cert->certblob),
510 buffer_len(&key->cert->certblob));
511 buffer_put_bignum2(b, key->dsa->priv_key);
514 buffer_put_cstring(b, key_curve_nid_to_name(key->ecdsa_nid));
515 buffer_put_ecpoint(b, EC_KEY_get0_group(key->ecdsa),
516 EC_KEY_get0_public_key(key->ecdsa));
517 buffer_put_bignum2(b, EC_KEY_get0_private_key(key->ecdsa));
520 if (key->cert == NULL || buffer_len(&key->cert->certblob) == 0)
522 buffer_put_string(b, buffer_ptr(&key->cert->certblob),
523 buffer_len(&key->cert->certblob));
524 buffer_put_bignum2(b, EC_KEY_get0_private_key(key->ecdsa));
536 ssh_add_identity_constrained(AuthenticationConnection *auth, Key *key,
544 switch (key->type) {
550 ssh_encode_identity_rsa1(&msg, key->rsa, comment);
564 ssh_encode_identity_ssh2(&msg, key, comment);
593 ssh_remove_identity(AuthenticationConnection *auth, Key *key)
602 if (key->type == KEY_RSA1) {
604 buffer_put_int(&msg, BN_num_bits(key->rsa->n));
605 buffer_put_bignum(&msg, key->rsa->e);
606 buffer_put_bignum(&msg, key->rsa->n);
607 } else if (key_type_plain(key->type) == KEY_DSA ||
608 key_type_plain(key->type) == KEY_RSA ||
609 key_type_plain(key->type) == KEY_ECDSA) {
610 key_to_blob(key, &blob, &blen);