Re: Generated EC key has wrong length?
Roger Lipscombe <[email protected]>
| Newsgroups | gmane.comp.lang.erlang.general |
|---|---|
| Message-ID | <CAJgnQd85LfRrUv_gYqMjJUKNOec_zrraO_FY9bT0oER3_aEShg@mail.gmail.com> |
On Thu, 20 May 2021 at 16:28, Roger Lipscombe <[email protected]> wrote: > > On Thu, 20 May 2021 at 16:26, Roger Lipscombe <[email protected]> wrote: > > The following snippet... > > > > [] = lists:foldl(fun(_, Acc) -> > > Key = public_key:generate_key({namedCurve, secp256r1}), > > {'ECPrivateKey', 1, PrivateKey, _Parameters, _PublicKey} = Key, > > case byte_size(PrivateKey) of > > 32 -> Acc; > > _ -> [Key | Acc] > > end > > end, [], lists:seq(1, 10_000)). > > > > ...fails. > > > > secp256r1 private keys should be 32-bytes long, afaict. Should OTP be > > zero-prefixing the key when converting to binary? > > OTP-24.0; should've mentioned that. Bah. OTP-23.x; but it also fails in OTP-24.0 if you change the relevant line: {'ECPrivateKey', 1, PrivateKey, _Parameters, _PublicKey, _} = Key,