xvzcf / tls-interop-runner

Interoperability testing of TLS implementations.
Other
10 stars 13 forks source link

Generate DC test vectors and add other signature schemes #35

Closed claucece closed 3 years ago

claucece commented 3 years ago

Open for comments ;)

cc./ @cjpatton @chris-wood @xvzcf

xvzcf commented 3 years ago

To me, it seems like -make-dcvectors and -make-dc are the same thing. Also, instead of a -dc-algo argument, we could have an -alg argument that is passed to make-dc, make-root, etc. I say alg and not sig-alg because we might potentially wrap post-quantum KEMs in DCs.

claucece commented 3 years ago

To me, it seems like -make-dcvectors and -make-dc are the same thing. Also, instead of a -dc-algo argument, we could have an -alg argument that is passed to make-dc, make-root, etc. I say alg and not sig-alg because we might potentially wrap post-quantum KEMs in DCs.

I like that of the -alg argument. Around the -make-dc one: I wanted to separate between the vectors and the dc used to run the test. But it could also be that the all of them are generated and the test just chooses one.

xvzcf commented 3 years ago

I like that of the -alg argument. Around the -make-dc one: I wanted to separate between the vectors and the dc used to run the test. But it could also be that the all of them are generated and the test just chooses one.

Yeah, I was thinking the latter. For each testcase, the CI runner will dynamically generate the artifacts, run a client-server interaction and then clean up by deleting the artifacts. If (for example) signature algorithms for the root, intermediate cert, and DC are chosen randomly for each testcase run, this might get us decent coverage of the many possible combinations without too much additional complexity.

claucece commented 3 years ago

@xvzcf @cjpatton check how it is working now. It is not so simple to choose randomly a cert, as it has to be a valid cert for the dc that are generated upon them. For the moment, it is randomly choosing a DC.

claucece commented 3 years ago

This is done now. I added some todos regarding:

I can send that as part of other PRs.

Let me know what you think @xvzcf