Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test Session API suggestion #835

Open
AlexThurston opened this issue Apr 20, 2020 · 10 comments
Open

Test Session API suggestion #835

AlexThurston opened this issue Apr 20, 2020 · 10 comments

Comments

@AlexThurston
Copy link

As a suggestion, it might be valuable/beneficial to provide an API or add the data within the existing API to get the algorithm capabilities that were used to create a test session.

If it were me, I'd say that a GET on the test session resource would provide this info. Currently it returns:

[
  {
    "acvVersion": "1.0"
  },
  {
    "url": "/acvp/v1/testSessions/<ID>",
    "vectorSetsUrl": "/acvp/v1/testSessions/<ID>/vectorSets",
    "status": "new"
  }
]

Maybe this could be:

[
  {
    "acvVersion": "1.0"
  },
  {
    "url": "/acvp/v1/testSessions/75731",
    "capabilities": <JSON ARRAY OF CAPABILITIES>,
    "vectorSetsUrl": "/acvp/v1/testSessions/75731/vectorSets",
    "status": "new"
  }
]
@smuellerDD
Copy link
Contributor

smuellerDD commented Apr 20, 2020 via email

@AlexThurston
Copy link
Author

Sorry, maybe I wasn't clear. I'm not asking for a list of ALL the cipher definitions. I'm asking for the list of those that were provided to ACVP when a test session was created, (ie. the body of the POST)

@smuellerDD
Copy link
Contributor

It just occurred to me that what you want is actually implemented, I think.

At the end of the publication phase when a cert is issued, the server returns a URL to fetch the certificate details (e.g. /acvp/v1/validations/). The data you get from there not only contains the cert ID but also all cipher options.

@AlexThurston
Copy link
Author

Hey @smuellerDD, not quite. I'm asking for the ciphers used in a test session resource, not a validation resource.

@smuellerDD
Copy link
Contributor

smuellerDD commented Apr 23, 2020 via email

@AlexThurston
Copy link
Author

My thought here was that rather than a new endpoint, it could be added to the response body of the GET of /acvp/v1/testSessions/<ID> route.

@celic
Copy link
Collaborator

celic commented Apr 23, 2020

I understand. You are interested in the exact capabilities you registered for that vector set. Right now we expect the client to store that somewhere linked to the vsID. We will talk about this and see. It would not be a high priority though.

@AlexThurston
Copy link
Author

Two years later, I thought I'd resurrect/bump this question to see if there was any thought or possibility in making this available. While the CAVP list does display what was algorithm capabilities were registered for the various OEs for a certificate, having access the the exact JSON that was registered when submitting for validation would be helpful in those situation where a vendor or lab does not have access to the originally registered algorithms sets. It's also worth noting that I also believe that the CAVP list webpage doesn't show ALL the fields for an algorithm. As an example, I think in the case of KAS-FFC, the noKDFnoKC field isn't displayed. I can't say for certain if there are others.

@livebe01
Copy link
Collaborator

Hi Alex, we don't have any plans for this right now.

I can see adding this capability for the scenario where someone has gotten a bit mixed up or has perhaps overwritten a file and wants to get back to the ground truth of what was registered for a given test session. But we don't have the cycles to implement this right now. The current expectation is that the clients and labs will be managing/saving/archiving this data in the spirit of Handbook 150-17 G.3.2.

The biggest challenge with what you're mentioning specifically is permissions on data. I don't think we want to get into transferring the ownership of data between users (from one lab to another).

Also, we show the fields that are relevant for the validation on the CAVP list. There are some fields that are kept internal because they aren't meant to be displayed, i.e., for readability. Displaying them would cause confusion for the reader.

@AlexThurston
Copy link
Author

Thanks very much for the update.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants