RTE_CRYPTO_ECDH_OP_PARAM(3)

✨ rte_crypto_ecdh_op_param ✨

okay bestie, so this is a page from the Library Functions Manual β€” section 3, the "these are C library functions/structs" zone β€” and today's main character is rte_crypto_ecdh_op_param πŸ’–


🌸 NAME 🌸

rte_crypto_ecdh_op_param β€” no cap, that's the whole name, it's just a struct and it's serving exactly what it says on the tin 🫢


πŸŽ€ SYNOPSIS πŸŽ€

#include <rte_crypto_asym.h>

Data Fields

  • enum rte_crypto_asym_ke_type ke_type
  • rte_crypto_uint priv_key
  • struct rte_crypto_ec_point pub_key
  • struct rte_crypto_ec_point shared_secret

πŸ’… Detailed Description πŸ’…

Elliptic Curve Diffie-Hellman Operations params. like that's literally it bestie, this struct is the lil suitcase you hand to the crypto device so it knows what ECDH thing you want it to do πŸ”₯

its whole definition lives at line 538 of the file rte_crypto_asym.h πŸ“


πŸ¦‹ Field Documentation πŸ¦‹

🌈 enum rte_crypto_asym_ke_type ke_type

Key exchange operation type. this is the field that tells everyone else what mood we're in β€” which key exchange op we're actually doing ✨

definition? line 539 of rte_crypto_asym.h, periodt πŸ’œ

⭐ rte_crypto_uint priv_key

okay so this one is doing double duty depending on the vibe, listen:

  • Output β€” the generated private key when ke_type is RTE_CRYPTO_ASYM_KE_PRIVATE_KEY_GENERATE 🎁
  • Input β€” the private key when ke_type is one of:
    • RTE_CRYPTO_ASYM_KE_PUBLIC_KEY_GENERATE
    • RTE_CRYPTO_ASYM_KE_SHARED_SECRET_COMPUTE

and here's the iconic part πŸ‘‘ β€” in case priv_key.length is 0 and ke_type is set with RTE_CRYPTO_ASYM_KE_PUBLIC_KEY_GENERATE, a CSRNG capable device will generate the private key and use it for public key generation. literally the device said "i gotchu bestie, i'll make the key myself" πŸ™ˆ

definition at line 541 of rte_crypto_asym.h πŸ“

🧚 struct rte_crypto_ec_point pub_key

  • Output β€” the generated public key when ke_type is RTE_CRYPTO_ASYM_KE_PUBLIC_KEY_GENERATE ✨
  • Input β€” the peer's public key, when ke_type is one of:
    • RTE_CRYPTO_ASYM_KE_SHARED_SECRET_COMPUTE
    • RTE_CRYPTO_ASYM_KE_EC_PUBLIC_KEY_VERIFY

so sometimes it's your key coming out, sometimes it's their key going in β€” main character energy either way πŸ’…

definition at line 555 of rte_crypto_asym.h πŸ“

🫢 struct rte_crypto_ec_point shared_secret

Output β€” the calculated shared secret when ke_type is RTE_CRYPTO_ASYM_KE_SHARED_SECRET_COMPUTE. this is the payoff, the moment, the slay 🌟

definition at line 564 of rte_crypto_asym.h πŸ“


πŸ’– Author πŸ’–

Generated automatically by Doxygen for DPDK from the source code. not a human writing this, just doxygen doing its lil thing πŸŽ€


ngl the whole struct is just four fields and a dream, but every single one of them matters. don't skip a field, bestie, the crypto will not forgive you 😭

and that's the page πŸ’œ it came from DPDK, Version 25.11.3, under the rte_crypto_ecdh_op_param(3) manual name β€” mwah, go generate some keys, ily, bye πŸ¦‹πŸŒΈβœ¨

πŸ“¦ where this page comes from