Lines Matching refs:pk

351 					       struct ecc_point *pk)  in kmb_ocs_ecc_is_pubkey_valid_partial()  argument
358 if (WARN_ON(pk->ndigits != curve->g.ndigits)) in kmb_ocs_ecc_is_pubkey_valid_partial()
362 if (ecc_point_is_zero(pk)) in kmb_ocs_ecc_is_pubkey_valid_partial()
366 if (vli_cmp(curve->p, pk->x, pk->ndigits) != 1) in kmb_ocs_ecc_is_pubkey_valid_partial()
369 if (vli_cmp(curve->p, pk->y, pk->ndigits) != 1) in kmb_ocs_ecc_is_pubkey_valid_partial()
376 rc = kmb_ecc_do_scalar_op(ecc_dev, yy, pk->y, pk->y, curve, pk->ndigits, in kmb_ocs_ecc_is_pubkey_valid_partial()
385 rc = kmb_ecc_do_scalar_op(ecc_dev, xxx, pk->x, w, curve, pk->ndigits, in kmb_ocs_ecc_is_pubkey_valid_partial()
391 rc = kmb_ecc_do_scalar_op(ecc_dev, w, curve->a, pk->x, curve, in kmb_ocs_ecc_is_pubkey_valid_partial()
392 pk->ndigits, in kmb_ocs_ecc_is_pubkey_valid_partial()
399 pk->ndigits, in kmb_ocs_ecc_is_pubkey_valid_partial()
405 rc = kmb_ecc_do_scalar_op(ecc_dev, w, xxx, w, curve, pk->ndigits, in kmb_ocs_ecc_is_pubkey_valid_partial()
411 rc = vli_cmp(yy, w, pk->ndigits); in kmb_ocs_ecc_is_pubkey_valid_partial()
426 struct ecc_point *pk) in kmb_ocs_ecc_is_pubkey_valid_full() argument
432 rc = kmb_ocs_ecc_is_pubkey_valid_partial(ecc_dev, curve, pk); in kmb_ocs_ecc_is_pubkey_valid_full()
437 nQ = ecc_alloc_point(pk->ndigits); in kmb_ocs_ecc_is_pubkey_valid_full()
441 rc = kmb_ecc_point_mult(ecc_dev, nQ, pk, curve->n, curve); in kmb_ocs_ecc_is_pubkey_valid_full()
583 struct ecc_point *pk, *result; in kmb_ecc_do_shared_secret() local
599 pk = ecc_alloc_point(curve->g.ndigits); in kmb_ecc_do_shared_secret()
600 if (!pk) in kmb_ecc_do_shared_secret()
603 ecc_swap_digits(pubk_buf, pk->x, curve->g.ndigits); in kmb_ecc_do_shared_secret()
604 ecc_swap_digits(&pubk_buf[curve->g.ndigits], pk->y, curve->g.ndigits); in kmb_ecc_do_shared_secret()
612 rc = kmb_ocs_ecc_is_pubkey_valid_partial(ecc_dev, curve, pk); in kmb_ecc_do_shared_secret()
617 result = ecc_alloc_point(pk->ndigits); in kmb_ecc_do_shared_secret()
624 rc = kmb_ecc_point_mult(ecc_dev, result, pk, tctx->private_key, curve); in kmb_ecc_do_shared_secret()
652 ecc_free_point(pk); in kmb_ecc_do_shared_secret()
663 struct ecc_point *pk; in kmb_ecc_do_public_key() local
671 pk = ecc_alloc_point(curve->g.ndigits); in kmb_ecc_do_public_key()
672 if (!pk) in kmb_ecc_do_public_key()
676 rc = kmb_ecc_point_mult(tctx->ecc_dev, pk, &curve->g, tctx->private_key, in kmb_ecc_do_public_key()
682 if (kmb_ocs_ecc_is_pubkey_valid_full(tctx->ecc_dev, curve, pk)) { in kmb_ecc_do_public_key()
688 ecc_swap_digits(pk->x, pubk_buf, pk->ndigits); in kmb_ecc_do_public_key()
689 ecc_swap_digits(pk->y, &pubk_buf[pk->ndigits], pk->ndigits); in kmb_ecc_do_public_key()
700 ecc_free_point(pk); in kmb_ecc_do_public_key()