Erlang :crypto, oid 到 NamedCurve

Erlang :crypto, oid to NamedCurve

当我解码证书时,我得到以下数据:

{:OTPSubjectPublicKeyInfo, {:PublicKeyAlgorithm, {1, 2, 840, 10045, 2, 1}, {:namedCurve, {1, 2, 840, 10045, 3, 1, 7}}}

我通过快速谷歌搜索知道 namedCurve 对应于 :secp256r1。但是,我正在寻找可以为我进行翻译的现有功能。例如,我们可以使用 pkix_sign_types 函数查找有关 PublicKeyAlgorithm 的信息。命名曲线有对应的函数吗?

有一个未记录的模块(标记为私有,因此随时可能发生重大更改或删除)具有提供 namedCurves 的值及其名称的双向映射的功能:pubkey_cert_records:namedCurves/1:

iex(1)> :pubkey_cert_records.namedCurves({1, 2, 840, 10045, 3, 1, 7})
:secp256r1
iex(2)> :pubkey_cert_records.namedCurves(:secp256r1)
{1, 2, 840, 10045, 3, 1, 7}

我找不到允许使用元组作为参数调用此函数并取回原子的记录函数。