Erlang - 导入GPG公钥 [英] Erlang - Importing GPG Public Key

查看:150
本文介绍了Erlang - 导入GPG公钥的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图在Erlang中做一些与公钥相关的事情,他们要求我跟踪公钥。根据此页面,我可以导入PEM格式通过使用 file:read_file / 1 public_key:decode_pem / 1 键。事实是,当我尝试导入GPG公钥时,我没有得到结果。



我有一个名为 inaimathi.pubkey 包含以下内容:

  ----- BEGIN PGP PUBLIC KEY BLOCK- ---- 
版本:GnuPG的v1.4.11(GNU / Linux)的

mQINBE9NBIQBEADMSzN6b0FaPP0rGiLDWKfH4ehN66Z0SAIynXm6lBHjmO69pNsm
iIe4p1X9aXhr7EgEZKdbqevfXW7NuA / oL7Rbt + tzBT5nS2cYSHoZhUC / onVhJxUb
drCR9NsBDZc1wZs + b95K3vWW91wMPYs4tn71DeeNgUVCcZOGofWltI7 + etTVVIyG
zMEW4lOiEwBgLee + 5u3XyGsBbyhtWnbp8ZMewiXjo14w0UCMEQxvf55NjggAO / VR
C + Czz5FQ7m9AnZwqIZJfaAw + aM81lmcXRZenGZ / H25H6WLq2DrVXnRjEyUvK +朱杰
K6rTHcot6K4Cgvo3P47uZcze92c4KaI22jTePRB1qov8ygAQw8BPsaZ + cA3AQ2Zv
4hjIyx2Qovs + vb1xWhk9Mgqyt0ToMZ6HNn386ICxaeYR8XY / rhf9ej0PJOS5c9Nx
reeTdrYXeco27kp / X + nDSWzqy0MrSAAD19xCK1w8Eiwc9MmjAAX1yarQzUy / ICEY $ b $ Y X BMYZs8NTrMJl2XHfi3egu8Ti14VChCklnWe95sZvKrk9 / 3BYxwARAQAB
tCtMZW8gWm92aWMgKEluYWltYXRoaSkgPGxlby56b3ZpY0BnbWFpbC5jb20 + iQI4
BBMBAgAiBQJPTQSEAhsDBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRDlo9AP
+ vpofbYuD / 9luGWbbw0ia5EfsDArk + iAs55HdmgjtVrcEqASR92bSbXxUylvM41T
Gd4nrM7Ri9XVgUSj6ZMnvPJihk08dkjWtoz83JQFdyJ9u7vIqs0LU4awrbNQ8l7P
M3fVKOme / vwQQ7kyIWkIYB0bl + CDRnldYGyBbV0lzh25 / eVnhE8AsDltHJjhwe17
GVQPQfk / 4B9SY0bTuAojZCUpMtI4cSBaI4v + xojewFt9B53oxW / KrLOvCVYUE9m2
TiJrtWcQjYqrlY9Ku203LzIZWbsFt9NEM6I26ewL3Iqn687fLgdkXZ2TuomJEcY +
5UxPIZfdiXqNG / nFLSII3v9kWA / f6ysXn7NTFx594 + 5KUqwjPke9ZFxi7gmyuRtK
KQyz1P + fRpkHqdP + OdNASDZ66CUaOqJrea6N + HpGIdBgRVfaYezl0wy9QfPe / PV7
ewYlP / nEpXDNpnr4cOvvD52VeoW9oiZEt0UFZ5iWEVepZlJ9uNq1QKkKDGHjBA / n的
MGD / MC / Bg6sTfs6gtKfiX5MoPhZd / WDonAZyimJMY23Dw31TuIjmEmO1MuNNxj6c
Q2qWCVsQED6GgkPSRMwZ4 + 6Dh8DsLrt5xQp68I204XnT + ppgkXY / f4ALseRlOXeQ
9TeqeMcq7lO9DVULHLfXELw5 / ijN08BBToZBIaBPKKoGhEdWBl9P3bkCDQRPTQSE
ARAAt9MpaK5TzTOzO / IenaHpfu0E oI4ZQSiWD4ZujvyuMEscdPQ4wDRMVwh66FAW
jeRE4O / m1q4rt / qDKqa0VCSGmap9gj7iLZ9 + Fu5n3jyentzmoe22ATO7jOITGbW2
+ 0D56U3jCRRoSsY8ZSqECBLhsKbc7WIBX8yVxvpHYaqTOwM2 + CIqDda5vgKeNxzk
cVDgUBnYj1nNpklGCs3494IVQ8aLVo5nOm8J0vY / N / YK5sAf6RlK + MEXCEyMVoiG
V4wo4fGLJXkhky5yL9vW + vmkUslw7mbAFRIC2KLg0CxXaGychsScpDlpmHkcxmsl
riGbEaKe0kMOM4KkXdopoGB66T0sEftL + hJmrAVe3H4iyldh / d5Hf1ez670m4ZZ6
gNdRCv3WJ72mZv4pqFH94NUksHvPrmot0B23ne6y / MqxYLIweIjJkD1ePxqpffMq
Ktkq9ooH7SB2GAMihCWiY / orSi6bt670Y9P3pzrwolErCWxieX8dg3H04z5nA7J3
6mqxQXLQvY6lXZYANOEKmm1qyoDgeBJoJdYUFbHrb83xcxQUqp8zikKneQ0rJfVG
dj38smSNAMqOeQQwZlmKFVwmIu4ozqszgZ2oqWS7q2NJgg64dnQlA60VMebQ0e8d
MMqy41VJ1FF8PCT1GGMsL + H4vdoZ + / wF2bhMQISWqFSVa5EAEQEAAYkCHwQYAQIA
CQUCT00EhAIbDAAKCRDlo9AP + vpofVp4D / 9WqB4h9T5kGLBvuGUebjSqBuv6XfUd
q8vrvrMbSiLTLj2Gk58FjXdTPKCAuTkTtiYjMIXR0cF30uGRccM / tOMSp0xQYVT6
呃4ovt76gLGXDHrmKV
aeryKzy3TWikj3cq8Mdj2mKqNwkn1uu89j3xvxbq6gxX7lGX8pCLS2W6a7PYDaXf
NO1 / C31 // Shn26LD9YfzRhcA / B / uXtEST3eShM5uS2sm + oOpxpiRaBv477K2TLpn
zh82VgwRTDkelpYJG8R8eBXwbBik + WSeIprZ8IrMfzZNs7xwn + z9isB0P3 + VObWj
tBYKdMoF1mu40O1I7hsWV9UpJjRw2WrI8WpZMQTInXcaDWomWRgVhQjVhenYf6u2
nVoN3MM47hR7OR6KtcQ59lwlBeLcK9ImFuXjPK1GG9LtHzkKVOTI6p51S6Ug5MPu
7BuJxpxwDiohhVizBk3oZWInpNiXomk7Q6XwQ65mFTB11bX + wn0JIWO7BUWxK + dH
E + 8YuCe53OAvNU0BFT8MAe / vB9kMl4N3p / 3bJPuzmP4lnAGrLwzBZPkiQTNq8aj8
5NsttvIOclBY5A ==
= Zqph
----- END PGP PUBLIC KEY BLOCK -----

