usnistgov / ACVP

Industry Working Group on Automated Cryptographic Algorithm Validation
https://csrc.nist.gov/projects/cryptographic-algorithm-validation-program
172 stars 66 forks source link

Request for recommendation of the advertisement JSON for ECDH key agreement test #1255

Closed RoyHSYoo closed 2 years ago

RoyHSYoo commented 3 years ago

Protocol Section Is your question regarding a specific section of the protocol? You can link it here.

Just click on the table of contents in the question area of the protocol to get a URL directly to that section.

Examples: https://pages.nist.gov/ACVP/#how-to-use-metanorma https://pages.nist.gov/ACVP/draft-celi-acvp-symmetric.html#name-aes-requirements-covered

Protocol Question What is your question?

Hello,

I'm preparing to test ECDH key agreement through ACVP. Currently I am studying on the documents on this github page to follow up the guide. Because there are so many supported algorithms & modes, thus I struggled to find the fit to our purpose. Can you suggest the proper advertisement JSON example for the below scenario?

Kritner commented 3 years ago

KAS-ECC-SSC testing against the "ephemeral unified" scheme sounds like what you're describing. This tests when two parties generate keys upon request to compute a shared secret of z.

RoyHSYoo commented 3 years ago

Thank you. I will try. By the way, i have more questions.

  1. Can you explain the detail of each ECC Scheme?

    • ephemeralUnified - keyConfirmation not supported
    • fullMqv
    • fullUnified
    • onePassDh - Can only provide unilateral key confirmation party V to party U.
    • onePassMqv
    • onePassUnified
    • staticUnified
  2. In case of "noKdfNoKc" parameter, "hashAlg" is required. But in my understanding, hash algorithm is used for KDF. What is the purpose of "hashAlg" in "noKdfNoKc"? -> [Edited] Never mind this one. I confused to "KCC-ECC" instead of "KCC-ECC-SSC".

  3. Even though there are two members in "kasRole", the expected behavior of IUT looks the same for those. Is there any difference in terms of IUT?

Kritner commented 3 years ago

The details of each scheme are describe in the SP, the gist is each scheme uses:

Even though there are two members in "kasRole", the expected behavior of IUT looks the same for those. Is there any difference in terms of IUT?

There may be no difference in initiator/responder in some cases, for some schemes, for SSC.