2017-10-17 3 views
0

Wenn ich ein Zertifikat am Dekodieren, erhalte ich die folgenden Daten:Erlang: Krypto, oid zu NamedCurve

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

Ich weiß von ein paar schnelle googeln zu tun, dass die namedCurve zu :secp256r1 entspricht. Jedoch suche ich nach einer vorhandenen Funktion, die diese Übersetzung für mich tun kann. Zum Beispiel können wir Informationen über den PublicKeyAlgorithm finden, indem wir die pkix_sign_types Funktion verwenden. Gibt es eine entsprechende Funktion für benannte Kurven?

Antwort

1

Es gibt ein nicht dokumentiertes Modul (als privat markiert und unterliegt daher Änderungen oder Entfernung jederzeit zu brechen), die eine Funktion hat, die eine bidirektionale Abbildung von namedCurves Werte und ihre Namen lautet: 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} 

ich konnte finde keine dokumentierte Funktion, die es erlaubt, diese Funktion mit einem Tupel als Argument aufzurufen und ein Atom zurück zu bekommen.

Verwandte Themen