似乎是正确的格式,但我得到的结果是

  1> {ok,GpgBin} = file:read(inaimathi.pubkey)。 
{ok,<----- BEGIN PGP PUBLIC KEY BLOCK ----- \\\
Version:GnuPG v1.4.11(GNU / Linux)\\\
\\\
mQINBE9NBIQBEADMSzN6b0FaPP0rGiLDWKf... >>}
2> PUBLIC_KEY:pem_decode(GpgBin)。
[]

根据文档,我希望这会返回一个 RSAEntry ,然后我可以将其解码为公钥。有没有什么特别的,我需要做的是通过这种机制导入公钥? GPG键是否实际有效的PEM文件?我还缺少别的东西吗?

解决方案

ASCII装甲和PEM非常相似。您只需要更改BEGIN / END标记,删除PGP标头和校验和(校验和是最后一行 = Zqph ),并添加PEM头。因此,您必须将 inaimathi.pubkey 更改为此文件:

  ----- BEGIN RSA公钥----- 
mQINBE9NBIQBEADMSzN6b0FaPP0rGiLDWKfH4ehN66Z0SAIynXm6lBHjmO69pNsm
iIe4p1X9aXhr7EgEZKdbqevfXW7NuA / oL7Rbt + tzBT5nS2cYSHoZhUC / onVhJxUb
drCR9NsBDZc1wZs + b95K3vWW91wMPYs4tn71DeeNgUVCcZOGofWltI7 + etTVVIyG
zMEW4lOiEwBgLee + 5u3XyGsBbyhtWnbp8ZMewiXjo14w0UCMEQxvf55NjggAO / VR
C + Czz5FQ7m9AnZwqIZJfaAw + aM81lmcXRZenGZ / H25H6WLq2DrVXnRjEyUvK +朱杰
K6rTHcot6K4Cgvo3P47uZcze92c4KaI22jTePRB1qov8ygAQw8BPsaZ + cA3AQ2Zv
4hjIyx2Qovs + vb1xWhk9Mgqyt0ToMZ6HNn386ICxaeYR8XY / rhf9ej0PJOS5c9Nx
reeTdrYXeco27kp / X + nDSWzqy0MrSAAD19xCK1w8Eiwc9MmjAAX1yarQzUy / ICEY
eY6SaBfdK7x7A1ecUSu7mS7LmGFWB49Tx5u3ENXw9rU2hKbmGbbQsc + xCx5s7ZM1
q0aATJsUO4fsNe + 4 / + 9cBXCSP 4P6irX1EfliqaySt0LEr0WYhIgNgYq8PB7yx4Cv
0mOMv8lXBMYZs8NTrMJl2XHfi3egu8Ti14VChCklnWe95sZvKrk9 / 3BYxwARAQAB
tCtMZW8gWm92aWMgKEluYWltYXRoaSkgPGxlby56b3ZpY0BnbWFpbC5jb20 + iQI4
BBMBAgAiBQJPTQSEAhsDBgsJCA cDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRDlo9AP
+ vpofbYuD / 9luGWbbw0ia5EfsDArk + iAs55HdmgjtVrcEqASR92bSbXxUylvM41T
Gd4nrM7Ri9XVgUSj6ZMnvPJihk08dkjWtoz83JQFdyJ9u7vIqs0LU4awrbNQ8l7P
M3fVKOme / vwQQ7kyIWkIYB0bl + CDRnldYGyBbV0lzh25 / eVnhE8AsDltHJjhwe17
GVQPQfk / 4B9SY0bTuAojZCUpMtI4cSBaI4v + xojewFt9B53oxW / KrLOvCVYUE9m2
TiJrtWcQjYqrlY9Ku203LzIZWbsFt9NEM6I26ewL3Iqn687fLgdkXZ2TuomJEcY +
5UxPIZfdiXqNG / nFLSII3v9kWA / f6ysXn7NTFx594 + 5KUqwjPke9ZFxi7gmyuRtK
KQyz1P + fRpkHqdP + OdNASDZ66CUaOqJrea6N + HpGIdBgRVfaYezl0wy9QfPe / PV7
ewYlP / nEpXDNpnr4cOvvD52VeoW9oiZEt0UFZ5iWEVepZlJ9uNq1QKkKDGHjBA / n的
MGD / MC / Bg6sTfs6gtKfiX5MoPhZd / WDonAZyimJMY23Dw31TuIjmEmO1MuNNxj6c
Q2qWCVsQED6GgkPSRMwZ4 + 6Dh8DsLrt5xQp68I204XnT + ppgkXY / f4ALseRlOXeQ
9TeqeMcq7lO9DVULHLfXELw5 / ijN08BBToZBIaBPKKoGhEdWBl9P3bkCDQRPTQSE
ARAAt9MpaK5TzTOzO / IenaHpfu0EoI4ZQSiWD4ZujvyuMEscdPQ4wDRMVwh66FAW
jeRE4O / m1q4rt / qDKqa0VCSGmap9gj7iLZ9 + Fu5n3jyentzmoe22ATO7jOITGbW2
+ 0D56U3jCRRoSsY8ZSqECBLhsKbc7WIBX8yVxvpHYaqTOw M2 + CIqDda5vgKeNxzk
cVDgUBnYj1nNpklGCs3494IVQ8aLVo5nOm8J0vY / N / YK5sAf6RlK + MEXCEyMVoiG
V4wo4fGLJXkhky5yL9vW + vmkUslw7mbAFRIC2KLg0CxXaGychsScpDlpmHkcxmsl
riGbEaKe0kMOM4KkXdopoGB66T0sEftL + hJmrAVe3H4iyldh / d5Hf1ez670m4ZZ6
gNdRCv3WJ72mZv4pqFH94NUksHvPrmot0B23ne6y / MqxYLIweIjJkD1ePxqpffMq
Ktkq9ooH7SB2GAMihCWiY / orSi6bt670Y9P3pzrwolErCWxieX8dg3H04z5nA7J3
6mqxQXLQvY6lXZYANOEKmm1qyoDgeBJoJdYUFbHrb83xcxQUqp8zikKneQ0rJfVG
dj38smSNAMqOeQQwZlmKFVwmIu4ozqszgZ2oqWS7q2NJgg64dnQlA60VMebQ0e8d
MMqy41VJ1FF8PCT1GGMsL + H4vdoZ + / wF2bhMQISWqFSVa5EAEQEAAYkCHwQYAQIA
CQUCT00EhAIbDAAKCRDlo9AP + vpofVp4D / 9WqB4h9T5kGLBvuGUebjSqBuv6XfUd
q8vrvrMbSiLTLj2Gk58FjXdTPKCAuTkTtiYjMIXR0cF30uGRccM / tOMSp0xQYVT6
ueBhDZHaWaAEr2408j7 / + tVg5CaLO / dVVfxpHIJ + 8Bf1YmRRMpDm94i8X5j4rxPv
GNaOa6CgqWGlXsqFUw19OqXI5pK + HBH / GEpVPawr8 / JLauc24ovt76gLGXDHrmKV
aeryKzy3TWikj3cq8Mdj2mKqNwkn1uu89j3xvxbq6gxX7lGX8pCLS2W6a7PYDaXf
no1 / C31 // Shn26LD9YfzRhcA / B / uXtEST3eShM5uS2sm + oOpxpiRaBv477K2TLpn
zh82VgwRTDkelpYJG8R8eBXwbBik + WSeIprZ8IrMfzZNs7xwn + z9isB0P3 + VObWj
tBYKdMoF1mu40O1I7hsWV9UpJjRw2WrI8WpZMQTInXcaDWomWRgVhQjVhenYf6u2
nVoN3MM47hR7OR6KtcQ59lwlBeLcK9ImFuXjPK1GG9LtHzkKVOTI6p51S6Ug5MPu
7BuJxpxwDiohhVizBk3oZWInpNiXomk7Q6XwQ65mFTB11bX + wn0JIWO7BUWxK +卫生署
E + 8YuCe53OAvNU0BFT8MAe / vB9kMl4N3p / 3bJPuzmP4lnAGrLwzBZPkiQTNq8aj8
5NsttvIOclBY5A ==
----- END RSA PUBLIC KEY -----


