Generated EC key has wrong length?

Roger Lipscombe roger@REDACTED
Thu May 20 17:26:49 CEST 2021


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?


More information about the erlang-questions mailing list