On Wed, Sep 11, 2024 at 02:52:27PM +0300, Jarkko Sakkinen wrote: > On Tue Sep 10, 2024 at 5:30 PM EEST, Lukas Wunner wrote: > > The ECDSA test vectors contain "params", "param_len" and "algo" elements > > even though ecdsa.c doesn't make any use of them. The only algorithm > > implementation using those elements is ecrdsa.c. > > I'm missing these pieces of information here at least: > > - akcipher.h tells that tail contains OID, parameter blob length and the > blob itself. > - akcipher.h leaves the size of those fields completely *undefined*. > - According to call sites OID and blob length are 32-bit fields. > - According to call sites that I bumped into they are always set to > zero. > - There's no information in the kernel source code that I could fine > for any other rules how the should be set. > > Putting random words (of which params_len is not even a word) to quotes > does not really make this whole story obvious. You could just as well > delete the paragraph, because that only makes you look for a struct > that does not even exist. As explained above, "The only algorithm implementation using those elements is ecrdsa.c." So if you're interested in understanding how the elements are used, you need to look at crypto/ecrdsa.c. Thanks, Lukas