I'm trying to do some public-key-related things in Erlang, and they require me to track public keys. According to this page, I should be able to import PEM format keys by using file:read_file/1 and public_key:decode_pem/1. The thing is, when I try to import a GPG public key, I don't get a result.

I've got a file called inaimathi.pubkeywith the following content:

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.11 (GNU/Linux)

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
5NsttvIOclBY5A==
=Zqph
-----END PGP PUBLIC KEY BLOCK-----

which seems to be in the correct format, but the result I get is

1> {ok, GpgBin} = file:read("inaimathi.pubkey").
{ok,<<"-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: GnuPG v1.4.11 (GNU/Linux)\n\nmQINBE9NBIQBEADMSzN6b0FaPP0rGiLDWKf"...>>}
2> public_key:pem_decode(GpgBin).
[]

Based on the documentation, I'd expect this to return an RSAEntry which I could then decode into a public key. Is there something special I need to do to import public keys through this mechanism? Are GPG keys actually valid PEM files? Am I missing something else?

解决方案

ASCII-armored and PEM are very similar. You just need to change the BEGIN/END markers, strip the PGP headers and checksums (the checksum is the last line =Zqph), and add the PEM header. So, you have to change the inaimathi.pubkey to this file:

-----BEGIN RSA PUBLIC KEY-----
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
5NsttvIOclBY5A==
-----END RSA PUBLIC KEY-----

这篇关于Erlang - 导入GPG公钥的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