Saya memiliki kunci publik berikut, yang seharusnya sama, hanya dikodekan dengan cara yang berbeda.

-----BEGIN PUBLIC KEY-----
MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAE+jkeOL+r/kTmmTUAPs9zk+PX0MydMmz3
WYUtE1qVO7KPIm4XfwbxTkRKZvkA4uOeumn+CVeBT8fV1jaWw2obbg==
-----END PUBLIC KEY-----


-----BEGIN PUBLIC KEY-----
MIIBMzCB7AYHKoZIzj0CATCB4AIBATAsBgcqhkjOPQEBAiEA////////////////
/////////////////////v///C8wRAQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHBEEEeb5m
fvncu6xVoGKVzocLBwKb/NstzijZWfKBWxb4F5hIOtp3JqPEZV2k+/wOEQio/Re0
SKaFVBmcR9CP+xDUuAIhAP////////////////////66rtzmr0igO7/SXozQNkFB
AgEBA0IABPo5Hji/q/5E5pk1AD7Pc5Pj19DMnTJs91mFLRNalTuyjyJuF38G8U5E
Smb5AOLjnrpp/glXgU/H1dY2lsNqG24=
-----END PUBLIC KEY-----

Adakah yang bisa memberi tahu saya apa nama masing-masing format, dan jika ada cara untuk mengonversi keduanya di .net

0
VelDev 20 Januari 2018, 01:28

1 menjawab

Jawaban Terbaik

Keduanya adalah format X9.62 dari kunci publik kurva eliptik. Anda dapat dengan mudah melihat ini dengan meletakkan basis 64 (semuanya di antara baris header dan footer) ke dalam dekoder ASN.1.

Anda tentu saja dapat menggunakan openssl asn1parse -inform PEM untuk ini atau Anda dapat menempelkan basis 64 ke dalam dekoder online. Sebagai contoh, berikut adalah link untuk kunci publik representasi 1 dan mewakili ion 2.

Jelas yang pertama menggunakan representasi kurva bernama dari kurva seck256r1, yang lain (specifiedCurve) secara eksplisit menentukan semua parameter. Tidak ada perbedaan fungsional antara keduanya sebaliknya.

Saya belum melihat cara untuk mengonversi di antara keduanya tanpa mengkodekannya sendiri. Biasanya representasi domain asli akan digunakan.

3
Maarten Bodewes 20 Januari 2018, 00:05