105 bool generate(uint8_t* pvtBits, uint8_t* pubBits) {
107 return mbedtls_ecp_gen_keypair(
108 &this->
keypair.NDNPH_MBEDTLS_PVT3(grp), &this->keypair.NDNPH_MBEDTLS_PVT3(d),
109 &this->keypair.NDNPH_MBEDTLS_PVT3(Q),
mbedtls::rng,
nullptr) == 0 &&
110 mbedtls_mpi_write_binary(&this->
keypair.NDNPH_MBEDTLS_PVT3(d), pvtBits,
111 mbedtls::P256::PvtLen::value) == 0 &&
112 mbedtls_ecp_point_write_binary(
113 &this->
keypair.NDNPH_MBEDTLS_PVT3(grp), &this->keypair.NDNPH_MBEDTLS_PVT3(Q),
114 MBEDTLS_ECP_PF_UNCOMPRESSED, &pubLen, pubBits, mbedtls::P256::PubLen::value) == 0 &&
115 pubLen == mbedtls::P256::PubLen::value;