Closed armfazh closed 4 years ago
@chris-wood This is actually going to be pretty difficult due to the trade-offs that can be chosen with the static DH oracle. Essentially, due to Brown-Gallant & Cheon the strength of breaking DLP is:
(taken from Section 21.5 of https://www.math.auckland.ac.nz/~sgal018/crypto-book/main.pdf). This translates, for example, to:
But each curve comes with its own r-1
factors. There are also variants of the attack that can be done for r+1
, see this email for a good summary: https://mailarchive.ietf.org/arch/msg/cfrg/YDVS5Trpr6suig_VCFEOH6SOn8Q/.
The problem is that for each curve we can choose different trade-offs based on the factor itself. For example, if you can tolerate more queries you can choose a bigger factor and the group loses more security. But if this query tolerance is stricter, then the amount of security loss is also restricted. With all of this in mind, and because there are so many combinations of factors for each of the curves. I think the table here would be too complex to offer much value.
What do you think?
cc @armfazh also.
FWIW, I think this could be a separate CFRG draft
FWIW, I think this could be a separate CFRG draft
That's an interesting idea -- is this something you and Taylor could work on?
I don't think I visualize the table yet, so I can't speak to its supposed complexity, but you do make a compelling argument against it :-) How about we just keep the static DH oracle section separate and point to it from the ciphersuite section? That is, each ciphersuite could list the effective security level in the absence of these oracles, but then we point to another section which explains the oracle problem.
That's an interesting idea -- is this something you and Taylor could work on?
I think that's something I can definitely explore.
I don't think I visualize the table yet, so I can't speak to its supposed complexity, but you do make a compelling argument against it :-) How about we just keep the static DH oracle section separate and point to it from the ciphersuite section? That is, each ciphersuite could list the effective security level in the absence of these oracles, but then we point to another section which explains the oracle problem.
Yeah I think that will probably be the best approach. I'll write a candidate PR.
Well, let's keep it simple. The purpose of listing the groups is to have a clear vision of all the parameters involved. Listing the security level is probably not required. We are adopting state-of-the-art group instances with well-known security bounds.
I think Section 7.1.4 gives a good explantion of security levels without going into the details.
This will be fixed in #121
Originally posted by @chris-wood in https://github.com/cfrg/draft-irtf-cfrg-voprf/pull/78
Should we include a table that lists the group (name) and its parameters, e.g., the generator, base field prime order, etc.?