Re: EVP_PKEY_get_int_param is not getting degree from EC key

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 1/4/22, 11:23, "Tomas Mraz" <tomas@xxxxxxxxxxx> wrote:

>  > Theoretically, shouldn’t
>  > 
>  > EVP_PKEY_get_int_param(pkey, OSSL_PARAM_EC_ORDER, &(unsigned int)order)
>  > 
>  > work? I verified that it does not seem to work, at least in the
>  > obvious context. 
>
>  OSSL_PARAM_EC_ORDER is an unsigned integer (also a bignum) and it won't
>  fit into int. So that's the reason why that call fails.

In other words, the man page says it's unsigned int, but in fact it's BIGNUM? Because the pointer I gave was to "unsigned int", like in the OP's code.

This works, BTW:

      if (!(ec_grp = EC_GROUP_new_by_curve_name(ECCTYPE)))
            ERR("EC_GROUP_new_by_curve_name");
      const BIGNUM *ord = EC_GROUP_get0_order(ec_grp);
      fprintf(stderr, "order = ");
      BN_print_fp(stderr, ord); fprintf(stderr, "\n");
      printf("order = %s\n", BN_bn2dec(ord));


>  Also the order is not a degree (maximum number of bits of a curve
>  coordinate).

Yeah, I was trying to figure if *any* of EC-related parameters would work...


Attachment: smime.p7s
Description: S/MIME cryptographic signature


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux